Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /* SPDX-FileCopyrightText: Alexander Shiyan, <shc_work@mail.ru> */
0003 
0004 /* Based on code by myc_c335x.dts, MYiRtech.com */
0005 /* Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ */
0006 
0007 /dts-v1/;
0008 
0009 #include "am33xx.dtsi"
0010 
0011 #include <dt-bindings/interrupt-controller/irq.h>
0012 #include <dt-bindings/leds/common.h>
0013 
0014 / {
0015         model = "MYIR MYC-AM335X";
0016         compatible = "myir,myc-am335x", "ti,am33xx";
0017 
0018         cpus {
0019                 cpu@0 {
0020                         cpu0-supply = <&vdd_core>;
0021                         voltage-tolerance = <2>;
0022                 };
0023         };
0024 
0025         memory@80000000 {
0026                 device_type = "memory";
0027                 reg = <0x80000000 0x10000000>;
0028         };
0029 
0030         clk32k: clk32k {
0031                 compatible = "fixed-clock";
0032                 clock-frequency = <32768>;
0033 
0034                 #clock-cells = <0>;
0035         };
0036 
0037         vdd_mod: vdd_mod_reg {
0038                 compatible = "regulator-fixed";
0039                 regulator-name = "vdd-mod";
0040                 regulator-always-on;
0041                 regulator-boot-on;
0042         };
0043 
0044         vdd_core: vdd_core_reg {
0045                 compatible = "regulator-fixed";
0046                 regulator-name = "vdd-core";
0047                 regulator-always-on;
0048                 regulator-boot-on;
0049                 vin-supply = <&vdd_mod>;
0050         };
0051 
0052         leds: leds {
0053                 compatible = "gpio-leds";
0054                 pinctrl-names = "default";
0055                 pinctrl-0 = <&led_mod_pins>;
0056 
0057                 led_mod: led_mod {
0058                         label = "module:user";
0059                         gpios = <&gpio3 18 GPIO_ACTIVE_LOW>;
0060                         color = <LED_COLOR_ID_GREEN>;
0061                         default-state = "off";
0062                         panic-indicator;
0063                 };
0064         };
0065 };
0066 
0067 &mac_sw {
0068         pinctrl-names = "default", "sleep";
0069         pinctrl-0 = <&eth_slave1_pins_default>;
0070         pinctrl-1 = <&eth_slave1_pins_sleep>;
0071         status = "okay";
0072 };
0073 
0074 &cpsw_port1 {
0075         phy-handle = <&phy0>;
0076         phy-mode = "rgmii-id";
0077         ti,dual-emac-pvid = <1>;
0078 };
0079 
0080 &cpsw_port2 {
0081         status = "disabled";
0082 };
0083 
0084 &davinci_mdio_sw {
0085         pinctrl-names = "default", "sleep";
0086         pinctrl-0 = <&mdio_pins_default>;
0087         pinctrl-1 = <&mdio_pins_sleep>;
0088 
0089         phy0: ethernet-phy@4 {
0090                 reg = <4>;
0091         };
0092 };
0093 
0094 &elm {
0095         status = "okay";
0096 };
0097 
0098 &gpmc {
0099         pinctrl-names = "default", "sleep";
0100         pinctrl-0 = <&nand_pins_default>;
0101         pinctrl-1 = <&nand_pins_sleep>;
0102         ranges = <0 0 0x8000000 0x1000000>;
0103         status = "okay";
0104 
0105         nand0: nand@0,0 {
0106                 compatible = "ti,omap2-nand";
0107                 reg = <0 0 4>;
0108                 interrupt-parent = <&gpmc>;
0109                 interrupts = <0 IRQ_TYPE_NONE>, <1 IRQ_TYPE_NONE>;
0110                 nand-bus-width = <8>;
0111                 rb-gpios = <&gpmc 0 GPIO_ACTIVE_HIGH>;
0112                 gpmc,device-width = <1>;
0113                 gpmc,sync-clk-ps = <0>;
0114                 gpmc,cs-on-ns = <0>;
0115                 gpmc,cs-rd-off-ns = <44>;
0116                 gpmc,cs-wr-off-ns = <44>;
0117                 gpmc,adv-on-ns = <6>;
0118                 gpmc,adv-rd-off-ns = <34>;
0119                 gpmc,adv-wr-off-ns = <44>;
0120                 gpmc,we-on-ns = <0>;
0121                 gpmc,we-off-ns = <40>;
0122                 gpmc,oe-on-ns = <0>;
0123                 gpmc,oe-off-ns = <54>;
0124                 gpmc,access-ns = <64>;
0125                 gpmc,rd-cycle-ns = <82>;
0126                 gpmc,wr-cycle-ns = <82>;
0127                 gpmc,bus-turnaround-ns = <0>;
0128                 gpmc,cycle2cycle-delay-ns = <0>;
0129                 gpmc,clk-activation-ns = <0>;
0130                 gpmc,wr-access-ns = <40>;
0131                 gpmc,wr-data-mux-bus-ns = <0>;
0132                 ti,elm-id = <&elm>;
0133                 ti,nand-ecc-opt = "bch8";
0134         };
0135 };
0136 
0137 &i2c0 {
0138         pinctrl-names = "default", "gpio", "sleep";
0139         pinctrl-0 = <&i2c0_pins_default>;
0140         pinctrl-1 = <&i2c0_pins_gpio>;
0141         pinctrl-2 = <&i2c0_pins_sleep>;
0142         clock-frequency = <400000>;
0143         scl-gpios = <&gpio3 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0144         sda-gpios = <&gpio3 5 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>;
0145         status = "okay";
0146 
0147         eeprom: eeprom@50 {
0148                 compatible = "atmel,24c32";
0149                 reg = <0x50>;
0150                 pagesize = <32>;
0151                 vcc-supply = <&vdd_mod>;
0152         };
0153 };
0154 
0155 &rtc {
0156         clocks = <&clk32k>;
0157         clock-names = "ext-clk";
0158         system-power-controller;
0159 };
0160 
0161 &am33xx_pinmux {
0162         mdio_pins_default: pinmux_mdio_pins_default {
0163                 pinctrl-single,pins = <
0164                         AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLUP | SLEWCTRL_FAST, MUX_MODE0)    /* mdio_data */
0165                         AM33XX_PADCONF(AM335X_PIN_MDC, PIN_OUTPUT_PULLUP, MUX_MODE0)                    /* mdio_clk */
0166                 >;
0167         };
0168 
0169         mdio_pins_sleep: pinmux_mdio_pins_sleep {
0170                 pinctrl-single,pins = <
0171                         AM33XX_PADCONF(AM335X_PIN_MDIO, PIN_INPUT_PULLDOWN, MUX_MODE7)
0172                         AM33XX_PADCONF(AM335X_PIN_MDC, PIN_INPUT_PULLDOWN, MUX_MODE7)
0173                 >;
0174         };
0175 
0176         eth_slave1_pins_default: pinmux_eth_slave1_pins_default {
0177                 pinctrl-single,pins = <
0178                         AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_OUTPUT_PULLDOWN, MUX_MODE2)           /* rgmii1_tctl */
0179                         AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE2)            /* rgmii1_rctl */
0180                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_OUTPUT_PULLDOWN, MUX_MODE2)            /* rgmii1_td3 */
0181                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_OUTPUT_PULLDOWN, MUX_MODE2)            /* rgmii1_td2 */
0182                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_OUTPUT_PULLDOWN, MUX_MODE2)            /* rgmii1_td1 */
0183                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_OUTPUT_PULLDOWN, MUX_MODE2)            /* rgmii1_td0 */
0184                         AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_OUTPUT_PULLDOWN, MUX_MODE2)          /* rgmii1_tclk */
0185                         AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE2)           /* rgmii1_rclk */
0186                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE2)             /* rgmii1_rd3 */
0187                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE2)             /* rgmii1_rd2 */
0188                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE2)             /* rgmii1_rd1 */
0189                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE2)             /* rgmii1_rd0 */
0190                 >;
0191         };
0192 
0193         eth_slave1_pins_sleep: pinmux_eth_slave1_pins_sleep {
0194                 pinctrl-single,pins = <
0195                         AM33XX_PADCONF(AM335X_PIN_MII1_TX_EN, PIN_INPUT_PULLDOWN, MUX_MODE7)
0196                         AM33XX_PADCONF(AM335X_PIN_MII1_RX_DV, PIN_INPUT_PULLDOWN, MUX_MODE7)
0197                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
0198                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
0199                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
0200                         AM33XX_PADCONF(AM335X_PIN_MII1_TXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
0201                         AM33XX_PADCONF(AM335X_PIN_MII1_TX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
0202                         AM33XX_PADCONF(AM335X_PIN_MII1_RX_CLK, PIN_INPUT_PULLDOWN, MUX_MODE7)
0203                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
0204                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
0205                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
0206                         AM33XX_PADCONF(AM335X_PIN_MII1_RXD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
0207                 >;
0208         };
0209 
0210         i2c0_pins_default: pinmux_i2c0_pins_default {
0211                 pinctrl-single,pins = <
0212                         AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT | SLEWCTRL_FAST, MUX_MODE0)       /* I2C0_SDA */
0213                         AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT | SLEWCTRL_FAST, MUX_MODE0)       /* I2C0_SCL */
0214                 >;
0215         };
0216 
0217         i2c0_pins_gpio: pinmux_i2c0_pins_gpio {
0218                 pinctrl-single,pins = <
0219                         AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT, MUX_MODE7)                       /* gpio3[5] */
0220                         AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT, MUX_MODE7)                       /* gpio3[6] */
0221                 >;
0222         };
0223 
0224         i2c0_pins_sleep: pinmux_i2c0_pins_sleep {
0225                 pinctrl-single,pins = <
0226                         AM33XX_PADCONF(AM335X_PIN_I2C0_SDA, PIN_INPUT_PULLDOWN, MUX_MODE7)
0227                         AM33XX_PADCONF(AM335X_PIN_I2C0_SCL, PIN_INPUT_PULLDOWN, MUX_MODE7)
0228                 >;
0229         };
0230 
0231         led_mod_pins: pinmux_led_mod_pins {
0232                 pinctrl-single,pins = <
0233                         AM33XX_PADCONF(AM335X_PIN_MCASP0_ACLKR, PIN_OUTPUT_PULLDOWN, MUX_MODE7)         /* gpio3[18] */
0234                 >;
0235         };
0236 
0237         nand_pins_default: pinmux_nand_pins_default {
0238                 pinctrl-single,pins = <
0239                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad0 */
0240                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad1 */
0241                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad2 */
0242                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad3 */
0243                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad4 */
0244                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad5 */
0245                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad6 */
0246                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLUP, MUX_MODE0)                /* gpmc_ad7 */
0247                         AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLUP, MUX_MODE0)              /* gpmc_wait0 */
0248                         AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_INPUT_PULLUP, MUX_MODE7)                /* gpio0[31] */
0249                         AM33XX_PADCONF(AM335X_PIN_GPMC_CSN0, PIN_OUTPUT, MUX_MODE0)                     /* gpmc_csn0 */
0250                         AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_OUTPUT, MUX_MODE0)                 /* gpmc_advn_ale */
0251                         AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_OUTPUT, MUX_MODE0)                  /* gpmc_oen_ren */
0252                         AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_OUTPUT, MUX_MODE0)                      /* gpmc_wen */
0253                         AM33XX_PADCONF(AM335X_PIN_GPMC_BEN0_CLE, PIN_OUTPUT, MUX_MODE0)                 /* gpmc_be0n_cle */
0254                 >;
0255         };
0256 
0257         nand_pins_sleep: pinmux_nand_pins_sleep {
0258                 pinctrl-single,pins = <
0259                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD0, PIN_INPUT_PULLDOWN, MUX_MODE7)
0260                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD1, PIN_INPUT_PULLDOWN, MUX_MODE7)
0261                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD2, PIN_INPUT_PULLDOWN, MUX_MODE7)
0262                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD3, PIN_INPUT_PULLDOWN, MUX_MODE7)
0263                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD4, PIN_INPUT_PULLDOWN, MUX_MODE7)
0264                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD5, PIN_INPUT_PULLDOWN, MUX_MODE7)
0265                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD6, PIN_INPUT_PULLDOWN, MUX_MODE7)
0266                         AM33XX_PADCONF(AM335X_PIN_GPMC_AD7, PIN_INPUT_PULLDOWN, MUX_MODE7)
0267                         AM33XX_PADCONF(AM335X_PIN_GPMC_WAIT0, PIN_INPUT_PULLDOWN, MUX_MODE7)
0268                         AM33XX_PADCONF(AM335X_PIN_GPMC_WPN, PIN_INPUT_PULLDOWN, MUX_MODE7)
0269                         AM33XX_PADCONF(AM335X_PIN_GPMC_CSN0, PIN_INPUT_PULLDOWN, MUX_MODE7)
0270                         AM33XX_PADCONF(AM335X_PIN_GPMC_ADVN_ALE, PIN_INPUT_PULLDOWN, MUX_MODE7)
0271                         AM33XX_PADCONF(AM335X_PIN_GPMC_OEN_REN, PIN_INPUT_PULLDOWN, MUX_MODE7)
0272                         AM33XX_PADCONF(AM335X_PIN_GPMC_WEN, PIN_INPUT_PULLDOWN, MUX_MODE7)
0273                         AM33XX_PADCONF(AM335X_PIN_GPMC_BEN0_CLE, PIN_INPUT_PULLDOWN, MUX_MODE7)
0274                 >;
0275         };
0276 };