1ac9a37e2SJisheng Zhang// SPDX-License-Identifier: GPL-2.0 OR MIT 2ac9a37e2SJisheng Zhang/* 3ac9a37e2SJisheng Zhang * Copyright (C) 2022 StarFive Technology Co., Ltd. 4ac9a37e2SJisheng Zhang * Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk> 5ac9a37e2SJisheng Zhang */ 6ac9a37e2SJisheng Zhang 7ac9a37e2SJisheng Zhang/dts-v1/; 8ac9a37e2SJisheng Zhang#include "jh7110.dtsi" 9ac9a37e2SJisheng Zhang#include "jh7110-pinfunc.h" 10ac9a37e2SJisheng Zhang#include <dt-bindings/gpio/gpio.h> 11ac9a37e2SJisheng Zhang 12ac9a37e2SJisheng Zhang/ { 13ac9a37e2SJisheng Zhang aliases { 14ac9a37e2SJisheng Zhang ethernet0 = &gmac0; 15ac9a37e2SJisheng Zhang i2c0 = &i2c0; 16ac9a37e2SJisheng Zhang i2c2 = &i2c2; 17ac9a37e2SJisheng Zhang i2c5 = &i2c5; 18ac9a37e2SJisheng Zhang i2c6 = &i2c6; 19ac9a37e2SJisheng Zhang mmc0 = &mmc0; 20ac9a37e2SJisheng Zhang mmc1 = &mmc1; 21ac9a37e2SJisheng Zhang serial0 = &uart0; 22ac9a37e2SJisheng Zhang }; 23ac9a37e2SJisheng Zhang 24ac9a37e2SJisheng Zhang chosen { 25ac9a37e2SJisheng Zhang stdout-path = "serial0:115200n8"; 26ac9a37e2SJisheng Zhang }; 27ac9a37e2SJisheng Zhang 28ac9a37e2SJisheng Zhang memory@40000000 { 29ac9a37e2SJisheng Zhang device_type = "memory"; 30ac9a37e2SJisheng Zhang reg = <0x0 0x40000000 0x1 0x0>; 31ac9a37e2SJisheng Zhang }; 32ac9a37e2SJisheng Zhang 33ac9a37e2SJisheng Zhang gpio-restart { 34ac9a37e2SJisheng Zhang compatible = "gpio-restart"; 35ac9a37e2SJisheng Zhang gpios = <&sysgpio 35 GPIO_ACTIVE_HIGH>; 36ac9a37e2SJisheng Zhang priority = <224>; 37ac9a37e2SJisheng Zhang }; 38ac9a37e2SJisheng Zhang 39ac9a37e2SJisheng Zhang pwmdac_codec: audio-codec { 40ac9a37e2SJisheng Zhang compatible = "linux,spdif-dit"; 41ac9a37e2SJisheng Zhang #sound-dai-cells = <0>; 42ac9a37e2SJisheng Zhang }; 43ac9a37e2SJisheng Zhang 44ac9a37e2SJisheng Zhang sound { 45ac9a37e2SJisheng Zhang compatible = "simple-audio-card"; 46ac9a37e2SJisheng Zhang simple-audio-card,name = "StarFive-PWMDAC-Sound-Card"; 47ac9a37e2SJisheng Zhang #address-cells = <1>; 48ac9a37e2SJisheng Zhang #size-cells = <0>; 49ac9a37e2SJisheng Zhang 50ac9a37e2SJisheng Zhang simple-audio-card,dai-link@0 { 51ac9a37e2SJisheng Zhang reg = <0>; 52ac9a37e2SJisheng Zhang format = "left_j"; 53ac9a37e2SJisheng Zhang bitclock-master = <&sndcpu0>; 54ac9a37e2SJisheng Zhang frame-master = <&sndcpu0>; 55ac9a37e2SJisheng Zhang 56ac9a37e2SJisheng Zhang sndcpu0: cpu { 57ac9a37e2SJisheng Zhang sound-dai = <&pwmdac>; 58ac9a37e2SJisheng Zhang }; 59ac9a37e2SJisheng Zhang 60ac9a37e2SJisheng Zhang codec { 61ac9a37e2SJisheng Zhang sound-dai = <&pwmdac_codec>; 62ac9a37e2SJisheng Zhang }; 63ac9a37e2SJisheng Zhang }; 64ac9a37e2SJisheng Zhang }; 65ac9a37e2SJisheng Zhang}; 66ac9a37e2SJisheng Zhang 67ac9a37e2SJisheng Zhang&cpus { 68ac9a37e2SJisheng Zhang timebase-frequency = <4000000>; 69ac9a37e2SJisheng Zhang}; 70ac9a37e2SJisheng Zhang 71ac9a37e2SJisheng Zhang&dvp_clk { 72ac9a37e2SJisheng Zhang clock-frequency = <74250000>; 73ac9a37e2SJisheng Zhang}; 74ac9a37e2SJisheng Zhang 75ac9a37e2SJisheng Zhang&gmac0_rgmii_rxin { 76ac9a37e2SJisheng Zhang clock-frequency = <125000000>; 77ac9a37e2SJisheng Zhang}; 78ac9a37e2SJisheng Zhang 79ac9a37e2SJisheng Zhang&gmac0_rmii_refin { 80ac9a37e2SJisheng Zhang clock-frequency = <50000000>; 81ac9a37e2SJisheng Zhang}; 82ac9a37e2SJisheng Zhang 83ac9a37e2SJisheng Zhang&gmac1_rgmii_rxin { 84ac9a37e2SJisheng Zhang clock-frequency = <125000000>; 85ac9a37e2SJisheng Zhang}; 86ac9a37e2SJisheng Zhang 87ac9a37e2SJisheng Zhang&gmac1_rmii_refin { 88ac9a37e2SJisheng Zhang clock-frequency = <50000000>; 89ac9a37e2SJisheng Zhang}; 90ac9a37e2SJisheng Zhang 91ac9a37e2SJisheng Zhang&hdmitx0_pixelclk { 92ac9a37e2SJisheng Zhang clock-frequency = <297000000>; 93ac9a37e2SJisheng Zhang}; 94ac9a37e2SJisheng Zhang 95ac9a37e2SJisheng Zhang&i2srx_bclk_ext { 96ac9a37e2SJisheng Zhang clock-frequency = <12288000>; 97ac9a37e2SJisheng Zhang}; 98ac9a37e2SJisheng Zhang 99ac9a37e2SJisheng Zhang&i2srx_lrck_ext { 100ac9a37e2SJisheng Zhang clock-frequency = <192000>; 101ac9a37e2SJisheng Zhang}; 102ac9a37e2SJisheng Zhang 103ac9a37e2SJisheng Zhang&i2stx_bclk_ext { 104ac9a37e2SJisheng Zhang clock-frequency = <12288000>; 105ac9a37e2SJisheng Zhang}; 106ac9a37e2SJisheng Zhang 107ac9a37e2SJisheng Zhang&i2stx_lrck_ext { 108ac9a37e2SJisheng Zhang clock-frequency = <192000>; 109ac9a37e2SJisheng Zhang}; 110ac9a37e2SJisheng Zhang 111ac9a37e2SJisheng Zhang&mclk_ext { 112ac9a37e2SJisheng Zhang clock-frequency = <12288000>; 113ac9a37e2SJisheng Zhang}; 114ac9a37e2SJisheng Zhang 115ac9a37e2SJisheng Zhang&osc { 116ac9a37e2SJisheng Zhang clock-frequency = <24000000>; 117ac9a37e2SJisheng Zhang}; 118ac9a37e2SJisheng Zhang 119ac9a37e2SJisheng Zhang&rtc_osc { 120ac9a37e2SJisheng Zhang clock-frequency = <32768>; 121ac9a37e2SJisheng Zhang}; 122ac9a37e2SJisheng Zhang 123ac9a37e2SJisheng Zhang&tdm_ext { 124ac9a37e2SJisheng Zhang clock-frequency = <49152000>; 125ac9a37e2SJisheng Zhang}; 126ac9a37e2SJisheng Zhang 127ac9a37e2SJisheng Zhang&camss { 128ac9a37e2SJisheng Zhang assigned-clocks = <&ispcrg JH7110_ISPCLK_DOM4_APB_FUNC>, 129ac9a37e2SJisheng Zhang <&ispcrg JH7110_ISPCLK_MIPI_RX0_PXL>; 130ac9a37e2SJisheng Zhang assigned-clock-rates = <49500000>, <198000000>; 131ac9a37e2SJisheng Zhang status = "okay"; 132ac9a37e2SJisheng Zhang 133ac9a37e2SJisheng Zhang ports { 134ac9a37e2SJisheng Zhang #address-cells = <1>; 135ac9a37e2SJisheng Zhang #size-cells = <0>; 136ac9a37e2SJisheng Zhang 137ac9a37e2SJisheng Zhang port@0 { 138ac9a37e2SJisheng Zhang reg = <0>; 139ac9a37e2SJisheng Zhang }; 140ac9a37e2SJisheng Zhang 141ac9a37e2SJisheng Zhang port@1 { 142ac9a37e2SJisheng Zhang reg = <1>; 143ac9a37e2SJisheng Zhang 144ac9a37e2SJisheng Zhang camss_from_csi2rx: endpoint { 145ac9a37e2SJisheng Zhang remote-endpoint = <&csi2rx_to_camss>; 146ac9a37e2SJisheng Zhang }; 147ac9a37e2SJisheng Zhang }; 148ac9a37e2SJisheng Zhang }; 149ac9a37e2SJisheng Zhang}; 150ac9a37e2SJisheng Zhang 151ac9a37e2SJisheng Zhang&csi2rx { 152ac9a37e2SJisheng Zhang assigned-clocks = <&ispcrg JH7110_ISPCLK_VIN_SYS>; 153ac9a37e2SJisheng Zhang assigned-clock-rates = <297000000>; 154ac9a37e2SJisheng Zhang status = "okay"; 155ac9a37e2SJisheng Zhang 156ac9a37e2SJisheng Zhang ports { 157ac9a37e2SJisheng Zhang #address-cells = <1>; 158ac9a37e2SJisheng Zhang #size-cells = <0>; 159ac9a37e2SJisheng Zhang 160ac9a37e2SJisheng Zhang port@0 { 161ac9a37e2SJisheng Zhang reg = <0>; 162ac9a37e2SJisheng Zhang 163ac9a37e2SJisheng Zhang /* remote MIPI sensor endpoint */ 164ac9a37e2SJisheng Zhang }; 165ac9a37e2SJisheng Zhang 166ac9a37e2SJisheng Zhang port@1 { 167ac9a37e2SJisheng Zhang reg = <1>; 168ac9a37e2SJisheng Zhang 169ac9a37e2SJisheng Zhang csi2rx_to_camss: endpoint { 170ac9a37e2SJisheng Zhang remote-endpoint = <&camss_from_csi2rx>; 171ac9a37e2SJisheng Zhang }; 172ac9a37e2SJisheng Zhang }; 173ac9a37e2SJisheng Zhang }; 174ac9a37e2SJisheng Zhang}; 175ac9a37e2SJisheng Zhang 176ac9a37e2SJisheng Zhang&gmac0 { 177ac9a37e2SJisheng Zhang phy-handle = <&phy0>; 178ac9a37e2SJisheng Zhang phy-mode = "rgmii-id"; 179ac9a37e2SJisheng Zhang status = "okay"; 180ac9a37e2SJisheng Zhang 181ac9a37e2SJisheng Zhang mdio { 182ac9a37e2SJisheng Zhang #address-cells = <1>; 183ac9a37e2SJisheng Zhang #size-cells = <0>; 184ac9a37e2SJisheng Zhang compatible = "snps,dwmac-mdio"; 185ac9a37e2SJisheng Zhang 186ac9a37e2SJisheng Zhang phy0: ethernet-phy@0 { 187ac9a37e2SJisheng Zhang reg = <0>; 188ac9a37e2SJisheng Zhang }; 189ac9a37e2SJisheng Zhang }; 190ac9a37e2SJisheng Zhang}; 191ac9a37e2SJisheng Zhang 192ac9a37e2SJisheng Zhang&i2c0 { 193ac9a37e2SJisheng Zhang clock-frequency = <100000>; 194ac9a37e2SJisheng Zhang i2c-sda-hold-time-ns = <300>; 195ac9a37e2SJisheng Zhang i2c-sda-falling-time-ns = <510>; 196ac9a37e2SJisheng Zhang i2c-scl-falling-time-ns = <510>; 197ac9a37e2SJisheng Zhang pinctrl-names = "default"; 198ac9a37e2SJisheng Zhang pinctrl-0 = <&i2c0_pins>; 199ac9a37e2SJisheng Zhang status = "okay"; 200ac9a37e2SJisheng Zhang}; 201ac9a37e2SJisheng Zhang 202ac9a37e2SJisheng Zhang&i2c2 { 203ac9a37e2SJisheng Zhang clock-frequency = <100000>; 204ac9a37e2SJisheng Zhang i2c-sda-hold-time-ns = <300>; 205ac9a37e2SJisheng Zhang i2c-sda-falling-time-ns = <510>; 206ac9a37e2SJisheng Zhang i2c-scl-falling-time-ns = <510>; 207ac9a37e2SJisheng Zhang pinctrl-names = "default"; 208ac9a37e2SJisheng Zhang pinctrl-0 = <&i2c2_pins>; 209ac9a37e2SJisheng Zhang status = "okay"; 210ac9a37e2SJisheng Zhang}; 211ac9a37e2SJisheng Zhang 212ac9a37e2SJisheng Zhang&i2c5 { 213ac9a37e2SJisheng Zhang clock-frequency = <100000>; 214ac9a37e2SJisheng Zhang i2c-sda-hold-time-ns = <300>; 215ac9a37e2SJisheng Zhang i2c-sda-falling-time-ns = <510>; 216ac9a37e2SJisheng Zhang i2c-scl-falling-time-ns = <510>; 217ac9a37e2SJisheng Zhang pinctrl-names = "default"; 218ac9a37e2SJisheng Zhang pinctrl-0 = <&i2c5_pins>; 219ac9a37e2SJisheng Zhang status = "okay"; 220ac9a37e2SJisheng Zhang 221ac9a37e2SJisheng Zhang axp15060: pmic@36 { 222ac9a37e2SJisheng Zhang compatible = "x-powers,axp15060"; 223ac9a37e2SJisheng Zhang reg = <0x36>; 224ac9a37e2SJisheng Zhang interrupt-controller; 225ac9a37e2SJisheng Zhang #interrupt-cells = <1>; 226ac9a37e2SJisheng Zhang 227ac9a37e2SJisheng Zhang regulators { 228ac9a37e2SJisheng Zhang vcc_3v3: dcdc1 { 229ac9a37e2SJisheng Zhang regulator-boot-on; 230ac9a37e2SJisheng Zhang regulator-always-on; 231ac9a37e2SJisheng Zhang regulator-min-microvolt = <3300000>; 232ac9a37e2SJisheng Zhang regulator-max-microvolt = <3300000>; 233ac9a37e2SJisheng Zhang regulator-name = "vcc_3v3"; 234ac9a37e2SJisheng Zhang }; 235ac9a37e2SJisheng Zhang 236ac9a37e2SJisheng Zhang vdd_cpu: dcdc2 { 237ac9a37e2SJisheng Zhang regulator-always-on; 238ac9a37e2SJisheng Zhang regulator-min-microvolt = <500000>; 239ac9a37e2SJisheng Zhang regulator-max-microvolt = <1540000>; 240ac9a37e2SJisheng Zhang regulator-name = "vdd-cpu"; 241ac9a37e2SJisheng Zhang }; 242ac9a37e2SJisheng Zhang 243ac9a37e2SJisheng Zhang emmc_vdd: aldo4 { 244ac9a37e2SJisheng Zhang regulator-boot-on; 245ac9a37e2SJisheng Zhang regulator-always-on; 246ac9a37e2SJisheng Zhang regulator-min-microvolt = <1800000>; 247ac9a37e2SJisheng Zhang regulator-max-microvolt = <1800000>; 248ac9a37e2SJisheng Zhang regulator-name = "emmc_vdd"; 249ac9a37e2SJisheng Zhang }; 250ac9a37e2SJisheng Zhang }; 251ac9a37e2SJisheng Zhang }; 252ac9a37e2SJisheng Zhang}; 253ac9a37e2SJisheng Zhang 254ac9a37e2SJisheng Zhang&i2c6 { 255ac9a37e2SJisheng Zhang clock-frequency = <100000>; 256ac9a37e2SJisheng Zhang i2c-sda-hold-time-ns = <300>; 257ac9a37e2SJisheng Zhang i2c-sda-falling-time-ns = <510>; 258ac9a37e2SJisheng Zhang i2c-scl-falling-time-ns = <510>; 259ac9a37e2SJisheng Zhang pinctrl-names = "default"; 260ac9a37e2SJisheng Zhang pinctrl-0 = <&i2c6_pins>; 261ac9a37e2SJisheng Zhang status = "okay"; 262ac9a37e2SJisheng Zhang}; 263ac9a37e2SJisheng Zhang 264ac9a37e2SJisheng Zhang&mmc0 { 265ac9a37e2SJisheng Zhang max-frequency = <100000000>; 266ac9a37e2SJisheng Zhang assigned-clocks = <&syscrg JH7110_SYSCLK_SDIO0_SDCARD>; 267ac9a37e2SJisheng Zhang assigned-clock-rates = <50000000>; 268ac9a37e2SJisheng Zhang bus-width = <8>; 269ac9a37e2SJisheng Zhang cap-mmc-highspeed; 270ac9a37e2SJisheng Zhang mmc-ddr-1_8v; 271ac9a37e2SJisheng Zhang mmc-hs200-1_8v; 272ac9a37e2SJisheng Zhang cap-mmc-hw-reset; 273ac9a37e2SJisheng Zhang post-power-on-delay-ms = <200>; 274ac9a37e2SJisheng Zhang pinctrl-names = "default"; 275ac9a37e2SJisheng Zhang pinctrl-0 = <&mmc0_pins>; 276ac9a37e2SJisheng Zhang vmmc-supply = <&vcc_3v3>; 277ac9a37e2SJisheng Zhang vqmmc-supply = <&emmc_vdd>; 278ac9a37e2SJisheng Zhang status = "okay"; 279ac9a37e2SJisheng Zhang}; 280ac9a37e2SJisheng Zhang 281ac9a37e2SJisheng Zhang&mmc1 { 282ac9a37e2SJisheng Zhang max-frequency = <100000000>; 283ac9a37e2SJisheng Zhang assigned-clocks = <&syscrg JH7110_SYSCLK_SDIO1_SDCARD>; 284ac9a37e2SJisheng Zhang assigned-clock-rates = <50000000>; 285ac9a37e2SJisheng Zhang bus-width = <4>; 286ac9a37e2SJisheng Zhang no-sdio; 287ac9a37e2SJisheng Zhang no-mmc; 288ac9a37e2SJisheng Zhang cd-gpios = <&sysgpio 41 GPIO_ACTIVE_LOW>; 289ac9a37e2SJisheng Zhang disable-wp; 290ac9a37e2SJisheng Zhang cap-sd-highspeed; 291ac9a37e2SJisheng Zhang post-power-on-delay-ms = <200>; 292ac9a37e2SJisheng Zhang pinctrl-names = "default"; 293ac9a37e2SJisheng Zhang pinctrl-0 = <&mmc1_pins>; 294ac9a37e2SJisheng Zhang status = "okay"; 295ac9a37e2SJisheng Zhang}; 296ac9a37e2SJisheng Zhang 297*2904244aSMinda Chen&pcie0 { 298*2904244aSMinda Chen perst-gpios = <&sysgpio 26 GPIO_ACTIVE_LOW>; 299*2904244aSMinda Chen phys = <&pciephy0>; 300*2904244aSMinda Chen pinctrl-names = "default"; 301*2904244aSMinda Chen pinctrl-0 = <&pcie0_pins>; 302*2904244aSMinda Chen}; 303*2904244aSMinda Chen 304*2904244aSMinda Chen&pcie1 { 305*2904244aSMinda Chen perst-gpios = <&sysgpio 28 GPIO_ACTIVE_LOW>; 306*2904244aSMinda Chen phys = <&pciephy1>; 307*2904244aSMinda Chen pinctrl-names = "default"; 308*2904244aSMinda Chen pinctrl-0 = <&pcie1_pins>; 309*2904244aSMinda Chen}; 310*2904244aSMinda Chen 311ac9a37e2SJisheng Zhang&pwmdac { 312ac9a37e2SJisheng Zhang pinctrl-names = "default"; 313ac9a37e2SJisheng Zhang pinctrl-0 = <&pwmdac_pins>; 314ac9a37e2SJisheng Zhang status = "okay"; 315ac9a37e2SJisheng Zhang}; 316ac9a37e2SJisheng Zhang 317ac9a37e2SJisheng Zhang&qspi { 318ac9a37e2SJisheng Zhang #address-cells = <1>; 319ac9a37e2SJisheng Zhang #size-cells = <0>; 320ac9a37e2SJisheng Zhang status = "okay"; 321ac9a37e2SJisheng Zhang 322ac9a37e2SJisheng Zhang nor_flash: flash@0 { 323ac9a37e2SJisheng Zhang compatible = "jedec,spi-nor"; 324ac9a37e2SJisheng Zhang reg = <0>; 325ac9a37e2SJisheng Zhang cdns,read-delay = <5>; 326ac9a37e2SJisheng Zhang spi-max-frequency = <12000000>; 327ac9a37e2SJisheng Zhang cdns,tshsl-ns = <1>; 328ac9a37e2SJisheng Zhang cdns,tsd2d-ns = <1>; 329ac9a37e2SJisheng Zhang cdns,tchsh-ns = <1>; 330ac9a37e2SJisheng Zhang cdns,tslch-ns = <1>; 331ac9a37e2SJisheng Zhang 332ac9a37e2SJisheng Zhang partitions { 333ac9a37e2SJisheng Zhang compatible = "fixed-partitions"; 334ac9a37e2SJisheng Zhang #address-cells = <1>; 335ac9a37e2SJisheng Zhang #size-cells = <1>; 336ac9a37e2SJisheng Zhang 337ac9a37e2SJisheng Zhang spl@0 { 338edbce932SMatthias Brugger reg = <0x0 0xf0000>; 339ac9a37e2SJisheng Zhang }; 340ac9a37e2SJisheng Zhang uboot-env@f0000 { 341ac9a37e2SJisheng Zhang reg = <0xf0000 0x10000>; 342ac9a37e2SJisheng Zhang }; 343ac9a37e2SJisheng Zhang uboot@100000 { 344edbce932SMatthias Brugger reg = <0x100000 0xf00000>; 345ac9a37e2SJisheng Zhang }; 346ac9a37e2SJisheng Zhang }; 347ac9a37e2SJisheng Zhang }; 348ac9a37e2SJisheng Zhang}; 349ac9a37e2SJisheng Zhang 350ac9a37e2SJisheng Zhang&pwm { 351ac9a37e2SJisheng Zhang pinctrl-names = "default"; 352ac9a37e2SJisheng Zhang pinctrl-0 = <&pwm_pins>; 353ac9a37e2SJisheng Zhang status = "okay"; 354ac9a37e2SJisheng Zhang}; 355ac9a37e2SJisheng Zhang 356ac9a37e2SJisheng Zhang&spi0 { 357ac9a37e2SJisheng Zhang pinctrl-names = "default"; 358ac9a37e2SJisheng Zhang pinctrl-0 = <&spi0_pins>; 359ac9a37e2SJisheng Zhang status = "okay"; 360ac9a37e2SJisheng Zhang 361ac9a37e2SJisheng Zhang spi_dev0: spi@0 { 362ac9a37e2SJisheng Zhang compatible = "rohm,dh2228fv"; 363ac9a37e2SJisheng Zhang reg = <0>; 364ac9a37e2SJisheng Zhang spi-max-frequency = <10000000>; 365ac9a37e2SJisheng Zhang }; 366ac9a37e2SJisheng Zhang}; 367ac9a37e2SJisheng Zhang 368ac9a37e2SJisheng Zhang&sysgpio { 369ac9a37e2SJisheng Zhang i2c0_pins: i2c0-0 { 370ac9a37e2SJisheng Zhang i2c-pins { 371ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(57, GPOUT_LOW, 372ac9a37e2SJisheng Zhang GPOEN_SYS_I2C0_CLK, 373ac9a37e2SJisheng Zhang GPI_SYS_I2C0_CLK)>, 374ac9a37e2SJisheng Zhang <GPIOMUX(58, GPOUT_LOW, 375ac9a37e2SJisheng Zhang GPOEN_SYS_I2C0_DATA, 376ac9a37e2SJisheng Zhang GPI_SYS_I2C0_DATA)>; 377ac9a37e2SJisheng Zhang bias-disable; /* external pull-up */ 378ac9a37e2SJisheng Zhang input-enable; 379ac9a37e2SJisheng Zhang input-schmitt-enable; 380ac9a37e2SJisheng Zhang }; 381ac9a37e2SJisheng Zhang }; 382ac9a37e2SJisheng Zhang 383ac9a37e2SJisheng Zhang i2c2_pins: i2c2-0 { 384ac9a37e2SJisheng Zhang i2c-pins { 385ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(3, GPOUT_LOW, 386ac9a37e2SJisheng Zhang GPOEN_SYS_I2C2_CLK, 387ac9a37e2SJisheng Zhang GPI_SYS_I2C2_CLK)>, 388ac9a37e2SJisheng Zhang <GPIOMUX(2, GPOUT_LOW, 389ac9a37e2SJisheng Zhang GPOEN_SYS_I2C2_DATA, 390ac9a37e2SJisheng Zhang GPI_SYS_I2C2_DATA)>; 391ac9a37e2SJisheng Zhang bias-disable; /* external pull-up */ 392ac9a37e2SJisheng Zhang input-enable; 393ac9a37e2SJisheng Zhang input-schmitt-enable; 394ac9a37e2SJisheng Zhang }; 395ac9a37e2SJisheng Zhang }; 396ac9a37e2SJisheng Zhang 397ac9a37e2SJisheng Zhang i2c5_pins: i2c5-0 { 398ac9a37e2SJisheng Zhang i2c-pins { 399ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(19, GPOUT_LOW, 400ac9a37e2SJisheng Zhang GPOEN_SYS_I2C5_CLK, 401ac9a37e2SJisheng Zhang GPI_SYS_I2C5_CLK)>, 402ac9a37e2SJisheng Zhang <GPIOMUX(20, GPOUT_LOW, 403ac9a37e2SJisheng Zhang GPOEN_SYS_I2C5_DATA, 404ac9a37e2SJisheng Zhang GPI_SYS_I2C5_DATA)>; 405ac9a37e2SJisheng Zhang bias-disable; /* external pull-up */ 406ac9a37e2SJisheng Zhang input-enable; 407ac9a37e2SJisheng Zhang input-schmitt-enable; 408ac9a37e2SJisheng Zhang }; 409ac9a37e2SJisheng Zhang }; 410ac9a37e2SJisheng Zhang 411ac9a37e2SJisheng Zhang i2c6_pins: i2c6-0 { 412ac9a37e2SJisheng Zhang i2c-pins { 413ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(16, GPOUT_LOW, 414ac9a37e2SJisheng Zhang GPOEN_SYS_I2C6_CLK, 415ac9a37e2SJisheng Zhang GPI_SYS_I2C6_CLK)>, 416ac9a37e2SJisheng Zhang <GPIOMUX(17, GPOUT_LOW, 417ac9a37e2SJisheng Zhang GPOEN_SYS_I2C6_DATA, 418ac9a37e2SJisheng Zhang GPI_SYS_I2C6_DATA)>; 419ac9a37e2SJisheng Zhang bias-disable; /* external pull-up */ 420ac9a37e2SJisheng Zhang input-enable; 421ac9a37e2SJisheng Zhang input-schmitt-enable; 422ac9a37e2SJisheng Zhang }; 423ac9a37e2SJisheng Zhang }; 424ac9a37e2SJisheng Zhang 425ac9a37e2SJisheng Zhang mmc0_pins: mmc0-0 { 426ac9a37e2SJisheng Zhang rst-pins { 427ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(62, GPOUT_SYS_SDIO0_RST, 428ac9a37e2SJisheng Zhang GPOEN_ENABLE, 429ac9a37e2SJisheng Zhang GPI_NONE)>; 430ac9a37e2SJisheng Zhang bias-pull-up; 431ac9a37e2SJisheng Zhang drive-strength = <12>; 432ac9a37e2SJisheng Zhang input-disable; 433ac9a37e2SJisheng Zhang input-schmitt-disable; 434ac9a37e2SJisheng Zhang slew-rate = <0>; 435ac9a37e2SJisheng Zhang }; 436ac9a37e2SJisheng Zhang 437ac9a37e2SJisheng Zhang mmc-pins { 438ac9a37e2SJisheng Zhang pinmux = <PINMUX(64, 0)>, 439ac9a37e2SJisheng Zhang <PINMUX(65, 0)>, 440ac9a37e2SJisheng Zhang <PINMUX(66, 0)>, 441ac9a37e2SJisheng Zhang <PINMUX(67, 0)>, 442ac9a37e2SJisheng Zhang <PINMUX(68, 0)>, 443ac9a37e2SJisheng Zhang <PINMUX(69, 0)>, 444ac9a37e2SJisheng Zhang <PINMUX(70, 0)>, 445ac9a37e2SJisheng Zhang <PINMUX(71, 0)>, 446ac9a37e2SJisheng Zhang <PINMUX(72, 0)>, 447ac9a37e2SJisheng Zhang <PINMUX(73, 0)>; 448ac9a37e2SJisheng Zhang bias-pull-up; 449ac9a37e2SJisheng Zhang drive-strength = <12>; 450ac9a37e2SJisheng Zhang input-enable; 451ac9a37e2SJisheng Zhang }; 452ac9a37e2SJisheng Zhang }; 453ac9a37e2SJisheng Zhang 454ac9a37e2SJisheng Zhang mmc1_pins: mmc1-0 { 455ac9a37e2SJisheng Zhang clk-pins { 456ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(10, GPOUT_SYS_SDIO1_CLK, 457ac9a37e2SJisheng Zhang GPOEN_ENABLE, 458ac9a37e2SJisheng Zhang GPI_NONE)>; 459ac9a37e2SJisheng Zhang bias-pull-up; 460ac9a37e2SJisheng Zhang drive-strength = <12>; 461ac9a37e2SJisheng Zhang input-disable; 462ac9a37e2SJisheng Zhang input-schmitt-disable; 463ac9a37e2SJisheng Zhang slew-rate = <0>; 464ac9a37e2SJisheng Zhang }; 465ac9a37e2SJisheng Zhang 466ac9a37e2SJisheng Zhang mmc-pins { 467ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(9, GPOUT_SYS_SDIO1_CMD, 468ac9a37e2SJisheng Zhang GPOEN_SYS_SDIO1_CMD, 469ac9a37e2SJisheng Zhang GPI_SYS_SDIO1_CMD)>, 470ac9a37e2SJisheng Zhang <GPIOMUX(11, GPOUT_SYS_SDIO1_DATA0, 471ac9a37e2SJisheng Zhang GPOEN_SYS_SDIO1_DATA0, 472ac9a37e2SJisheng Zhang GPI_SYS_SDIO1_DATA0)>, 473ac9a37e2SJisheng Zhang <GPIOMUX(12, GPOUT_SYS_SDIO1_DATA1, 474ac9a37e2SJisheng Zhang GPOEN_SYS_SDIO1_DATA1, 475ac9a37e2SJisheng Zhang GPI_SYS_SDIO1_DATA1)>, 476ac9a37e2SJisheng Zhang <GPIOMUX(7, GPOUT_SYS_SDIO1_DATA2, 477ac9a37e2SJisheng Zhang GPOEN_SYS_SDIO1_DATA2, 478ac9a37e2SJisheng Zhang GPI_SYS_SDIO1_DATA2)>, 479ac9a37e2SJisheng Zhang <GPIOMUX(8, GPOUT_SYS_SDIO1_DATA3, 480ac9a37e2SJisheng Zhang GPOEN_SYS_SDIO1_DATA3, 481ac9a37e2SJisheng Zhang GPI_SYS_SDIO1_DATA3)>; 482ac9a37e2SJisheng Zhang bias-pull-up; 483ac9a37e2SJisheng Zhang drive-strength = <12>; 484ac9a37e2SJisheng Zhang input-enable; 485ac9a37e2SJisheng Zhang input-schmitt-enable; 486ac9a37e2SJisheng Zhang slew-rate = <0>; 487ac9a37e2SJisheng Zhang }; 488ac9a37e2SJisheng Zhang }; 489ac9a37e2SJisheng Zhang 490*2904244aSMinda Chen pcie0_pins: pcie0-0 { 491*2904244aSMinda Chen clkreq-pins { 492*2904244aSMinda Chen pinmux = <GPIOMUX(27, GPOUT_LOW, 493*2904244aSMinda Chen GPOEN_DISABLE, 494*2904244aSMinda Chen GPI_NONE)>; 495*2904244aSMinda Chen bias-pull-down; 496*2904244aSMinda Chen drive-strength = <2>; 497*2904244aSMinda Chen input-enable; 498*2904244aSMinda Chen input-schmitt-disable; 499*2904244aSMinda Chen slew-rate = <0>; 500*2904244aSMinda Chen }; 501*2904244aSMinda Chen 502*2904244aSMinda Chen wake-pins { 503*2904244aSMinda Chen pinmux = <GPIOMUX(32, GPOUT_LOW, 504*2904244aSMinda Chen GPOEN_DISABLE, 505*2904244aSMinda Chen GPI_NONE)>; 506*2904244aSMinda Chen bias-pull-up; 507*2904244aSMinda Chen drive-strength = <2>; 508*2904244aSMinda Chen input-enable; 509*2904244aSMinda Chen input-schmitt-disable; 510*2904244aSMinda Chen slew-rate = <0>; 511*2904244aSMinda Chen }; 512*2904244aSMinda Chen }; 513*2904244aSMinda Chen 514*2904244aSMinda Chen pcie1_pins: pcie1-0 { 515*2904244aSMinda Chen clkreq-pins { 516*2904244aSMinda Chen pinmux = <GPIOMUX(29, GPOUT_LOW, 517*2904244aSMinda Chen GPOEN_DISABLE, 518*2904244aSMinda Chen GPI_NONE)>; 519*2904244aSMinda Chen bias-pull-down; 520*2904244aSMinda Chen drive-strength = <2>; 521*2904244aSMinda Chen input-enable; 522*2904244aSMinda Chen input-schmitt-disable; 523*2904244aSMinda Chen slew-rate = <0>; 524*2904244aSMinda Chen }; 525*2904244aSMinda Chen 526*2904244aSMinda Chen wake-pins { 527*2904244aSMinda Chen pinmux = <GPIOMUX(21, GPOUT_LOW, 528*2904244aSMinda Chen GPOEN_DISABLE, 529*2904244aSMinda Chen GPI_NONE)>; 530*2904244aSMinda Chen bias-pull-up; 531*2904244aSMinda Chen drive-strength = <2>; 532*2904244aSMinda Chen input-enable; 533*2904244aSMinda Chen input-schmitt-disable; 534*2904244aSMinda Chen slew-rate = <0>; 535*2904244aSMinda Chen }; 536*2904244aSMinda Chen }; 537*2904244aSMinda Chen 538ac9a37e2SJisheng Zhang pwmdac_pins: pwmdac-0 { 539ac9a37e2SJisheng Zhang pwmdac-pins { 540ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(33, GPOUT_SYS_PWMDAC_LEFT, 541ac9a37e2SJisheng Zhang GPOEN_ENABLE, 542ac9a37e2SJisheng Zhang GPI_NONE)>, 543ac9a37e2SJisheng Zhang <GPIOMUX(34, GPOUT_SYS_PWMDAC_RIGHT, 544ac9a37e2SJisheng Zhang GPOEN_ENABLE, 545ac9a37e2SJisheng Zhang GPI_NONE)>; 546ac9a37e2SJisheng Zhang bias-disable; 547ac9a37e2SJisheng Zhang drive-strength = <2>; 548ac9a37e2SJisheng Zhang input-disable; 549ac9a37e2SJisheng Zhang input-schmitt-disable; 550ac9a37e2SJisheng Zhang slew-rate = <0>; 551ac9a37e2SJisheng Zhang }; 552ac9a37e2SJisheng Zhang }; 553ac9a37e2SJisheng Zhang 554ac9a37e2SJisheng Zhang pwm_pins: pwm-0 { 555ac9a37e2SJisheng Zhang pwm-pins { 556ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(46, GPOUT_SYS_PWM_CHANNEL0, 557ac9a37e2SJisheng Zhang GPOEN_SYS_PWM0_CHANNEL0, 558ac9a37e2SJisheng Zhang GPI_NONE)>, 559ac9a37e2SJisheng Zhang <GPIOMUX(59, GPOUT_SYS_PWM_CHANNEL1, 560ac9a37e2SJisheng Zhang GPOEN_SYS_PWM0_CHANNEL1, 561ac9a37e2SJisheng Zhang GPI_NONE)>; 562ac9a37e2SJisheng Zhang bias-disable; 563ac9a37e2SJisheng Zhang drive-strength = <12>; 564ac9a37e2SJisheng Zhang input-disable; 565ac9a37e2SJisheng Zhang input-schmitt-disable; 566ac9a37e2SJisheng Zhang slew-rate = <0>; 567ac9a37e2SJisheng Zhang }; 568ac9a37e2SJisheng Zhang }; 569ac9a37e2SJisheng Zhang 570ac9a37e2SJisheng Zhang spi0_pins: spi0-0 { 571ac9a37e2SJisheng Zhang mosi-pins { 572ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(52, GPOUT_SYS_SPI0_TXD, 573ac9a37e2SJisheng Zhang GPOEN_ENABLE, 574ac9a37e2SJisheng Zhang GPI_NONE)>; 575ac9a37e2SJisheng Zhang bias-disable; 576ac9a37e2SJisheng Zhang input-disable; 577ac9a37e2SJisheng Zhang input-schmitt-disable; 578ac9a37e2SJisheng Zhang }; 579ac9a37e2SJisheng Zhang 580ac9a37e2SJisheng Zhang miso-pins { 581ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(53, GPOUT_LOW, 582ac9a37e2SJisheng Zhang GPOEN_DISABLE, 583ac9a37e2SJisheng Zhang GPI_SYS_SPI0_RXD)>; 584ac9a37e2SJisheng Zhang bias-pull-up; 585ac9a37e2SJisheng Zhang input-enable; 586ac9a37e2SJisheng Zhang input-schmitt-enable; 587ac9a37e2SJisheng Zhang }; 588ac9a37e2SJisheng Zhang 589ac9a37e2SJisheng Zhang sck-pins { 590ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(48, GPOUT_SYS_SPI0_CLK, 591ac9a37e2SJisheng Zhang GPOEN_ENABLE, 592ac9a37e2SJisheng Zhang GPI_SYS_SPI0_CLK)>; 593ac9a37e2SJisheng Zhang bias-disable; 594ac9a37e2SJisheng Zhang input-disable; 595ac9a37e2SJisheng Zhang input-schmitt-disable; 596ac9a37e2SJisheng Zhang }; 597ac9a37e2SJisheng Zhang 598ac9a37e2SJisheng Zhang ss-pins { 599ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(49, GPOUT_SYS_SPI0_FSS, 600ac9a37e2SJisheng Zhang GPOEN_ENABLE, 601ac9a37e2SJisheng Zhang GPI_SYS_SPI0_FSS)>; 602ac9a37e2SJisheng Zhang bias-disable; 603ac9a37e2SJisheng Zhang input-disable; 604ac9a37e2SJisheng Zhang input-schmitt-disable; 605ac9a37e2SJisheng Zhang }; 606ac9a37e2SJisheng Zhang }; 607ac9a37e2SJisheng Zhang 608ac9a37e2SJisheng Zhang uart0_pins: uart0-0 { 609ac9a37e2SJisheng Zhang tx-pins { 610ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(5, GPOUT_SYS_UART0_TX, 611ac9a37e2SJisheng Zhang GPOEN_ENABLE, 612ac9a37e2SJisheng Zhang GPI_NONE)>; 613ac9a37e2SJisheng Zhang bias-disable; 614ac9a37e2SJisheng Zhang drive-strength = <12>; 615ac9a37e2SJisheng Zhang input-disable; 616ac9a37e2SJisheng Zhang input-schmitt-disable; 617ac9a37e2SJisheng Zhang slew-rate = <0>; 618ac9a37e2SJisheng Zhang }; 619ac9a37e2SJisheng Zhang 620ac9a37e2SJisheng Zhang rx-pins { 621ac9a37e2SJisheng Zhang pinmux = <GPIOMUX(6, GPOUT_LOW, 622ac9a37e2SJisheng Zhang GPOEN_DISABLE, 623ac9a37e2SJisheng Zhang GPI_SYS_UART0_RX)>; 624ac9a37e2SJisheng Zhang bias-disable; /* external pull-up */ 625ac9a37e2SJisheng Zhang drive-strength = <2>; 626ac9a37e2SJisheng Zhang input-enable; 627ac9a37e2SJisheng Zhang input-schmitt-enable; 628ac9a37e2SJisheng Zhang slew-rate = <0>; 629ac9a37e2SJisheng Zhang }; 630ac9a37e2SJisheng Zhang }; 631ac9a37e2SJisheng Zhang}; 632ac9a37e2SJisheng Zhang 633ac9a37e2SJisheng Zhang&uart0 { 634ac9a37e2SJisheng Zhang pinctrl-names = "default"; 635ac9a37e2SJisheng Zhang pinctrl-0 = <&uart0_pins>; 636ac9a37e2SJisheng Zhang status = "okay"; 637ac9a37e2SJisheng Zhang}; 638ac9a37e2SJisheng Zhang 639ac9a37e2SJisheng Zhang&usb0 { 640ac9a37e2SJisheng Zhang dr_mode = "peripheral"; 641ac9a37e2SJisheng Zhang status = "okay"; 642ac9a37e2SJisheng Zhang}; 643ac9a37e2SJisheng Zhang 644ac9a37e2SJisheng Zhang&U74_1 { 645ac9a37e2SJisheng Zhang cpu-supply = <&vdd_cpu>; 646ac9a37e2SJisheng Zhang}; 647ac9a37e2SJisheng Zhang 648ac9a37e2SJisheng Zhang&U74_2 { 649ac9a37e2SJisheng Zhang cpu-supply = <&vdd_cpu>; 650ac9a37e2SJisheng Zhang}; 651ac9a37e2SJisheng Zhang 652ac9a37e2SJisheng Zhang&U74_3 { 653ac9a37e2SJisheng Zhang cpu-supply = <&vdd_cpu>; 654ac9a37e2SJisheng Zhang}; 655ac9a37e2SJisheng Zhang 656ac9a37e2SJisheng Zhang&U74_4 { 657ac9a37e2SJisheng Zhang cpu-supply = <&vdd_cpu>; 658ac9a37e2SJisheng Zhang}; 659