~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/allwinner/sun8i-v3s-anbernic-rg-nano.dts

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
  2 
  3 /dts-v1/;
  4 #include <dt-bindings/input/linux-event-codes.h>
  5 #include "sun8i-v3s.dtsi"
  6 #include "sunxi-common-regulators.dtsi"
  7 
  8 / {
  9         model = "Anbernic RG Nano";
 10         compatible = "anbernic,rg-nano", "allwinner,sun8i-v3s";
 11 
 12         aliases {
 13                 rtc0 = &pcf8563;
 14                 rtc1 = &rtc;
 15                 serial0 = &uart0;
 16         };
 17 
 18         backlight: backlight {
 19                 compatible = "pwm-backlight";
 20                 brightness-levels = <0 1 2 3 8 14 21 32 46 60 80 100>;
 21                 default-brightness-level = <11>;
 22                 power-supply = <&reg_vcc5v0>;
 23                 pwms = <&pwm 0 40000 1>;
 24         };
 25 
 26         chosen {
 27                 stdout-path = "serial0:115200n8";
 28         };
 29 
 30         gpio_keys: gpio-keys {
 31                 compatible = "gpio-keys";
 32 
 33                 button-a {
 34                         gpios = <&gpio_expander 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 35                         label = "BTN-A";
 36                         linux,code = <BTN_EAST>;
 37                 };
 38 
 39                 button-b {
 40                         gpios = <&gpio_expander 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 41                         label = "BTN-B";
 42                         linux,code = <BTN_SOUTH>;
 43                 };
 44 
 45                 button-down {
 46                         gpios = <&gpio_expander 1 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 47                         label = "DPAD-DOWN";
 48                         linux,code = <BTN_DPAD_DOWN>;
 49                 };
 50 
 51                 button-left {
 52                         gpios = <&gpio_expander 4 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 53                         label = "DPAD-LEFT";
 54                         linux,code = <BTN_DPAD_LEFT>;
 55                 };
 56 
 57                 button-right {
 58                         gpios = <&gpio_expander 0 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 59                         label = "DPAD-RIGHT";
 60                         linux,code = <BTN_DPAD_RIGHT>;
 61                 };
 62 
 63                 button-se {
 64                         gpios = <&gpio_expander 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 65                         label = "BTN-SELECT";
 66                         linux,code = <BTN_SELECT>;
 67                 };
 68 
 69                 button-st {
 70                         gpios = <&gpio_expander 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 71                         label = "BTN-START";
 72                         linux,code = <BTN_START>;
 73                 };
 74 
 75                 button-tl {
 76                         gpios = <&gpio_expander 2 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 77                         label = "BTN-L";
 78                         linux,code = <BTN_TL>;
 79                 };
 80 
 81                 button-tr {
 82                         gpios = <&gpio_expander 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 83                         label = "BTN-R";
 84                         linux,code = <BTN_TR>;
 85                 };
 86 
 87                 button-up {
 88                         gpios = <&gpio_expander 3 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 89                         label = "DPAD-UP";
 90                         linux,code = <BTN_DPAD_UP>;
 91                 };
 92 
 93                 button-x {
 94                         gpios = <&gpio_expander 11 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
 95                         label = "BTN-X";
 96                         linux,code = <BTN_NORTH>;
 97                 };
 98 
 99                 button-y {
100                         gpios = <&gpio_expander 13 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
101                         label = "BTN-Y";
102                         linux,code = <BTN_WEST>;
103                 };
104         };
105 };
106 
107 &codec {
108         allwinner,audio-routing = "Speaker", "HP",
109                                   "MIC1", "Mic",
110                                   "Mic", "HBIAS";
111         allwinner,pa-gpios = <&pio 5 6 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; /* PF6 */
112         status = "okay";
113 };
114 
115 &ehci {
116         status = "okay";
117 };
118 
119 &i2c0 {
120         status = "okay";
121 
122         gpio_expander: gpio@20 {
123                 compatible = "nxp,pcal6416";
124                 reg = <0x20>;
125                 gpio-controller;
126                 #gpio-cells = <2>;
127                 #interrupt-cells = <2>;
128                 interrupt-controller;
129                 interrupt-parent = <&pio>;
130                 interrupts = <1 3 IRQ_TYPE_EDGE_BOTH>; /* PB3/EINT3 */
131                 vcc-supply = <&reg_vcc3v3>;
132         };
133 
134         axp209: pmic@34 {
135                 reg = <0x34>;
136                 interrupt-parent = <&pio>;
137                 interrupts = <1 5 IRQ_TYPE_EDGE_FALLING>; /* PB5/EINT5 */
138         };
139 
140         pcf8563: rtc@51 {
141                 compatible = "nxp,pcf8563";
142                 reg = <0x51>;
143         };
144 };
145 
146 #include "axp209.dtsi"
147 
148 &battery_power_supply {
149         status = "okay";
150 };
151 
152 &mmc0 {
153         broken-cd;
154         bus-width = <4>;
155         disable-wp;
156         vmmc-supply = <&reg_vcc3v3>;
157         vqmmc-supply = <&reg_vcc3v3>;
158         status = "okay";
159 };
160 
161 &ohci {
162         status = "okay";
163 };
164 
165 &pio {
166         vcc-pb-supply = <&reg_vcc3v3>;
167         vcc-pc-supply = <&reg_vcc3v3>;
168         vcc-pf-supply = <&reg_vcc3v3>;
169         vcc-pg-supply = <&reg_vcc3v3>;
170 
171         spi0_no_miso_pins: spi0-no-miso-pins {
172                 pins = "PC1", "PC2", "PC3";
173                 function = "spi0";
174         };
175 };
176 
177 &pwm {
178         pinctrl-0 = <&pwm0_pin>;
179         pinctrl-names = "default";
180         status = "okay";
181 };
182 
183 /* DCDC2 wired into vdd-cpu, vdd-sys, and vdd-ephy. */
184 &reg_dcdc2 {
185         regulator-always-on;
186         regulator-max-microvolt = <1250000>;
187         regulator-min-microvolt = <1250000>;
188         regulator-name = "vdd-cpu";
189 };
190 
191 /* DCDC3 wired into every 3.3v input that isn't the RTC. */
192 &reg_dcdc3 {
193         regulator-always-on;
194         regulator-max-microvolt = <3300000>;
195         regulator-min-microvolt = <3300000>;
196         regulator-name = "vcc-io";
197 };
198 
199 /* LDO1 wired into RTC, voltage is hard-wired at 3.3v. */
200 &reg_ldo1 {
201         regulator-always-on;
202         regulator-name = "vcc-rtc";
203 };
204 
205 /* LDO2 wired into VCC-PLL and audio codec. */
206 &reg_ldo2 {
207         regulator-always-on;
208         regulator-max-microvolt = <3000000>;
209         regulator-min-microvolt = <3000000>;
210         regulator-name = "vcc-pll";
211 };
212 
213 /* LDO3, LDO4, and LDO5 unused. */
214 &reg_ldo3 {
215         status = "disabled";
216 };
217 
218 &reg_ldo4 {
219         status = "disabled";
220 };
221 
222 /* RTC uses internal oscillator */
223 &rtc {
224         /delete-property/ clocks;
225 };
226 
227 &spi0 {
228         pinctrl-0 = <&spi0_no_miso_pins>;
229         pinctrl-names = "default";
230         status = "okay";
231 
232         display@0 {
233                 compatible = "saef,sftc154b", "panel-mipi-dbi-spi";
234                 reg = <0>;
235                 backlight = <&backlight>;
236                 dc-gpios = <&pio 2 0 GPIO_ACTIVE_HIGH>; /* PC0 */
237                 reset-gpios = <&pio 1 2 GPIO_ACTIVE_HIGH>; /* PB2 */
238                 spi-max-frequency = <100000000>;
239 
240                 height-mm = <39>;
241                 width-mm = <39>;
242 
243                 /* Set hb-porch to compensate for non-visible area */
244                 panel-timing {
245                         hactive = <240>;
246                         vactive = <240>;
247                         hback-porch = <80>;
248                         vback-porch = <0>;
249                         clock-frequency = <0>;
250                         hfront-porch = <0>;
251                         hsync-len = <0>;
252                         vfront-porch = <0>;
253                         vsync-len = <0>;
254                 };
255         };
256 };
257 
258 &uart0 {
259         pinctrl-0 = <&uart0_pb_pins>;
260         pinctrl-names = "default";
261         status = "okay";
262 };
263 
264 &usb_otg {
265         dr_mode = "otg";
266         status = "okay";
267 };
268 
269 &usb_power_supply {
270         status = "okay";
271 };
272 
273 &usbphy {
274         usb0_id_det-gpios = <&pio 6 5 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; /* PG5 */
275         status = "okay";
276 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php