
1. 版本背景发布时间:2023年1月1日HDMI支持状态:HDMI 2.1完全支持,DSC压缩技术整合,VRR动态刷新率实现关键里程碑:HDMI 2.1 FRL最高12Gbps支持Display Stream Compression (DSC)完全集成可变刷新率(VRR)和自动低延迟模式(ALLM)HDCP 2.3开源实现CEC框架生产就绪2. 子系统架构现代化架构+---------------------+ | 用户空间 | | DRM API (libdrm) | | + HDMI控制接口 | +----------+----------+ | +----------v----------+ | 内核空间 | | DRM核心子系统 | | + HDMI 2.1桥接器 | +----------+----------+ | +----------v----------+ | 统一HDMI控制器 | | + DSC支持 | | + VRR实现 | +----------+----------+ | +----------v----------+ | HDMI物理层 | +---------------------+架构创新HDMI 2.1框架:drivers/gpu/drm/bridge/下的完全实现DSC集成:drivers/gpu/drm/dsc.c压缩引擎VRR支持:drm_mode_add_vrr_modes()动态刷新率HDCP 2.3:drivers/gpu/drm/drm_hdcp.c完整实现3. 源码深度解析HDMI 2.1桥接器实现// drivers/gpu/drm/bridge/nxp-ptn3460.c static const struct drm_bridge_funcs ptn3460_bridge_funcs = { .attach = ptn3460_attach, .mode_set = ptn3460_mode_set, .enable = ptn3460_enable, .disable = ptn3460_disable, .atomic_enable = ptn3460_atomic_enable, .atomic_disable = ptn3460_atomic_disable, .atomic_get_output_bus_fmts = ptn3460_atomic_get_output_bus_fmts, }; static int ptn3460_atomic_check(struct drm_bridge *bridge, struct drm_bridge_state *bridge_state, struct drm_crtc_state *crtc_state, struct drm_connector_state *conn_state) { struct ptn3460 *ptn = bridge_to_ptn(bridge); struct drm_display_mode *mode = crtc_state-mode; /* 检查是否需要DSC */ if (mode-clock HDMI_2_0_MAX_TMDS_CLK !drm_mode_has_dsc(conn_state-connector)) { DRM_ERROR("需要DSC压缩支持\n"); return -EINVAL; }