问题描述
DP/HDMI指定屏参数dts的配置方法(lane/rate/bpc/分辨率/clock/前后肩等)
解决方案:
DP/HDMI部分的配置,下面列举DP0的示例,DP1或者HDMI0 HDMI1类似
&dp0 {
pinctrl-names = "default";
//hpd脚自行配置
pinctrl-0 = <&>;
hpd-gpios = <&>;
status = "okay";
ports {
port@1 {
reg = <1>;
dp0_out_panel: endpoint {
remote-endpoint = <&panel_in_dp0>;
};
};
};
};
&dp0_in_vp2 {
status = "okay";
};
&route_dp0 {
status = "okay";
connect = <&vp2_out_dp0>;
};
&usbdp_phy0 {
//根据屏幕参数自行定义lane数
/* 4 lane */
rockchip,dp-lane-mux = <0 1 2 3>;
/* 2 lane */
//rockchip,dp-lane-mux = <0 1>;
/* 1 lane */
//rockchip,dp-lane-mux = <0>;
status = "okay";
};
&usbdp_phy0_dp {
//根据屏幕参数自行定义rate
//max-link-rate = <8100>;
max-link-rate = <5400>;
//max-link-rate = <2700>;
status = "okay";
};
&usbdp_phy0_u3 {
status = "okay";
};
新增屏参数部分配置
panel-dp0 {
compatible = "simple-panel";
reset-delay-ms = <120>;
enable-delay-ms = <120>;
prepare-delay-ms = <120>;
init-delay-ms = <120>;
unprepare-delay-ms = <120>;
disable-delay-ms = <60>;
/* bpc = 6 */
//bus-format = <MEDIA_BUS_FMT_RGB666_1X24_CPADHI>;
/* bpc = 8 */
bus-format = <MEDIA_BUS_FMT_RGB888_1X24>;
/* bpc = 10 */
//bus-format = <MEDIA_BUS_FMT_RGB101010_1X30>;
//以下为其他bus配置
//bus-format = <MEDIA_BUS_FMT_UYYVYY8_0_5X24>;
//bus-format = <MEDIA_BUS_FMT_UYYVYY10_0_5X30>;
//bus-format = <MEDIA_BUS_FMT_YUYV8_1X16>;
//bus-format = <MEDIA_BUS_FMT_YUYV10_1X20>;
//bus-format = <MEDIA_BUS_FMT_YUV8_1X24>;
//bus-format = <MEDIA_BUS_FMT_YUV10_1X30>;
//屏幕有属性根据屏幕参数自行定义
panel-timing {
clock-frequency = <>;
hactive = <>;
vactive = <>;
hfront-porch = <>;
hsync-len = <>;
hback-porch = <>;
vfront-porch = <>;
vsync-len = <>;
vback-porch = <>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
};
port {
panel_in_dp0: endpoint {
remote-endpoint = <&dp0_out_panel>;
};
};
};
需要支持以上配置,需要较新的SDK。