[PATCH v5 0/2] Add Lontium LT9611C(EX/UXD) MIPI DSI to HDMI driver
From: syyang
Date: Wed May 06 2026 - 22:42:57 EST
From: Sunyun Yang <syyang@xxxxxxxxxxx>
This series introduces:
- A device tree binding YAML file describing the hardware
- A new DRM bridge driver implementing the basic functionality
LT9611C(EX/UXD) is an I2C-controlled chip that Receiver signal/dual port
mipi dsi and output hdmi, differences in hardware features:
- LT9611C: supports 1-port mipi dsi to hdmi 1.4
- LT9611EX: supports 2-port mipi dsi to hdmi 1.4
- LT9611UXD: supports 2-port mipi dsi to hdmi 1.4/2.0
Signed-off-by: Sunyun Yang<syyang@xxxxxxxxxxx>
---
Changes in v5:
- dt-binding:
- drm/bridge:
1. use #define FW_FILE "Lontium/lt9611c_fw.bin" to match linux-firmware [Dmitry]
2. add atomic state management
- Link to v4: https://lore.kernel.org/lkml/20260506095100.78998-1-syyang@xxxxxxxxxxx/
Changes in v4:
- dt-binding:
1. fix commit message [Krzysztof]
- drm/bridge:
1. use lt9611c_fw.bin [Dmitry]
2. use drm_bridge::next_bridge
3. use enum lt9611_chip_type
4. remove *fw from the lt9611c struct
5. "bool hdmi_connected;" variable add comment
6. use read_poll_timeout and -ETIMEDOUT in the "lt9611c_read_write_flow" function
7. replace mutex_lock(<9611c->ocm_lock) with guard(mutex)(<9611c->ocm_lock) in some place
8. switch to ARRAY_SIZE instead of specifying lengths directly
9. use dev_err_probe
10. add clear functions for AVI and audio infoframes
11. add DRM_BRIDGE_OP_HDMI and remove .hpd_notify
12. remove the sample_rate validation code
13. fix MODULE_DESCRIPTION
14. replace "GPL v2" with "GPL"
- Link to v3: https://lore.kernel.org/lkml/20260420061644.1251070-1-syyang@xxxxxxxxxxx/
Changes in v3:
- dt-binding:
1. lt9611c(ex/uxd) content merged into lontium,lt9611.yaml
- drm/bridge:
1. Drop the licence text, only use SPDX header
2. Sort the headers
3. Use library functions for crc8
4. Drop i2c_read_byte and i2c_write_byte
5. Lowercase all hex values
6. Use paged writes as implemented for LT9611C(EX/UXD)
7. Drop dev_info, use dev_dbg
8. Modify lt9611c_get_edid_block, don't store EDID in the long-term structures
9. Use HDMI audio helpers.
10. Remove unnecessary flags,Implement proper cleanup path, unwinding resources one by one.
11. Replace devm_kzalloc with devm_drm_bridge_alloc.
12. Remove extra kthread.
- Link to v1: https://lore.kernel.org/lkml/20250903123825.1721443-1-syyang@xxxxxxxxxxx/
Changes in v2:
1. Forget modify code, operation error, Please disregard this submit.
Changes in v1:
- dt-binding:
1. Submit the first version of the code.
- drm/bridge:
1. Submit the first version of the code.
---
Sunyun Yang (2):
dt-bindings: bridge: Add Lontium LT9611C(EX/UXD) MIPI DSI to HDMI
driver
drm/bridge: Add Lontium LT9611C(EX/UXD) MIPI DSI to HDMI driver
.../display/bridge/lontium,lt9611.yaml | 8 +-
drivers/gpu/drm/bridge/Kconfig | 18 +
drivers/gpu/drm/bridge/Makefile | 1 +
drivers/gpu/drm/bridge/lontium-lt9611c.c | 1240 +++++++++++++++++
4 files changed, 1265 insertions(+), 2 deletions(-)
create mode 100644 drivers/gpu/drm/bridge/lontium-lt9611c.c
--
2.34.1