1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2 2 3 /dts-v1/; 3 /dts-v1/; 4 4 5 #include "rk3566-soquartz.dtsi" 5 #include "rk3566-soquartz.dtsi" 6 6 7 / { 7 / { 8 model = "Pine64 SOQuartz on Model A ca !! 8 model = "PINE64 RK3566 SOQuartz on Model A carrier board"; 9 compatible = "pine64,soquartz-model-a" 9 compatible = "pine64,soquartz-model-a", "pine64,soquartz", "rockchip,rk3566"; 10 << 11 aliases { << 12 ethernet0 = &gmac1; << 13 }; << 14 10 15 /* labeled DCIN_12V in schematic */ 11 /* labeled DCIN_12V in schematic */ 16 vcc12v_dcin: vcc12v-dcin-regulator { 12 vcc12v_dcin: vcc12v-dcin-regulator { 17 compatible = "regulator-fixed" 13 compatible = "regulator-fixed"; 18 regulator-name = "vcc12v_dcin" 14 regulator-name = "vcc12v_dcin"; 19 regulator-always-on; 15 regulator-always-on; 20 regulator-boot-on; 16 regulator-boot-on; 21 regulator-min-microvolt = <120 17 regulator-min-microvolt = <12000000>; 22 regulator-max-microvolt = <120 18 regulator-max-microvolt = <12000000>; 23 }; 19 }; 24 20 25 vcc5v0_usb: vcc5v0-usb-regulator { 21 vcc5v0_usb: vcc5v0-usb-regulator { 26 compatible = "regulator-fixed" 22 compatible = "regulator-fixed"; 27 regulator-name = "vcc5v0_usb"; 23 regulator-name = "vcc5v0_usb"; 28 regulator-always-on; 24 regulator-always-on; 29 regulator-boot-on; 25 regulator-boot-on; 30 regulator-min-microvolt = <500 26 regulator-min-microvolt = <5000000>; 31 regulator-max-microvolt = <500 27 regulator-max-microvolt = <5000000>; 32 vin-supply = <&vcc12v_dcin>; 28 vin-supply = <&vcc12v_dcin>; 33 }; 29 }; 34 30 35 /* 31 /* 36 * Labelled VCC3V0_SD in schematic to 32 * Labelled VCC3V0_SD in schematic to not conflict with PMIC 37 * regulator, it's 3.3v in actuality 33 * regulator, it's 3.3v in actuality 38 */ 34 */ 39 vcc3v0_sd: vcc3v0-sd-regulator { 35 vcc3v0_sd: vcc3v0-sd-regulator { 40 compatible = "regulator-fixed" 36 compatible = "regulator-fixed"; 41 regulator-name = "vcc3v0_sd"; 37 regulator-name = "vcc3v0_sd"; 42 regulator-always-on; 38 regulator-always-on; 43 regulator-boot-on; 39 regulator-boot-on; 44 regulator-min-microvolt = <330 40 regulator-min-microvolt = <3300000>; 45 regulator-max-microvolt = <330 41 regulator-max-microvolt = <3300000>; 46 vin-supply = <&vcc3v3_sys>; 42 vin-supply = <&vcc3v3_sys>; 47 }; 43 }; 48 44 49 vcc3v3_pcie: vcc3v3-pcie-regulator { 45 vcc3v3_pcie: vcc3v3-pcie-regulator { 50 compatible = "regulator-fixed" 46 compatible = "regulator-fixed"; 51 regulator-name = "vcc3v3_pcie" 47 regulator-name = "vcc3v3_pcie"; 52 regulator-always-on; 48 regulator-always-on; 53 regulator-boot-on; 49 regulator-boot-on; 54 regulator-min-microvolt = <330 50 regulator-min-microvolt = <3300000>; 55 regulator-max-microvolt = <330 51 regulator-max-microvolt = <3300000>; 56 vin-supply = <&vcc12v_dcin>; 52 vin-supply = <&vcc12v_dcin>; 57 }; 53 }; 58 54 59 vcc12v_pcie: vcc12v-pcie-regulator { 55 vcc12v_pcie: vcc12v-pcie-regulator { 60 compatible = "regulator-fixed" 56 compatible = "regulator-fixed"; 61 regulator-name = "vcc12v_pcie" 57 regulator-name = "vcc12v_pcie"; 62 regulator-always-on; 58 regulator-always-on; 63 regulator-boot-on; 59 regulator-boot-on; 64 regulator-min-microvolt = <120 60 regulator-min-microvolt = <12000000>; 65 regulator-max-microvolt = <120 61 regulator-max-microvolt = <12000000>; 66 vin-supply = <&vcc12v_dcin>; 62 vin-supply = <&vcc12v_dcin>; 67 }; 63 }; 68 }; 64 }; 69 65 70 /* phy for pcie */ 66 /* phy for pcie */ 71 &combphy2 { 67 &combphy2 { 72 phy-supply = <&vcc3v3_sys>; 68 phy-supply = <&vcc3v3_sys>; 73 status = "okay"; 69 status = "okay"; 74 }; 70 }; 75 71 76 &gmac1 { 72 &gmac1 { 77 status = "okay"; 73 status = "okay"; 78 }; 74 }; 79 75 80 /* 76 /* 81 * i2c1 is exposed on CM1 / Module1A 77 * i2c1 is exposed on CM1 / Module1A 82 * pin 80 - SCL0 - i2c1_scl_m0, pullup to vcc3 78 * pin 80 - SCL0 - i2c1_scl_m0, pullup to vcc3v3_pmu 83 * pin 82 - SDA0 - i2c1_sda_m0, pullup to vcc3 79 * pin 82 - SDA0 - i2c1_sda_m0, pullup to vcc3v3_pmu 84 */ 80 */ 85 &i2c1 { 81 &i2c1 { 86 status = "okay"; 82 status = "okay"; 87 83 88 /* 84 /* 89 * the rtc interrupt is tied to PMIC_P 85 * the rtc interrupt is tied to PMIC_PWRON, 90 * it will force reset the board if tr 86 * it will force reset the board if triggered. 91 */ 87 */ 92 pcf85063: rtc@51 { 88 pcf85063: rtc@51 { 93 compatible = "nxp,pcf85063"; 89 compatible = "nxp,pcf85063"; 94 reg = <0x51>; 90 reg = <0x51>; 95 }; 91 }; 96 }; 92 }; 97 93 98 /* 94 /* 99 * i2c2 is exposed on CM1 / Module1A - to PI40 95 * i2c2 is exposed on CM1 / Module1A - to PI40 100 * pin 56 - GPIO3 - i2c2_scl_m1, pullup to vcc 96 * pin 56 - GPIO3 - i2c2_scl_m1, pullup to vcc_3v3, shared with i2s1_8ch 101 * pin 58 - GPIO2 - i2c2_sda_m1, pullup to vcc 97 * pin 58 - GPIO2 - i2c2_sda_m1, pullup to vcc_3v3 102 */ 98 */ 103 &i2c2 { 99 &i2c2 { 104 status = "disabled"; 100 status = "disabled"; 105 }; 101 }; 106 102 107 /* 103 /* 108 * i2c3 is exposed on CM1 / Module1A - to PI40 104 * i2c3 is exposed on CM1 / Module1A - to PI40 109 * pin 35 - ID_SC(GPIO28) - i2c3_scl_m0, pullu 105 * pin 35 - ID_SC(GPIO28) - i2c3_scl_m0, pullup to vcc_3v3 110 * pin 36 - ID_SD(GPIO27) - i2c3_sda_m0, pullu 106 * pin 36 - ID_SD(GPIO27) - i2c3_sda_m0, pullup to vcc_3v3 111 */ 107 */ 112 &i2c3 { 108 &i2c3 { 113 status = "disabled"; 109 status = "disabled"; 114 }; 110 }; 115 111 116 /* 112 /* 117 * i2c4 is exposed on CM2 / Module1B - to PI40 113 * i2c4 is exposed on CM2 / Module1B - to PI40 118 * pin 45 - GPIO24 - i2c4_scl_m1 114 * pin 45 - GPIO24 - i2c4_scl_m1 119 * pin 47 - GPIO23 - i2c4_sda_m1 115 * pin 47 - GPIO23 - i2c4_sda_m1 120 */ 116 */ 121 &i2c4 { 117 &i2c4 { 122 status = "disabled"; 118 status = "disabled"; 123 }; 119 }; 124 120 125 /* 121 /* 126 * i2s1_8ch is exposed on CM1 / Module1A - to 122 * i2s1_8ch is exposed on CM1 / Module1A - to PI40 127 * pin 24 - GPIO26 - i2s1_sdi1_m1 123 * pin 24 - GPIO26 - i2s1_sdi1_m1 128 * pin 25 - GPIO21 - i2s1_sdo0_m1 124 * pin 25 - GPIO21 - i2s1_sdo0_m1 129 * pin 26 - GPIO19 - i2s1_lrck_tx_m1 125 * pin 26 - GPIO19 - i2s1_lrck_tx_m1 130 * pin 27 - GPIO20 - i2s1_sdi0_m1 126 * pin 27 - GPIO20 - i2s1_sdi0_m1 131 * pin 29 - GPIO16 - i2s1_sdi3_m1 127 * pin 29 - GPIO16 - i2s1_sdi3_m1 132 * pin 30 - GPIO6 - i2s1_sdi2_m1 128 * pin 30 - GPIO6 - i2s1_sdi2_m1 133 * pin 40 - GPIO9 - i2s1_sdo1_m1, shared with 129 * pin 40 - GPIO9 - i2s1_sdo1_m1, shared with spi3 134 * pin 41 - GPIO25 - i2s1_sdo2_m1 130 * pin 41 - GPIO25 - i2s1_sdo2_m1 135 * pin 49 - GPIO18 - i2s1_sclk_tx_m1 131 * pin 49 - GPIO18 - i2s1_sclk_tx_m1 136 * pin 50 - GPIO17 - i2s1_mclk_m1 132 * pin 50 - GPIO17 - i2s1_mclk_m1 137 * pin 56 - GPIO3 - i2s1_sdo3_m1, shared with 133 * pin 56 - GPIO3 - i2s1_sdo3_m1, shared with i2c2 138 */ 134 */ 139 &i2s1_8ch { 135 &i2s1_8ch { 140 status = "disabled"; 136 status = "disabled"; 141 }; 137 }; 142 138 143 &led_diy { 139 &led_diy { 144 status = "okay"; 140 status = "okay"; 145 }; 141 }; 146 142 147 &led_work { 143 &led_work { 148 status = "okay"; 144 status = "okay"; 149 }; 145 }; 150 146 151 &pcie2x1 { 147 &pcie2x1 { 152 vpcie3v3-supply = <&vcc3v3_pcie>; 148 vpcie3v3-supply = <&vcc3v3_pcie>; 153 status = "okay"; 149 status = "okay"; 154 }; 150 }; 155 151 156 &rgmii_phy1 { 152 &rgmii_phy1 { 157 status = "okay"; 153 status = "okay"; 158 }; 154 }; 159 155 160 &rgmii_phy1 { 156 &rgmii_phy1 { 161 status = "okay"; 157 status = "okay"; 162 }; 158 }; 163 159 164 /* 160 /* 165 * saradc is exposed on CM1 / Module1A - to J2 161 * saradc is exposed on CM1 / Module1A - to J2 166 * pin 94 - AIN1 - saradc_vin3 162 * pin 94 - AIN1 - saradc_vin3 167 * pin 96 - AIN0 - saradc_vin2 163 * pin 96 - AIN0 - saradc_vin2 168 */ 164 */ 169 &saradc { 165 &saradc { 170 status = "disabled"; 166 status = "disabled"; 171 }; 167 }; 172 168 173 /* 169 /* 174 * vmmc-supply is vcc3v3_sd on v1.0 and vcc3v0 170 * vmmc-supply is vcc3v3_sd on v1.0 and vcc3v0_sd on v1.1+ 175 * the soquartz SoM has SDMMC_PWR (CM1 pin 75) 171 * the soquartz SoM has SDMMC_PWR (CM1 pin 75) hardwired to vcc3v3_sys, 176 * so we use vcc3v3_sd here to ensure the regu 172 * so we use vcc3v3_sd here to ensure the regulator is enabled on older boards. 177 */ 173 */ 178 &sdmmc0 { 174 &sdmmc0 { 179 vmmc-supply = <&vcc3v3_sd>; 175 vmmc-supply = <&vcc3v3_sd>; 180 status = "okay"; 176 status = "okay"; 181 }; 177 }; 182 178 183 /* 179 /* 184 * spi3 is exposed on CM1 / Module1A - to PI40 180 * spi3 is exposed on CM1 / Module1A - to PI40 185 * pin 37 - GPIO7 - spi3_cs1_m0 181 * pin 37 - GPIO7 - spi3_cs1_m0 186 * pin 38 - GPIO11 - spi3_clk_m0 182 * pin 38 - GPIO11 - spi3_clk_m0 187 * pin 39 - GPIO8 - spi3_cs0_m0 183 * pin 39 - GPIO8 - spi3_cs0_m0 188 * pin 40 - GPIO9 - spi3_miso_m0, shared with 184 * pin 40 - GPIO9 - spi3_miso_m0, shared with i2s1_8ch 189 * pin 44 - GPIO10 - spi3_mosi_m0 185 * pin 44 - GPIO10 - spi3_mosi_m0 190 */ 186 */ 191 &spi3 { 187 &spi3 { 192 status = "disabled"; 188 status = "disabled"; 193 }; 189 }; 194 190 195 /* 191 /* 196 * uart2 is exposed on CM1 / Module1A - to PI4 192 * uart2 is exposed on CM1 / Module1A - to PI40 197 * pin 51 - GPIO15 - uart2_rx_m0 193 * pin 51 - GPIO15 - uart2_rx_m0 198 * pin 55 - GPIO14 - uart2_tx_m0 194 * pin 55 - GPIO14 - uart2_tx_m0 199 */ 195 */ 200 &uart2 { 196 &uart2 { 201 status = "okay"; 197 status = "okay"; 202 }; 198 }; 203 199 204 /* 200 /* 205 * uart7 is exposed on CM1 / Module1A - to PI4 201 * uart7 is exposed on CM1 / Module1A - to PI40 206 * pin 46 - GPIO22 - uart7_tx_m2 202 * pin 46 - GPIO22 - uart7_tx_m2 207 * pin 47 - GPIO23 - uart7_rx_m2 203 * pin 47 - GPIO23 - uart7_rx_m2 208 */ 204 */ 209 &uart7 { 205 &uart7 { 210 status = "okay"; 206 status = "okay"; 211 }; 207 }; 212 208 213 &usb2phy0 { 209 &usb2phy0 { 214 status = "okay"; 210 status = "okay"; 215 }; 211 }; 216 212 217 &usb2phy0_otg { 213 &usb2phy0_otg { 218 phy-supply = <&vcc5v0_usb>; 214 phy-supply = <&vcc5v0_usb>; 219 status = "okay"; 215 status = "okay"; 220 }; 216 }; 221 217 222 &usb_host0_xhci { 218 &usb_host0_xhci { 223 status = "okay"; 219 status = "okay"; 224 }; 220 }; 225 221 226 &vbus { 222 &vbus { 227 vin-supply = <&vcc5v0_usb>; 223 vin-supply = <&vcc5v0_usb>; 228 }; 224 }; 229 225 230 &vcc3v3_sd { 226 &vcc3v3_sd { 231 regulator-always-on; 227 regulator-always-on; 232 regulator-boot-on; 228 regulator-boot-on; 233 regulator-min-microvolt = <3300000>; 229 regulator-min-microvolt = <3300000>; 234 regulator-max-microvolt = <3300000>; 230 regulator-max-microvolt = <3300000>; 235 status = "okay"; 231 status = "okay"; 236 }; 232 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.