Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 /*
0003  * Copyright (C) 2019 Marek Vasut <marex@denx.de>
0004  */
0005 
0006 /dts-v1/;
0007 #include "imx53-m53.dtsi"
0008 
0009 / {
0010         model = "MENLO M53 EMBEDDED DEVICE";
0011         compatible = "menlo,m53menlo", "fsl,imx53";
0012 
0013         gpio-keys {
0014                 compatible = "gpio-keys";
0015                 pinctrl-0 = <&pinctrl_power_button>;
0016                 pinctrl-names = "default";
0017 
0018                 power-button {
0019                         label = "Power button";
0020                         gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
0021                         linux,code = <KEY_POWER>;
0022                 };
0023         };
0024 
0025         gpio-poweroff {
0026                 compatible = "gpio-poweroff";
0027                 pinctrl-0 = <&pinctrl_power_out>;
0028                 pinctrl-names = "default";
0029                 gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
0030         };
0031 
0032         leds {
0033                 compatible = "gpio-leds";
0034                 pinctrl-names = "default";
0035                 pinctrl-0 = <&pinctrl_led>;
0036 
0037                 user1 {
0038                         label = "TestLed601";
0039                         gpios = <&gpio6 1 GPIO_ACTIVE_HIGH>;
0040                         linux,default-trigger = "mmc0";
0041                 };
0042 
0043                 user2 {
0044                         label = "TestLed602";
0045                         gpios = <&gpio6 2 GPIO_ACTIVE_HIGH>;
0046                         linux,default-trigger = "heartbeat";
0047                 };
0048 
0049                 eth {
0050                         label = "EthLedYe";
0051                         gpios = <&gpio2 11 GPIO_ACTIVE_LOW>;
0052                         linux,default-trigger = "netdev";
0053                 };
0054         };
0055 
0056         lvds-decoder {
0057                 compatible = "ti,ds90cf364a", "lvds-decoder";
0058 
0059                 ports {
0060                         #address-cells = <1>;
0061                         #size-cells = <0>;
0062 
0063                         port@0 {
0064                                 reg = <0>;
0065 
0066                                 lvds_decoder_in: endpoint {
0067                                         remote-endpoint = <&lvds0_out>;
0068                                 };
0069                         };
0070 
0071                         port@1 {
0072                                 reg = <1>;
0073 
0074                                 lvds_decoder_out: endpoint {
0075                                         remote-endpoint = <&panel_in>;
0076                                 };
0077                         };
0078                 };
0079         };
0080 
0081         panel {
0082                 compatible = "edt,etm0700g0dh6";
0083                 pinctrl-0 = <&pinctrl_display_gpio>;
0084                 pinctrl-names = "default";
0085                 enable-gpios = <&gpio6 0 GPIO_ACTIVE_HIGH>;
0086 
0087                 port {
0088                         panel_in: endpoint {
0089                                 remote-endpoint = <&lvds_decoder_out>;
0090                         };
0091                 };
0092         };
0093 
0094         beeper {
0095                 compatible = "gpio-beeper";
0096                 pinctrl-0 = <&pinctrl_beeper>;
0097                 gpios = <&gpio6 3 GPIO_ACTIVE_HIGH>;
0098         };
0099 
0100         reg_usbh1_vbus: regulator-usbh1-vbus {
0101                 compatible = "regulator-fixed";
0102                 regulator-name = "vbus";
0103                 regulator-min-microvolt = <5000000>;
0104                 regulator-max-microvolt = <5000000>;
0105                 gpio = <&gpio1 2 0>;
0106         };
0107 };
0108 
0109 &can1 {
0110         pinctrl-names = "default";
0111         pinctrl-0 = <&pinctrl_can1>;
0112         status = "okay";
0113 };
0114 
0115 &can2 {
0116         pinctrl-names = "default";
0117         pinctrl-0 = <&pinctrl_can2>;
0118         status = "okay";
0119 };
0120 
0121 &clks {
0122         assigned-clocks = <&clks IMX5_CLK_CKO1_SEL>,
0123                           <&clks IMX5_CLK_CKO1_PODF>,
0124                           <&clks IMX5_CLK_CKO1>;
0125         assigned-clock-parents = <&clks IMX5_CLK_AHB>;
0126         assigned-clock-rates = <133333334>, <33333334>, <33333334>;
0127 };
0128 
0129 &ecspi2 {
0130         pinctrl-names = "default";
0131         pinctrl-0 = <&pinctrl_ecspi2>;
0132         cs-gpios = <&gpio2 26 GPIO_ACTIVE_LOW>, <&gpio2 27 GPIO_ACTIVE_LOW>;
0133         status = "okay";
0134 
0135         spidev@0 {
0136                 compatible = "menlo,m53cpld";
0137                 spi-max-frequency = <25000000>;
0138                 reg = <0>;
0139         };
0140 
0141         spidev@1 {
0142                 compatible = "menlo,m53cpld";
0143                 spi-max-frequency = <25000000>;
0144                 reg = <1>;
0145         };
0146 };
0147 
0148 &esdhc1 {
0149         pinctrl-names = "default";
0150         pinctrl-0 = <&pinctrl_esdhc1>;
0151         cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>;
0152         wp-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>;
0153         status = "okay";
0154 };
0155 
0156 &fec {
0157         pinctrl-names = "default";
0158         pinctrl-0 = <&pinctrl_fec>;
0159         phy-mode = "rmii";
0160         phy-reset-gpios = <&gpio7 7 GPIO_ACTIVE_LOW>;
0161         status = "okay";
0162 };
0163 
0164 &gpio1 {
0165         gpio-line-names =
0166                 "", "", "", "",
0167                 "", "", "", "",
0168                 "", "", "", "",
0169                 "", "", "", "",
0170                 "", "", "", "",
0171                 "", "", "", "",
0172                 "", "", "", "",
0173                 "", "", "", "";
0174 };
0175 
0176 &gpio2 {
0177         gpio-line-names =
0178                 "", "", "", "",
0179                 "", "", "", "",
0180                 "TestPin_SV2_3", "", "", "",
0181                 "", "", "", "",
0182                 "", "", "", "",
0183                 "", "", "", "",
0184                 "", "", "", "",
0185                 "", "", "", "";
0186 };
0187 
0188 &gpio3 {
0189         gpio-line-names =
0190                 "", "", "", "",
0191                 "", "", "", "",
0192                 "", "", "", "",
0193                 "", "", "", "",
0194                 "", "", "", "",
0195                 "", "", "", "",
0196                 "CPLD_JTAG_TDI", "CPLD_JTAG_TMS", "", "",
0197                 "", "CPLD_JTAG_TDO", "", "";
0198 };
0199 
0200 &gpio5 {
0201         gpio-line-names =
0202                 "", "", "", "",
0203                 "", "", "", "",
0204                 "", "", "", "",
0205                 "", "", "", "",
0206                 "", "", "CPLD_JTAG_TCK", "KBD_intK",
0207                 "CPLD_int", "CPLD_JTAG_internal", "CPLD_D[0]", "CPLD_D[1]",
0208                 "CPLD_D[2]", "CPLD_D[3]", "CPLD_D[4]", "CPLD_D[5]",
0209                 "CPLD_D[6]", "CPLD_D[7]", "DISP_reset", "KBD_intI";
0210 };
0211 
0212 &gpio6 {
0213         gpio-line-names =
0214                 "", "", "", "",
0215                 "CPLD_reset", "", "", "",
0216                 "", "", "", "",
0217                 "", "", "", "",
0218                 "", "", "", "",
0219                 "", "", "", "",
0220                 "", "", "", "",
0221                 "", "", "", "";
0222 };
0223 
0224 &gpio7 {
0225         gpio-line-names =
0226                 "", "", "", "",
0227                 "", "", "", "",
0228                 "", "", "", "",
0229                 "", "USB-OTG_OverCurrent", "", "",
0230                 "", "", "", "",
0231                 "", "", "", "",
0232                 "", "", "", "",
0233                 "", "", "", "";
0234 };
0235 
0236 &i2c1 {
0237         pinctrl-names = "default";
0238         pinctrl-0 = <&pinctrl_i2c1>;
0239         status = "okay";
0240 
0241         touchscreen@38 {
0242                 compatible = "edt,edt-ft5x06";
0243                 reg = <0x38>;
0244                 pinctrl-names = "default";
0245                 pinctrl-0 = <&pinctrl_edt_ft5x06>;
0246                 interrupt-parent = <&gpio6>;
0247                 interrupts = <5 IRQ_TYPE_EDGE_FALLING>;
0248                 reset-gpios = <&gpio2 9 GPIO_ACTIVE_LOW>;
0249                 wake-gpios = <&gpio2 10 GPIO_ACTIVE_HIGH>;
0250         };
0251 
0252         eeprom@50 {
0253                 compatible = "atmel,24c64";
0254                 reg = <0x50>;
0255                 pagesize = <32>;
0256         };
0257 
0258         dac@60 {
0259                 compatible = "microchip,mcp4725";
0260                 reg = <0x60>;
0261         };
0262 };
0263 
0264 &i2c2 {
0265         touchscreen@41 {
0266                 status = "disabled";
0267         };
0268 };
0269 
0270 &i2c3 {
0271         pinctrl-names = "default";
0272         pinctrl-0 = <&pinctrl_i2c3>;
0273         status = "okay";
0274 };
0275 
0276 &iomuxc {
0277         pinctrl-names = "default";
0278         pinctrl-0 = <&pinctrl_hog>;
0279 
0280         imx53-m53evk {
0281                 hoggrp {
0282                         fsl,pins = <
0283                                 MX53_PAD_GPIO_19__CCM_CLKO              0x1e4
0284                                 MX53_PAD_CSI0_DATA_EN__GPIO5_20         0x1e4
0285                                 MX53_PAD_CSI0_DAT4__GPIO5_22            0x1e4
0286                                 MX53_PAD_CSI0_DAT5__GPIO5_23            0x1c4
0287                                 MX53_PAD_CSI0_DAT6__GPIO5_24            0x1e4
0288                                 MX53_PAD_CSI0_DAT7__GPIO5_25            0x1e4
0289                                 MX53_PAD_CSI0_DAT8__GPIO5_26            0x1e4
0290                                 MX53_PAD_CSI0_DAT9__GPIO5_27            0x1c4
0291                                 MX53_PAD_CSI0_DAT10__GPIO5_28           0x1e4
0292                                 MX53_PAD_CSI0_DAT11__GPIO5_29           0x1e4
0293                                 MX53_PAD_PATA_DATA11__GPIO2_11          0x1e4
0294                                 MX53_PAD_EIM_D24__GPIO3_24              0x1e4
0295                                 MX53_PAD_EIM_D25__GPIO3_25              0x1e4
0296                                 MX53_PAD_EIM_D29__GPIO3_29              0x1e4
0297                                 MX53_PAD_CSI0_PIXCLK__GPIO5_18          0x1e4
0298                                 MX53_PAD_CSI0_VSYNC__GPIO5_21           0x1e4
0299                                 MX53_PAD_CSI0_DAT18__GPIO6_4            0x1c4
0300                                 MX53_PAD_PATA_DATA8__GPIO2_8            0x1e4
0301                         >;
0302                 };
0303 
0304                 pinctrl_led: ledgrp {
0305                         fsl,pins = <
0306                                 MX53_PAD_CSI0_DAT15__GPIO6_1            0x1c4
0307                                 MX53_PAD_CSI0_DAT16__GPIO6_2            0x1c4
0308                         >;
0309                 };
0310 
0311                 pinctrl_beeper: beepergrp {
0312                         fsl,pins = <
0313                                 MX53_PAD_CSI0_DAT17__GPIO6_3            0x1c4
0314                         >;
0315                 };
0316 
0317                 pinctrl_can1: can1grp {
0318                         fsl,pins = <
0319                                 MX53_PAD_GPIO_7__CAN1_TXCAN             0x1c4
0320                                 MX53_PAD_GPIO_8__CAN1_RXCAN             0x1c4
0321                         >;
0322                 };
0323 
0324                 pinctrl_can2: can2grp {
0325                         fsl,pins = <
0326                                 MX53_PAD_KEY_COL4__CAN2_TXCAN           0x1e4
0327                                 MX53_PAD_KEY_ROW4__CAN2_RXCAN           0x1c4
0328                         >;
0329                 };
0330 
0331                 pinctrl_display_gpio: display-gpiogrp {
0332                         fsl,pins = <
0333                                 MX53_PAD_CSI0_DAT12__GPIO5_30           0x1c4 /* Reset */
0334                                 MX53_PAD_CSI0_MCLK__GPIO5_19            0x1e4 /* Int-K */
0335                                 MX53_PAD_CSI0_DAT13__GPIO5_31           0x1c4 /* Int-I */
0336 
0337                                 MX53_PAD_CSI0_DAT14__GPIO6_0            0x1c4 /* Power down */
0338                         >;
0339                 };
0340 
0341                 pinctrl_edt_ft5x06: edt-ft5x06grp {
0342                         fsl,pins = <
0343                                 MX53_PAD_PATA_DATA9__GPIO2_9            0x1e4 /* Reset */
0344                                 MX53_PAD_CSI0_DAT19__GPIO6_5            0x1c4 /* Interrupt */
0345                                 MX53_PAD_PATA_DATA10__GPIO2_10          0x1e4 /* Wake */
0346                         >;
0347                 };
0348 
0349                 pinctrl_ecspi2: ecspi2grp {
0350                         fsl,pins = <
0351                                 MX53_PAD_EIM_CS0__ECSPI2_SCLK           0xe4
0352                                 MX53_PAD_EIM_OE__ECSPI2_MISO            0xe4
0353                                 MX53_PAD_EIM_CS1__ECSPI2_MOSI           0xe4
0354                                 MX53_PAD_EIM_RW__GPIO2_26               0xe4
0355                                 MX53_PAD_EIM_LBA__GPIO2_27              0xe4
0356                         >;
0357                 };
0358 
0359                 pinctrl_esdhc1: esdhc1grp {
0360                         fsl,pins = <
0361                                 MX53_PAD_SD1_DATA0__ESDHC1_DAT0         0x1e4
0362                                 MX53_PAD_SD1_DATA1__ESDHC1_DAT1         0x1e4
0363                                 MX53_PAD_SD1_DATA2__ESDHC1_DAT2         0x1e4
0364                                 MX53_PAD_SD1_DATA3__ESDHC1_DAT3         0x1e4
0365                                 MX53_PAD_SD1_CMD__ESDHC1_CMD            0x1e4
0366                                 MX53_PAD_SD1_CLK__ESDHC1_CLK            0x1e4
0367                                 MX53_PAD_GPIO_1__GPIO1_1                0x1c4
0368                                 MX53_PAD_GPIO_9__GPIO1_9                0x1e4
0369                         >;
0370                 };
0371 
0372                 pinctrl_fec: fecgrp {
0373                         fsl,pins = <
0374                                 MX53_PAD_FEC_MDC__FEC_MDC               0x1e4
0375                                 MX53_PAD_FEC_MDIO__FEC_MDIO             0x1e4
0376                                 MX53_PAD_FEC_REF_CLK__FEC_TX_CLK        0x1e4
0377                                 MX53_PAD_FEC_RX_ER__FEC_RX_ER           0x1e4
0378                                 MX53_PAD_FEC_CRS_DV__FEC_RX_DV          0x1e4
0379                                 MX53_PAD_FEC_RXD1__FEC_RDATA_1          0x1e4
0380                                 MX53_PAD_FEC_RXD0__FEC_RDATA_0          0x1e4
0381                                 MX53_PAD_FEC_TX_EN__FEC_TX_EN           0x1c4
0382                                 MX53_PAD_FEC_TXD1__FEC_TDATA_1          0x1e4
0383                                 MX53_PAD_FEC_TXD0__FEC_TDATA_0          0x1e4
0384                                 MX53_PAD_PATA_DA_1__GPIO7_7             0x1e4
0385                                 MX53_PAD_EIM_EB3__GPIO2_31              0x1e4
0386                         >;
0387                 };
0388 
0389                 pinctrl_i2c1: i2c1grp {
0390                         fsl,pins = <
0391                                 MX53_PAD_EIM_D21__I2C1_SCL              0x400001e4
0392                                 MX53_PAD_EIM_D28__I2C1_SDA              0x400001e4
0393                         >;
0394                 };
0395 
0396                 pinctrl_i2c3: i2c3grp {
0397                         fsl,pins = <
0398                                 MX53_PAD_GPIO_6__I2C3_SDA               0x400001e4
0399                                 MX53_PAD_GPIO_5__I2C3_SCL               0x400001e4
0400                         >;
0401                 };
0402 
0403                 pinctrl_lvds0: lvds0grp {
0404                         /* LVDS pins only have pin mux configuration */
0405                         fsl,pins = <
0406                                 MX53_PAD_LVDS0_CLK_P__LDB_LVDS0_CLK     0x80000000
0407                                 MX53_PAD_LVDS0_TX0_P__LDB_LVDS0_TX0     0x80000000
0408                                 MX53_PAD_LVDS0_TX1_P__LDB_LVDS0_TX1     0x80000000
0409                                 MX53_PAD_LVDS0_TX2_P__LDB_LVDS0_TX2     0x80000000
0410                                 MX53_PAD_LVDS0_TX3_P__LDB_LVDS0_TX3     0x80000000
0411                         >;
0412                 };
0413 
0414                 pinctrl_power_button: powerbutgrp {
0415                         fsl,pins = <
0416                                 MX53_PAD_SD2_DATA0__GPIO1_15            0x1e4
0417                         >;
0418                 };
0419 
0420                 pinctrl_power_out: poweroutgrp {
0421                         fsl,pins = <
0422                                 MX53_PAD_SD2_DATA2__GPIO1_13            0x1e4
0423                         >;
0424                 };
0425 
0426                 pinctrl_uart1: uart1grp {
0427                         fsl,pins = <
0428                                 MX53_PAD_PATA_DIOW__UART1_TXD_MUX       0x1e4
0429                                 MX53_PAD_PATA_DMACK__UART1_RXD_MUX      0x1e4
0430                                 MX53_PAD_PATA_IORDY__UART1_RTS          0x1e4
0431                                 MX53_PAD_PATA_RESET_B__UART1_CTS        0x1e4
0432                         >;
0433                 };
0434 
0435                 pinctrl_uart2: uart2grp {
0436                         fsl,pins = <
0437                                 MX53_PAD_PATA_BUFFER_EN__UART2_RXD_MUX  0x1e4
0438                                 MX53_PAD_PATA_DMARQ__UART2_TXD_MUX      0x1e4
0439                                 MX53_PAD_PATA_DIOR__UART2_RTS           0x1e4
0440                                 MX53_PAD_PATA_INTRQ__UART2_CTS          0x1e4
0441                         >;
0442                 };
0443 
0444                 pinctrl_uart3: uart3grp {
0445                         fsl,pins = <
0446                                 MX53_PAD_PATA_CS_1__UART3_RXD_MUX       0x1e4
0447                                 MX53_PAD_PATA_CS_0__UART3_TXD_MUX       0x1e4
0448                                 MX53_PAD_PATA_DA_2__UART3_RTS           0x1e4
0449                         >;
0450                 };
0451 
0452                 pinctrl_usb: usbgrp {
0453                         fsl,pins = <
0454                                 MX53_PAD_GPIO_2__GPIO1_2                0x1c4
0455                                 MX53_PAD_GPIO_3__USBOH3_USBH1_OC        0x1c4
0456                                 MX53_PAD_GPIO_4__GPIO1_4                0x1c4
0457                                 MX53_PAD_GPIO_18__GPIO7_13              0x1c4
0458                         >;
0459                 };
0460         };
0461 };
0462 
0463 &ldb {
0464         pinctrl-names = "default";
0465         pinctrl-0 = <&pinctrl_lvds0>;
0466         status = "okay";
0467 
0468         lvds0: lvds-channel@0 {
0469                 reg = <0>;
0470                 fsl,data-mapping = "spwg";
0471                 fsl,data-width = <18>;
0472                 status = "okay";
0473 
0474                 port@2 {
0475                         reg = <2>;
0476 
0477                         lvds0_out: endpoint {
0478                                 remote-endpoint = <&lvds_decoder_in>;
0479                         };
0480                 };
0481         };
0482 };
0483 
0484 &uart1 {
0485         pinctrl-names = "default";
0486         pinctrl-0 = <&pinctrl_uart1>;
0487         uart-has-rtscts;
0488         status = "okay";
0489 };
0490 
0491 &uart2 {
0492         pinctrl-names = "default";
0493         pinctrl-0 = <&pinctrl_uart2>;
0494         uart-has-rtscts;
0495         status = "okay";
0496 };
0497 
0498 &uart3 {
0499         pinctrl-names = "default";
0500         pinctrl-0 = <&pinctrl_uart3>;
0501         linux,rs485-enabled-at-boot-time;
0502         status = "okay";
0503 };
0504 
0505 &usbh1 {
0506         pinctrl-names = "default";
0507         pinctrl-0 = <&pinctrl_usb>;
0508         vbus-supply = <&reg_usbh1_vbus>;
0509         phy_type = "utmi";
0510         dr_mode = "host";
0511         status = "okay";
0512 };
0513 
0514 &usbotg {
0515         dr_mode = "peripheral";
0516         status = "okay";
0517 };