[PATCH v7 0/2] This series adds LT9211C bridge driver by extending LT9211
From: vishnu . saini
Date: Sat Aug 22 2026 - 13:01:55 EST
LT9211c is a Single/Dual-Link DSI/LVDS or Single DPI input to
Single-link/Dual-Link DSI/LVDS or Single DPI output bridge chip.
This adds support for DSI to LVDS bridge configuration. By extending the
existing lontium-lt9211 driver to support DSI-to-LVDS bridge configuration.
Signed-off-by: Yi Zhang <zhanyi@xxxxxxxxxxxxxxxx>
Signed-off-by: Nilesh Laad <nilesh.laad@xxxxxxxxxxxxxxxx>
Signed-off-by: Gopi Botlagunta <venkata.botlagunta@xxxxxxxxxxxxxxxx>
Signed-off-by: Vishnu Saini <vishnu.saini@xxxxxxxxxxxxxxxx>
---
Changes in v7:
- Squashed 5 fixes from Philipp Zabel, except drop delayed work.
drm/bridge: lt9211: fix regmap_write error handling
drm/bridge: lt9211: use regmap_write_bits
drm/bridge: lt9211: reuse lt9211_configure_timing in lt9211c_configure_timing
drm/bridge: lt9211: combine equal branches
drm/bridge: lt9211: use devm_drm_bridge_add and drop lt9211_remove
- Keeping the delayed work but improved the approach by reducing the delay
to 0ms and wait on vblank irq to correctly configure bridge and autodetect
RX as with synchronous approach in atomic_enable callback autodetect RX
was failed to detect RX format/width/height due to stream was not live.
- Introduced lt9211_chip_data and fetched it via i2c_get_match_data(),
removing the remaining chip_type branches. [Philipp Zabel]
- Switched lt9211c_regmap_config.cache_type from REGCACHE_RBTREE to
REGCACHE_NONE. [Philipp Zabel]
- The few read-modify-write registers now use regmap_write_bits()) [Philipp Zabel]
- Merged the mode->clock < 22000 and < 44000 branches in
lt9211c_configure_plls() that wrote identical 0x822f/div values;
0x822c is now written unconditionally in every branch instead of
being left stale when the mode clock moves out of the < 22000 range [Philipp Zabel]
- Removed the dead "set bit 0x80 then mask it off" on the 0xd026
write in lt9211c_configure_plls() [Philipp Zabel]
- Consolidated the duplicated SOT / HS-settle-set write into a single
hs_settle calculation and one regmap_write() call [Philipp Zabel]
- Fixed error handling on regmap_write() calls in
lt9211c_configure_plls() that used "ret |=" across multiple writes,
which drops the return value of an earlier failed write [Philipp Zabel]
- Reused lt9211_configure_timing() from lt9211c_configure_timing()
instead of duplicating the timing register sequence [Philipp Zabel]
- Switched to devm_drm_bridge_add() and devm_add_action_or_reset() for
the LT9211C workqueue, dropping the explicit lt9211_remove() [Philipp Zabel]
- Squashed LT9211C burst mode fix from Oleksij Rempel.
- Added Tested-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
- Link to v6: https://lore.kernel.org/r/20260719-add-lt9211c-bridge-v6-0-e56d22152586@xxxxxxxxxxxxxxxx
Changes in v6:
- Nilesh Laad and Gopi Botlagunta moved to different org in Qualcomm. Further, i will followup on this series with community, will also submit the dt series where LT9211C bridge is used.
- Rebased onto current drm-misc-next (commit 671b7825dbfe)
- Fixed lt9211_read_chipid: LT9211 match no longer checks chipid[2],
preserving compatibility with LT9211 rev U5 (db74b04edce1)
- Fixed indentation in lt9211_atomic_enable LT9211 path (was double-indented)
- Fixed indentation in lt9211_delayed_work_func body (was double-indented)
- Gated workqueue creation on LT9211C chip type only
- Fixed few formatting warnings with coccinelle and W=1
- Link to v5: https://lore.kernel.org/r/20260323-add-lt9211c-bridge-v5-0-9c63bb035c17@xxxxxxxxxxxxxxxx
Changes in v5:
- Addressed code formatting in lt9211 driver (no functional or design changes)
- Addressed v4 comments on lontium-lt9211.yaml
- Link to v4: https://lore.kernel.org/r/20251224-add-lt9211c-bridge-v4-0-406e73ec28c5@xxxxxxxxxxxxxxxx
Changes in v4:
- Removed lontium-lt9211c.yaml
- Extended lontium-lt9211.yaml to support LT9211C
- Link to v3: https://lore.kernel.org/r/20251218-add-lt9211c-bridge-v3-0-1ee0670a0db2@xxxxxxxxxxxxxxxx
Changes in v3:
- Removed lontium-lt9211c as separate driver
- Add support to lontium-lt9211c bridge driver by extending the existing lontium-lt9211.c
- Fixed kernel test robot reported build errors
- Link to v2: https://lore.kernel.org/lkml/20251107-add-lt9211c-bridge-v2-0-b0616e23407c@xxxxxxxxxxxxxxxx/
Changes in v2:
- Combined driver patch from https://lore.kernel.org/lkml/20250911-lt9211c-bridge-support-v1-1-c221202cbcd5@xxxxxxxxxxxxxxxx/
- Added MODULE_AUTHOR
- Uppercase to lowercase for hex values
- Link to v1: https://lore.kernel.org/r/20250910-add-lt9211c-bridge-v1-1-4f23740fe101@xxxxxxxxxxxxxxxx
---
Yi Zhang (2):
dt-bindings: display: bridge: lontium,lt9211: Add lt9211c support
drm/bridge: add support for lontium lt9211c bridge
.../bindings/display/bridge/lontium,lt9211.yaml | 5 +-
drivers/gpu/drm/bridge/lontium-lt9211.c | 838 ++++++++++++++++++++-
2 files changed, 808 insertions(+), 35 deletions(-)
---
base-commit: 063019ac51afffda4ab3d658701b086caa0c8e9e
change-id: 20250910-add-lt9211c-bridge-5a21fcb1c803
Best regards,
--
Vishnu Saini <vishnu.saini@xxxxxxxxxxxxxxxx>