MLK-18789-5: ARM64: dts: imx8dx: Add dts file for lcdif
Add nodes for the ADMA eLCDIF controller found in i.MX8QXP and specific dts file for it's usage with the Seiko 43WVF1G LCD panel. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>pull/10/head
parent
37b999a6c0
commit
e1954f7426
|
@ -66,6 +66,7 @@ dtb-$(CONFIG_ARCH_FSL_IMX8QXP) += fsl-imx8qxp-lpddr4-arm2.dtb \
|
|||
fsl-imx8qxp-mek-enet2-tja1100.dtb \
|
||||
fsl-imx8qxp-mek-dsi-rm67191.dtb \
|
||||
fsl-imx8qxp-mek-a0.dtb \
|
||||
fsl-imx8qxp-mek-lcdif.dtb \
|
||||
fsl-imx8qxp-mek-it6263-lvds0-dual-channel.dtb \
|
||||
fsl-imx8qxp-mek-it6263-lvds1-dual-channel.dtb \
|
||||
fsl-imx8qxp-mek-jdi-wuxga-lvds0-panel.dtb \
|
||||
|
|
|
@ -821,6 +821,20 @@
|
|||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pd_dma_elcdif_pll: PD_DMA_ELCDIF_PLL {
|
||||
reg = <SC_R_ELCDIF_PLL>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pd_dma_lcd0: PD_DMA_LCD_0 {
|
||||
reg = <SC_R_LCD_0>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma_elcdif_pll>;
|
||||
};
|
||||
};
|
||||
|
||||
pd_dma_flexcan0: PD_DMA_CAN_0 {
|
||||
reg = <SC_R_CAN_0>;
|
||||
#power-domain-cells = <0>;
|
||||
|
@ -982,20 +996,6 @@
|
|||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
};
|
||||
|
||||
pd_dma_elcdif_pll: PD_DMA_ELCDIF_PLL {
|
||||
reg = <SC_R_ELCDIF_PLL>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
pd_dma_lcd0: PD_DMA_LCD_0 {
|
||||
reg = <SC_R_LCD_0>;
|
||||
#power-domain-cells = <0>;
|
||||
power-domains = <&pd_dma_elcdif_pll>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
pd_gpu: gpu-power-domain {
|
||||
|
@ -1747,6 +1747,32 @@
|
|||
power-domains = <&pd_mipi_dsi0>;
|
||||
};
|
||||
|
||||
adma_lcdif: lcdif@5a180000 {
|
||||
compatible = "fsl,imx8qxp-lcdif", "fsl,imx28-lcdif";
|
||||
reg = <0x0 0x5a180000 0x0 0x10000>;
|
||||
clocks = <&clk IMX8QXP_LCD_CLK>, <&clk IMX8QXP_LCD_IPG_CLK>;
|
||||
clock-names = "pix", "disp_axi";
|
||||
assigned-clocks = <&clk IMX8QXP_LCD_SEL>, <&clk IMX8QXP_ELCDIF_PLL>;
|
||||
assigned-clock-rates = <804000000>, <804000000>;
|
||||
assigned-clock-parents = <&clk IMX8QXP_ELCDIF_PLL>;
|
||||
interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>;
|
||||
power-domains = <&pd_dma_lcd0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
pwm_adma_lcdif: pwm@5a190000 {
|
||||
compatible = "fsl,imx8qxp-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x0 0x5a190000 0 0x1000>;
|
||||
clocks = <&clk IMX8QXP_PWM_IPG_CLK>,
|
||||
<&clk IMX8QXP_PWM_CLK>;
|
||||
clock-names = "ipg", "per";
|
||||
assigned-clocks = <&clk IMX8QXP_PWM_CLK>;
|
||||
assigned-clock-rates = <24000000>;
|
||||
#pwm-cells = <2>;
|
||||
power-domains = <&pd_dma_pwm0>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
mipi_dsi_csr1: csr@56221000 {
|
||||
compatible = "fsl,imx8qxp-mipi-dsi-csr", "syscon";
|
||||
reg = <0x0 0x56221000 0x0 0x1000>;
|
||||
|
|
|
@ -0,0 +1,85 @@
|
|||
/*
|
||||
* Copyright 2018 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 "fsl-imx8qxp-mek.dts"
|
||||
|
||||
/ {
|
||||
display-subsystem {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
panel {
|
||||
compatible = "sii,43wvf1g";
|
||||
backlight = <&lcdif_backlight>;
|
||||
|
||||
port {
|
||||
panel_in: endpoint {
|
||||
remote-endpoint = <&adapter_out>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
seiko_adapter: seiko-adapter {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
compatible = "nxp,seiko-43wvfig";
|
||||
bus_mode = <18>;
|
||||
|
||||
port@0 {
|
||||
reg = <0>;
|
||||
adapter_in: endpoint {
|
||||
remote-endpoint = <&lcdif_out>;
|
||||
};
|
||||
};
|
||||
port@1 {
|
||||
reg = <1>;
|
||||
adapter_out: endpoint {
|
||||
remote-endpoint = <&panel_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&esai0 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&sai1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&lpuart1 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&lcdif_backlight {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&adma_lcdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcdif>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
lcdif_out: lcdif-endpoint {
|
||||
remote-endpoint = <&adapter_in>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pwm_adma_lcdif {
|
||||
status = "okay";
|
||||
};
|
|
@ -192,6 +192,16 @@
|
|||
100>;
|
||||
default-brightness-level = <80>;
|
||||
};
|
||||
|
||||
lcdif_backlight: lcdif_backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm_adma_lcdif 0 100000 0>;
|
||||
|
||||
brightness-levels = <0 4 8 16 32 64 128 255>;
|
||||
default-brightness-level = <6>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
&acm {
|
||||
|
@ -254,7 +264,9 @@
|
|||
imx8qxp-mek {
|
||||
pinctrl_hog: hoggrp {
|
||||
fsl,pins = <
|
||||
/* TODO: conflicts with LCDIF!!!
|
||||
SC_P_MCLK_OUT0_ADMA_ACM_MCLK_OUT0 0x0600004c
|
||||
*/
|
||||
SC_P_COMP_CTL_GPIO_1V8_3V3_GPIORHB_PAD 0x000514a0
|
||||
>;
|
||||
};
|
||||
|
@ -363,6 +375,46 @@
|
|||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcdif: lcdif_grp {
|
||||
fsl,pins = <
|
||||
SC_P_ESAI0_FSR_ADMA_LCDIF_D00 0x00000060
|
||||
SC_P_ESAI0_FST_ADMA_LCDIF_D01 0x00000060
|
||||
SC_P_ESAI0_SCKR_ADMA_LCDIF_D02 0x00000060
|
||||
SC_P_ESAI0_SCKT_ADMA_LCDIF_D03 0x00000060
|
||||
SC_P_ESAI0_TX0_ADMA_LCDIF_D04 0x00000060
|
||||
SC_P_ESAI0_TX1_ADMA_LCDIF_D05 0x00000060
|
||||
SC_P_ESAI0_TX2_RX3_ADMA_LCDIF_D06 0x00000060
|
||||
SC_P_ESAI0_TX3_RX2_ADMA_LCDIF_D07 0x00000060
|
||||
SC_P_ESAI0_TX4_RX1_ADMA_LCDIF_D08 0x00000060
|
||||
SC_P_ESAI0_TX5_RX0_ADMA_LCDIF_D09 0x00000060
|
||||
SC_P_SPDIF0_RX_ADMA_LCDIF_D10 0x00000060
|
||||
SC_P_SPDIF0_TX_ADMA_LCDIF_D11 0x00000060
|
||||
SC_P_SPDIF0_EXT_CLK_ADMA_LCDIF_D12 0x00000060
|
||||
SC_P_SPI3_SCK_ADMA_LCDIF_D13 0x00000060
|
||||
SC_P_SPI3_SDO_ADMA_LCDIF_D14 0x00000060
|
||||
SC_P_SPI3_SDI_ADMA_LCDIF_D15 0x00000060
|
||||
SC_P_UART1_RTS_B_ADMA_LCDIF_D16 0x00000060
|
||||
SC_P_UART1_CTS_B_ADMA_LCDIF_D17 0x00000060
|
||||
SC_P_SAI0_TXD_ADMA_LCDIF_D18 0x00000060
|
||||
SC_P_SAI0_TXC_ADMA_LCDIF_D19 0x00000060
|
||||
SC_P_SAI0_RXD_ADMA_LCDIF_D20 0x00000060
|
||||
SC_P_SAI1_RXD_ADMA_LCDIF_D21 0x00000060
|
||||
SC_P_SAI1_RXC_ADMA_LCDIF_D22 0x00000060
|
||||
SC_P_SAI1_RXFS_ADMA_LCDIF_D23 0x00000060
|
||||
SC_P_SPI3_CS0_ADMA_LCDIF_HSYNC 0x00000060
|
||||
SC_P_SPI3_CS1_ADMA_LCDIF_RESET 0x00000060
|
||||
SC_P_MCLK_IN1_ADMA_LCDIF_EN 0x00000060
|
||||
SC_P_MCLK_IN0_ADMA_LCDIF_VSYNC 0x00000060
|
||||
SC_P_MCLK_OUT0_ADMA_LCDIF_CLK 0x00000060
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_lcdif_pwm: lcdif_pwm_grp {
|
||||
fsl,pins = <
|
||||
SC_P_SPI0_CS1_ADMA_LCD_PWM0_OUT 0x00000060
|
||||
>;
|
||||
};
|
||||
|
||||
pinctrl_flexspi0: flexspi0grp {
|
||||
fsl,pins = <
|
||||
SC_P_QSPI0A_DATA0_LSIO_QSPI0A_DATA0 0x0600004c
|
||||
|
@ -1148,6 +1200,13 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&pwm_adma_lcdif {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_lcdif_pwm>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
/* DSI/LVDS port 1 */
|
||||
&i2c0_mipi_lvds1 {
|
||||
#address-cells = <1>;
|
||||
|
|
Loading…
Reference in New Issue