本帖最后由 houxn22 于 2018-7-13 13:06 编辑
小白折腾记,献给需要的人,少走些弯路。
参考了帖子:之前的修改有问题,不是真正的4K,这里重新改一下(2018-07-13)~~
Android版本:5.1
内核版本:3.10.79
要使板子HDMI输出4K,需要修改内核层和Android framework层。一、内核层修改
在没修改内核前,adb进入shell,
cd /sys/class/display/HDMI;cat modes,输出当前显示器支持的显示格式。
即使显示器支持4K显示,这里也不会有4K分辨率(3840x2160)。修改内核层目标是使这里识别出4K分辨率。
内核层只需要修改对应dts即可,修改地方为2处,一是禁用掉VGA,二是修改disp_timings。进入目录firefly-rk3288_android5.1_git/kernel/arch/arm/boot/dts,该Android系统使用的dts为firefly-rk3288.dts,打开该文件,发现该dts引用了
#include "rk3288.dtsi"
#include "lcd-box.dtsi"
两个头文件。
①禁用掉VGA
在rk3288.dtsi,找到hdmi标签:
hdmi: hdmi@ff980000 {
compatible = "rockchip,rk3288-hdmi";
reg = <0xff980000 0x20000>;
interrupts = ;
pinctrl-names = "default", "sleep";
pinctrl-0 = ;
pinctrl-1 = ;
clocks = , ,;
clock-names = "pclk_hdmi", "hdcp_clk_hdmi","cec_clk_hdmi";
//rockchip,hdmi_video_source = ;
rockch