| .. | .. |
|---|
| 1 | +// SPDX-License-Identifier: GPL-2.0-only |
|---|
| 1 | 2 | /* |
|---|
| 2 | 3 | * Copyright (C) 2015 Phytec Messtechnik GmbH |
|---|
| 3 | 4 | * Author: Teresa Remmet <t.remmet@phytec.de> |
|---|
| 4 | | - * |
|---|
| 5 | | - * This program is free software; you can redistribute it and/or modify |
|---|
| 6 | | - * it under the terms of the GNU General Public License version 2 as |
|---|
| 7 | | - * published by the Free Software Foundation. |
|---|
| 8 | 5 | */ |
|---|
| 9 | 6 | |
|---|
| 10 | 7 | #include "am33xx.dtsi" |
|---|
| .. | .. |
|---|
| 30 | 27 | reg = <0x80000000 0x10000000>; /* 256 MB */ |
|---|
| 31 | 28 | }; |
|---|
| 32 | 29 | |
|---|
| 33 | | - regulators { |
|---|
| 34 | | - compatible = "simple-bus"; |
|---|
| 35 | | - |
|---|
| 36 | | - vcc5v: fixedregulator0 { |
|---|
| 37 | | - compatible = "regulator-fixed"; |
|---|
| 38 | | - regulator-name = "vcc5v"; |
|---|
| 39 | | - regulator-min-microvolt = <5000000>; |
|---|
| 40 | | - regulator-max-microvolt = <5000000>; |
|---|
| 41 | | - regulator-boot-on; |
|---|
| 42 | | - regulator-always-on; |
|---|
| 43 | | - }; |
|---|
| 30 | + vcc5v: fixedregulator0 { |
|---|
| 31 | + compatible = "regulator-fixed"; |
|---|
| 32 | + regulator-name = "vcc5v"; |
|---|
| 33 | + regulator-min-microvolt = <5000000>; |
|---|
| 34 | + regulator-max-microvolt = <5000000>; |
|---|
| 35 | + regulator-boot-on; |
|---|
| 36 | + regulator-always-on; |
|---|
| 44 | 37 | }; |
|---|
| 45 | 38 | }; |
|---|
| 46 | 39 | |
|---|
| .. | .. |
|---|
| 53 | 46 | status = "okay"; |
|---|
| 54 | 47 | }; |
|---|
| 55 | 48 | |
|---|
| 49 | +/* EMMC */ |
|---|
| 50 | +&am33xx_pinmux { |
|---|
| 51 | + emmc_pins: pinmux_emmc_pins { |
|---|
| 52 | + pinctrl-single,pins = < |
|---|
| 53 | + AM33XX_PADCONF(AM335X_PIN_GPMC_CSN1, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn1.mmc1_clk */ |
|---|
| 54 | + AM33XX_PADCONF(AM335X_PIN_GPMC_CSN2, PIN_INPUT_PULLUP, MUX_MODE2) /* gpmc_csn2.mmc1_cmd */ |
|---|
| 55 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad0.mmc1_dat0 */ |
|---|
| 56 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad1.mmc1_dat1 */ |
|---|
| 57 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad2.mmc1_dat2 */ |
|---|
| 58 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad3.mmc1_dat3 */ |
|---|
| 59 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad4.mmc1_dat4 */ |
|---|
| 60 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad5.mmc1_dat5 */ |
|---|
| 61 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad6.mmc1_dat6 */ |
|---|
| 62 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE1) /* gpmc_ad7.mmc1_dat7 */ |
|---|
| 63 | + >; |
|---|
| 64 | + }; |
|---|
| 65 | +}; |
|---|
| 66 | + |
|---|
| 67 | +&mmc2 { |
|---|
| 68 | + pinctrl-names = "default"; |
|---|
| 69 | + pinctrl-0 = <&emmc_pins>; |
|---|
| 70 | + vmmc-supply = <&vmmc_reg>; |
|---|
| 71 | + bus-width = <8>; |
|---|
| 72 | + non-removable; |
|---|
| 73 | + status = "disabled"; |
|---|
| 74 | +}; |
|---|
| 75 | + |
|---|
| 56 | 76 | /* Ethernet */ |
|---|
| 57 | 77 | &am33xx_pinmux { |
|---|
| 58 | 78 | ethernet0_pins: pinmux_ethernet0 { |
|---|
| 59 | 79 | pinctrl-single,pins = < |
|---|
| 60 | | - AM33XX_IOPAD(0x90c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_crs.rmii1_crs_dv */ |
|---|
| 61 | | - AM33XX_IOPAD(0x910, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxerr.rmii1_rxerr */ |
|---|
| 62 | | - AM33XX_IOPAD(0x914, PIN_OUTPUT | MUX_MODE1) /* mii1_txen.rmii1_txen */ |
|---|
| 63 | | - AM33XX_IOPAD(0x924, PIN_OUTPUT | MUX_MODE1) /* mii1_txd1.rmii1_txd1 */ |
|---|
| 64 | | - AM33XX_IOPAD(0x928, PIN_OUTPUT | MUX_MODE1) /* mii1_txd0.rmii1_txd0 */ |
|---|
| 65 | | - AM33XX_IOPAD(0x93c, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd1.rmii1_rxd1 */ |
|---|
| 66 | | - AM33XX_IOPAD(0x940, PIN_INPUT_PULLDOWN | MUX_MODE1) /* mii1_rxd0.rmii1_rxd0 */ |
|---|
| 67 | | - AM33XX_IOPAD(0x944, PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii1_refclk.rmii1_refclk */ |
|---|
| 80 | + AM33XX_PADCONF(AM335X_PIN_MII1_CRS, PIN_INPUT_PULLDOWN, MUX_MODE1) |
|---|
| 81 | + AM33XX_PADCONF(AM335X_PIN_MII1_RX_ER, PIN_INPUT_PULLDOWN, MUX_MODE1) |
|---|
| 82 | + AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT, MUX_MODE1) |
|---|
| 83 | + AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT, MUX_MODE1) |
|---|
| 84 | + AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT, MUX_MODE1) |
|---|
| 85 | + AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE1) |
|---|
| 86 | + AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE1) |
|---|
| 87 | + AM33XX_PADCONF(AM335X_PIN_RMII1_REF_CLK, PIN_INPUT_PULLDOWN, MUX_MODE0) |
|---|
| 68 | 88 | >; |
|---|
| 69 | 89 | }; |
|---|
| 70 | 90 | |
|---|
| 71 | 91 | mdio_pins: pinmux_mdio { |
|---|
| 72 | 92 | pinctrl-single,pins = < |
|---|
| 73 | 93 | /* MDIO */ |
|---|
| 74 | | - AM33XX_IOPAD(0x948, PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0) /* mdio_data.mdio_data */ |
|---|
| 75 | | - AM33XX_IOPAD(0x94c, PIN_OUTPUT_PULLUP | MUX_MODE0) /* mdio_clk.mdio_clk */ |
|---|
| 94 | + AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0) |
|---|
| 95 | + AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0) |
|---|
| 76 | 96 | >; |
|---|
| 77 | 97 | }; |
|---|
| 78 | 98 | }; |
|---|
| .. | .. |
|---|
| 100 | 120 | status = "okay"; |
|---|
| 101 | 121 | }; |
|---|
| 102 | 122 | |
|---|
| 103 | | -&phy_sel { |
|---|
| 104 | | - rmii-clock-ext; |
|---|
| 105 | | -}; |
|---|
| 106 | | - |
|---|
| 107 | 123 | /* I2C Busses */ |
|---|
| 108 | 124 | &am33xx_pinmux { |
|---|
| 109 | 125 | i2c0_pins: pinmux_i2c0 { |
|---|
| 110 | 126 | pinctrl-single,pins = < |
|---|
| 111 | | - AM33XX_IOPAD(0x988, PIN_INPUT | MUX_MODE0) /* i2c0_sda.i2c0_sda */ |
|---|
| 112 | | - AM33XX_IOPAD(0x98c, PIN_INPUT | MUX_MODE0) /* i2c0_scl.i2c0_scl */ |
|---|
| 127 | + AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT, MUX_MODE0) |
|---|
| 128 | + AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT, MUX_MODE0) |
|---|
| 113 | 129 | >; |
|---|
| 114 | 130 | }; |
|---|
| 115 | 131 | }; |
|---|
| .. | .. |
|---|
| 148 | 164 | &am33xx_pinmux { |
|---|
| 149 | 165 | nandflash_pins: pinmux_nandflash { |
|---|
| 150 | 166 | pinctrl-single,pins = < |
|---|
| 151 | | - AM33XX_IOPAD(0x800, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad0.gpmc_ad0 */ |
|---|
| 152 | | - AM33XX_IOPAD(0x804, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad1.gpmc_ad1 */ |
|---|
| 153 | | - AM33XX_IOPAD(0x808, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad2.gpmc_ad2 */ |
|---|
| 154 | | - AM33XX_IOPAD(0x80c, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad3.gpmc_ad3 */ |
|---|
| 155 | | - AM33XX_IOPAD(0x810, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad4.gpmc_ad4 */ |
|---|
| 156 | | - AM33XX_IOPAD(0x814, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad5.gpmc_ad5 */ |
|---|
| 157 | | - AM33XX_IOPAD(0x818, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad6.gpmc_ad6 */ |
|---|
| 158 | | - AM33XX_IOPAD(0x81c, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_ad7.gpmc_ad7 */ |
|---|
| 159 | | - AM33XX_IOPAD(0x870, PIN_INPUT_PULLUP | MUX_MODE0) /* gpmc_wait0.gpmc_wait0 */ |
|---|
| 160 | | - AM33XX_IOPAD(0x87c, PIN_OUTPUT | MUX_MODE0) /* gpmc_csn0.gpmc_csn0 */ |
|---|
| 161 | | - AM33XX_IOPAD(0x890, PIN_OUTPUT | MUX_MODE0) /* gpmc_advn_ale.gpmc_advn_ale */ |
|---|
| 162 | | - AM33XX_IOPAD(0x894, PIN_OUTPUT | MUX_MODE0) /* gpmc_oen_ren.gpmc_oen_ren */ |
|---|
| 163 | | - AM33XX_IOPAD(0x898, PIN_OUTPUT | MUX_MODE0) /* gpmc_wen.gpmc_wen */ |
|---|
| 164 | | - AM33XX_IOPAD(0x89c, PIN_OUTPUT | MUX_MODE0) /* gpmc_be0n_cle.gpmc_be0n_cle */ |
|---|
| 167 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 168 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 169 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 170 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 171 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 172 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 173 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 174 | + AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 175 | + AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 176 | + AM33XX_PADCONF(AM335X_PIN_GPMC_CSN0, PIN_OUTPUT, MUX_MODE0) |
|---|
| 177 | + AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_OUTPUT, MUX_MODE0) |
|---|
| 178 | + AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_OUTPUT, MUX_MODE0) |
|---|
| 179 | + AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_OUTPUT, MUX_MODE0) |
|---|
| 180 | + AM33XX_PADCONF(AM335X_PIN_GPMC_BEN0_CLE, PIN_OUTPUT, MUX_MODE0) |
|---|
| 165 | 181 | >; |
|---|
| 166 | 182 | }; |
|---|
| 167 | 183 | }; |
|---|
| .. | .. |
|---|
| 171 | 187 | }; |
|---|
| 172 | 188 | |
|---|
| 173 | 189 | &gpmc { |
|---|
| 174 | | - status = "okay"; |
|---|
| 190 | + status = "disabled"; |
|---|
| 175 | 191 | pinctrl-names = "default"; |
|---|
| 176 | 192 | pinctrl-0 = <&nandflash_pins>; |
|---|
| 177 | 193 | ranges = <0 0 0x08000000 0x1000000>; /* CS0: NAND */ |
|---|
| .. | .. |
|---|
| 300 | 316 | &am33xx_pinmux { |
|---|
| 301 | 317 | spi0_pins: pinmux_spi0 { |
|---|
| 302 | 318 | pinctrl-single,pins = < |
|---|
| 303 | | - AM33XX_IOPAD(0x950, PIN_INPUT_PULLDOWN | MUX_MODE0) /* spi0_clk.spi0_clk */ |
|---|
| 304 | | - AM33XX_IOPAD(0x954, PIN_INPUT_PULLDOWN | MUX_MODE0) /* spi0_d0.spi0_d0 */ |
|---|
| 305 | | - AM33XX_IOPAD(0x958, PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_d1.spi0_d1 */ |
|---|
| 306 | | - AM33XX_IOPAD(0x95c, PIN_INPUT_PULLUP | MUX_MODE0) /* spi0_cs0.spi0_cs0 */ |
|---|
| 319 | + AM33XX_PADCONF(AM335X_PIN_SPI0_SCLK, PIN_INPUT_PULLDOWN, MUX_MODE0) |
|---|
| 320 | + AM33XX_PADCONF(AM335X_PIN_SPI0_D0, PIN_INPUT_PULLDOWN, MUX_MODE0) |
|---|
| 321 | + AM33XX_PADCONF(AM335X_PIN_SPI0_D1, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 322 | + AM33XX_PADCONF(AM335X_PIN_SPI0_CS0, PIN_INPUT_PULLUP, MUX_MODE0) |
|---|
| 307 | 323 | >; |
|---|
| 308 | 324 | }; |
|---|
| 309 | 325 | }; |
|---|