一、确认硬件与固件硬件RK3566 板载 Micro HDMI → 接 HDMI 显示器用转接头 / 线。固件优先用官方带 HDMI 配置的镜像如 hdmi 专用 img避免默认关闭 HDMI 的版本。二、设备树DTS配置必做路径Linux 内核plaintextarch/arm64/boot/dts/rockchip/rk356x/xxx.dts1打开 HDMI 节点dtshdmi { status okay; // 启用 HDMI ddc-i2c-bus i2c5; pinctrl-names default; pinctrl-0 hdmitx_scl hdmitx_sda; };2包含 HDMI 时序 dtsi推荐dts#include rk3566-hdmi.dtsi // 或厂商自带tspi-rk3566-hdmi-v10.dtsi注释掉则关闭 HDMI。3自定义分辨率时序如 1080p60dtshdmi { display-timings { timing0 { clock-frequency 148500000; hactive 1920; vactive 1080; hsync-len 44; hback-porch 148; hfront-porch 88; vsync-len 5; vback-porch 36; vfront-porch 4; }; }; };时序参数务必与屏幕 EDID 一致。三、内核配置确保驱动开启内核 menuconfigplaintextDevice Drivers → Graphics support → DRM Support → Rockchip DRM driver → Enable HDMI driver确认CONFIG_DRM_ROCKCHIP_HDMIyCONFIG_DRMy四、启动参数设置可选优先级高修改extlinux/extlinux.conf或boot.iniplaintextappend ... videoHDMI-A-1:1920x1080M60HDMI-A-1HDMI 接口名可在/sys/class/drm查看。保存 → 重启。五、Android 额外配置如果是 Android设备树同 Linux确保hdmistatus okay。关闭其他显示如 MIPI LCD避免冲突dtslcd { status disabled; };设置分辨率属性bash运行adb shell setprop persist.sys.resolution.aux 1920x1080p60重启或重启 surfaceflinger。六、调试与验证关键查看 HDMI 节点bash运行ls /sys/class/drm/ cat /sys/class/drm/card0-HDMI-A-1/edid | edid-decode查看当前分辨率bash运行xrandr查看内核日志bash运行dmesg | grep hdmi常见问题无信号设备树 status 未设为 okay、内核驱动未选、HDMI 线坏。分辨率不对时序参数错误、未读 EDID、启动参数覆盖。Android 双屏异常关闭 MIPI/EDP 屏。七、一键总结照着做即可硬件接好 HDMI 线与显示器。设备树hdmistatus okay包含 hdmi dtsi。内核开启 DRM 与 HDMI 驱动。可选启动参数设videoHDMI-A-1:1920x1080M60。Android关闭其他屏setprop 分辨率。编译烧写 → 重启 → 用 dmesg/edid/xrandr 验证一、HDMI 热插拔配置DTS 追加热插拔检测dtshdmi { hp-det-gpio gpio0 RK_PA3 GPIO_ACTIVE_HIGH; interrupt-parent gpio0; interrupts RK_PA3 IRQ_TYPE_LEVEL_HIGH; };内核开启热插拔开关CONFIG_DRM_HDMI_HOTPLUGy二、画面旋转 缩放启动参数旋转 90 度plaintextappend ... videoHDMI-A-1:1920x1080M60,rotate90系统内动态缩放bash运行xrandr --output HDMI-A-1 --scale 0.8x0.8三、HDMI 音频同步输出DTS 绑定音频路由dtshdmi { sound-dai hdmi_sound; };内核勾选plaintextCONFIG_SND_ROCKCHIP_HDMIy命令切换出声设备bash运行amixer cset numid3 2四、双显示切换HDMI 本地屏仅 HDMI 输出bash运行xrandr --output LCD --off --output HDMI-A-1 --auto复制画面bash运行xrandr --output HDMI-A-1 --same-as LCD五、自定义 EDID 强制适配提取显示器 EDIDbash运行edid-decode /sys/class/drm/card0-HDMI-A-1/edid edid.binDTS 加载自定义 EDIDdtshdmi { edid-fw-name rk3566-hdmi.edid; };把 edid.bin 放入固件设备树目录六、编译烧录实操命令编译设备树bash运行make dtbs替换 boot 分区 dtb 文件单独更新启动参数bash运行fw_setenv bootargs 原有参数 videoHDMI-A-1:1920x108060 saveenv reboot七、高频故障速修黑屏无识别dmesg | grep hp查看插拔中断核对 GPIO 引脚定义花屏闪屏降低刷新率为 50Hz修正时序参数有声无图关闭 DRM 硬件加速测试drm_kms_helper.dumb_alloc0AndroidHDMI 无画面修改 framework 显示配置默认显示设备指定 HDMI