diff --git a/arch/arm64/boot/dts/seco/overlays/Makefile b/arch/arm64/boot/dts/seco/overlays/Makefile index c60774ef37a3efc37c710f76ce96d9cdabd688ff..6a1607c63e84d14098d8079c0f51588a9ffa606b 100644 --- a/arch/arm64/boot/dts/seco/overlays/Makefile +++ b/arch/arm64/boot/dts/seco/overlays/Makefile @@ -50,8 +50,7 @@ dtbo-$(CONFIG_ARCH_MXC) += \ seco-imx8mp-d18-audio-btsco.dtbo\ seco-imx8mn-c72-edp.dtbo\ seco-imx8mn-c72-lvds-dual-215.dtbo\ - seco-imx8mn-c72-lvds-dual-156.dtbo - seco-imx8mn-c72-edp.dtbo \ + seco-imx8mn-c72-lvds-dual-156.dtbo \ seco-imx8qxp-c57-lvds-1024x600.dtbo # seco-imx8qm-c26-dp.dtbo\ diff --git a/arch/arm64/boot/dts/seco/overlays/seco-imx8qxp-c57-lvds-1024x600-overlay.dts b/arch/arm64/boot/dts/seco/overlays/seco-imx8qxp-c57-lvds-1024x600-overlay.dts new file mode 100644 index 0000000000000000000000000000000000000000..eeeb22113755b9de5d445f085952e3eaaa12b231 --- /dev/null +++ b/arch/arm64/boot/dts/seco/overlays/seco-imx8qxp-c57-lvds-1024x600-overlay.dts @@ -0,0 +1,150 @@ +/* + * Copyright 2017 NXP + * + * 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 <dt-bindings/display/media-bus-format.h> +#include <dt-bindings/gpio/gpio.h> + +/dts-v1/; +/plugin/; + +/ { + compatible = "fsl,imx8qxp-mek","seco,imx8qxp-c57","fsl,imx8qxp"; + +/* __________________________________________________________________________ + * | | + * | LVDS 1024X600 (SINGLE CHANNEL) | + * |__________________________________________________________________________| + */ + + fragment@0 { + target-path = "/"; + __overlay__ { + regulators { + mux_sel: mux_sel { + compatible = "regulator-fixed"; + regulator-name = "MUX_SEL"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; + regulator-always-on; + }; + }; + }; + }; + + fragment@1 { + target-path = "/"; + __overlay__ { + lvds_panel { + compatible = "seco-hannstar,hsd090jfw1", "panel-dpi"; + #address-cells = <1>; + #size-cells = <0>; + no-hpd; + + width-mm = <196>; + height-mm = <114>; + + prepare-ms = <100>; + enable-ms = <100>; + disable-ms = <100>; + unprepare-ms = <100>; + + bpc = <8>; + bus-format = <DT_MEDIA_BUS_FMT_RGB888_1X24>; + + status = "okay"; + + panel-timing { + clock-frequency = <61000000>; + hactive = <1024>; + vactive = <600>; + hback-porch = <80>; + hsync-len = <60>; + hfront-porch = <80>; + vback-porch = <23>; + vsync-len = <10>; + vfront-porch = <0>; + hsync-active = <0>; + vsync-active = <0>; + de-active = <1>; + pixelclk-active = <1>; + }; + + port@0 { + reg = <0>; + panel_lvds_in: endpoint { + remote-endpoint = <&ldb1_out>; + }; + }; + }; + }; + }; + + fragment@2 { + target = <&ldb1_phy>; + __overlay__ { + status = "okay"; + en_custom_bpp_cfg; + 16bpp_bit16_cfg3; + }; + }; + + fragment@3 { + target = <&ldb1>; + __overlay__ { + status = "okay"; + #address-cells = <1>; + #size-cells = <0>; + + lvds-channel@1 { + reg = <1>; + status = "disabled"; + }; + + lvds-channel@0 { + reg = <0>; + #address-cells = <1>; + #size-cells = <0>; + fsl,data-mapping = "spwg"; + fsl,data-width = <24>; + status = "okay"; + + /delete-node/ port@1; + + port@1 { + reg = <1>; + #address-cells = <1>; + #size-cells = <0>; + ldb1_out: endpoint { + remote-endpoint = <&panel_lvds_in>; + }; + }; + }; + }; + }; + + fragment@4 { + target = <&ldb2_phy>; + __overlay__ { + status = "disabled"; + }; + }; + + fragment@5 { + target = <&ldb2>; + __overlay__ { + status = "disabled"; + }; + }; +}; \ No newline at end of file diff --git a/arch/arm64/boot/dts/seco/seco-imx8qxp-c57.dts b/arch/arm64/boot/dts/seco/seco-imx8qxp-c57.dts index c09007d29905297837ffe550ff5e6b8d60980104..ab827b6b3886c4a646defead215dfc59e3d0d4c5 100644 --- a/arch/arm64/boot/dts/seco/seco-imx8qxp-c57.dts +++ b/arch/arm64/boot/dts/seco/seco-imx8qxp-c57.dts @@ -17,6 +17,7 @@ #include <dt-bindings/usb/pd.h> #include <dt-bindings/drm_mipi_dsi.h> #include "dt-bindings/net/ti-dp83867.h" +#include <dt-bindings/display/media-bus-format.h> #include "include/imx8qxp.dtsi" / { @@ -341,6 +342,13 @@ >; }; + + pinctrl_i2c0_mipi_lvds0: mipi_lvds0_i2c0_grp { + fsl,pins = < + IMX8QXP_MIPI_DSI0_I2C0_SCL_MIPI_DSI0_I2C0_SCL 0xc6000020 + IMX8QXP_MIPI_DSI0_I2C0_SDA_MIPI_DSI0_I2C0_SDA 0xc6000020 + >; + }; }; }; @@ -465,6 +473,22 @@ gpio4: &lsio_gpio4 { status = "okay"; }; +&ldb1_phy { + status = "disabled"; +}; + +&ldb1 { + status = "disabled"; +}; + +&ldb2_phy { + status = "disabled"; +}; + +&ldb2 { + status = "disabled"; +}; + &pwm_mipi_lvds0 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm_mipi_lvds0>; @@ -475,4 +499,86 @@ gpio4: &lsio_gpio4 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_pwm_mipi_lvds1>; status = "okay"; +}; + +&dpu1 { + status = "okay"; +}; + +&gpu_3d0 { + status = "okay"; +}; + +&imx8_gpu_ss { + status = "okay"; +}; + + +// Display controller subsystem (DC0) +// Pixel Combiner +&dc0_pc { + status = "okay"; +}; + +// Prefetch Resolve Gasket (PRG) +&dc0_prg1 { + status = "okay"; +}; + +&dc0_prg2 { + status = "okay"; + +}; + +&dc0_prg3 { + status = "okay"; +}; + +&dc0_prg4 { + status = "okay"; +}; + +&dc0_prg5 { + status = "okay"; +}; + +&dc0_prg6 { + status = "okay"; +}; + +&dc0_prg7 { + status = "okay"; +}; + +&dc0_prg8 { + status = "okay"; +}; + +&dc0_prg9 { + status = "okay"; +}; + +// Display Prefetch Resolver (DPR) +&dc0_dpr1_channel1 { + status = "okay"; +}; + +&dc0_dpr1_channel2 { + status = "okay"; +}; + +&dc0_dpr1_channel3 { + status = "okay"; +}; + +&dc0_dpr2_channel1 { + status = "okay"; +}; + +&dc0_dpr2_channel2 { + status = "okay"; +}; + +&dc0_dpr2_channel3 { + status = "okay"; }; \ No newline at end of file