1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2021 Vyacheslav Bocharov <adeep@lexina.in> 4 * Copyright (c) 2020 JetHome 5 * Author: Aleksandr Kazantsev <ak@tvip.ru> 6 * Author: Alexey Shevelkin <ash@tvip.ru> 7 * Author: Vyacheslav Bocharov <adeep@lexina.in> 8 */ 9 10/dts-v1/; 11 12#include "meson-axg.dtsi" 13#include <dt-bindings/input/input.h> 14#include <dt-bindings/thermal/thermal.h> 15 16/ { 17 compatible = "jethome,jethub-j100", "amlogic,a113d", "amlogic,meson-axg"; 18 model = "JetHome JetHub J100"; 19 aliases { 20 serial0 = &uart_AO; /* Console */ 21 serial2 = &uart_AO_B; /* External UART (Wireless Module) */ 22 ethernet0 = ðmac; 23 }; 24 25 chosen { 26 stdout-path = "serial0:115200n8"; 27 }; 28 29 /* 1024MB RAM */ 30 memory@0 { 31 device_type = "memory"; 32 reg = <0x0 0x0 0x0 0x40000000>; 33 }; 34 35 reserved-memory { 36 linux,cma { 37 size = <0x0 0x400000>; 38 }; 39 }; 40 41 emmc_pwrseq: emmc-pwrseq { 42 compatible = "mmc-pwrseq-emmc"; 43 reset-gpios = <&gpio BOOT_9 GPIO_ACTIVE_LOW>; 44 }; 45 46 vcc_3v3: regulator-vcc_3v3 { 47 compatible = "regulator-fixed"; 48 regulator-name = "VCC_3V3"; 49 regulator-min-microvolt = <3300000>; 50 regulator-max-microvolt = <3300000>; 51 vin-supply = <&vddao_3v3>; 52 regulator-always-on; 53 }; 54 55 vcc_5v: regulator-vcc_5v { 56 compatible = "regulator-fixed"; 57 regulator-name = "VCC5V"; 58 regulator-min-microvolt = <5000000>; 59 regulator-max-microvolt = <5000000>; 60 regulator-always-on; 61 }; 62 63 vddao_3v3: regulator-vddao_3v3 { 64 compatible = "regulator-fixed"; 65 regulator-name = "VDDAO_3V3"; 66 regulator-min-microvolt = <3300000>; 67 regulator-max-microvolt = <3300000>; 68 vin-supply = <&vcc_5v>; 69 regulator-always-on; 70 }; 71 72 vddio_ao18: regulator-vddio_ao18 { 73 compatible = "regulator-fixed"; 74 regulator-name = "VDDIO_AO18"; 75 regulator-min-microvolt = <1800000>; 76 regulator-max-microvolt = <1800000>; 77 vin-supply = <&vddao_3v3>; 78 regulator-always-on; 79 }; 80 81 vddio_boot: regulator-vddio_boot { 82 compatible = "regulator-fixed"; 83 regulator-name = "VDDIO_BOOT"; 84 regulator-min-microvolt = <3300000>; 85 regulator-max-microvolt = <3300000>; 86 vin-supply = <&vddao_3v3>; 87 regulator-always-on; 88 }; 89 90 vccq_1v8: regulator-vccq_1v8 { 91 compatible = "regulator-fixed"; 92 regulator-name = "VCCQ_1V8"; 93 regulator-min-microvolt = <1800000>; 94 regulator-max-microvolt = <1800000>; 95 vin-supply = <&vddao_3v3>; 96 regulator-always-on; 97 }; 98 99 usb_pwr: regulator-usb_pwr { 100 compatible = "regulator-fixed"; 101 regulator-name = "USB_PWR"; 102 regulator-min-microvolt = <5000000>; 103 regulator-max-microvolt = <5000000>; 104 vin-supply = <&vcc_5v>; 105 regulator-always-on; 106 }; 107 108 sdio_pwrseq: sdio-pwrseq { 109 compatible = "mmc-pwrseq-simple"; 110 reset-gpios = <&gpio GPIOX_7 GPIO_ACTIVE_LOW>; 111 clocks = <&wifi32k>; 112 clock-names = "ext_clock"; 113 }; 114 115 wifi32k: wifi32k { 116 compatible = "pwm-clock"; 117 #clock-cells = <0>; 118 clock-frequency = <32768>; 119 pwms = <&pwm_ab 0 30518 0>; /* PWM_A at 32.768KHz */ 120 }; 121 122 thermal-zones { 123 cpu_thermal: cpu-thermal { 124 polling-delay-passive = <250>; 125 polling-delay = <1000>; 126 thermal-sensors = <&scpi_sensors 0>; 127 trips { 128 cpu_passive: cpu-passive { 129 temperature = <70000>; /* millicelsius */ 130 hysteresis = <2000>; /* millicelsius */ 131 type = "passive"; 132 }; 133 134 cpu_hot: cpu-hot { 135 temperature = <80000>; /* millicelsius */ 136 hysteresis = <2000>; /* millicelsius */ 137 type = "hot"; 138 }; 139 140 cpu_critical: cpu-critical { 141 temperature = <100000>; /* millicelsius */ 142 hysteresis = <2000>; /* millicelsius */ 143 type = "critical"; 144 }; 145 }; 146 147 cpu_cooling_maps: cooling-maps { 148 map0 { 149 trip = <&cpu_passive>; 150 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 151 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 152 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 153 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 154 }; 155 156 map1 { 157 trip = <&cpu_hot>; 158 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 159 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 160 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 161 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 162 }; 163 }; 164 }; 165 }; 166 167 onewire { 168 compatible = "w1-gpio"; 169 gpios = <&gpio GPIOA_14 GPIO_ACTIVE_HIGH>; 170 #gpio-cells = <1>; 171 }; 172}; 173 174&efuse { 175 sn: sn@32 { 176 reg = <0x32 0x20>; 177 }; 178 179 eth_mac: eth_mac@0 { 180 reg = <0x0 0x6>; 181 }; 182 183 bt_mac: bt_mac@6 { 184 reg = <0x6 0x6>; 185 }; 186 187 wifi_mac: wifi_mac@c { 188 reg = <0xc 0x6>; 189 }; 190 191 bid: bid@12 { 192 reg = <0x12 0x20>; 193 }; 194}; 195 196ðmac { 197 status = "okay"; 198 pinctrl-0 = <ð_rmii_x_pins>; 199 pinctrl-names = "default"; 200 phy-handle = <ð_phy0>; 201 phy-mode = "rmii"; 202 203 mdio { 204 compatible = "snps,dwmac-mdio"; 205 #address-cells = <1>; 206 #size-cells = <0>; 207 208 /* ICPlus IP101A/G Ethernet PHY (vendor_id=0x0243, model_id=0x0c54) */ 209 eth_phy0: ethernet-phy@0 { 210 /* compatible = "ethernet-phy-id0243.0c54";*/ 211 max-speed = <100>; 212 reg = <0>; 213 214 reset-assert-us = <10000>; 215 reset-deassert-us = <10000>; 216 reset-gpios = <&gpio GPIOZ_5 GPIO_ACTIVE_LOW>; 217 }; 218 }; 219}; 220 221/* Internal I2C bus (on CPU module) */ 222&i2c1 { 223 status = "okay"; 224 pinctrl-0 = <&i2c1_z_pins>; 225 pinctrl-names = "default"; 226 227 /* RTC */ 228 pcf8563: pcf8563@51 { 229 compatible = "nxp,pcf8563"; 230 reg = <0x51>; 231 status = "okay"; 232 }; 233}; 234 235/* Peripheral I2C bus (on motherboard) */ 236&i2c_AO { 237 status = "okay"; 238 pinctrl-0 = <&i2c_ao_sck_10_pins>, <&i2c_ao_sda_11_pins>; 239 pinctrl-names = "default"; 240}; 241 242&pwm_ab { 243 status = "okay"; 244 pinctrl-0 = <&pwm_a_x20_pins>; 245 pinctrl-names = "default"; 246}; 247 248/* wifi module */ 249&sd_emmc_b { 250 status = "okay"; 251 #address-cells = <1>; 252 #size-cells = <0>; 253 254 pinctrl-0 = <&sdio_pins>; 255 pinctrl-1 = <&sdio_clk_gate_pins>; 256 pinctrl-names = "default", "clk-gate"; 257 258 bus-width = <4>; 259 cap-sd-highspeed; 260 max-frequency = <50000000>; 261 non-removable; 262 disable-wp; 263 264 mmc-pwrseq = <&sdio_pwrseq>; 265 266 vmmc-supply = <&vddao_3v3>; 267 vqmmc-supply = <&vddio_boot>; 268 269 brcmf: wifi@1 { 270 reg = <1>; 271 compatible = "brcm,bcm4329-fmac"; 272 }; 273}; 274 275/* emmc storage */ 276&sd_emmc_c { 277 status = "okay"; 278 pinctrl-0 = <&emmc_pins>, <&emmc_ds_pins>; 279 pinctrl-1 = <&emmc_clk_gate_pins>; 280 pinctrl-names = "default", "clk-gate"; 281 282 bus-width = <8>; 283 cap-mmc-highspeed; 284 max-frequency = <200000000>; 285 non-removable; 286 disable-wp; 287 mmc-ddr-1_8v; 288 mmc-hs200-1_8v; 289 290 mmc-pwrseq = <&emmc_pwrseq>; 291 292 vmmc-supply = <&vcc_3v3>; 293 vqmmc-supply = <&vccq_1v8>; 294}; 295 296/* UART Bluetooth */ 297&uart_B { 298 status = "okay"; 299 pinctrl-0 = <&uart_b_z_pins>, <&uart_b_z_cts_rts_pins>; 300 pinctrl-names = "default"; 301 uart-has-rtscts; 302 303 bluetooth { 304 compatible = "brcm,bcm43438-bt"; 305 shutdown-gpios = <&gpio GPIOZ_7 GPIO_ACTIVE_HIGH>; 306 }; 307}; 308 309/* UART Console */ 310&uart_AO { 311 status = "okay"; 312 pinctrl-0 = <&uart_ao_a_pins>; 313 pinctrl-names = "default"; 314}; 315 316/* UART Wireless module */ 317&uart_AO_B { 318 status = "okay"; 319 pinctrl-0 = <&uart_ao_b_pins>; 320 pinctrl-names = "default"; 321}; 322 323&usb { 324 status = "okay"; 325 phy-supply = <&usb_pwr>; 326}; 327 328&spicc1 { 329 status = "okay"; 330 pinctrl-0 = <&spi1_x_pins>, <&spi1_ss0_x_pins>; 331 pinctrl-names = "default"; 332}; 333 334&gpio { 335 gpio-line-names = 336 "", "", "", "", "", // 0 - 4 337 "", "", "", "", "", // 5 - 9 338 "UserButton", "", "", "", "", // 10 - 14 339 "", "", "", "", "", // 15 - 19 340 "", "", "", "", "", // 20 - 24 341 "", "LedRed", "LedGreen", "Output3", "Output2", // 25 - 29 342 "Output1", "", "", "", "", // 30 - 34 343 "", "ZigBeeBOOT", "", "", "", // 35 - 39 344 "1Wire", "ZigBeeRESET", "", "Input4", "Input3", // 40 - 44 345 "Input2", "Input1", "", "", "", // 45 - 49 346 "", "", "", "", "", // 50 - 54 347 "", "", "", "", "", // 55 - 59 348 "", "", "", "", "", // 60 - 64 349 "", "", "", "", "", // 65 - 69 350 "", "", "", "", "", // 70 - 74 351 "", "", "", "", "", // 75 - 79 352 "", "", "", "", "", // 80 - 84 353 "", ""; // 85-86 354}; 355 356&cpu0 { 357 #cooling-cells = <2>; 358}; 359 360&cpu1 { 361 #cooling-cells = <2>; 362}; 363 364&cpu2 { 365 #cooling-cells = <2>; 366}; 367 368&cpu3 { 369 #cooling-cells = <2>; 370}; 371