[PATCH] drm/bridge: lt9611: Remove I2C address change in sleep

Hongyang Zhao posted 1 patch 1 week, 3 days ago
drivers/gpu/drm/bridge/lontium-lt9611.c | 5 -----
1 file changed, 5 deletions(-)
[PATCH] drm/bridge: lt9611: Remove I2C address change in sleep
Posted by Hongyang Zhao 1 week, 3 days ago
The lt9611_sleep_setup() modifies the chip's I2C address via registers
0x8023/0x8024 and reconfigures GPIO0 via 0x8157/0x8149. Since there is
no corresponding restore in the wake-up path, I2C communication fails
after resume.

Remove the I2C address and GPIO reconfiguration from sleep setup. The
MIPI Rx power-down and TX PHY disable sequences are sufficient.

Signed-off-by: Hongyang Zhao <hongyang.zhao@thundersoft.com>
---
The lt9611_sleep_setup() function modifies the chip's I2C address via
registers 0x8023/0x8024 and reconfigures GPIO0. However, there is no
corresponding restore in the wake-up path, which causes I2C communication
to fail after resume.

This patch removes the I2C address and GPIO reconfiguration from sleep
setup. The MIPI Rx power-down and TX PHY disable sequences are sufficient
for proper sleep operation.

Tested on RubikPi3 (QCS6490) platform with the LT9611 HDMI bridge.
---
 drivers/gpu/drm/bridge/lontium-lt9611.c | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/drivers/gpu/drm/bridge/lontium-lt9611.c b/drivers/gpu/drm/bridge/lontium-lt9611.c
index a2d032ee4744..ae47efe9d77f 100644
--- a/drivers/gpu/drm/bridge/lontium-lt9611.c
+++ b/drivers/gpu/drm/bridge/lontium-lt9611.c
@@ -424,11 +424,6 @@ static void lt9611_enable_hpd_interrupts(struct lt9611 *lt9611)
 static void lt9611_sleep_setup(struct lt9611 *lt9611)
 {
 	const struct reg_sequence sleep_setup[] = {
-		{ 0x8024, 0x76 },
-		{ 0x8023, 0x01 },
-		{ 0x8157, 0x03 }, /* set addr pin as output */
-		{ 0x8149, 0x0b },
-
 		{ 0x8102, 0x48 }, /* MIPI Rx power down */
 		{ 0x8123, 0x80 },
 		{ 0x8130, 0x00 },

---
base-commit: 46fe65a2c28ecf5df1a7475aba1f08ccf4c0ac1b
change-id: 20260127-rubikpi-next-20260116-bugfix-75db8104d221

Best regards,
-- 
Hongyang Zhao <hongyang.zhao@thundersoft.com>
Re: [PATCH] drm/bridge: lt9611: Remove I2C address change in sleep
Posted by Roger Shimizu 1 week, 1 day ago
On Thu, Jan 29, 2026 at 1:36 PM Hongyang Zhao
<hongyang.zhao@thundersoft.com> wrote:
>
> The lt9611_sleep_setup() modifies the chip's I2C address via registers
> 0x8023/0x8024 and reconfigures GPIO0 via 0x8157/0x8149. Since there is
> no corresponding restore in the wake-up path, I2C communication fails
> after resume.
>
> Remove the I2C address and GPIO reconfiguration from sleep setup. The
> MIPI Rx power-down and TX PHY disable sequences are sufficient.
>
> Signed-off-by: Hongyang Zhao <hongyang.zhao@thundersoft.com>
> ---
> The lt9611_sleep_setup() function modifies the chip's I2C address via
> registers 0x8023/0x8024 and reconfigures GPIO0. However, there is no
> corresponding restore in the wake-up path, which causes I2C communication
> to fail after resume.
>
> This patch removes the I2C address and GPIO reconfiguration from sleep
> setup. The MIPI Rx power-down and TX PHY disable sequences are sufficient
> for proper sleep operation.
>
> Tested on RubikPi3 (QCS6490) platform with the LT9611 HDMI bridge.
> ---
>  drivers/gpu/drm/bridge/lontium-lt9611.c | 5 -----
>  1 file changed, 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/bridge/lontium-lt9611.c b/drivers/gpu/drm/bridge/lontium-lt9611.c
> index a2d032ee4744..ae47efe9d77f 100644
> --- a/drivers/gpu/drm/bridge/lontium-lt9611.c
> +++ b/drivers/gpu/drm/bridge/lontium-lt9611.c
> @@ -424,11 +424,6 @@ static void lt9611_enable_hpd_interrupts(struct lt9611 *lt9611)
>  static void lt9611_sleep_setup(struct lt9611 *lt9611)
>  {
>         const struct reg_sequence sleep_setup[] = {
> -               { 0x8024, 0x76 },
> -               { 0x8023, 0x01 },
> -               { 0x8157, 0x03 }, /* set addr pin as output */
> -               { 0x8149, 0x0b },
> -
>                 { 0x8102, 0x48 }, /* MIPI Rx power down */
>                 { 0x8123, 0x80 },
>                 { 0x8130, 0x00 },
>
> ---

Tested-by: Roger Shimizu <rosh@debian.org> # Rubik Pi 3 (QCOM QCS6490 platform)

Before this patch, HDMI output can be used just after booting / 1st plugging in.
HDMI gets lost after the disconnecting, and plugging in again.

-Roger