Thread (4 messages) 4 messages, 2 authors, 2026-03-25

Re: [PATCH] arm64: dts: imx8mp-evk: Specify ADV7535 register addresses

From: Liu Ying <victor.liu@nxp.com>
Date: 2026-03-25 03:23:37
Also in: imx, linux-devicetree, lkml

Hi Frank,

On Tue, Mar 24, 2026 at 10:42:59AM -0400, Frank Li wrote:
On Tue, Mar 24, 2026 at 01:52:03PM +0800, Liu Ying wrote:
quoted
MIPI DSI to HDMI bridge ADV7535 CEC default register address is 0x3c
on an I2C bus.  And, OV5640 camera uses the same address on the same
I2C bus.  To resolve this conflict, use 0x3b as ADV7535 CEC register
address by specifying all ADV7535 register addresses.
Does cec start address programmable?  generally i2c address is fixed or
controller by some gpio.
Yes, it's programmable.  Quote adi,adv7533.yaml:

  reg:
    description: |
      I2C slave addresses.

      The ADV7533/35 internal registers are split into four pages
      exposed through different I2C addresses, creating four register
      maps. Each map has it own I2C address and acts as a standard slave
      device on the I2C bus. The main address is mandatory, others are
      optional and revert to defaults if not specified.
    minItems: 1
    maxItems: 4

  reg-names:
    description:
      Names of maps with programmable addresses. It can contain any map
      needing a non-default address.
    minItems: 1
    items:
      - const: main
      - const: edid
      - const: cec
      - const: packet
Frank
quoted
Fixes: 6f6c18cba16f ("arm64: dts: imx8mp-evk: add camera ov5640 and related nodes")
Signed-off-by: Liu Ying <victor.liu@nxp.com>
---
 arch/arm64/boot/dts/freescale/imx8mp-evk.dts | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
index aedc09937716..d0a2bd975a18 100644
--- a/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx8mp-evk.dts
@@ -602,7 +602,8 @@ ov5640_mipi_0_ep: endpoint {

 	hdmi@3d {
 		compatible = "adi,adv7535";
-		reg = <0x3d>;
+		reg = <0x3d>, <0x3f>, <0x3b>, <0x38>;
+		reg-names = "main", "edid", "cec", "packet";
 		interrupt-parent = <&gpio1>;
 		interrupts = <9 IRQ_TYPE_EDGE_FALLING>;
 		adi,dsi-lanes = <4>;
---
base-commit: 09c0f7f1bcdbc3c37a5a760cbec76bf18f278406
change-id: 20260324-imx8mp-evk-adv7535-cec-reg-addr-2de67760133a

Best regards,
--
Liu Ying [off-list ref]
-- 
Regards,
Liu Ying
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help