1 // SPDX-License-Identifier: GPL-2.0-or-later O 1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT 2 /* 2 /* 3 * DTSI for Emlid Neutis SoMs. 3 * DTSI for Emlid Neutis SoMs. 4 * 4 * 5 * Copyright (C) 2019 Georgii Staroselskii <geo 5 * Copyright (C) 2019 Georgii Staroselskii <georgii.staroselskii@emlid.com> 6 */ 6 */ 7 7 8 #include "sunxi-common-regulators.dtsi" 8 #include "sunxi-common-regulators.dtsi" 9 9 10 #include <dt-bindings/gpio/gpio.h> 10 #include <dt-bindings/gpio/gpio.h> 11 11 12 / { 12 / { 13 aliases { 13 aliases { 14 serial0 = &uart0; 14 serial0 = &uart0; 15 }; 15 }; 16 16 17 chosen { 17 chosen { 18 stdout-path = "serial0:115200n 18 stdout-path = "serial0:115200n8"; 19 }; 19 }; 20 20 21 wifi_pwrseq: pwrseq { 21 wifi_pwrseq: pwrseq { 22 compatible = "mmc-pwrseq-simpl 22 compatible = "mmc-pwrseq-simple"; 23 reset-gpios = <&pio 2 7 GPIO_A 23 reset-gpios = <&pio 2 7 GPIO_ACTIVE_LOW>; /* PC7 */ 24 post-power-on-delay-ms = <200> 24 post-power-on-delay-ms = <200>; 25 clocks = <&rtc CLK_OSC32K_FANO 25 clocks = <&rtc CLK_OSC32K_FANOUT>; 26 clock-names = "ext_clock"; 26 clock-names = "ext_clock"; 27 }; 27 }; 28 }; 28 }; 29 29 30 &cpu0 { 30 &cpu0 { 31 cpu-supply = <&vdd_cpux>; 31 cpu-supply = <&vdd_cpux>; 32 }; 32 }; 33 33 34 ®_usb0_vbus { 34 ®_usb0_vbus { 35 gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; 35 gpio = <&r_pio 0 9 GPIO_ACTIVE_HIGH>; /* PL9 */ 36 status = "okay"; 36 status = "okay"; 37 }; 37 }; 38 38 39 39 40 &de { 40 &de { 41 status = "okay"; 41 status = "okay"; 42 }; 42 }; 43 43 44 &ohci0 { 44 &ohci0 { 45 status = "okay"; 45 status = "okay"; 46 }; 46 }; 47 47 48 &ohci1 { 48 &ohci1 { 49 status = "okay"; 49 status = "okay"; 50 }; 50 }; 51 51 52 &ohci2 { 52 &ohci2 { 53 status = "okay"; 53 status = "okay"; 54 }; 54 }; 55 55 56 &ohci3 { 56 &ohci3 { 57 status = "okay"; 57 status = "okay"; 58 }; 58 }; 59 59 60 60 61 &ehci0 { 61 &ehci0 { 62 status = "okay"; 62 status = "okay"; 63 }; 63 }; 64 64 65 &ehci1 { 65 &ehci1 { 66 status = "okay"; 66 status = "okay"; 67 }; 67 }; 68 68 69 &ehci2 { 69 &ehci2 { 70 status = "okay"; 70 status = "okay"; 71 }; 71 }; 72 72 73 &ehci3 { 73 &ehci3 { 74 status = "okay"; 74 status = "okay"; 75 }; 75 }; 76 76 77 &mmc0 { 77 &mmc0 { 78 vmmc-supply = <®_vcc3v3>; 78 vmmc-supply = <®_vcc3v3>; 79 bus-width = <4>; 79 bus-width = <4>; 80 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; 80 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ 81 status = "okay"; 81 status = "okay"; 82 }; 82 }; 83 83 84 84 85 &mmc1 { 85 &mmc1 { 86 vmmc-supply = <®_vcc3v3>; 86 vmmc-supply = <®_vcc3v3>; 87 vqmmc-supply = <®_vcc3v3>; 87 vqmmc-supply = <®_vcc3v3>; 88 mmc-pwrseq = <&wifi_pwrseq>; 88 mmc-pwrseq = <&wifi_pwrseq>; 89 bus-width = <4>; 89 bus-width = <4>; 90 non-removable; 90 non-removable; 91 status = "okay"; 91 status = "okay"; 92 92 93 brcmf: wifi@1 { 93 brcmf: wifi@1 { 94 reg = <1>; 94 reg = <1>; 95 compatible = "brcm,bcm4329-fma 95 compatible = "brcm,bcm4329-fmac"; 96 interrupt-parent = <&r_pio>; 96 interrupt-parent = <&r_pio>; 97 interrupts = <0 5 IRQ_TYPE_LEV 97 interrupts = <0 5 IRQ_TYPE_LEVEL_LOW>; /* PL5 */ 98 interrupt-names = "host-wake"; 98 interrupt-names = "host-wake"; 99 }; 99 }; 100 }; 100 }; 101 101 102 &mmc2 { 102 &mmc2 { 103 pinctrl-names = "default"; 103 pinctrl-names = "default"; 104 pinctrl-0 = <&mmc2_8bit_pins>; 104 pinctrl-0 = <&mmc2_8bit_pins>; 105 vmmc-supply = <®_vcc3v3>; 105 vmmc-supply = <®_vcc3v3>; 106 bus-width = <8>; 106 bus-width = <8>; 107 non-removable; 107 non-removable; 108 cap-mmc-hw-reset; 108 cap-mmc-hw-reset; 109 status = "okay"; 109 status = "okay"; 110 }; 110 }; 111 111 112 &uart0 { 112 &uart0 { 113 pinctrl-names = "default"; 113 pinctrl-names = "default"; 114 pinctrl-0 = <&uart0_pa_pins>; 114 pinctrl-0 = <&uart0_pa_pins>; 115 status = "okay"; 115 status = "okay"; 116 }; 116 }; 117 117 118 118 119 &uart1 { 119 &uart1 { 120 pinctrl-names = "default"; 120 pinctrl-names = "default"; 121 pinctrl-0 = <&uart1_pins>, <&uart1_rts 121 pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; 122 uart-has-rtscts; 122 uart-has-rtscts; 123 status = "okay"; 123 status = "okay"; 124 124 125 bluetooth { 125 bluetooth { 126 compatible = "brcm,bcm43438-bt 126 compatible = "brcm,bcm43438-bt"; 127 clocks = <&rtc CLK_OSC32K_FANO 127 clocks = <&rtc CLK_OSC32K_FANOUT>; 128 clock-names = "lpo"; 128 clock-names = "lpo"; 129 vbat-supply = <®_vcc3v3>; 129 vbat-supply = <®_vcc3v3>; 130 vddio-supply = <®_vcc3v3>; 130 vddio-supply = <®_vcc3v3>; 131 shutdown-gpios = <&pio 2 4 GPI 131 shutdown-gpios = <&pio 2 4 GPIO_ACTIVE_HIGH>; /* PC4 */ 132 device-wakeup-gpios = <&r_pio 132 device-wakeup-gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */ 133 }; 133 }; 134 }; 134 }; 135 135 136 &uart2 { 136 &uart2 { 137 pinctrl-names = "default"; 137 pinctrl-names = "default"; 138 pinctrl-0 = <&uart2_pins>; 138 pinctrl-0 = <&uart2_pins>; 139 status = "okay"; 139 status = "okay"; 140 }; 140 }; 141 141 142 &uart3 { 142 &uart3 { 143 pinctrl-names = "default"; 143 pinctrl-names = "default"; 144 pinctrl-0 = <&uart3_pins>; 144 pinctrl-0 = <&uart3_pins>; 145 status = "okay"; 145 status = "okay"; 146 }; 146 }; 147 147 148 &usbphy { 148 &usbphy { 149 usb0_id_det-gpios = <&r_pio 0 8 GPIO_A 149 usb0_id_det-gpios = <&r_pio 0 8 GPIO_ACTIVE_HIGH>; /* PL8 */ 150 usb0_vbus-supply = <®_usb0_vbus>; 150 usb0_vbus-supply = <®_usb0_vbus>; 151 status = "okay"; 151 status = "okay"; 152 }; 152 }; 153 153 154 &usb_otg { 154 &usb_otg { 155 dr_mode = "otg"; 155 dr_mode = "otg"; 156 status = "okay"; 156 status = "okay"; 157 }; 157 }; 158 158 159 &codec { 159 &codec { 160 allwinner,audio-routing = 160 allwinner,audio-routing = 161 "Line Out", "LINEOUT", 161 "Line Out", "LINEOUT", 162 "LINEIN", "Line In", 162 "LINEIN", "Line In", 163 "MIC1", "Mic", 163 "MIC1", "Mic", 164 "MIC2", "Mic", 164 "MIC2", "Mic", 165 "Mic", "MBIAS"; 165 "Mic", "MBIAS"; 166 }; 166 }; 167 167 168 &i2c0 { 168 &i2c0 { 169 status = "okay"; 169 status = "okay"; 170 }; 170 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.