This should make maintaining work easier. Signed-off-by: Oleksij Rempel <o.rempel@xxxxxxxxxxxxxx> --- arch/arm/dts/imx6dl-alti6p.dts | 119 +---- arch/arm/dts/imx6dl-lanmcu.dts | 463 +----------------- arch/arm/dts/imx6dl-plybas.dts | 185 +------ arch/arm/dts/imx6dl-plym2m.dts | 176 +------ arch/arm/dts/imx6dl-prtmvt.dts | 163 +------ arch/arm/dts/imx6dl-prtrvt.dts | 184 +------ arch/arm/dts/imx6dl-prtvt7.dts | 473 +----------------- arch/arm/dts/imx6dl-victgo.dts | 144 +----- arch/arm/dts/imx6dl-vicut1.dts | 50 +- arch/arm/dts/imx6q-prti6q.dts | 533 +------------------- arch/arm/dts/imx6q-prtwd2.dts | 187 +------ arch/arm/dts/imx6q-vicut1.dts | 65 +-- arch/arm/dts/imx6qdl-prti6q-emmc.dtsi | 49 ++ arch/arm/dts/imx6qdl-prti6q-nor.dtsi | 5 + arch/arm/dts/imx6qdl-prti6q.dtsi | 216 --------- arch/arm/dts/imx6qdl-vicut1.dtsi | 234 --------- arch/arm/dts/imx6qp-prtwd3.dts | 675 +------------------------- arch/arm/dts/imx6qp-vicutp.dts | 51 +- arch/arm/dts/imx6ul-prti6g.dts | 109 ++--- arch/arm/dts/imx6ul-prti6g.dtsi | 330 ------------- 20 files changed, 133 insertions(+), 4278 deletions(-) create mode 100644 arch/arm/dts/imx6qdl-prti6q-emmc.dtsi delete mode 100644 arch/arm/dts/imx6qdl-prti6q.dtsi delete mode 100644 arch/arm/dts/imx6qdl-vicut1.dtsi delete mode 100644 arch/arm/dts/imx6ul-prti6g.dtsi diff --git a/arch/arm/dts/imx6dl-alti6p.dts b/arch/arm/dts/imx6dl-alti6p.dts index 8d53100bea..04a6368f93 100644 --- a/arch/arm/dts/imx6dl-alti6p.dts +++ b/arch/arm/dts/imx6dl-alti6p.dts @@ -1,118 +1,5 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (c) 2016 Protonic Holland - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-prti6q.dtsi" - -/ { - model = "Altesco I6P Board"; - compatible = "alt,alti6p", "fsl,imx6dl"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0x40000000>; - }; -}; - -&hdmi { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_hdmi>; - ddc-i2c-bus = <&i2c1>; - status = "okay"; -}; - -/* DDC */ -&i2c1 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1>; - status = "okay"; -}; - -&i2c3 { - rtc: pcf8563@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - phy-reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>; - clock-names = "ipg", "ahb"; - status = "okay"; -}; - -&i2c2 { - clock-frequency = <50000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c2>; - status = "okay"; -}; - -&i2c4 { - clock-frequency = <50000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c4>; - status = "okay"; -}; - -&iomuxc { - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x1f058 - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0 - /* power enable, high active */ - MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 - >; - }; - - pinctrl_hdmi: hdmigrp { - fsl,pins = < - /* NOTE: DDC is done via I2C2, so DON'T configure DDC pins for HDMI! */ - MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0 - >; - }; - - pinctrl_i2c2: i2c2grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 - MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 - >; - }; - - pinctrl_i2c4: i2c4grp { - fsl,pins = < - MX6QDL_PAD_NANDF_CS3__I2C4_SDA 0x4001f8b1 - MX6QDL_PAD_NANDF_WP_B__I2C4_SCL 0x4001f8b1 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_CSI0_DAT4__GPIO5_IO22 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_CSI0_DAT5__GPIO5_IO23 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-alti6p.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-lanmcu.dts b/arch/arm/dts/imx6dl-lanmcu.dts index d50e6afe7e..1a1fbad326 100644 --- a/arch/arm/dts/imx6dl-lanmcu.dts +++ b/arch/arm/dts/imx6dl-lanmcu.dts @@ -1,464 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2019 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include <dt-bindings/gpio/gpio.h> - -/ { - model = "LANMCU"; - compatible = "lan,lanmcu", "fsl,imx6dl"; - - chosen { - stdout-path = &uart4; - - environment-emmc { - compatible = "barebox,environment"; - device-path = &usdhc3, "partname:barebox-environment"; - }; - }; - - memory { - reg = <0x10000000 0x10000000>; - }; - - reg_usb_otg_vbus: otg-vbus-regulator { - compatible = "regulator-fixed"; - regulator-name = "regulator-OTG-VBUS"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio3 22 0>; - enable-active-high; - }; - - usdhc2_pwrseq: usdhc2_pwrseq { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wlan_npd>; - compatible = "mmc-pwrseq-simple"; - reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>; - }; - - display: display0 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ipu1_disp>; - compatible = "fsl,imx-parallel-display"; - #address-cells = <1>; - #size-cells = <0>; - interface-pix-fmt = "bgr666"; - status = "okay"; - - port@0 { - reg = <0>; - - display_in: endpoint { - remote-endpoint = <&ipu1_di0_disp0>; - }; - }; - - port@1 { - reg = <1>; - - display_out: endpoint { - remote-endpoint = <&panel_in>; - }; - }; - }; - - panel { - compatible = "edt,etm0700g0bdh6"; - backlight = <&backlight_lcd>; - - port { - panel_in: endpoint { - remote-endpoint = <&display_out>; - }; - }; - }; - - backlight_lcd: backlight_lcd { - compatible = "pwm-backlight"; - pwms = <&pwm1 0 5000000 0>; - brightness-levels = <0 5 7 9 12 15 20 27 35 47 62 81 107 142 188 248 - 328 433 573 757 1000>; - default-brightness-level = <20>; - status = "okay"; - }; - - leds: leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - debug0 { - label = "debug0"; - gpios = <&gpio1 8 0>; - linux,default-trigger = "heartbeat"; - }; - }; - - clk50m_phy: phy_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <50000000>; - }; -}; - -&iomuxc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_hog>; - - prti6q { - pinctrl_hog: hoggrp { - fsl,pins = < - /* HW revision detect */ - MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0 /* REV_ID0 */ - MX6QDL_PAD_SD4_DAT1__GPIO2_IO09 0x1b0b0 /* REV_ID1 */ - MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 /* REV_ID2 */ - MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0 /* REV_ID3 */ - MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0 /* REV_ID4 */ - >; - }; - - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0 - /* power enable, high active */ - MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 - >; - }; - - pinctrl_ipu1_disp: ipudisp1grp { - fsl,pins = < - /* DSE 0x30 => 25 Ohm, 0x20 => 37 Ohm, 0x10 => 75 Ohm */ - MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x30 - MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x30 - MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x30 - MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x30 - MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x30 - MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x30 - MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x30 - MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x30 - MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x30 - MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x30 - MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x30 - MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x30 - MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x30 - MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x30 - MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x30 - MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x30 - MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x30 - MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x30 - MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x30 - MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x30 - MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x30 - MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x30 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_CSI0_DAT4__GPIO5_IO22 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_CSI0_DAT5__GPIO5_IO23 0x1b0b0 - >; - }; - - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b0 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - >; - }; - - pinctrl_wlan_npd: wlan_npd { - fsl,pins = < - /* WL_REG_ON */ - MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x13069 - >; - }; - - pinctrl_uart2: uart2grp { - fsl,pins = < - MX6QDL_PAD_EIM_D26__UART2_RX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D27__UART2_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D28__UART2_CTS_B 0x130b1 - >; - }; - - pinctrl_uart3: uart3grp { - fsl,pins = < - MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D30__UART3_CTS_B 0x130b1 - >; - }; - - pinctrl_uart4: uart4grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 - MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 - >; - }; - - pinctrl_i2c1: i2c1grp { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001f8b1 - MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001f8b1 - >; - }; - - pinctrl_i2c3: i2c3grp { - fsl,pins = < - MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 - MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 - >; - }; - - pinctrl_usdhc1: usdhc1grp { - fsl,pins = < - MX6QDL_PAD_SD1_CMD__SD1_CMD 0x170f9 - MX6QDL_PAD_SD1_CLK__SD1_CLK 0x100f9 - MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f9 - MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f9 - MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f9 - MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f9 - MX6QDL_PAD_GPIO_1__SD1_CD_B 0x1b0b0 - >; - }; - - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 - MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 - MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 - MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 - MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 - MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9 - >; - }; - - pinctrl_usdhc3: usdhc3grp { - fsl,pins = < - MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17099 - MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10099 - MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17099 - MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17099 - MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17099 - MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17099 - MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17099 - MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17099 - MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17099 - MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17099 - >; - }; - - pinctrl_can1: can1grp { - fsl,pins = < - MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 - MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000 - >; - }; - - pinctrl_can2: can2grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x80000000 - MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x80000000 - >; - }; - - pinctrl_ts_edt: ts1grp { - fsl,pins = < - MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x1b0b0 - >; - }; - }; -}; - -&ipu1_di0_disp0 { - remote-endpoint = <&display_in>; -}; - -&pwm1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwm1>; - status = "okay"; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>, - <&clk50m_phy>; - clock-names = "ipg", "ahb", "ptp"; - status = "okay"; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - /* Microchip KSZ8081RNA PHY */ - rgmii_phy: ethernet-phy@0 { - reg = <0>; - interrupts-extended = <&gpio5 23 IRQ_TYPE_LEVEL_LOW>; - reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>; - reset-assert-us = <10000>; - reset-deassert-us = <300>; - }; - }; -}; - -&uart2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart2>; - linux,rs485-enabled-at-boot-time; - uart-has-rtscts; - status = "okay"; -}; - -&uart3 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart3>; - linux,rs485-enabled-at-boot-time; - uart-has-rtscts; - status = "okay"; -}; - -&uart4 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart4>; - status = "okay"; -}; - -&usbotg { - vbus-supply = <®_usb_otg_vbus>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usbotg>; - phy_type = "utmi"; - dr_mode = "host"; - status = "okay"; -}; - -&i2c1 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1>; - status = "okay"; -}; - -&i2c3 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c3>; - status = "okay"; - - rtc: pcf8563@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; - - touchscreen: edt_ft5406@38 { - compatible = "edt,edt-ft5406"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ts_edt>; - reg = <0x38>; - interrupt-parent = <&gpio3>; - interrupts = <20 IRQ_TYPE_EDGE_FALLING>; - - touchscreen-size-x = <1792>; - touchscreen-size-y = <1024>; - - touchscreen-fuzz-x = <0>; - touchscreen-fuzz-y = <0>; - - /* Touch screen calibration */ - threshold = <50>; - gain = <5>; - offset = <10>; - }; -}; - -&usdhc1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc1>; - cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>; - status = "okay"; -}; - -&usdhc2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - no-1-8-v; - non-removable; - mmc-pwrseq = <&usdhc2_pwrseq>; - pm-ignore-notify; - status = "okay"; - #address-cells = <1>; - #size-cells = <0>; - - brcmf: bcrmf@1 { - reg = <1>; - compatible = "brcm,bcm4329-fmac"; - }; -}; - -&usdhc3 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc3>; - bus-width = <8>; - non-removable; - status = "okay"; - - partitions { - /* - * Map a partition at the last 64k of the area available for - * the second stage bootloader. - */ - compatible = "fixed-partitions"; - #size-cells = <1>; - #address-cells = <1>; - - partition@100000 { - label = "barebox-environment"; - reg = <0x100000 0x100000>; - }; - - partition@200000 { - label = "state"; - reg = <0x200000 0x100000>; - }; - }; -}; - -&can1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_can1>; - status = "okay"; -}; -&can2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_can2>; - status = "okay"; -}; +#include <arm/imx6dl-lanmcu.dts> +#include "imx6qdl-prti6q-emmc.dtsi" diff --git a/arch/arm/dts/imx6dl-plybas.dts b/arch/arm/dts/imx6dl-plybas.dts index de0ba05e13..b0e1595a41 100644 --- a/arch/arm/dts/imx6dl-plybas.dts +++ b/arch/arm/dts/imx6dl-plybas.dts @@ -1,186 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-vicut1.dtsi" - -/ { - model = "Plymovent BAS board"; - compatible = "ply,plybas", "fsl,imx6dl"; - - memory { - reg = <0x10000000 0x10000000>; - }; - - backlight_lcd { - status = "disabled"; - }; - - gpio_keys { - compatible = "gpio-keys"; - #address-cells = <1>; - #size-cells = <0>; - autorepeat; - button@20 { - label = "START"; - linux,code = <31>; - gpios = <&gpio5 8 1>; - }; - button@21 { - label = "CLEAN"; - linux,code = <46>; - gpios = <&gpio5 9 1>; - }; - }; - - leds: leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - debug0 { - label = "debug0"; - gpios = <&gpio1 8 0>; - }; - - debug1 { - label = "debug1"; - gpios = <&gpio1 9 0>; - }; - - light_tower1 { - label = "light_tower1"; - gpios = <&gpio4 22 0>; - linux,default-trigger = "heartbeat"; - }; - - light_tower2 { - label = "light_tower2"; - gpios = <&gpio4 23 0>; - }; - - light_tower3 { - label = "light_tower3"; - gpios = <&gpio4 24 0>; - }; - - light_tower4 { - label = "light_tower4"; - gpios = <&gpio4 25 0>; - }; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - phy-reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>; - clock-names = "ipg", "ahb"; - status = "okay"; -}; - -&uart2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart2>; - fsl,uart-has-rtscts; - linux,rs485-enabled-at-boot-time; - rs485-rts-delay = <0 20>; - status = "okay"; -}; - -&iomuxc { - pinctrl_hog: hoggrp { - fsl,pins = < - /* CAN1_SR + CAN2_SR GPIO outputs */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x13070 - - MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b0 /* YACO_nIRQ */ - MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x130b0 /* YACO_BOOT0 */ - MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x1b0b0 /* YACO_nRESET */ - - MX6QDL_PAD_DISP0_DAT0__GPIO4_IO21 0x13070 /* BUZZER */ - MX6QDL_PAD_DISP0_DAT6__GPIO4_IO27 0x13070 /* ANA_OUT_SD */ - MX6QDL_PAD_DISP0_DAT7__GPIO4_IO28 0x1b0b0 /* ANA_OUT_ERR */ - - MX6QDL_PAD_DISP0_DAT11__GPIO5_IO05 0x13070 /* RELAY1 */ - MX6QDL_PAD_DISP0_DAT12__GPIO5_IO06 0x13070 /* RELAY2 */ - - MX6QDL_PAD_DISP0_DAT14__GPIO5_IO08 0x1b0b0 /* IN1 */ - MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09 0x1b0b0 /* IN2 */ - MX6QDL_PAD_DISP0_DAT16__GPIO5_IO10 0x1b0b0 /* IN3 */ - MX6QDL_PAD_DISP0_DAT17__GPIO5_IO11 0x1b0b0 /* IN4 */ - MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12 0x1b0b0 /* IN5 */ - MX6QDL_PAD_DISP0_DAT19__GPIO5_IO13 0x1b0b0 /* IN6 */ - MX6QDL_PAD_DISP0_DAT20__GPIO5_IO14 0x1b0b0 /* IN7 */ - MX6QDL_PAD_DISP0_DAT21__GPIO5_IO15 0x1b0b0 /* IN8 */ - MX6QDL_PAD_DISP0_DAT22__GPIO5_IO16 0x1b0b0 /* IN9 */ - MX6QDL_PAD_DISP0_DAT23__GPIO5_IO17 0x1b0b0 /* IN10 */ - MX6QDL_PAD_DI0_PIN4__GPIO4_IO20 0x1b0b0 /* IN11 */ - MX6QDL_PAD_DI0_PIN2__GPIO4_IO18 0x1b0b0 /* IN12 */ - - MX6QDL_PAD_DI0_PIN3__GPIO4_IO19 0x1a0b0 /* HMI */ - - /* HW revision detect */ - MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0 /* REV_ID0 */ - MX6QDL_PAD_SD4_DAT1__GPIO2_IO09 0x1b0b0 /* REV_ID1 */ - MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 /* REV_ID2 */ - MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0 /* REV_ID3 */ - MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0 /* REV_ID4 */ - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 /* DEBUG0 */ - MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0 /* DEBUG1 */ - - MX6QDL_PAD_DISP0_DAT1__GPIO4_IO22 0x13070 /* LED1 (lighttower) */ - MX6QDL_PAD_DISP0_DAT2__GPIO4_IO23 0x13070 /* LED2 (lighttower) */ - MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x13070 /* LED3 (lighttower) */ - MX6QDL_PAD_DISP0_DAT4__GPIO4_IO25 0x13070 /* LED4 (lighttower) */ - >; - }; - - /* RS485 UART */ - pinctrl_uart2: uart2grp { - fsl,pins = < - MX6QDL_PAD_EIM_D26__UART2_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D27__UART2_RX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D28__UART2_DTE_CTS_B 0x130b1 - >; - }; - - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-plybas.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-plym2m.dts b/arch/arm/dts/imx6dl-plym2m.dts index e944a14dce..bf29fc1bce 100644 --- a/arch/arm/dts/imx6dl-plym2m.dts +++ b/arch/arm/dts/imx6dl-plym2m.dts @@ -1,177 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-prti6q.dtsi" -#include "imx6qdl-prti6q-nor.dtsi" - -/ { - model = "Plymovent M2M board"; - compatible = "ply,plym2m", "fsl,imx6dl"; - - memory { - reg = <0x10000000 0x10000000>; - }; - - leds: leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - debug0 { - label = "debug0"; - gpios = <&gpio1 8 0>; - linux,default-trigger = "heartbeat"; - }; - }; - - clk50m_phy: phy_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <50000000>; - }; -}; - -&ecspi1 { - cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi1>; - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <20000000>; - #address-cells = <1>; - #size-cells = <1>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>, - <&clk50m_phy>; - clock-names = "ipg", "ahb", "ptp"; - status = "okay"; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - /* Microchip KSZ8081RNA PHY */ - rgmii_phy: ethernet-phy@0 { - reg = <0>; - interrupts-extended = <&gpio5 23 IRQ_TYPE_LEVEL_LOW>; - reset-gpios = <&gpio5 22 GPIO_ACTIVE_LOW>; - reset-assert-us = <10000>; - reset-deassert-us = <300>; - }; - }; -}; -&iomuxc { - pinctrl_hog: hoggrp { - fsl,pins = < - /* CAN1_SR GPIO output */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - - MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 /* CAN1_TERM */ - MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0 /* TSC_BUSY */ - - /* HW revision detect */ - MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0 /* REV_ID0 */ - MX6QDL_PAD_SD4_DAT1__GPIO2_IO09 0x1b0b0 /* REV_ID1 */ - MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 /* REV_ID2 */ - MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0 /* REV_ID3 */ - MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0 /* REV_ID4 */ - >; - }; - - pinctrl_ecspi1: ecspi1grp { - fsl,pins = < - MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 - MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 - MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 - /* CS */ - MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 - >; - }; - - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0 - /* power enable, high active */ - MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 - >; - }; - - pinctrl_ipu1_disp: ipudisp1grp { - fsl,pins = < - /* DSE 0x30 => 25 Ohm, 0x20 => 37 Ohm, 0x10 => 75 Ohm */ - MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x30 - MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x30 - MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x30 - MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x30 - MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x30 - MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x30 - MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x30 - MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x30 - MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x30 - MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x30 - MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x30 - MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x30 - MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x30 - MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x30 - MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x30 - MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x30 - MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x30 - MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x30 - MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x30 - MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x30 - MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x30 - MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x30 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_CSI0_DAT4__GPIO5_IO22 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_CSI0_DAT5__GPIO5_IO23 0x1b0b0 - >; - }; - - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b0 - >; - }; - - pinctrl_backlight_m2m: backlightm2mgrp { - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-plym2m.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-prtmvt.dts b/arch/arm/dts/imx6dl-prtmvt.dts index 05fce7178f..64e2f90110 100644 --- a/arch/arm/dts/imx6dl-prtmvt.dts +++ b/arch/arm/dts/imx6dl-prtmvt.dts @@ -1,164 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-vicut1.dtsi" - -/ { - model = "Protonic MVT board"; - compatible = "prt,prtmvt", "fsl,imx6dl"; - - memory { - reg = <0x10000000 0x20000000>; - }; - - gpio_keys { - compatible = "gpio-keys"; - #address-cells = <1>; - #size-cells = <0>; - autorepeat; - - button@20 { - label = "GPIO Key F1"; - linux,code = <59>; - gpios = <&pca_gpio 0 GPIO_ACTIVE_LOW>; - }; - button@21 { - label = "GPIO Key F2"; - linux,code = <60>; - gpios = <&pca_gpio 1 GPIO_ACTIVE_LOW>; - }; - button@22 { - label = "GPIO Key F3"; - linux,code = <61>; - gpios = <&pca_gpio 2 GPIO_ACTIVE_LOW>; - }; - button@23 { - label = "GPIO Key F4"; - linux,code = <62>; - gpios = <&pca_gpio 3 GPIO_ACTIVE_LOW>; - }; - button@24 { - label = "GPIO Key F5"; - linux,code = <63>; - gpios = <&pca_gpio 4 GPIO_ACTIVE_LOW>; - }; - - // Center - button@25 { - label = "GPIO Key CYCLE"; - linux,code = <154>; - gpios = <&pca_gpio 5 GPIO_ACTIVE_LOW>; - }; - button@26 { - label = "GPIO Key ESC"; - linux,code = <1>; - gpios = <&pca_gpio 6 GPIO_ACTIVE_LOW>; - }; - button@27 { - label = "GPIO Key UP"; - linux,code = <103>; - gpios = <&pca_gpio 7 GPIO_ACTIVE_LOW>; - }; - button@28 { - label = "GPIO Key DOWN"; - linux,code = <108>; - gpios = <&pca_gpio 8 GPIO_ACTIVE_LOW>; - }; - button@29 { - label = "GPIO Key OK"; - linux,code = <0x160>; - gpios = <&pca_gpio 9 GPIO_ACTIVE_LOW>; - }; - - button@2a { - label = "GPIO Key F6"; - linux,code = <64>; - gpios = <&pca_gpio 10 GPIO_ACTIVE_LOW>; - }; - button@2b { - label = "GPIO Key F7"; - linux,code = <65>; - gpios = <&pca_gpio 11 GPIO_ACTIVE_LOW>; - }; - button@2c { - label = "GPIO Key F8"; - linux,code = <66>; - gpios = <&pca_gpio 12 GPIO_ACTIVE_LOW>; - }; - button@2d { - label = "GPIO Key F9"; - linux,code = <67>; - gpios = <&pca_gpio 13 GPIO_ACTIVE_LOW>; - }; - button@2e { - label = "GPIO Key F10"; - linux,code = <68>; - gpios = <&pca_gpio 14 GPIO_ACTIVE_LOW>; - }; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - phy-reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>; - clock-names = "ipg", "ahb"; - status = "okay"; -}; - -&pwm2 { - status = "disabled"; -}; - -&pcie { - status = "disabled"; -}; - -&i2c1 { - pca_gpio: gpio@74 { - #gpio-cells = <2>; - compatible = "nxp,pca9539"; - reg = <0x74>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pca9539>; - interrupt-parent = <&gpio4>; - interrupts = <5 IRQ_TYPE_LEVEL_LOW>; - gpio-controller; - }; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 - >; - }; - pinctrl_pca9539: pca9539 { - fsl,pins = < - MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-prtmvt.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-prtrvt.dts b/arch/arm/dts/imx6dl-prtrvt.dts index c403ba3ea7..e0d9261d27 100644 --- a/arch/arm/dts/imx6dl-prtrvt.dts +++ b/arch/arm/dts/imx6dl-prtrvt.dts @@ -1,183 +1,5 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (c) 2014 Protonic Holland - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-prti6q.dtsi" -#include "imx6qdl-prti6q-nor.dtsi" -#include <dt-bindings/leds/common.h> - -/ { - model = "Protonic RVT board"; - compatible = "prt,prtrvt", "fsl,imx6dl"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0x10000000>; - }; - - leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - led-debug0 { - function = LED_FUNCTION_STATUS; - gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "heartbeat"; - }; - }; -}; - -&can1 { - pinctrl-0 = <&pinctrl_can1 &pinctrl_can1phy>; -}; - -&ecspi1 { - cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi1>; - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <20000000>; - #address-cells = <1>; - #size-cells = <1>; - }; -}; - -&ecspi3 { - cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi3>; - status = "okay"; - - nfc@0 { - compatible = "ti,trf7970a"; - reg = <0>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_nfc>; - spi-max-frequency = <2000000>; - interrupts-extended = <&gpio5 14 IRQ_TYPE_LEVEL_LOW>; - ti,enable-gpios = <&gpio5 12 GPIO_ACTIVE_LOW>, - <&gpio5 11 GPIO_ACTIVE_LOW>; - vin-supply = <®_3v3>; - vin-voltage-override = <3100000>; - autosuspend-delay = <30000>; - irq-status-read-quirk; - en2-rf-quirk; - t5t-rmb-extra-byte-quirk; - status = "okay"; - }; -}; - -&i2c3 { - adc@49 { - compatible = "ti,ads1015"; - reg = <0x49>; - #address-cells = <1>; - #size-cells = <0>; - - /* nc */ - channel@4 { - reg = <4>; - ti,gain = <3>; - ti,datarate = <3>; - }; - /* nc */ - channel@5 { - reg = <5>; - ti,gain = <3>; - ti,datarate = <3>; - }; - - /* can1_l */ - channel@6 { - reg = <6>; - ti,gain = <3>; - ti,datarate = <3>; - }; - - /* can1_h */ - channel@7 { - reg = <7>; - ti,gain = <3>; - ti,datarate = <3>; - }; - }; - - rtc@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; -}; - -&pcie { - status = "okay"; -}; - -&usbh1 { - status = "disabled"; -}; - -&vpu { - status = "disabled"; -}; - -&iomuxc { - pinctrl_can1phy: can1phy { - fsl,pins = < - /* CAN1_SR */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - /* CAN1_TERM */ - MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 - >; - }; - - pinctrl_ecspi1: ecspi1grp { - fsl,pins = < - MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 - MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 - MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 - /* CS */ - MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 - >; - }; - - pinctrl_ecspi3: ecspi3grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1 - MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1 - MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1 - MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x000b1 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - >; - }; - - pinctrl_nfc: nfcgrp { - fsl,pins = < - /* NFC_ASK_OOK */ - MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09 0x100b1 - /* NFC_PWR_EN */ - MX6QDL_PAD_DISP0_DAT16__GPIO5_IO10 0x100b1 - /* NFC_EN2 */ - MX6QDL_PAD_DISP0_DAT17__GPIO5_IO11 0x100b1 - /* NFC_EN */ - MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12 0x100b1 - /* NFC_MOD */ - MX6QDL_PAD_DISP0_DAT19__GPIO5_IO13 0x100b1 - /* NFC_IRQ */ - MX6QDL_PAD_DISP0_DAT20__GPIO5_IO14 0x100b1 - >; - }; -}; +#include <arm/imx6dl-prtrvt.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-prtvt7.dts b/arch/arm/dts/imx6dl-prtvt7.dts index 27daa3e15f..b1fd13bdd7 100644 --- a/arch/arm/dts/imx6dl-prtvt7.dts +++ b/arch/arm/dts/imx6dl-prtvt7.dts @@ -1,472 +1,5 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (c) 2016 Protonic Holland - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-prti6q.dtsi" -#include <dt-bindings/input/input.h> -#include <dt-bindings/leds/common.h> -#include <dt-bindings/sound/fsl-imx-audmux.h> - -/ { - model = "Protonic VT7"; - compatible = "prt,prtvt7", "fsl,imx6dl"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0x20000000>; - }; - - backlight_lcd: backlight-lcd { - compatible = "pwm-backlight"; - pwms = <&pwm1 0 500000 0>; - brightness-levels = <0 20 81 248 1000>; - default-brightness-level = <20>; - num-interpolated-steps = <21>; - power-supply = <®_12v_bl>; - enable-gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>; - }; - - display { - compatible = "fsl,imx-parallel-display"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ipu1_disp>; - #address-cells = <1>; - #size-cells = <0>; - interface-pix-fmt = "rgb24"; - status = "okay"; - - port@0 { - reg = <0>; - - display_in: endpoint { - remote-endpoint = <&ipu1_di0_disp0>; - }; - }; - - port@1 { - reg = <1>; - - display_out: endpoint { - remote-endpoint = <&panel_in>; - }; - }; - }; - - keys { - compatible = "gpio-keys"; - autorepeat; - - esc { - label = "GPIO Key ESC"; - linux,code = <KEY_ESC>; - gpios = <&gpio_pca 0 GPIO_ACTIVE_LOW>; - }; - - up { - label = "GPIO Key UP"; - linux,code = <KEY_UP>; - gpios = <&gpio_pca 1 GPIO_ACTIVE_LOW>; - }; - - down { - label = "GPIO Key DOWN"; - linux,code = <KEY_DOWN>; - gpios = <&gpio_pca 4 GPIO_ACTIVE_LOW>; - }; - - enter { - label = "GPIO Key Enter"; - linux,code = <KEY_ENTER>; - gpios = <&gpio_pca 3 GPIO_ACTIVE_LOW>; - }; - - cycle { - label = "GPIO Key CYCLE"; - linux,code = <KEY_CYCLEWINDOWS>; - gpios = <&gpio_pca 2 GPIO_ACTIVE_LOW>; - }; - - f1 { - label = "GPIO Key F1"; - linux,code = <KEY_F1>; - gpios = <&gpio_pca 14 GPIO_ACTIVE_LOW>; - }; - - f2 { - label = "GPIO Key F2"; - linux,code = <KEY_F2>; - gpios = <&gpio_pca 13 GPIO_ACTIVE_LOW>; - }; - - f3 { - label = "GPIO Key F3"; - linux,code = <KEY_F3>; - gpios = <&gpio_pca 12 GPIO_ACTIVE_LOW>; - }; - - f4 { - label = "GPIO Key F4"; - linux,code = <KEY_F4>; - gpios = <&gpio_pca 11 GPIO_ACTIVE_LOW>; - }; - - f5 { - label = "GPIO Key F5"; - linux,code = <KEY_F5>; - gpios = <&gpio_pca 10 GPIO_ACTIVE_LOW>; - }; - - f6 { - label = "GPIO Key F6"; - linux,code = <KEY_F6>; - gpios = <&gpio_pca 5 GPIO_ACTIVE_LOW>; - }; - - f7 { - label = "GPIO Key F7"; - linux,code = <KEY_F7>; - gpios = <&gpio_pca 6 GPIO_ACTIVE_LOW>; - }; - - f8 { - label = "GPIO Key F8"; - linux,code = <KEY_F8>; - gpios = <&gpio_pca 7 GPIO_ACTIVE_LOW>; - }; - - f9 { - label = "GPIO Key F9"; - linux,code = <KEY_F9>; - gpios = <&gpio_pca 8 GPIO_ACTIVE_LOW>; - }; - - f10 { - label = "GPIO Key F10"; - linux,code = <KEY_F10>; - gpios = <&gpio_pca 9 GPIO_ACTIVE_LOW>; - }; - }; - - leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - led-debug0 { - function = LED_FUNCTION_STATUS; - gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "heartbeat"; - }; - }; - - panel { - compatible = "innolux,g070y2t0ec"; - backlight = <&backlight_lcd>; - - port { - panel_in: endpoint { - remote-endpoint = <&display_out>; - }; - }; - }; - - reg_12v_bl: regulator-bl-12v { - compatible = "regulator-fixed"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_reg_12v_bl>; - regulator-name = "12v-bl"; - regulator-min-microvolt = <12000000>; - regulator-max-microvolt = <12000000>; - gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; - - reg_1v8: regulator-1v8 { - compatible = "regulator-fixed"; - regulator-name = "1v8"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - }; - - sound { - compatible = "simple-audio-card"; - simple-audio-card,name = "prti6q-sgtl5000"; - simple-audio-card,format = "i2s"; - simple-audio-card,widgets = - "Microphone", "Microphone Jack", - "Line", "Line In Jack", - "Headphone", "Headphone Jack", - "Speaker", "External Speaker"; - simple-audio-card,routing = - "MIC_IN", "Microphone Jack", - "LINE_IN", "Line In Jack", - "Headphone Jack", "HP_OUT", - "External Speaker", "LINE_OUT"; - - simple-audio-card,cpu { - sound-dai = <&ssi1>; - system-clock-frequency = <0>; - }; - - simple-audio-card,codec { - sound-dai = <&sgtl5000>; - bitclock-master; - frame-master; - }; - }; -}; - -&clks { - assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>; - assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>; -}; - -&ecspi2 { - cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi2>; - status = "okay"; - - tsc@0 { - compatible = "ti,tsc2046"; - reg = <0>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_tsc>; - spi-max-frequency = <100000>; - interrupts-extended = <&gpio3 20 IRQ_TYPE_EDGE_FALLING>; - pendown-gpio = <&gpio3 20 GPIO_ACTIVE_HIGH>; - vcc-supply = <®_3v3>; - - ti,vref-delay-usecs = /bits/ 16 <100>; - - ti,x-min = /bits/ 16 <0>; - ti,x-max = /bits/ 16 <8000>; - ti,y-min = /bits/ 16 <0>; - ti,y-max = /bits/ 16 <4800>; - ti,x-plate-ohms = /bits/ 16 <800>; - ti,y-plate-ohms = /bits/ 16 <300>; - ti,pressure-max = /bits/ 16 <4095>; - - ti,skip-samples = <2>; - ti,sample-period-msecs = <10>; - ti,report-period-msecs = <30>; - - ti,filter-tolerance = <80>; - ti,touch-resistance-threshold = <3500>; - }; -}; - -&audmux { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_audmux>; - status = "okay"; - - mux_ssi1 { - fsl,audmux-port = <0>; - fsl,port-config = < - IMX_AUDMUX_V2_PTCR_SYN 0 - IMX_AUDMUX_V2_PTCR_TFSEL(2) 0 - IMX_AUDMUX_V2_PTCR_TCSEL(2) 0 - IMX_AUDMUX_V2_PTCR_TFSDIR 0 - IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2) - >; - }; - - mux_pins3 { - fsl,audmux-port = <2>; - fsl,port-config = < - IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0) - 0 IMX_AUDMUX_V2_PDCR_TXRXEN - >; - }; -}; - -&can1 { - pinctrl-0 = <&pinctrl_can1 &pinctrl_can1phy>; -}; - -&i2c1 { - sgtl5000: codec@a { - compatible = "fsl,sgtl5000"; - reg = <0xa>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_codec>; - #sound-dai-cells = <0>; - clocks = <&clks 201>; - VDDA-supply = <®_3v3>; - VDDIO-supply = <®_3v3>; - VDDD-supply = <®_1v8>; - }; -}; - -&i2c3 { - rtc@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; - - gpio_pca: gpio@74 { - compatible = "nxp,pca9539"; - reg = <0x74>; - interrupts-extended = <&gpio4 5 IRQ_TYPE_LEVEL_LOW>; - #gpio-cells = <2>; - gpio-controller; - }; -}; - -&ipu1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ipu1_csi0>; - status = "okay"; -}; - -&ipu1_di0_disp0 { - remote-endpoint = <&display_in>; -}; - -&pwm1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwm1>; - status = "okay"; -}; - -&snvs_poweroff { - status = "okay"; -}; - -&snvs_pwrkey { - status = "okay"; -}; - -&ssi1 { - #sound-dai-cells = <0>; - fsl,mode = "i2s-slave"; - status = "okay"; -}; - -&usbh1 { - status = "disabled"; -}; - -&vpu { - status = "disabled"; -}; - -&iomuxc { - pinctrl_audmux: audmuxgrp { - fsl,pins = < - MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x030b0 - MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0 - MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 - MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0 - MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 - >; - }; - - pinctrl_can1phy: can1phy { - fsl,pins = < - /* CAN1_SR */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - /* CAN1_TERM */ - MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 - >; - }; - - pinctrl_codec: codecgrp { - fsl,pins = < - /* AUDIO_nRESET */ - MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1f0b0 - >; - }; - - pinctrl_ecspi2: ecspi2grp { - fsl,pins = < - MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 - MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 - MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 - MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 - >; - }; - - pinctrl_ipu1_csi0: ipu1csi0grp { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT12__IPU1_CSI0_DATA12 0x1b0b0 - MX6QDL_PAD_CSI0_DAT13__IPU1_CSI0_DATA13 0x1b0b0 - MX6QDL_PAD_CSI0_DAT14__IPU1_CSI0_DATA14 0x1b0b0 - MX6QDL_PAD_CSI0_DAT15__IPU1_CSI0_DATA15 0x1b0b0 - MX6QDL_PAD_CSI0_DAT16__IPU1_CSI0_DATA16 0x1b0b0 - MX6QDL_PAD_CSI0_DAT17__IPU1_CSI0_DATA17 0x1b0b0 - MX6QDL_PAD_CSI0_DAT18__IPU1_CSI0_DATA18 0x1b0b0 - MX6QDL_PAD_CSI0_DAT19__IPU1_CSI0_DATA19 0x1b0b0 - MX6QDL_PAD_CSI0_PIXCLK__IPU1_CSI0_PIXCLK 0x1b0b0 - /* ITU656_nRESET */ - MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0 - /* ITU656_nPDN */ - MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x1b0b0 - >; - }; - - pinctrl_ipu1_disp: ipudisp1grp { - fsl,pins = < - MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0xb0 - MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0xb0 - - MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0xb0 - MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0xb0 - MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0xb0 - MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0xb0 - MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0xb0 - MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0xb0 - MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0xb0 - MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0xb0 - - MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0xb0 - MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0xb0 - MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0xb0 - MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0xb0 - MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0xb0 - MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0xb0 - MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0xb0 - MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0xb0 - - MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0xb0 - MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0xb0 - MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0xb0 - MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0xb0 - MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0xb0 - MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0xb0 - MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0xb0 - MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0xb0 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - >; - }; - - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b0 - >; - }; - - pinctrl_reg_12v_bl: 12blgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x1b0b0 - >; - }; - - pinctrl_tsc: tscgrp { - fsl,pins = < - MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x1b0b0 - MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-prtvt7.dts> +#include "imx6qdl-prti6q-emmc.dtsi" diff --git a/arch/arm/dts/imx6dl-victgo.dts b/arch/arm/dts/imx6dl-victgo.dts index 55bc4c8d41..250cd761d4 100644 --- a/arch/arm/dts/imx6dl-victgo.dts +++ b/arch/arm/dts/imx6dl-victgo.dts @@ -1,145 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2016 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-vicut1.dtsi" -#include <dt-bindings/input/input.h> - -/ { - model = "Kverneland Tellus GO"; - compatible = "kvg,victgo", "fsl,imx6dl"; - - memory { - reg = <0x10000000 0x20000000>; - }; - - rotary-encoder { - compatible = "rotary-encoder"; - pinctrl-0 = <&pinctrl_rotary_ch>; - gpios = <&gpio2 3 0>, <&gpio2 4 0>; - linux,axis = <8>; /* REL_WHEEL */ - rotary-encoder,steps-per-period = <4>; - rotary-encoder,relative-axis; - rotary-encoder,rollover; - wakeup-source; - }; - - rotary-button { - compatible = "gpio-keys"; - pinctrl-0 = <&pinctrl_rotary_btn>; - #address-cells = <1>; - #size-cells = <0>; - autorepeat; - button@0 { - label = "Rotary Key"; - gpios = <&gpio2 05 1>; - linux,code = <KEY_ENTER>; - gpio-key,wakeup; - }; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - phy-reset-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>; - clock-names = "ipg", "ahb"; - status = "okay"; -}; - -&uart2 { - status = "disabled"; -}; - -&i2c1 { - ht16k33: ht16k33@70 { - compatible = "holtek,ht16k33"; - pinctrl-0 = <&pinctrl_ht16k33>; - reg = <0x70>; - refresh-rate-hz = <20>; - debounce-delay-ms = <50>; - interrupt-parent = <&gpio4>; - interrupts = <5 (IRQ_TYPE_LEVEL_HIGH | IRQ_TYPE_EDGE_RISING)>; - keypad,num-rows = <12>; - keypad,num-columns = <3>; - linux,keymap = < - MATRIX_KEY(2, 0, KEY_F6) - MATRIX_KEY(3, 0, KEY_F8) - MATRIX_KEY(4, 0, KEY_F10) - MATRIX_KEY(5, 0, KEY_F4) - MATRIX_KEY(6, 0, KEY_F2) - MATRIX_KEY(2, 1, KEY_F5) - MATRIX_KEY(3, 1, KEY_F7) - MATRIX_KEY(4, 1, KEY_F9) - MATRIX_KEY(5, 1, KEY_F3) - MATRIX_KEY(6, 1, KEY_F1) - >; - }; -}; - -&pwm2 { - status = "disabled"; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_DISP0_DAT9__GPIO4_IO30 0x1b0b0 - >; - }; - - pinctrl_ecspi2: ecspi2grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT16__ECSPI2_MOSI 0x100b1 - MX6QDL_PAD_DISP0_DAT17__ECSPI2_MISO 0x100b1 - MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12 0x100b1 - MX6QDL_PAD_DISP0_DAT19__ECSPI2_SCLK 0x100b1 - >; - }; - - pinctrl_rotary_ch: rotarygrp { - fsl,pins = < - MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x1b0b0 /* ROTARY_A */ - MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x1b0b0 /* ROTARY_B */ - >; - }; - - pinctrl_rotary_btn: rotarygrp { - fsl,pins = < - MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x1b0b0 /* ROTARY_BTN */ - >; - }; - - pinctrl_ht16k33: ht16k33grp { - fsl,pins = < - MX6QDL_PAD_GPIO_19__GPIO4_IO05 0x1b0b0 /* IRQ */ - >; - }; - pinctrl_tsc2046e: tsc2046egrp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT14__GPIO5_IO08 0x1b0b0 - MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09 0x1b0b0 - >; - }; -}; +#include <arm/imx6dl-victgo.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6dl-vicut1.dts b/arch/arm/dts/imx6dl-vicut1.dts index 725acbefc5..99cc7af2e6 100644 --- a/arch/arm/dts/imx6dl-vicut1.dts +++ b/arch/arm/dts/imx6dl-vicut1.dts @@ -1,51 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6dl.dtsi> -#include "imx6qdl-vicut1.dtsi" - -/ { - model = "Kverneland UT1 Board"; - compatible = "kvg,vicut1", "fsl,imx6dl"; - - memory { - reg = <0x10000000 0x80000000>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rgmii"; - status = "okay"; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP_RGMII_MD(0x1b030, 0x10030) */ - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030 - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x10030 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - /* Phy reset */ - MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b1 - >; - }; -}; +#include <arm/imx6dl-vicut1.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6q-prti6q.dts b/arch/arm/dts/imx6q-prti6q.dts index 21e24222a0..71606b892c 100644 --- a/arch/arm/dts/imx6q-prti6q.dts +++ b/arch/arm/dts/imx6q-prti6q.dts @@ -1,532 +1,5 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (c) 2014 Protonic Holland - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include <arm/imx6q.dtsi> -#include "imx6qdl-prti6q.dtsi" -#include "imx6qdl-prti6q-nor.dtsi" -#include <dt-bindings/leds/common.h> -#include <dt-bindings/sound/fsl-imx-audmux.h> - -/ { - model = "Protonic PRTI6Q board"; - compatible = "prt,prti6q", "fsl,imx6q"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0xf0000000>; - }; - - backlight_lcd: backlight-lcd { - compatible = "pwm-backlight"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_backlight>; - pwms = <&pwm1 0 5000000 0>; - brightness-levels = <0 16 64 255>; - num-interpolated-steps = <16>; - default-brightness-level = <16>; - power-supply = <®_3v3>; - enable-gpios = <&gpio4 28 GPIO_ACTIVE_HIGH>; - }; - - can3_25m_osc: can3-25m-osc { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <25000000>; - }; - - leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - led-debug0 { - function = LED_FUNCTION_STATUS; - gpios = <&gpio1 8 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "heartbeat"; - }; - - led-debug1 { - function = LED_FUNCTION_SD; - gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "disk-activity"; - }; - }; - - panel { - compatible = "kyo,tcg121xglp"; - backlight = <&backlight_lcd>; - - port { - panel_in: endpoint { - remote-endpoint = <&lvds0_out>; - }; - }; - }; - - reg_wifi: regulator-wifi { - compatible = "regulator-fixed"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wifi_npd>; - enable-active-high; - gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>; - regulator-max-microvolt = <1800000>; - regulator-min-microvolt = <1800000>; - regulator-name = "regulator-WL12xx"; - startup-delay-us = <70000>; - }; - - sound { - compatible = "simple-audio-card"; - simple-audio-card,name = "prti6q-sgtl5000"; - simple-audio-card,format = "i2s"; - simple-audio-card,widgets = - "Microphone", "Microphone Jack", - "Line", "Line In Jack", - "Headphone", "Headphone Jack", - "Speaker", "External Speaker"; - simple-audio-card,routing = - "MIC_IN", "Microphone Jack", - "LINE_IN", "Line In Jack", - "Headphone Jack", "HP_OUT", - "External Speaker", "LINE_OUT"; - - simple-audio-card,cpu { - sound-dai = <&ssi1>; - system-clock-frequency = <0>; - }; - - simple-audio-card,codec { - sound-dai = <&sgtl5000>; - bitclock-master; - frame-master; - }; - }; - - sound-spdif { - compatible = "fsl,imx-audio-spdif"; - model = "imx-spdif"; - spdif-controller = <&spdif>; - spdif-in; - spdif-out; - }; -}; - -&audmux { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_audmux>; - status = "okay"; - - mux_ssi1 { - fsl,audmux-port = <0>; - fsl,port-config = < - IMX_AUDMUX_V2_PTCR_SYN 0 - IMX_AUDMUX_V2_PTCR_TFSEL(2) 0 - IMX_AUDMUX_V2_PTCR_TCSEL(2) 0 - IMX_AUDMUX_V2_PTCR_TFSDIR 0 - IMX_AUDMUX_V2_PTCR_TCLKDIR IMX_AUDMUX_V2_PDCR_RXDSEL(2) - >; - }; - - mux_pins3 { - fsl,audmux-port = <2>; - fsl,port-config = < - IMX_AUDMUX_V2_PTCR_SYN IMX_AUDMUX_V2_PDCR_RXDSEL(0) - 0 IMX_AUDMUX_V2_PDCR_TXRXEN - >; - }; -}; - -&can2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_can2>; - status = "okay"; -}; - -&ecspi1 { - cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi1>; - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <20000000>; - #address-cells = <1>; - #size-cells = <1>; - }; -}; - -&ecspi2 { - cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>, <&gpio4 25 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi2 &pinctrl_ecspi2_cs>; - status = "okay"; - - can@0 { - compatible = "microchip,mcp2515"; - reg = <0>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_can3>; - clocks = <&can3_25m_osc>; - interrupts-extended = <&gpio3 20 IRQ_TYPE_LEVEL_LOW>; - spi-max-frequency = <5000000>; - }; - - adc@1 { - compatible = "ti,adc128s052"; - reg = <1>; - spi-max-frequency = <2000000>; - vref-supply = <®_3v3>; - }; -}; - -&ecspi3 { - cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi3>; - status = "okay"; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rgmii-id"; - phy-handle = <&rgmii_phy>; - status = "okay"; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - /* Microchip KSZ9031RNX PHY */ - rgmii_phy: ethernet-phy@4 { - reg = <0>; - interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>; - reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; - reset-assert-us = <10000>; - reset-deassert-us = <300>; - }; - }; -}; - -&hdmi { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_hdmi>; - ddc-i2c-bus = <&i2c2>; - status = "okay"; -}; - -&i2c1 { - sgtl5000: audio-codec@a { - compatible = "fsl,sgtl5000"; - reg = <0xa>; - #sound-dai-cells = <0>; - clocks = <&clks 201>; - VDDA-supply = <®_3v3>; - VDDIO-supply = <®_3v3>; - VDDD-supply = <®_1v8>; - }; -}; - -/* DDC */ -&i2c2 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c2>; - status = "okay"; -}; - -&i2c3 { - adc@49 { - compatible = "ti,ads1015"; - reg = <0x49>; - #address-cells = <1>; - #size-cells = <0>; - - /* can2_l */ - channel@4 { - reg = <4>; - ti,gain = <3>; - ti,datarate = <3>; - }; - - /* can2_h */ - channel@5 { - reg = <5>; - ti,gain = <3>; - ti,datarate = <3>; - }; - - /* can1_l */ - channel@6 { - reg = <6>; - ti,gain = <3>; - ti,datarate = <3>; - }; - - /* can1_h */ - channel@7 { - reg = <7>; - ti,gain = <3>; - ti,datarate = <3>; - }; - }; -}; -&pcie { - status = "okay"; -}; - -&pwm1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwm1>; - status = "okay"; -}; - -&ldb { - status = "okay"; - - lvds-channel@0 { - status = "okay"; - - port@4 { - reg = <4>; - - lvds0_out: endpoint { - remote-endpoint = <&panel_in>; - }; - }; - }; -}; - -&sata { - status = "okay"; -}; - -&snvs_poweroff { - status = "okay"; -}; - -&spdif { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_spdif>; - status = "okay"; -}; - -&ssi1 { - #sound-dai-cells = <0>; - fsl,mode = "ac97-slave"; - status = "okay"; -}; - -&uart2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart2>; - status = "okay"; -}; - -&uart5 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart5>; - status = "okay"; -}; - -&usbotg { - pinctrl-0 = <&pinctrl_usbotg &pinctrl_usbotg_id>; -}; - -&usdhc2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - non-removable; - vmmc-supply = <®_wifi>; - cap-power-off-card; - keep-power-in-suspend; - status = "okay"; - - wifi { - compatible = "ti,wl1271"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wifi>; - interrupts-extended = <&gpio1 30 IRQ_TYPE_LEVEL_HIGH>; - ref-clock-frequency = "38400000"; - tcxo-clock-frequency = "19200000"; - }; -}; - -&iomuxc { - pinctrl_audmux: audmuxgrp { - fsl,pins = < - MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x030b0 - MX6QDL_PAD_CSI0_DAT7__AUD3_RXD 0x130b0 - MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 - MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0 - MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 - >; - }; - - pinctrl_backlight: backlightgrp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT7__GPIO4_IO28 0x1b0b0 - >; - }; - - pinctrl_can2: can2grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL4__FLEXCAN2_TX 0x80000000 - MX6QDL_PAD_KEY_ROW4__FLEXCAN2_RX 0x80000000 - >; - }; - - pinctrl_can3: can3grp { - fsl,pins = < - MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x1b0b1 - >; - }; - - pinctrl_ecspi1: ecspi1grp { - fsl,pins = < - MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 - MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 - MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 - /* CS */ - MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 - >; - }; - - pinctrl_ecspi2: ecspi2grp { - fsl,pins = < - MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 - MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 - MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 - MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 - >; - }; - - pinctrl_ecspi2_cs: ecspi2csgrp { - fsl,pins = < - /* ADC128S022 CS */ - MX6QDL_PAD_DISP0_DAT4__GPIO4_IO25 0x1b0b1 - >; - }; - - pinctrl_ecspi3: ecspi3grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1 - MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1 - MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1 - MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x000b1 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030 - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x10030 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - - /* Phy reset */ - MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b1 - >; - }; - - pinctrl_hdmi: hdmigrp { - fsl,pins = < - /* NOTE: DDC is done via I2C2, so DON'T - * configure DDC pins for HDMI! - */ - MX6QDL_PAD_EIM_A25__HDMI_TX_CEC_LINE 0x1f8b0 - >; - }; - - /* DDC */ - pinctrl_i2c2: i2c2grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 - MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0 - >; - }; - - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0 - >; - }; - - pinctrl_spdif: spdifgrp { - fsl,pins = < - MX6QDL_PAD_GPIO_16__SPDIF_IN 0x1b0b0 - MX6QDL_PAD_GPIO_19__SPDIF_OUT 0x1b0b0 - >; - }; - - pinctrl_uart2: uart2grp { - fsl,pins = < - MX6QDL_PAD_EIM_D26__UART2_RX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D27__UART2_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D28__UART2_DTE_CTS_B 0x1b0b1 - MX6QDL_PAD_EIM_D29__UART2_DTE_RTS_B 0x1b0b1 - >; - }; - - pinctrl_uart5: uart5grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1 - MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1 - >; - }; - - pinctrl_usbotg_id: usbotgidgrp { - fsl,pins = < - MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x1f058 - >; - }; - - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 - MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 - MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 - MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 - MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 - MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9 - >; - }; - - pinctrl_wifi: wifigrp { - fsl,pins = < - /* WL12xx IRQ */ - MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x10880 - >; - }; - - pinctrl_wifi_npd: wifinpd { - fsl,pins = < - MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b8b0 - >; - }; -}; +#include <arm/imx6q-prti6q.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6q-prtwd2.dts b/arch/arm/dts/imx6q-prtwd2.dts index 8572917865..78ea4bc15c 100644 --- a/arch/arm/dts/imx6q-prtwd2.dts +++ b/arch/arm/dts/imx6q-prtwd2.dts @@ -1,188 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2018 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6q.dtsi> -#include "imx6qdl-prti6q.dtsi" -#include <dt-bindings/leds/common.h> - -/ { - model = "Protonic WD2 board"; - compatible = "prt,prtwd2", "fsl,imx6q"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0x20000000>; - }; - - memory@80000000 { - device_type = "memory"; - reg = <0x80000000 0x20000000>; - }; - - usdhc2_wifi_pwrseq: usdhc2_wifi_pwrseq { - compatible = "mmc-pwrseq-simple"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wifi_npd>; - reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>; - }; - - /* PRTWD2 rev 1 bitbang I2C for Ethernet Switch */ - i2c@4 { - compatible = "i2c-gpio"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c4>; - sda-gpios = <&gpio1 22 (GPIO_ACTIVE_HIGH|GPIO_OPEN_DRAIN)>; - scl-gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>; - i2c-gpio,delay-us = <20>; /* ~10 kHz */ - i2c-gpio,scl-output-only; - #address-cells = <1>; - #size-cells = <0>; - }; -}; - -&can1 { - pinctrl-0 = <&pinctrl_can1 &pinctrl_can1phy>; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rmii"; - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>; - clock-names = "ipg", "ahb"; - status = "okay"; - - fixed-link { - speed = <100>; - pause; - full-duplex; - }; -}; - -&i2c3 { - adc@49 { - compatible = "ti,ads1015"; - reg = <0x49>; - #address-cells = <1>; - #size-cells = <0>; - - /* V in */ - channel@4 { - reg = <4>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - /* I charge */ - channel@5 { - reg = <5>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - /* V bus */ - channel@6 { - reg = <6>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - /* nc */ - channel@7 { - reg = <7>; - ti,gain = <1>; - ti,datarate = <3>; - }; - }; -}; - -&usdhc2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - non-removable; - no-1-8-v; - non-removable; - mmc-pwrseq = <&usdhc2_wifi_pwrseq>; - pm-ignore-notify; - #address-cells = <1>; - #size-cells = <0>; - status = "okay"; - - wifi@1 { - compatible = "brcm,bcm4329-fmac"; - reg = <1>; - }; -}; - -&iomuxc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usb_eth_chg>; - - pinctrl_can1phy: can1phy { - fsl,pins = < - /* CAN1_SR */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - >; - }; - - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP4 */ - MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x130b0 - MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 - MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 - MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 - MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 - - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x1b0b0 - /* Phy reset */ - MX6QDL_PAD_CSI0_DAT4__GPIO5_IO22 0x1b0b0 - /* nINTRP */ - MX6QDL_PAD_CSI0_DAT5__GPIO5_IO23 0x1b0b0 - - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - >; - }; - - pinctrl_i2c4: i2c4grp { - fsl,pins = < - MX6QDL_PAD_ENET_MDIO__GPIO1_IO22 0x1f8b0 - MX6QDL_PAD_ENET_MDC__GPIO1_IO31 0x1f8b0 - >; - }; - - pinctrl_usb_eth_chg: usbethchggrp { - fsl,pins = < - /* USB charging control */ - MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x130b0 - MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x130b0 - MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x130b0 - MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x130b0 - >; - }; - - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 - MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 - MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 - MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 - MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 - MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9 - >; - }; - pinctrl_wifi_npd: wifinpd { - fsl,pins = < - /* WL_REG_ON */ - MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x13069 - >; - }; -}; +#include <arm/imx6q-prtwd2.dts> +#include "imx6qdl-prti6q-emmc.dtsi" diff --git a/arch/arm/dts/imx6q-vicut1.dts b/arch/arm/dts/imx6q-vicut1.dts index 9d1d6fa550..61fb56d401 100644 --- a/arch/arm/dts/imx6q-vicut1.dts +++ b/arch/arm/dts/imx6q-vicut1.dts @@ -1,66 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6q.dtsi> -#include "imx6qdl-vicut1.dtsi" - -/ { - model = "Kverneland UT1Q Board"; - compatible = "kvg,vicut1q", "fsl,imx6q"; - - memory { - reg = <0x10000000 0xf0000000>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rgmii-id"; - phy-handle = <&rgmii_phy>; - status = "okay"; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - /* Microchip KSZ9031RNX PHY */ - rgmii_phy: ethernet-phy@4 { - reg = <0>; - interrupts-extended = <&gpio1 28 IRQ_TYPE_LEVEL_LOW>; - reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; - reset-assert-us = <10000>; - reset-deassert-us = <300>; - }; - }; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP_RGMII_MD(0x1b030, 0x10030) */ - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030 - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x10030 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - /* Phy reset */ - MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b1 - >; - }; -}; +#include <arm/imx6q-vicut1.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6qdl-prti6q-emmc.dtsi b/arch/arm/dts/imx6qdl-prti6q-emmc.dtsi new file mode 100644 index 0000000000..4fc7bd6473 --- /dev/null +++ b/arch/arm/dts/imx6qdl-prti6q-emmc.dtsi @@ -0,0 +1,49 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT + +/ { + chosen { + stdout-path = &uart4; + + environment@0 { + compatible = "barebox,environment"; + device-path = &usdhc3, "partname:barebox-environment"; + }; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Address will be determined by the bootloader */ + ramoops { + compatible = "ramoops"; + }; + }; + + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Address will be determined by the bootloader */ + ramoops { + compatible = "ramoops"; + }; + }; +}; + +&usdhc3 { + #address-cells = <1>; + #size-cells = <1>; + + partition@40000 { + label = "barebox-environment"; + reg = <0x40000 0x80000>; + }; + + partition@c0000 { + label = "state"; + reg = <0xc0000 0x40000>; + }; +}; diff --git a/arch/arm/dts/imx6qdl-prti6q-nor.dtsi b/arch/arm/dts/imx6qdl-prti6q-nor.dtsi index ad718ce421..7a88652b42 100644 --- a/arch/arm/dts/imx6qdl-prti6q-nor.dtsi +++ b/arch/arm/dts/imx6qdl-prti6q-nor.dtsi @@ -1,7 +1,12 @@ // SPDX-License-Identifier: GPL-2.0-or-later OR MIT +#include "imx6qdl-prti6q-emmc.dtsi" + &ecspi1 { flash@0 { + #address-cells = <1>; + #size-cells = <1>; + partition@0 { label = "barebox"; reg = <0x0 0x100000>; diff --git a/arch/arm/dts/imx6qdl-prti6q.dtsi b/arch/arm/dts/imx6qdl-prti6q.dtsi deleted file mode 100644 index bfc059e34f..0000000000 --- a/arch/arm/dts/imx6qdl-prti6q.dtsi +++ /dev/null @@ -1,216 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later OR MIT -/* - * Copyright (c) 2014 Protonic Holland - */ - -#include <dt-bindings/gpio/gpio.h> -#include <dt-bindings/input/input.h> - -/ { - chosen { - stdout-path = &uart4; - - environment-emmc { - compatible = "barebox,environment"; - device-path = &usdhc3, "partname:barebox-environment"; - }; - }; - - reserved-memory { - #address-cells = <1>; - #size-cells = <1>; - ranges; - - /* Address will be determined by the bootloader */ - ramoops { - compatible = "ramoops"; - }; - }; - - reserved-memory { - #address-cells = <1>; - #size-cells = <1>; - ranges; - - /* Address will be determined by the bootloader */ - ramoops { - compatible = "ramoops"; - }; - }; - - reg_1v8: regulator-1v8 { - compatible = "regulator-fixed"; - regulator-name = "1v8"; - regulator-min-microvolt = <1800000>; - regulator-max-microvolt = <1800000>; - regulator-always-on; - }; - - reg_3v3: regulator-3v3 { - compatible = "regulator-fixed"; - regulator-name = "3v3"; - regulator-min-microvolt = <3300000>; - regulator-max-microvolt = <3300000>; - regulator-always-on; - }; - - reg_usb_h1_vbus: regulator-h1-vbus { - compatible = "regulator-fixed"; - regulator-name = "h1-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - regulator-always-on; - }; - - reg_usb_otg_vbus: regulator-otg-vbus { - compatible = "regulator-fixed"; - regulator-name = "otg-vbus"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; - enable-active-high; - }; -}; - -&can1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_can1>; - status = "okay"; -}; - -&i2c1 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1>; - status = "okay"; -}; - -&i2c3 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c3>; - status = "okay"; - - temperature-sensor@70 { - compatible = "ti,tmp103"; - reg = <0x70>; - }; -}; - -&uart4 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart4>; - status = "okay"; -}; - -&usbh1 { - vbus-supply = <®_usb_h1_vbus>; - phy_type = "utmi"; - dr_mode = "host"; - status = "okay"; -}; - -&usbotg { - vbus-supply = <®_usb_otg_vbus>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usbotg>; - phy_type = "utmi"; - dr_mode = "host"; - disable-over-current; - status = "okay"; -}; - -&usdhc1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc1>; - cd-gpios = <&gpio1 1 GPIO_ACTIVE_LOW>; - status = "okay"; -}; - -&usdhc3 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc3>; - bus-width = <8>; - non-removable; - no-sdio; - no-sd; - status = "okay"; - - #address-cells = <1>; - #size-cells = <1>; - - partition@100000 { - label = "barebox-environment"; - reg = <0x100000 0x100000>; - }; - - partition@200000 { - label = "state"; - reg = <0x200000 0x100000>; - }; -}; - -&iomuxc { - pinctrl_can1: can1grp { - fsl,pins = < - MX6QDL_PAD_KEY_ROW2__FLEXCAN1_RX 0x80000000 - MX6QDL_PAD_KEY_COL2__FLEXCAN1_TX 0x80000000 - >; - }; - - pinctrl_i2c1: i2c1grp { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001f8b1 - MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001f8b1 - >; - }; - - pinctrl_i2c3: i2c3grp { - fsl,pins = < - MX6QDL_PAD_GPIO_5__I2C3_SCL 0x4001b8b1 - MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 - >; - }; - - pinctrl_uart4: uart4grp { - fsl,pins = < - MX6QDL_PAD_KEY_COL0__UART4_TX_DATA 0x1b0b1 - MX6QDL_PAD_KEY_ROW0__UART4_RX_DATA 0x1b0b1 - >; - }; - - pinctrl_usdhc1: usdhc1grp { - fsl,pins = < - MX6QDL_PAD_SD1_CMD__SD1_CMD 0x170f9 - MX6QDL_PAD_SD1_CLK__SD1_CLK 0x100f9 - MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f9 - MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f9 - MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f9 - MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f9 - MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x1b0b0 - >; - }; - - pinctrl_usdhc3: usdhc3grp { - fsl,pins = < - MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17099 - MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10099 - MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17099 - MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17099 - MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17099 - MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17099 - MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17099 - MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17099 - MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17099 - MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17099 - MX6QDL_PAD_SD3_RST__SD3_RESET 0x1b0b1 - >; - }; - - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0 - MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 - >; - }; -}; diff --git a/arch/arm/dts/imx6qdl-vicut1.dtsi b/arch/arm/dts/imx6qdl-vicut1.dtsi deleted file mode 100644 index dbfcf2527c..0000000000 --- a/arch/arm/dts/imx6qdl-vicut1.dtsi +++ /dev/null @@ -1,234 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - -#include "imx6qdl-prti6q.dtsi" -#include "imx6qdl-prti6q-nor.dtsi" -#include <dt-bindings/input/input.h> - -/ { - gpio_key_pwr: gpio_keys { - compatible = "gpio-keys"; - autorepeat; - - power { - label = "GPIO Key Power"; - gpios = <&gpio2 23 GPIO_ACTIVE_LOW>; - linux,code = <KEY_POWER>; - gpio-key,wakeup; - }; - }; - - leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - debug0 { - label = "debug0"; - gpios = <&gpio1 8 0>; - linux,default-trigger = "heartbeat"; - }; - - debug1 { - label = "debug1"; - gpios = <&gpio1 9 0>; - linux,default-trigger = "mmc"; - }; - - power_led { - label = "power_led"; - gpios = <&gpio2 24 0>; - default-state = "on"; - }; - - isb_led { - label = "isb_led"; - gpios = <&gpio4 31 0>; - default-state = "off"; - }; - }; -}; - -&clks { - assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>; - assigned-clock-parents = <&clks IMX6QDL_CLK_PLL5_VIDEO_DIV>; -}; - -&uart1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart1>; - status = "okay"; -}; - -&uart3 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart3>; - status = "okay"; -}; - -&i2c3 { - rtc: pcf8563@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; -}; - -&ecspi1 { - cs-gpios = <&gpio3 19 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi1>; - status = "okay"; - - flash@0 { - compatible = "jedec,spi-nor"; - reg = <0>; - spi-max-frequency = <20000000>; - #address-cells = <1>; - #size-cells = <1>; - }; -}; - -&iomuxc { - pinctrl_hog: hoggrp { - fsl,pins = < - /* SGTL5000 sys_mclk */ - MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x030b0 - /* CAN1_SR + CAN2_SR GPIO outputs */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x13070 - /* CAN1_TERM */ - MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 - /* ITU656_nRESET */ - MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x1b0b0 - /* CAM1_MIRROR */ - MX6QDL_PAD_GPIO_3__GPIO1_IO03 0x130b0 - /* CAM2_MIRROR */ - MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x130b0 - /* CAM_nDETECT */ - MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x1b0b0 - /* nON_SWITCH */ - MX6QDL_PAD_EIM_CS0__GPIO2_IO23 0x1b0b0 - /* ISB_IN1 */ - MX6QDL_PAD_EIM_A16__GPIO2_IO22 0x130b0 - /* ISB_nIN2 */ - MX6QDL_PAD_EIM_A17__GPIO2_IO21 0x1b0b0 - /* WARN_LIGHT */ - MX6QDL_PAD_EIM_A19__GPIO2_IO19 0x100b0 - /* ON2_FB */ - MX6QDL_PAD_EIM_A25__GPIO5_IO02 0x100b0 - /* YACO_nIRQ */ - MX6QDL_PAD_EIM_D23__GPIO3_IO23 0x1b0b0 - /* YACO_BOOT0 */ - MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x130b0 - /* YACO_nRESET */ - MX6QDL_PAD_EIM_D31__GPIO3_IO31 0x1b0b0 - /* FORCE_ON1 */ - MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b0 - /* AUDIO_nRESET */ - MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1f0b0 - /* ITU656_nPDN */ - MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x1b0b0 - - /* HW revision detect */ - /* REV_ID0 */ - MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0 - /* REV_ID1 = PWM output LED_PWM (SION) */ - /* defined in &pinctrl_pwm3 */ - /* REV_ID2 */ - MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 - /* REV_ID3 */ - MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0 - /* REV_ID4 */ - MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0 - - /* New in HW revision 1 */ - MX6QDL_PAD_EIM_D20__GPIO3_IO20 0x100b0 /* ON1_FB */ - MX6QDL_PAD_DI0_PIN2__GPIO4_IO18 0x1b0b0 /* DIP1_FB */ - - /* New in UTC (UT1 HW revision 1) and TGO */ - /* WHEEL */ - MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x100b0 - /* RADAR */ - MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x100b0 - /* PTO */ - MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x100b0 - /* CPU_ON1_CTRL */ - MX6QDL_PAD_DISP0_DAT0__GPIO4_IO21 0x1b0b0 - /* CPU_ON2_CTRL */ - MX6QDL_PAD_DISP0_DAT1__GPIO4_IO22 0x1b0b0 - /* CPU_HITCH_IN_OUT */ - MX6QDL_PAD_DISP0_DAT2__GPIO4_IO23 0x100b0 - /* CPU_LIGHT_ON */ - MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x100b0 - /* CPU_CONTACT_IN */ - MX6QDL_PAD_DISP0_DAT6__GPIO4_IO27 0x100b0 - >; - }; - - pinctrl_ecspi1: ecspi1grp { - fsl,pins = < - MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 - MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 - MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 - /* CS */ - MX6QDL_PAD_EIM_D19__GPIO3_IO19 0x000b1 - >; - }; - - pinctrl_usbotg: usbotggrp { - fsl,pins = < - MX6QDL_PAD_EIM_D21__USB_OTG_OC 0x1b0b0 - /* power enable, high active */ - MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 - >; - }; - - /* YaCO AUX Uart */ - pinctrl_uart1: uart1grp { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 - MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 - >; - }; - - /* YaCO Touchscreen UART */ - pinctrl_uart3: uart3grp { - fsl,pins = < - MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 - MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - /* DEBUG0A */ - MX6QDL_PAD_DI0_DISP_CLK__GPIO4_IO16 0x1b0b0 - /* DEBUG1A */ - MX6QDL_PAD_DI0_PIN15__GPIO4_IO17 0x1b0b0 - /* DEBUG0 */ - MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 - /* DEBUG1 */ - MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x1b0b0 - /* POWER_LED */ - MX6QDL_PAD_EIM_CS1__GPIO2_IO24 0x1b0b0 - /* ISB_LED */ - MX6QDL_PAD_DISP0_DAT10__GPIO4_IO31 0x1b0b0 - >; - }; - - pinctrl_pwm2: pwm2grp { - fsl,pins = < - /* ISB LED (not in TGO or UTC version 1+) */ - MX6QDL_PAD_DISP0_DAT9__PWM2_OUT 0x1b0b0 - >; - }; - - pinctrl_pwm3: pwm3grp { - fsl,pins = < - /* REV_ID1 = PWM output LED_PWM (SION for ID) */ - MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x4001b0b0 - >; - }; -}; diff --git a/arch/arm/dts/imx6qp-prtwd3.dts b/arch/arm/dts/imx6qp-prtwd3.dts index 97b25ee26a..8c56d70b5a 100644 --- a/arch/arm/dts/imx6qp-prtwd3.dts +++ b/arch/arm/dts/imx6qp-prtwd3.dts @@ -1,675 +1,6 @@ -/* - * Copyright (c) 2018 Protonic Holland - * - * The code contained herein is licensed under the GNU General Public - * License. You may obtain a copy of the GNU General Public License - * Version 2 or later at the following locations: - * - * http://www.opensource.org/licenses/gpl-license.html - * http://www.gnu.org/copyleft/gpl.html - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include <arm/imx6qp.dtsi> -#include "imx6qdl-prti6q.dtsi" - -/ { - model = "Protonic WD3 board"; - compatible = "prt,prtwd3", "fsl,imx6qp"; - - memory@10000000 { - device_type = "memory"; - reg = <0x10000000 0x20000000>; - }; - - memory@80000000 { - device_type = "memory"; - reg = <0x80000000 0x20000000>; - }; - - aliases { - mdio-gpio0 = &mdio0; - }; - - usdhc2_wifi_pwrseq: usdhc2_wifi_pwrseq { - compatible = "mmc-pwrseq-simple"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_wifi_npd>; - reset-gpios = <&gpio6 10 GPIO_ACTIVE_LOW>; - }; - - clk20m_can: fdcan_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <20000000>; - }; - - clk25m_switch: switch_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <25000000>; - }; - - clk25m_phy3: phy3_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <25000000>; - }; - - clk50m_phy: phy_clock { - compatible = "fixed-clock"; - #clock-cells = <0>; - clock-frequency = <50000000>; - }; - - mdio0: mdio { - compatible = "virtual,mdio-gpio"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_mdio0>; - - #address-cells = <1>; - #size-cells = <0>; - gpios = <&gpio5 6 GPIO_ACTIVE_HIGH - &gpio5 7 GPIO_ACTIVE_HIGH>; - }; - - display_panel0 { - compatible = "kyo,tcg121xglp"; - backlight = <&backlight_lcd>; - - port { - display_panel0_in: endpoint { - remote-endpoint = <&serializer0_out>; - }; - }; - }; - - display_panel1 { - compatible = "kyo,tcg121xglp"; - backlight = <&backlight_panel1>; - - port { - display_panel1_in: endpoint { - remote-endpoint = <&serializer1_out>; - }; - }; - }; - - backlight_lcd: backlight_lcd { - compatible = "pwm-backlight"; - pwms = <&pwm1 0 5000000 0>; - brightness-levels = <0 1 2 4 6 8 12 16 24 32 48 64 96 128 192 255>; - default-brightness-level = <15>; - power-supply = <®_3v3>; - }; - - backlight_panel1: backlight_panel1 { - compatible = "pwm-backlight"; - pwms = <&pwm2 0 5000000 0>; - brightness-levels = <0 1 2 4 6 8 12 16 24 32 48 64 96 128 192 255>; - default-brightness-level = <0>; - power-supply = <®_3v3>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - status = "okay"; - - clocks = <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET>, - <&clks IMX6QDL_CLK_ENET_REF>, - <&clks IMX6QDL_CLK_ENET_REF>; - clock-names = "ipg", "ahb", "ptp", "enet_clk_ref"; - assigned-clocks = <&clks IMX6QDL_CLK_ENET_REF>; - assigned-clock-rates = <125000000>; - - phy-mode = "rgmii"; - fixed-link { - speed = <100>; - full-duplex; - }; - - mdio1: mdio { - #address-cells = <1>; - #size-cells = <0>; - /* Microchip KSZ9031 */ - rgmii_phy: ethernet-phy@2 { - compatible = "ethernet-phy-ieee802.3-c22"; - reg = <2>; - - interrupts-extended = <&gpio1 28 IRQ_TYPE_EDGE_FALLING>; - - /* FIXME: tx/rx clk skew are currently set by imx - * platform driver. Write own walues here to not depend - * fixup of horror. - */ - - reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; - /* reset assert time is provided by documentation */ - reset-assert-us = <10000>; - /* documented reset deassert time (100us) is not enough - * use test value of 300us. - */ - reset-deassert-us = <1000>; - - clocks = <&clk25m_phy3>; - }; - }; -}; - -&ecspi2 { - fsl,spi-num-chipselects = <1>; - cs-gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi2>; - status = "okay"; - sja1105_switch: sja1105@0 { - reg = <0>; - #address-cells = <1>; - #size-cells = <0>; - compatible = "nxp,sja1105q"; - spi-max-frequency = <4000000>; - spi-cpha; - spi-rx-delay-us = <1>; - spi-tx-delay-us = <1>; - - reset-gpios = <&gpio5 5 GPIO_ACTIVE_LOW>; - - clocks = <&clk25m_switch>; - #clock-cells = <1>; - - ports { - #address-cells = <1>; - #size-cells = <0>; - - port@0 { - reg = <0>; - label = "usb"; - phy-handle = <&usbeth_phy>; - phy-mode = "rmii"; - }; - - port@1 { - reg = <1>; - label = "t1slave"; - phy-handle = <&tja1102_phy1>; - phy-mode = "rmii"; - }; - - port@2 { - reg = <2>; - label = "t1master"; - phy-handle = <&tja1102_phy0>; - phy-mode = "rmii"; - - }; - - port@3 { - reg = <3>; - label = "rj45"; - phy-handle = <&rgmii_phy>; - phy-mode = "rgmii-id"; - }; - - port@4 { - reg = <4>; - label = "cpu"; - ethernet = <&fec>; - phy-mode = "rgmii-id"; - - fixed-link { - speed = <100>; - full-duplex; - }; - }; - }; - }; -}; - -&mdio0 { - usbeth_phy: ethernet-phy@3 { - compatible = "ethernet-phy-ieee802.3-c22"; - reg = <0x3>; - - interrupts-extended = <&gpio5 12 IRQ_TYPE_LEVEL_LOW>; - micrel,led-mode = <0>; - - reset-gpios = <&gpio5 11 GPIO_ACTIVE_LOW>; - reset-assert-us = <500>; - reset-deassert-us = <1000>; - - /* FIXME: the clock is provided by switch and we should know - * and we should request it only after switch have done clock - * configuration. Since it is currently not implemented, - * use fixed clock. - * WARNING: Using fixed clocks in this case is potential source - * for evil bugs. Switch may reconfigure, stop or change clk - * freq without letting PHY to know about it. - */ - clocks = <&clk50m_phy>; - clock-names = "rmii-ref"; - }; - - tja1102_phy0: ethernet-phy@4 { - compatible = "ethernet-phy-id0180.dc80"; - reg = <0x4>; - - interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>; - - reset-gpios = <&gpio5 9 GPIO_ACTIVE_LOW>; - /* reset detection time is 20 usec. */ - reset-assert-us = <20>; - /* reset to standby 2 msec. */ - reset-deassert-us = <2000>; - #address-cells = <1>; - #size-cells = <0>; - - tja1102_phy1: ethernet-phy@5 { - reg = <0x5>; - - interrupts-extended = <&gpio5 8 IRQ_TYPE_LEVEL_LOW>; - }; - }; -}; - -&ecspi3 { - fsl,spi-num-chipselects = <1>; - cs-gpios = <&gpio4 24 GPIO_ACTIVE_HIGH>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi3>; - status = "okay"; - can3: can@0 { - compatible = "microchip,mcp2518fd"; - spi-max-frequency = <5000000>; - reg = <0>; - clocks = <&clk20m_can>; - interrupt-parent = <&gpio4>; - interrupts = <25 0x2>; - }; -}; - -&i2c1 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1>; - status = "okay"; - - serializer0: ds90ub927@c { - compatible = "ti,ds90ub927"; - reg = <0x0c>; - #address-cells = <1>; - #size-cells = <0>; - port@0 { - reg = <0>; - serializer0_in: endpoint { - remote-endpoint = <&lvds0_out>; - }; - }; - /* port@1 { - reg = <1>; - serializer0_audio_in: endpoint { - remote-endpoint = <&audio_i2s0_out>; - }; - }; */ - port@2 { - reg = <2>; - serializer0_out: endpoint { - remote-endpoint = <&display_panel0_in>; - }; - }; - }; -}; - -&i2c2 { - clock-frequency = <100000>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c2>; - status = "okay"; - - serializer1: ds90ub927@c { - compatible = "ti,ds90ub927"; - reg = <0x0c>; - #address-cells = <1>; - #size-cells = <0>; - port@0 { - reg = <0>; - serializer1_in: endpoint { - remote-endpoint = <&lvds1_out>; - }; - }; - port@2 { - reg = <2>; - serializer1_out: endpoint { - remote-endpoint = <&display_panel1_in>; - }; - }; - }; - - camdeser: ds90ub954@30 { - compatible = "ti,ds90ub954"; - reg = <0x30>; - #address-cells = <1>; - #size-cells = <0>; - port@0 { - reg = <0>; - camdeser_fpd_link_in: endpoint { - }; - }; - port@1 { - reg = <1>; - camdeser_mipi_out: endpoint { - remote-endpoint = <&mipi_csi_in>; - }; - }; - }; -}; - -&usdhc2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - no-1-8-v; /* force 3.3V VIO */ - non-removable; - mmc-pwrseq = <&usdhc2_wifi_pwrseq>; - pm-ignore-notify; - status = "okay"; - #address-cells = <1>; - #size-cells = <0>; - - brcmf: bcrmf@1 { - reg = <1>; - compatible = "brcm,bcm4329-fmac"; - }; -}; - -&i2c3 { - adc@49 { - compatible = "ti,ads1015"; - reg = <0x49>; - #address-cells = <1>; - #size-cells = <0>; - - channel@4 { - reg = <4>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - channel@5 { - reg = <5>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - channel@6 { - reg = <6>; - ti,gain = <1>; - ti,datarate = <3>; - }; - - channel@7 { - reg = <7>; - ti,gain = <1>; - ti,datarate = <3>; - }; - }; -}; - -&ldb { - status = "okay"; - - lvds-channel@0 { - status = "okay"; - - port@4 { - reg = <4>; - - lvds0_out: endpoint { - remote-endpoint = <&serializer0_in>; - }; - }; - }; - - lvds-channel@1 { - status = "okay"; - - port@4 { - reg = <4>; - - lvds1_out: endpoint { - remote-endpoint = <&serializer1_in>; - }; - }; - }; -}; - -&mipi_csi { - status = "okay"; - port@0 { - reg = <0>; - - mipi_csi_in: endpoint { - remote-endpoint = <&camdeser_mipi_out>; - }; - }; -}; - -&ipu1_csi0_mux_from_parallel_sensor { - /* Empty, to disable parallel camera from PRTI6Q */ -}; - -&pwm1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwm1>; - status = "okay"; -}; - -&pwm2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_pwm2>; - status = "okay"; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030 - - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - - /* Configure clock provider for RGMII ref clock */ - MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0b0 - /* Configure clock consumer for RGMII ref clock */ - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x10030 - - /* SJA1105Q switch reset */ - MX6QDL_PAD_DISP0_DAT11__GPIO5_IO05 0x10030 - - /* phy3/rgmii_phy reset */ - MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x10030 - /* phy3/rgmii_phy int */ - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x40010000 - >; - }; - - pinctrl_mdio0: mdio0grp { - fsl,pins = < - /* phy0/usbeth_phy reset */ - MX6QDL_PAD_DISP0_DAT17__GPIO5_IO11 0x10030 - /* phy0/usbeth_phy int */ - MX6QDL_PAD_DISP0_DAT18__GPIO5_IO12 0x100b1 - - /* phy12/tja1102_phy0 reset */ - MX6QDL_PAD_DISP0_DAT15__GPIO5_IO09 0x10030 - /* phy12/tja1102_phy0 int */ - MX6QDL_PAD_DISP0_DAT14__GPIO5_IO08 0x100b1 - /* phy12/tja1102_phy0 enable. Set 100K pull-up */ - MX6QDL_PAD_DISP0_DAT16__GPIO5_IO10 0x1f030 - >; - }; - - pinctrl_ecspi2: ecspi2grp { - fsl,pins = < - MX6QDL_PAD_EIM_OE__ECSPI2_MISO 0x100b1 - MX6QDL_PAD_EIM_CS0__ECSPI2_SCLK 0x100b1 - MX6QDL_PAD_EIM_CS1__ECSPI2_MOSI 0x100b1 - MX6QDL_PAD_EIM_RW__GPIO2_IO26 0x000b1 - >; - }; - - - - pinctrl_hog: hoggrp { - fsl,pins = < - /* SGTL5000 sys_mclk */ - MX6QDL_PAD_CSI0_MCLK__CCM_CLKO1 0x030b0 - /* CAN1_SR + CAN2_SR GPIO outputs */ - MX6QDL_PAD_KEY_COL3__GPIO4_IO12 0x13070 - MX6QDL_PAD_KEY_ROW3__GPIO4_IO13 0x13070 - /* CAN1_TERM (not used on WD3) */ - MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 - - /* HW revision detect */ - /* REV_ID0 */ - MX6QDL_PAD_SD4_DAT0__GPIO2_IO08 0x1b0b0 - /* REV_ID1 */ - MX6QDL_PAD_SD4_DAT1__GPIO2_IO09 0x1b0b0 - /* REV_ID2 */ - MX6QDL_PAD_SD4_DAT2__GPIO2_IO10 0x1b0b0 - /* REV_ID3 */ - MX6QDL_PAD_SD4_DAT3__GPIO2_IO11 0x1b0b0 - /* REV_ID4 */ - MX6QDL_PAD_SD4_DAT4__GPIO2_IO12 0x1b0b0 - - /* USB charging control */ - /* CHG Control */ - MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x130b0 - /* RID0 */ - MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x130b0 - /* RID1 */ - MX6QDL_PAD_NANDF_CS2__GPIO6_IO15 0x130b0 - /* RID2 */ - MX6QDL_PAD_NANDF_CS3__GPIO6_IO16 0x130b0 - - /* Power VSEL and TG */ - /* VSEL */ - MX6QDL_PAD_NANDF_ALE__GPIO6_IO08 0x1b0b0 - /* TG */ - MX6QDL_PAD_NANDF_CLE__GPIO6_IO07 0x1b0b0 - - /* Display panel 0 GPIO */ - /* L/R */ - MX6QDL_PAD_CSI0_DAT10__GPIO5_IO28 0x1b0b0 - /* TS_nINT */ - MX6QDL_PAD_CSI0_DAT11__GPIO5_IO29 0x1b0b0 - /* EN */ - MX6QDL_PAD_CSI0_DAT12__GPIO5_IO30 0x1b0b0 - /* LVDS0_nINT */ - MX6QDL_PAD_CSI0_DAT14__GPIO6_IO00 0x1b0b0 - /* LVDS0_PD */ - MX6QDL_PAD_CSI0_DAT15__GPIO6_IO01 0x1b0b0 - - /* Display panel 1 GPIO */ - /* L/R */ - MX6QDL_PAD_CSI0_MCLK__GPIO5_IO19 0x1b0b0 - /* TS_nINT */ - MX6QDL_PAD_CSI0_DATA_EN__GPIO5_IO20 0x1b0b0 - /* EN */ - MX6QDL_PAD_CSI0_PIXCLK__GPIO5_IO18 0x1b0b0 - /* LVDS1_nINT */ - MX6QDL_PAD_CSI0_DAT7__GPIO5_IO25 0x1b0b0 - /* LVDS1_PD */ - MX6QDL_PAD_CSI0_VSYNC__GPIO5_IO21 0x1b0b0 - - /* Camera */ - /* CAM_GPIO0 */ - MX6QDL_PAD_CSI0_DAT13__GPIO5_IO31 0x1b0b0 - /* CAM_nINT */ - MX6QDL_PAD_CSI0_DAT16__GPIO6_IO02 0x1b0b0 - /* CAM_GPIO1 */ - MX6QDL_PAD_CSI0_DAT17__GPIO6_IO03 0x1b0b0 - /* CAM_nPD */ - MX6QDL_PAD_CSI0_DAT18__GPIO6_IO04 0x1b0b0 - /* CAM_LOCK */ - MX6QDL_PAD_CSI0_DAT19__GPIO6_IO05 0x1b0b0 - - /* USB ethernet reset (asix) */ - MX6QDL_PAD_DISP0_DAT5__GPIO4_IO26 0x1b0b0 - >; - }; - - pinctrl_wifi_npd: wifinpd { - fsl,pins = < - /* WL_REG_ON */ - MX6QDL_PAD_NANDF_RB0__GPIO6_IO10 0x13069 - >; - }; - - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 - MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 - MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 - MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 - MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 - MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9 - >; - }; - - pinctrl_audmux: audmuxgrp { - fsl,pins = < - MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 - MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x110b0 - MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 - >; - }; - - pinctrl_i2c2: i2c2grp { - fsl,pins = < - MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001f8b1 - MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001f8b1 - >; - }; - - pinctrl_leds: ledsgrp { - /* No leds */ - fsl,pins = <>; - }; - - pinctrl_ecspi3: ecspi3grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT0__ECSPI3_SCLK 0x100b1 - MX6QDL_PAD_DISP0_DAT1__ECSPI3_MOSI 0x100b1 - MX6QDL_PAD_DISP0_DAT2__ECSPI3_MISO 0x100b1 - /* CS */ - MX6QDL_PAD_DISP0_DAT3__GPIO4_IO24 0x000b1 - /* CAN2_nINT */ - MX6QDL_PAD_DISP0_DAT4__GPIO4_IO25 0x1b0b1 - >; - }; - pinctrl_pwm1: pwm1grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT8__PWM1_OUT 0x1b0b0 - >; - }; +#include <arm/imx6qp-prtwd3.dts> +#include "imx6qdl-prti6q-emmc.dtsi" - pinctrl_pwm2: pwm2grp { - fsl,pins = < - MX6QDL_PAD_DISP0_DAT9__PWM2_OUT 0x1b0b0 - >; - }; -}; diff --git a/arch/arm/dts/imx6qp-vicutp.dts b/arch/arm/dts/imx6qp-vicutp.dts index 44cfe68867..1411071fb3 100644 --- a/arch/arm/dts/imx6qp-vicutp.dts +++ b/arch/arm/dts/imx6qp-vicutp.dts @@ -1,52 +1,5 @@ // SPDX-License-Identifier: GPL-2.0-or-later -/* - * Copyright (c) 2014 Protonic Holland - */ - /dts-v1/; -#include <arm/imx6qp.dtsi> -#include "imx6qdl-vicut1.dtsi" - -/ { - model = "Kverneland UT1P Board"; - compatible = "kvg,vicutp", "fsl,imx6qp"; - - memory { - reg = <0x10000000 0x80000000>; - }; -}; - -&fec { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_enet>; - phy-mode = "rgmii"; - /* phy-reset-gpios = <&gpio1 25 GPIO_ACTIVE_LOW>; */ - status = "okay"; -}; - -&iomuxc { - pinctrl_enet: enetgrp { - fsl,pins = < - /* MX6QDL_ENET_PINGRP_RGMII_MD(0x1b030, 0x10030) */ - MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 - MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 - MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 - MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 - MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 - MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 - MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x10030 - MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x10030 - MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x10030 - MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x10030 - MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x10030 - MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x10030 - MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x10030 - MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x10030 - MX6QDL_PAD_ENET_MDC__ENET_MDC 0x10030 - /* Phy reset */ - MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x1b0b0 - MX6QDL_PAD_ENET_TX_EN__GPIO1_IO28 0x1b0b1 - >; - }; -}; +#include <arm/imx6qp-vicutp.dts> +#include "imx6qdl-prti6q-nor.dtsi" diff --git a/arch/arm/dts/imx6ul-prti6g.dts b/arch/arm/dts/imx6ul-prti6g.dts index e65198bab2..f720a2518c 100644 --- a/arch/arm/dts/imx6ul-prti6g.dts +++ b/arch/arm/dts/imx6ul-prti6g.dts @@ -1,81 +1,64 @@ -/* - * Copyright (C) 2016 Protonic Holland - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - */ - +// SPDX-License-Identifier: GPL-2.0-or-later /dts-v1/; -#include "imx6ul-prti6g.dtsi" +#include <arm/imx6ul-prti6g.dts> / { - model = "Protonic PRTI6G Board"; - compatible = "prt,prti6g", "fsl,imx6ul"; -}; + chosen { + stdout-path = &uart4; -&pinctrl_hog { - fsl,pins = < - /* HW revision detect */ - MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x1b0b0 /* REV_ID0 */ - MX6UL_PAD_ENET2_RX_DATA1__GPIO2_IO09 0x1b0b0 /* REV_ID1 */ - MX6UL_PAD_ENET2_RX_EN__GPIO2_IO10 0x1b0b0 /* REV_ID2 */ - MX6UL_PAD_ENET2_TX_DATA0__GPIO2_IO11 0x1b0b0 /* REV_ID3 */ - MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13 0x1b0b0 /* BOARD_ID0 */ - MX6UL_PAD_ENET2_TX_CLK__GPIO2_IO14 0x1b0b0 /* BOARD_ID1 */ - MX6UL_PAD_ENET2_RX_ER__GPIO2_IO15 0x1b0b0 /* BOARD_ID2 */ - MX6UL_PAD_ENET2_TX_DATA1__GPIO2_IO12 0x1b0b0 /* BOARD_ID3 */ + environment@0 { + compatible = "barebox,environment"; + device-path = &usdhc2, "partname:barebox-environment"; + }; + }; - /* Safety controller IO */ - MX6UL_PAD_SNVS_TAMPER6__GPIO5_IO06 0x1b0b0 /* WAKE_SC */ - MX6UL_PAD_SNVS_TAMPER7__GPIO5_IO07 0x1b0b0 /* PROGRAM_SC */ - >; -}; + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; -&ecspi2 { - status = "okay"; -}; + /* Address will be determined by the bootloader */ + ramoops { + compatible = "ramoops"; + }; + }; -&can2 { - status = "okay"; + reserved-memory { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + /* Address will be determined by the bootloader */ + ramoops { + compatible = "ramoops"; + }; + }; }; -&i2c2 { - can_adc: ads1015@49 { - compatible = "ti,ads1015"; - reg = <0x49>; +&ecspi1 { + flash@0 { #address-cells = <1>; - #size-cells = <0>; + #size-cells = <1>; - channel@4 { - reg = <4>; - ti,gain = <3>; - ti,datarate = <3>; + partition@0 { + label = "barebox"; + reg = <0x0 0x100000>; }; + }; +}; - channel@5 { - reg = <5>; - ti,gain = <3>; - ti,datarate = <3>; - }; +&usdhc2 { + #address-cells = <1>; + #size-cells = <1>; - channel@6 { - reg = <6>; - ti,gain = <3>; - ti,datarate = <3>; - }; + partition@40000 { + label = "barebox-environment"; + reg = <0x40000 0x80000>; + }; - channel@7 { - reg = <7>; - ti,gain = <3>; - ti,datarate = <3>; - }; + partition@c0000 { + label = "state"; + reg = <0xc0000 0x40000>; }; }; diff --git a/arch/arm/dts/imx6ul-prti6g.dtsi b/arch/arm/dts/imx6ul-prti6g.dtsi deleted file mode 100644 index c20bbd5bc2..0000000000 --- a/arch/arm/dts/imx6ul-prti6g.dtsi +++ /dev/null @@ -1,330 +0,0 @@ -/* - * Copyright (C) 2016 Protonic Holland - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - */ - -#include <arm/imx6ul.dtsi> -#include <dt-bindings/gpio/gpio.h> - -/ { - chosen { - stdout-path = &uart1; - environment@0 { - compatible = "barebox,environment"; - device-path = &flash, "partname:env"; - }; - }; - - memory { - reg = <0x80000000 0x10000000>; - }; - - regulators { - compatible = "simple-bus"; - #address-cells = <1>; - #size-cells = <0>; - - reg_3p2v: 3p2-regulator { - compatible = "regulator-fixed"; - regulator-name = "regulator-3P2V"; - regulator-min-microvolt = <3200000>; - regulator-max-microvolt = <3200000>; - regulator-always-on; - }; - - reg_1p35v: 1p35-regulator { - compatible = "regulator-fixed"; - regulator-name = "regulator-1P35V"; - regulator-min-microvolt = <1350000>; - regulator-max-microvolt = <1350000>; - regulator-always-on; - }; - }; - - leds: leds { - compatible = "gpio-leds"; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_leds>; - - debug { - label = "debug0"; - gpios = <&gpio4 16 0>; - linux,default-trigger = "heartbeat"; - }; - }; -}; - -&usbotg1 { - dr_mode = "host"; - status = "okay"; -}; - -&uart1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_uart1>; - status = "okay"; -}; - -&usdhc1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc1>; - cd-gpios = <&gpio4 12 GPIO_ACTIVE_LOW>; - vmmc-supply = <®_3p2v>; - wakeup-source; - status = "okay"; -}; - -&usdhc2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_usdhc2>; - bus-width = <8>; - non-removable; - status = "okay"; -}; - -&ecspi1 { - fsl,spi-num-chipselects = <1>; - cs-gpios = <&gpio4 26 GPIO_ACTIVE_LOW>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi1>; - status = "okay"; - - flash: w25q64fv@0 { - compatible = "winbond,w25q64", "jedec,spi-nor"; - spi-max-frequency = <20000000>; - m25p,fast-read; - reg = <0>; - - #address-cells = <1>; - #size-cells = <1>; - - partition@0 { - label = "boot"; - reg = <0x0 0x60000>; /* 384 Kb */ - }; - - partition@60000 { - label = "env"; - reg = <0x60000 0x10000>; /* 64 Kb */ - }; - - partition@70000 { - label = "dtb"; - reg = <0x70000 0x10000>; /* 64 Kb */ - }; - - partition@80000 { - label = "kernel"; - reg = <0x80000 0x780000>; /* 7680 Kb */ - }; - }; -}; - -&ecspi2 { - fsl,spi-num-chipselects = <1>; - cs-gpios = <&gpio4 22 GPIO_ACTIVE_LOW>; - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_ecspi2>; -}; - -&i2c1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c1>; - clock-frequency = <100000>; - status = "okay"; - - /* RFID chip */ -}; - -&i2c2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_i2c2>; - clock-frequency = <100000>; - status = "okay"; - - rtc: pcf8563@51 { - compatible = "nxp,pcf8563"; - reg = <0x51>; - }; - - tmp103: tmp103@70 { - compatible = "ti,tmp103", "tmp103"; - reg = <0x70>; - }; -}; - -&fec1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_fec1 &pinctrl_ethphy0_rst>; - phy-mode = "rmii"; - phy-handle = <ðphy0>; - phy-reset-gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; - phy-reset-duration = <11>; - status = "okay"; - - mdio { - #address-cells = <1>; - #size-cells = <0>; - - ethphy0: ethernet-phy@0 { - reg = <0>; - }; - }; -}; - - -&can1 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_flexcan1>; - status = "okay"; -}; - -&can2 { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_flexcan2>; -}; - -&iomuxc { - pinctrl-names = "default"; - pinctrl-0 = <&pinctrl_hog>; - - prti6g { - pinctrl_hog: hoggrp { - fsl,pins = < - /* HW revision detect */ - MX6UL_PAD_ENET2_RX_DATA0__GPIO2_IO08 0x1b0b0 /* REV_ID0 */ - MX6UL_PAD_ENET2_RX_DATA1__GPIO2_IO09 0x1b0b0 /* REV_ID1 */ - MX6UL_PAD_ENET2_RX_EN__GPIO2_IO10 0x1b0b0 /* REV_ID2 */ - MX6UL_PAD_ENET2_TX_DATA0__GPIO2_IO11 0x1b0b0 /* REV_ID3 */ - MX6UL_PAD_ENET2_TX_EN__GPIO2_IO13 0x1b0b0 /* BOARD_ID0 */ - MX6UL_PAD_ENET2_TX_CLK__GPIO2_IO14 0x1b0b0 /* BOARD_ID1 */ - MX6UL_PAD_ENET2_RX_ER__GPIO2_IO15 0x1b0b0 /* BOARD_ID2 */ - MX6UL_PAD_ENET2_TX_DATA1__GPIO2_IO12 0x1b0b0 /* BOARD_ID3 */ - - /* CAN diagnostics (nSMBALERT) */ - MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x1b0b0 - >; - }; - - pinctrl_leds: ledsgrp { - fsl,pins = < - MX6UL_PAD_NAND_DQS__GPIO4_IO16 0x1b0b0 - >; - }; - - pinctrl_uart1: uart1grp { - fsl,pins = < - MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 - MX6UL_PAD_UART1_RX_DATA__UART1_DCE_RX 0x1b0b1 - >; - }; - - pinctrl_usdhc1: usdhc1grp { - fsl,pins = < - MX6UL_PAD_SD1_CMD__USDHC1_CMD 0x070b1 - MX6UL_PAD_SD1_CLK__USDHC1_CLK 0x07099 - MX6UL_PAD_SD1_DATA0__USDHC1_DATA0 0x070b1 - MX6UL_PAD_SD1_DATA1__USDHC1_DATA1 0x070b1 - MX6UL_PAD_SD1_DATA2__USDHC1_DATA2 0x070b1 - MX6UL_PAD_SD1_DATA3__USDHC1_DATA3 0x070b1 - MX6UL_PAD_NAND_READY_B__GPIO4_IO12 0x170b0 /* SD1 CD */ - >; - }; - - pinctrl_usdhc2: usdhc2grp { - fsl,pins = < - MX6UL_PAD_NAND_WE_B__USDHC2_CMD 0x170f9 - MX6UL_PAD_NAND_RE_B__USDHC2_CLK 0x100f9 - MX6UL_PAD_NAND_DATA00__USDHC2_DATA0 0x170f9 - MX6UL_PAD_NAND_DATA01__USDHC2_DATA1 0x170f9 - MX6UL_PAD_NAND_DATA02__USDHC2_DATA2 0x170f9 - MX6UL_PAD_NAND_DATA03__USDHC2_DATA3 0x170f9 - MX6UL_PAD_NAND_DATA04__USDHC2_DATA4 0x170f9 - MX6UL_PAD_NAND_DATA05__USDHC2_DATA5 0x170f9 - MX6UL_PAD_NAND_DATA06__USDHC2_DATA6 0x170f9 - MX6UL_PAD_NAND_DATA07__USDHC2_DATA7 0x170f9 - MX6UL_PAD_NAND_ALE__USDHC2_RESET_B 0x170b0 - >; - }; - - pinctrl_ecspi1: ecspi1grp { - fsl,pins = < - MX6UL_PAD_CSI_DATA04__ECSPI1_SCLK 0x0b0b0 - MX6UL_PAD_CSI_DATA05__GPIO4_IO26 0x000b1 - MX6UL_PAD_CSI_DATA06__ECSPI1_MOSI 0x0b0b0 - MX6UL_PAD_CSI_DATA07__ECSPI1_MISO 0x0b0b0 - >; - }; - - pinctrl_ecspi2: ecspi2grp { - fsl,pins = < - MX6UL_PAD_CSI_DATA00__ECSPI2_SCLK 0x0b0b0 - MX6UL_PAD_CSI_DATA01__GPIO4_IO22 0x000b1 - MX6UL_PAD_CSI_DATA02__ECSPI2_MOSI 0x0b0b0 - MX6UL_PAD_CSI_DATA03__ECSPI2_MISO 0x0b0b0 - >; - }; - - pinctrl_i2c1: i2c1grp { - fsl,pins = < - MX6UL_PAD_CSI_MCLK__I2C1_SDA 0x4001b8b0 - MX6UL_PAD_CSI_PIXCLK__I2C1_SCL 0x4001b8b0 - >; - }; - - pinctrl_i2c2: i2c2grp { - fsl,pins = < - MX6UL_PAD_CSI_VSYNC__I2C2_SDA 0x4001b8b0 - MX6UL_PAD_CSI_HSYNC__I2C2_SCL 0x4001b8b0 - >; - }; - - pinctrl_fec1: fec1grp { - fsl,pins = < - MX6UL_PAD_GPIO1_IO07__ENET1_MDC 0x1b0b0 - MX6UL_PAD_GPIO1_IO06__ENET1_MDIO 0x100b0 - MX6UL_PAD_ENET1_RX_DATA0__ENET1_RDATA00 0x1b0b0 - MX6UL_PAD_ENET1_RX_DATA1__ENET1_RDATA01 0x1b0b0 - MX6UL_PAD_ENET1_RX_EN__ENET1_RX_EN 0x100b0 - MX6UL_PAD_ENET1_RX_ER__ENET1_RX_ER 0x1b0b0 - MX6UL_PAD_ENET1_TX_EN__ENET1_TX_EN 0x1b0b0 - MX6UL_PAD_ENET1_TX_DATA0__ENET1_TDATA00 0x1b0b0 - MX6UL_PAD_ENET1_TX_DATA1__ENET1_TDATA01 0x1b0b0 - MX6UL_PAD_ENET1_TX_CLK__ENET1_REF_CLK1 0x4001b031 - >; - }; - - pinctrl_ethphy0_rst: ethphy-rstgrp-0 { - fsl,pins = < - MX6UL_PAD_SNVS_TAMPER0__GPIO5_IO00 0x00880 /* PHY RESET */ - >; - }; - - pinctrl_flexcan1: flexcan1grp { - fsl,pins = < - MX6UL_PAD_UART3_CTS_B__FLEXCAN1_TX 0x0b0b0 - MX6UL_PAD_UART3_RTS_B__FLEXCAN1_RX 0x0b0b0 - MX6UL_PAD_SNVS_TAMPER3__GPIO5_IO03 0x0b0b0 /* SR */ - MX6UL_PAD_SNVS_TAMPER4__GPIO5_IO04 0x0b0b0 /* TERM */ - MX6UL_PAD_SNVS_TAMPER2__GPIO5_IO02 0x0b0b0 /* nSMBALERT */ - >; - }; - - pinctrl_flexcan2: flexcan2grp { - fsl,pins = < - MX6UL_PAD_UART2_CTS_B__FLEXCAN2_TX 0x0b0b0 - MX6UL_PAD_UART2_RTS_B__FLEXCAN2_RX 0x0b0b0 - MX6UL_PAD_SNVS_TAMPER5__GPIO5_IO05 0x0b0b0 /* SR */ - >; - }; - }; -}; -- 2.29.2 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox