Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
0002 /*
0003  * Copyright (c) 2020 Protonic Holland
0004  * Copyright (c) 2020 Oleksij Rempel <kernel@pengutronix.de>, Pengutronix
0005  */
0006 
0007 /dts-v1/;
0008 
0009 #include <dt-bindings/gpio/gpio.h>
0010 #include <dt-bindings/leds/common.h>
0011 #include "imx6ull.dtsi"
0012 
0013 / {
0014         model = "JOZ Access Point";
0015         compatible = "joz,jozacp", "fsl,imx6ull";
0016 
0017         chosen {
0018                 stdout-path = &uart1;
0019         };
0020 
0021         /* On board name LED_RGB1 */
0022         led-controller-1 {
0023                 compatible = "pwm-leds";
0024 
0025                 led-0 {
0026                         color = <LED_COLOR_ID_RED>;
0027                         function = LED_FUNCTION_INDICATOR;
0028                         function-enumerator = <0>;
0029                         pwms = <&pwm1 0 10000000 0>;
0030                         max-brightness = <255>;
0031                 };
0032 
0033                 led-1 {
0034                         color = <LED_COLOR_ID_GREEN>;
0035                         function = LED_FUNCTION_INDICATOR;
0036                         function-enumerator = <1>;
0037                         pwms = <&pwm3 0 10000000 0>;
0038                         max-brightness = <255>;
0039                 };
0040 
0041                 led-2 {
0042                         color = <LED_COLOR_ID_BLUE>;
0043                         function = LED_FUNCTION_INDICATOR;
0044                         function-enumerator = <2>;
0045                         pwms = <&pwm5 0 10000000 0>;
0046                         max-brightness = <255>;
0047                         linux,default-trigger = "heartbeat";
0048                 };
0049         };
0050 
0051         /* On board name LED_RGB2 */
0052         led-controller-2 {
0053                 compatible = "pwm-leds";
0054 
0055                 led-3 {
0056                         color = <LED_COLOR_ID_RED>;
0057                         function = LED_FUNCTION_INDICATOR;
0058                         function-enumerator = <3>;
0059                         pwms = <&pwm2 0 10000000 0>;
0060                         max-brightness = <255>;
0061                 };
0062 
0063                 led-4 {
0064                         color = <LED_COLOR_ID_GREEN>;
0065                         function = LED_FUNCTION_INDICATOR;
0066                         function-enumerator = <4>;
0067                         pwms = <&pwm4 0 10000000 0>;
0068                         max-brightness = <255>;
0069                 };
0070 
0071                 led-5 {
0072                         color = <LED_COLOR_ID_BLUE>;
0073                         function = LED_FUNCTION_INDICATOR;
0074                         function-enumerator = <5>;
0075                         pwms = <&pwm6 0 10000000 0>;
0076                         max-brightness = <255>;
0077                 };
0078         };
0079 
0080         reg_3v3: regulator-3v3 {
0081                 compatible = "regulator-fixed";
0082                 regulator-name = "3v3";
0083                 regulator-min-microvolt = <3300000>;
0084                 regulator-max-microvolt = <3300000>;
0085                 vin-supply = <&reg_5v0>;
0086         };
0087 
0088         reg_5v0: regulator-5v0 {
0089                 compatible = "regulator-fixed";
0090                 regulator-name = "5v0";
0091                 regulator-min-microvolt = <5000000>;
0092                 regulator-max-microvolt = <5000000>;
0093         };
0094 
0095         reg_vbus: regulator-vbus {
0096                 compatible = "regulator-fixed";
0097                 pinctrl-names = "default";
0098                 pinctrl-0 = <&pinctrl_vbus>;
0099                 regulator-name = "vbus";
0100                 regulator-min-microvolt = <5000000>;
0101                 regulator-max-microvolt = <5000000>;
0102                 vin-supply = <&reg_5v0>;
0103                 gpio = <&gpio1 2 GPIO_ACTIVE_HIGH>;
0104                 enable-active-high;
0105         };
0106 
0107         usdhc2_wifi_pwrseq: usdhc2-wifi-pwrseq {
0108                 compatible = "mmc-pwrseq-simple";
0109                 pinctrl-names = "default";
0110                 pinctrl-0 = <&pinctrl_wifi_npd>;
0111                 reset-gpios = <&gpio4 25 GPIO_ACTIVE_LOW>;
0112         };
0113 };
0114 
0115 &can1 {
0116         pinctrl-names = "default";
0117         pinctrl-0 = <&pinctrl_can1>;
0118         status = "okay";
0119 };
0120 
0121 &cpu0 {
0122         clock-frequency = <792000000>;
0123 };
0124 
0125 &fec1 {
0126         pinctrl-names = "default";
0127         pinctrl-0 = <&pinctrl_enet1>;
0128         phy-mode = "rmii";
0129         phy-handle = <&ethphy0>;
0130         status = "okay";
0131 
0132         mdio {
0133                 #address-cells = <1>;
0134                 #size-cells = <0>;
0135 
0136                 ethphy0: ethernet-phy@0 {
0137                         reg = <0>;
0138                         clocks = <&clks IMX6UL_CLK_ENET_REF>;
0139                         clock-names = "rmii-ref";
0140                         interrupts-extended = <&gpio1 29 IRQ_TYPE_LEVEL_LOW>;
0141                         reset-gpios = <&gpio1 28 GPIO_ACTIVE_LOW>;
0142                         reset-assert-us = <10000>;
0143                         reset-deassert-us = <300>;
0144                 };
0145         };
0146 };
0147 
0148 &i2c1 {
0149         pinctrl-names = "default";
0150         pinctrl-0 = <&pinctrl_i2c1>;
0151         clock-frequency = <100000>;
0152         status = "okay";
0153 };
0154 
0155 &i2c2 {
0156         pinctrl-names = "default";
0157         pinctrl-0 = <&pinctrl_i2c2>;
0158         clock-frequency = <100000>;
0159         status = "okay";
0160 
0161         rtc@51 {
0162                 compatible = "nxp,pcf8563";
0163                 reg = <0x51>;
0164         };
0165 };
0166 
0167 &pwm1 {
0168         pinctrl-names = "default";
0169         pinctrl-0 = <&pinctrl_pwm1>;
0170         status = "okay";
0171 };
0172 
0173 &pwm2 {
0174         pinctrl-names = "default";
0175         pinctrl-0 = <&pinctrl_pwm2>;
0176         status = "okay";
0177 };
0178 
0179 &pwm3 {
0180         pinctrl-names = "default";
0181         pinctrl-0 = <&pinctrl_pwm3>;
0182         status = "okay";
0183 };
0184 
0185 &pwm4 {
0186         pinctrl-names = "default";
0187         pinctrl-0 = <&pinctrl_pwm4>;
0188         status = "okay";
0189 };
0190 
0191 &pwm5 {
0192         pinctrl-names = "default";
0193         pinctrl-0 = <&pinctrl_pwm5>;
0194         status = "okay";
0195 };
0196 
0197 &pwm6 {
0198         pinctrl-names = "default";
0199         pinctrl-0 = <&pinctrl_pwm6>;
0200         status = "okay";
0201 };
0202 
0203 &snvs_rtc {
0204         status = "disabled";
0205 };
0206 
0207 &uart1 {
0208         pinctrl-names = "default";
0209         pinctrl-0 = <&pinctrl_uart1>;
0210         status = "okay";
0211 };
0212 
0213 &uart4 {
0214         pinctrl-names = "default";
0215         pinctrl-0 = <&pinctrl_uart4>;
0216         dtr-gpios = <&gpio3 4 GPIO_ACTIVE_LOW>;
0217         uart-has-rtscts;
0218         status = "okay";
0219 };
0220 
0221 &usbotg1 {
0222         pinctrl-names = "default";
0223         pinctrl-0 = <&pinctrl_usbotg1>;
0224         vbus-supply = <&reg_vbus>;
0225         dr_mode = "host";
0226         over-current-active-low;
0227         status = "okay";
0228 };
0229 
0230 &usdhc1 {
0231         pinctrl-names = "default";
0232         pinctrl-0 = <&pinctrl_usdhc1>;
0233         vmmc-supply = <&reg_3v3>;
0234         bus-width = <8>;
0235         no-1-8-v;
0236         non-removable;
0237         cap-mmc-hw-reset;
0238         no-sd;
0239         no-sdio;
0240         status = "okay";
0241 };
0242 
0243 &usdhc2 {
0244         pinctrl-names = "default";
0245         pinctrl-0 = <&pinctrl_usdhc2>;
0246         mmc-pwrseq = <&usdhc2_wifi_pwrseq>;
0247         bus-width = <4>;
0248         no-1-8-v;
0249         no-mmc;
0250         no-sd;
0251         non-removable;
0252         #address-cells = <1>;
0253         #size-cells = <0>;
0254         status = "okay";
0255 
0256         wifi@1 {
0257                 compatible = "brcm,bcm4329-fmac";
0258                 reg = <1>;
0259         };
0260 };
0261 
0262 &iomuxc {
0263         pinctrl-names = "default";
0264         pinctrl-0 = <&pinctrl_hog>;
0265 
0266         pinctrl_can1: can1grp {
0267                 fsl,pins = <
0268                         MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX      0x1b0b0
0269                         MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX      0x1b0b0
0270                 >;
0271         };
0272 
0273         pinctrl_enet1: enet1grp {
0274                 fsl,pins = <
0275                         MX6UL_PAD_GPIO1_IO07__ENET1_MDC  0x1b0b0
0276                         MX6UL_PAD_GPIO1_IO06__ENET1_MDIO        0x1b0b0
0277                         MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN      0x1b0b0
0278                         MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER      0x1b0b0
0279                         MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0
0280                         MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0
0281                         MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN      0x1b0b0
0282                         MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0
0283                         MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0
0284                         MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1  0x4001b031
0285 
0286                         MX6UL_PAD_UART4_TX_DATA__GPIO1_IO28     0x038b0
0287                         MX6UL_PAD_UART4_RX_DATA__GPIO1_IO29     0x170b0
0288                 >;
0289         };
0290 
0291         pinctrl_hog: hoggrp {
0292                 fsl,pins = <
0293                         /* HW Revision */
0294                         MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08    0x1b0b0
0295                         MX6UL_PAD_ENET2_RX_DATA1__GPIO2_IO09    0x1b0b0
0296                         MX6UL_PAD_ENET2_RX_EN__GPIO2_IO10       0x1b0b0
0297 
0298                         /* HW ID */
0299                         MX6UL_PAD_ENET2_TX_DATA0__GPIO2_IO11    0x1b0b0
0300                         MX6UL_PAD_ENET2_TX_DATA1__GPIO2_IO12    0x1b0b0
0301                         MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13       0x1b0b0
0302                         MX6UL_PAD_ENET2_TX_CLK__GPIO2_IO14      0x1b0b0
0303                         MX6UL_PAD_ENET2_RX_ER__GPIO2_IO15       0x1b0b0
0304 
0305                         /* Digital inputs */
0306                         MX6UL_PAD_GPIO1_IO03__GPIO1_IO03        0x11000
0307                         MX6UL_PAD_GPIO1_IO04__GPIO1_IO04        0x11000
0308                         MX6UL_PAD_GPIO1_IO05__GPIO1_IO05        0x11000
0309                         MX6UL_PAD_GPIO1_IO08__GPIO1_IO08        0x11000
0310                         MX6UL_PAD_GPIO1_IO09__GPIO1_IO09        0x11000
0311 
0312                         /* Isolated outputs */
0313                         MX6UL_PAD_UART2_TX_DATA__GPIO1_IO20     0x01020
0314                         MX6UL_PAD_UART2_RX_DATA__GPIO1_IO21     0x01020
0315                         MX6UL_PAD_UART2_RTS_B__GPIO1_IO23       0x01020
0316                         MX6UL_PAD_UART3_TX_DATA__GPIO1_IO24     0x01020
0317                         MX6UL_PAD_UART3_RX_DATA__GPIO1_IO25     0x01020
0318                 >;
0319         };
0320 
0321         pinctrl_i2c1: i2c1grp {
0322                 fsl,pins = <
0323                         MX6UL_PAD_CSI_MCLK__I2C1_SDA            0x4001f8b1
0324                         MX6UL_PAD_CSI_PIXCLK__I2C1_SCL          0x4001f8b1
0325                 >;
0326         };
0327 
0328         pinctrl_i2c2: i2c2grp {
0329                 fsl,pins = <
0330                         MX6UL_PAD_UART5_RX_DATA__I2C2_SDA       0x4001f8b1
0331                         MX6UL_PAD_UART5_TX_DATA__I2C2_SCL       0x4001f8b1
0332                 >;
0333         };
0334 
0335         pinctrl_pwm1: pwm1grp {
0336                 fsl,pins = <
0337                         MX6UL_PAD_LCD_DATA00__PWM1_OUT          0x01010
0338                 >;
0339         };
0340 
0341         pinctrl_pwm2: pwm2grp {
0342                 fsl,pins = <
0343                         MX6UL_PAD_LCD_DATA01__PWM2_OUT          0x01010
0344                 >;
0345         };
0346 
0347         pinctrl_pwm3: pwm3grp {
0348                 fsl,pins = <
0349                         MX6UL_PAD_LCD_DATA02__PWM3_OUT          0x01010
0350                 >;
0351         };
0352 
0353         pinctrl_pwm4: pwm4grp {
0354                 fsl,pins = <
0355                         MX6UL_PAD_LCD_DATA03__PWM4_OUT          0x01010
0356                 >;
0357         };
0358 
0359         pinctrl_pwm5: pwm5grp {
0360                 fsl,pins = <
0361                         MX6UL_PAD_LCD_DATA18__PWM5_OUT          0x01010
0362                 >;
0363         };
0364 
0365         pinctrl_pwm6: pwm6grp {
0366                 fsl,pins = <
0367                         MX6UL_PAD_LCD_DATA19__PWM6_OUT          0x01010
0368                 >;
0369         };
0370 
0371         pinctrl_uart1: uart1grp {
0372                 fsl,pins = <
0373                         MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX   0x1b0b1
0374                         MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX   0x1b0b1
0375                 >;
0376         };
0377 
0378         pinctrl_uart4: uart4grp {
0379                 fsl,pins = <
0380                         MX6UL_PAD_LCD_CLK__UART4_DCE_TX         0x1b0b0
0381                         MX6UL_PAD_LCD_ENABLE__UART4_DCE_RX      0x1b0b0
0382                         MX6UL_PAD_LCD_HSYNC__UART4_DCE_CTS      0x1b0b0
0383                         MX6UL_PAD_LCD_VSYNC__UART4_DCE_RTS      0x1b0b0
0384                         MX6UL_PAD_LCD_RESET__GPIO3_IO04         0x1b0b0
0385                 >;
0386         };
0387 
0388         pinctrl_usbotg1: usbotg1grp {
0389                 fsl,pins = <
0390                         MX6UL_PAD_GPIO1_IO01__USB_OTG1_OC       0x1b0b0
0391                 >;
0392         };
0393 
0394         pinctrl_usdhc1: usdhc1grp {
0395                 fsl,pins = <
0396                         MX6UL_PAD_NAND_WP_B__USDHC1_RESET_B     0x17099
0397                         MX6UL_PAD_SD1_CMD__USDHC1_CMD           0x1f099
0398                         MX6UL_PAD_SD1_CLK__USDHC1_CLK           0x10099
0399                         MX6UL_PAD_SD1_DATA0__USDHC1_DATA0       0x17099
0400                         MX6UL_PAD_SD1_DATA1__USDHC1_DATA1       0x17099
0401                         MX6UL_PAD_SD1_DATA2__USDHC1_DATA2       0x17099
0402                         MX6UL_PAD_SD1_DATA3__USDHC1_DATA3       0x17099
0403                         MX6UL_PAD_NAND_READY_B__USDHC1_DATA4    0x17099
0404                         MX6UL_PAD_NAND_CE0_B__USDHC1_DATA5      0x17099
0405                         MX6UL_PAD_NAND_CE1_B__USDHC1_DATA6      0x17099
0406                         MX6UL_PAD_NAND_CLE__USDHC1_DATA7        0x17099
0407                 >;
0408         };
0409 
0410         pinctrl_usdhc2: usdhc2grp {
0411                 fsl,pins = <
0412                         MX6UL_PAD_CSI_VSYNC__USDHC2_CLK         0x100b9
0413                         MX6UL_PAD_CSI_HSYNC__USDHC2_CMD         0x170b9
0414                         MX6UL_PAD_CSI_DATA00__USDHC2_DATA0      0x170b9
0415                         MX6UL_PAD_CSI_DATA01__USDHC2_DATA1      0x170b9
0416                         MX6UL_PAD_CSI_DATA02__USDHC2_DATA2      0x170b9
0417                         MX6UL_PAD_CSI_DATA03__USDHC2_DATA3      0x170b9
0418                 >;
0419         };
0420 
0421         pinctrl_vbus: vbus0grp {
0422                 fsl,pins = <
0423                         MX6UL_PAD_GPIO1_IO02__GPIO1_IO02        0x030b0
0424                 >;
0425         };
0426 
0427         pinctrl_wifi_npd: wifigrp {
0428                 fsl,pins = <
0429                         /* WL_REG_ON */
0430                         MX6UL_PAD_CSI_DATA04__GPIO4_IO25        0x03020
0431                 >;
0432         };
0433 };
0434 
0435 &iomuxc_snvs {
0436         pinctrl-names = "default";
0437         pinctrl-0 = <&pinctrl_snvs_hog>;
0438 
0439         pinctrl_snvs_hog: snvs-hog-grp {
0440                 fsl,pins = <
0441                         /* Digital outputs */
0442                         MX6ULL_PAD_SNVS_TAMPER2__GPIO5_IO02     0x00020
0443                         MX6ULL_PAD_SNVS_TAMPER3__GPIO5_IO03     0x00020
0444                         MX6ULL_PAD_SNVS_TAMPER4__GPIO5_IO04     0x00020
0445                         MX6ULL_PAD_SNVS_TAMPER5__GPIO5_IO05     0x00020
0446                         MX6ULL_PAD_SNVS_TAMPER6__GPIO5_IO06     0x00020
0447 
0448                         /* Digital outputs fault feedback */
0449                         MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00     0x17000
0450                         MX6ULL_PAD_SNVS_TAMPER1__GPIO5_IO01     0x17000
0451                         MX6ULL_PAD_SNVS_TAMPER7__GPIO5_IO07     0x17000
0452                         MX6ULL_PAD_SNVS_TAMPER8__GPIO5_IO08     0x17000
0453                         MX6ULL_PAD_SNVS_TAMPER9__GPIO5_IO09     0x17000
0454                 >;
0455         };
0456 };