[RK3588-Android12] 关于EDP屏外设为Panel,不支持HPD的配置

问题描述

直接附上dts配置,也可自行查看先关文档RKDocs\common\display\Rockchip_RK3588_User_Guide_eDP_CN.pdf


解决方案:

	// EDP屏参数
	panel-edp {
		compatible = "simple-panel";
		// 屏en脚 自行根据原理图配置
		enable-gpios = <&gpioX RK_PXX GPIO_ACTIVE_HIGH>;
		backlight = <&backlight>;
		power-supply = <&vcc3v3_lcd_edp>;
		prepare-delay-ms = <120>;
		enable-delay-ms = <120>;
		unprepare-delay-ms = <120>;
		disable-delay-ms = <120>;
		width-mm = <129>;
		height-mm = <171>;

		panel-timing {
			clock-frequency = <241000000>;
			hactive = <2560>;
			vactive = <1440>;
			hfront-porch = <108>;
			hsync-len = <38>;
			hback-porch = <40>;
			vfront-porch = <12>;
			vsync-len = <4>;
			vback-porch = <4>;
			hsync-active = <0>;
			vsync-active = <0>;
			de-active = <0>;
			pixelclk-active = <0>;
		};

		port {
			panel_in_edp: endpoint {
				remote-endpoint = <&edp_out_panel>;
			};
		};
	};

	// EDP LCD_PWREN_H
	vcc3v3_lcd_edp: vcc3v3-lcd-edp {
		compatible = "regulator-fixed";
		regulator-name = "vcc3v3_lcd_edp";
		gpio = <&gpioX RK_PXX GPIO_ACTIVE_HIGH>;
		enable-active-high;
		regulator-boot-on;
		vin-supply = <&vcc_3v3_s3>;
	};

/***********************************************************************/
// EDP
/***********************************************************************/
&backlight {
	// 背光en脚 自行配置
	enable-gpios = <&gpioX RK_PXX GPIO_ACTIVE_HIGH>;
	// pwm 自行根据原理图配置
	pwms = <&pwmX 0 25000 0>;
	power-supply = <&vcc3v3_lcd_edp>;
	status = "okay";
};

&edp0 {
	force-hpd;
	status = "okay";

	ports {
		port@1 {
			reg = <1>;

			edp_out_panel: endpoint {
				remote-endpoint = <&panel_in_edp>;
			};
		};
	};
};

&edp0_in_vp2 {
	status = "okay";
};

&route_edp0 {
	connect = <&vp2_out_edp0>;
	status = "okay";
};

&hdptxphy0 {
	/* Single Vdiff Training Table for power reduction (optional) */
	training-table = /bits/ 8 <
		/* voltage swing 0, pre-emphasis 0->3 */
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		/* voltage swing 1, pre-emphasis 0->2 */
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		/* voltage swing 2, pre-emphasis 0->1 */
		0x0d 0x00 0x00 0x00 0x00 0x00
		0x0d 0x00 0x00 0x00 0x00 0x00
		/* voltage swing 3, pre-emphasis 0 */
		0x0d 0x00 0x00 0x00 0x00 0x00
	>;
	status = "okay";
};
/***********************************************************************/

// 对应pwm 根据原理图自行配置
&pwmX {
	pinctrl-0 = <&pwmXmX_pins>;
	status = "okay";
};


  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
以下是一个可以用于SD卡启动的rk3288-evb-android-act8846-ed.dts示例,仅供参考: ``` /dts-v1/; /include/ "rk3288.dtsi" / { model = "Rockchip RK3288 EVB with act8846 and edp"; chosen { bootargs = "earlyprintk console=ttyS2,115200n8 root=/dev/mmcblk1p2 rw rootwait"; }; memory@60000000 { reg = <0x60000000 0x40000000>; }; reserved-memory { #address-cells = <1>; #size-cells = <1>; ranges; kernel@0 { reg = <0x60000000 0x02000000>; }; reserved@20000000 { reg = <0x20000000 0x20000000>; }; }; aliases { mmc0 = &sdmmc; }; sdmmc: sdmmc@fe310000 { compatible = "rockchip,rk3288-dw-mshc"; reg = <0xfe310000 0x1000>; interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cru PCLK_SDMMC0>, <&cru SCLK_SDMMC0>; clock-names = "pclk", "hclk"; dmas = <&pdma 12>, <&pdma 12>; dma-names = "rx", "tx"; pinctrl-0 = <&sdmmc_pins>; pinctrl-names = "default"; status = "okay"; }; sdmmc_pins: sdmmc@0 { rockchip,pins = < RK_GPIO1 1 RK_FUNC_2 RK_GPIO1 2 RK_FUNC_2 RK_GPIO1 3 RK_FUNC_2 RK_GPIO1 4 RK_FUNC_2 RK_GPIO1 5 RK_FUNC_2 RK_GPIO1 6 RK_FUNC_2 RK_GPIO1 7 RK_FUNC_2 RK_GPIO1 8 RK_FUNC_2 >; }; act8846: act8846@5b { compatible = "active-semi,act8846"; reg = <0x5b>; gpio-controller; #gpio-cells = <2>; interrupt-parent = <&gpio1>; interrupts = <14 IRQ_TYPE_EDGE_RISING>; pinctrl-names = "default"; pinctrl-0 = <&act8846_pins>; status = "okay"; }; act8846_pins: act8846@0 { rockchip,pins = < RK_GPIO4 3 RK_FUNC_GPIO RK_GPIO4 4 RK_FUNC_GPIO RK_GPIO4 5 RK_FUNC_GPIO >; }; edp: edp@1c19000 { compatible = "rockchip,rk3288-edp"; reg = <0x01c19000 0x1000>; interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cru SCLK_EDP>; clock-names = "edp"; status = "okay"; }; backlight: backlight { compatible = "pwm-backlight"; pwms = <&pwm2 0 5000>; brightness-levels = <0 14 28 42 56 70 84 100>; default-brightness-level = <7>; status = "okay"; }; }; ``` 这个示例中,sdmmc节点表示SD卡,act8846节点表示PMIC,edp节点表示eDP显示器接口,backlight节点表示背光控制。其中,bootargs设置了SD卡启动的相关参数。注意,这个示例是根据某个特定的rk3288 EVB开发板进行配置的,如果你的硬件不同,需要进行相应的修改。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值