Enable driver for ADV7511(ADV7535) in Torizon OS

Hi Team,

We are working on DSI to HDMI converter (ADV7511/ADV7535) on our custom carrier board, which is based on IMX8M Plus. We have replaced ADV7535 instead of LT8912B MIPI DSI to HDMI bridge, which comes with Toradex carrier board.

We are trying to enable driver ADV7511/ADV7535 in Torizon OS, which is running on IMX8M plus.

Kindly please clarify on below points:

  1. Do we need to use Yocto build project or simple kmod configurations?
  2. Which source branch of Torizon OS we have to use?
  3. How to enable the driver using kconfig?
  4. Do we have to make any changes in device tree for DSI to HDMI converter?

Below are the systems details:

Software summary

Bootloader: U-Boot
Kernel version: 5.15.129-6.5.0+git.6f8fd49366db #1-TorizonCore SMP PREEMPT Fri Dec 22 11:15:52 UTC 2023
Kernel command line: root=LABEL=otaroot rootfstype=ext4 quiet logo.nologo vt.global_cursor_default=0 plymouth.ignore-serial-consoles splash fbcon=map:3 ostree=/ostree/boot.0/torizon/0675ef60b6510e69b99103e48d52b4fc37504a16b10cb79a10beaee292d75b0c/0
Distro name: NAME=“TorizonCore”
Distro version: VERSION_ID=6.5.0-build.8
Distro variant: VARIANT=“Docker”
Hostname: verdin-imx8mp-147XXXXX

Hardware info

HW model: Toradex Verdin iMX8M Plus on Verdin Development Board
Toradex version: 0063 V1.1A
Serial number: 14XXXXXX
Processor arch: aarch64

Thanks & Regards,
Rupesh Kathar

Hi, I’m the Toradex AI Assistant.

I might make mistakes. Our support team will step in if needed. If I answered your question, please tick the “Solution” checkbox. For follow-up questions to me, please use @ToradexAI in your post.

Did you like my answer? :+1: :-1:


Hello Rupesh,

Thank you for providing detailed information about your setup. Here’s a step-by-step clarification for each of your questions regarding enabling the ADV7511/ADV7535 DSI-to-HDMI bridge on Torizon OS for your Verdin iMX8M Plus:


1. Do we need to use Yocto build project or simple kmod configurations?

For Torizon OS, direct kernel module (kmod) handling or manual builds are not recommended. The preferred approach for enabling new drivers (such as ADV7511/ADV7535) is to use TorizonCore Builder, not a full Yocto build, unless you need deep customizations not covered by overlays or available modules.


2. Which source branch of Torizon OS should we use?

Your TorizonCore version (6.5.0-build.8) is based on the Linux kernel branch toradex_6.6-2.1.x-imx for the i.MX8M Plus family. For customizations, refer to this kernel branch when preparing device tree overlays or compiling drivers:


3. How to enable the driver using kconfig?

If the ADV7511/ADV7535 driver is not built into your kernel, you may need to enable it via kernel configuration:

  • Use TorizonCore Builder to add or enable additional kernel modules, including ADV7511/ADV7535.
  • If you must manually configure, get the corresponding kernel source and use make menuconfig or make nconfig to enable the driver:
    • Device Drivers → Graphics Support → Display Interface Bridges
    • Enable options for ADV7511/ADV7535 as built-in or module.

After configuration, use TorizonCore Builder to integrate resulting modules/overlays into your Torizon OS image.


4. Do we have to make any changes in device tree for DSI to HDMI converter?

Yes, supporting the ADV7511/ADV7535 bridge requires device tree changes:

  • You must declare the ADV7511/ADV7535 node in your device tree or overlay, specifying:
    • Connection to the MIPI DSI host
    • I2C address/interface for control
    • HDMI output configuration
    • Any required GPIOs (e.g., for reset, enable)
  • PWM for backlight and any other display-specific signals (like hotplug detect) should also be configured.

TorizonCore Builder supports adding such overlays. For reference on MIPI DSI-related signals and how overlays are deployed, see:
MIPI DSI Signals Reference


Prototyping Tip:


Summary of Steps:

  1. Prepare your device tree overlay for ADV7511/ADV7535.
  2. Enable the driver (as kernel config/module if not present).
  3. Use TorizonCore Builder to integrate your overlay and/or kernel modules.
  4. Deploy the image and test HDMI output.

If you need further details on writing the device tree overlay, let me know!

Best regards,
Toradex AI Assistant.

Hi @rkathar!

I’ll ask our R&D team to enable this driver. So, in a few days, it will be added to our nightly images and all other images after that (monthly, quarterly, etc). However, we won’t add new drivers to LTS versions (like 6.8), so I would recommend you use newer Torizon OS versions, such as 7.x. Is it possible for your project?

If you prefer, I can let you know once it has been added to Torizon OS 7.x.

Best regards.

Hi @lucas_az.tx,

Thank you for response!

We could not use Torizon OS version 7.x as our product has developed on version 6.8. We have followed below steps:

  1. Cloned downstream based linux kernel source code and switched to toradex_6.6-2.0.x-imx branch.
  2. Cloned Device tree overlay source code for the same branch (toradex_6.6-2.0.x-imx).

Please provide procedure to enable ADV7511/ADV7535 drivers, as we are working with strict deadline.

Let us know if any information is required from our end.

Thanks & Regards,
Rupesh

Hi @rkathar!

Version 6.6 of the Linux Kernel is used in Torizon 7, as you can see here.

That being said, you should use the menuconfig to enable the driver manually. If you are not familiar with menuconfig, follow these steps:

  1. Do the Kernel Configuration (in your case, you should use Verdin iMX8MP kernel-config).
  2. Go to Kernel folder and run make menuconfig.
  3. Search for the driver by typing /ADV7511.
  4. Select it by typing the respective number of the driver you need.
  5. Type y to enable the driver.
  6. Save and Exit.

After this, you can compile the kernel and deploy it to and image, don’t forget to configure your computer for cross-compilation before compiling the kernel.

Best regards.

Hi @lucas_az.tx !

I believe just enabling the driver in kernel won’t work? Or will it? I’ve to add device tree/device tree overlay for adv7535 as well.

I’m trying to go by the overlay method,
For that I’ve created two overlays in device-tree overlay directory,
1.adv7535-overlay.dts (1.3 KB)
2. Disable existing lontium overlay in dsi to hdmi overlay.
disable-lontium-overlay.dts (126 Bytes)

Now, in my root tcbdir I’ve below directories and files,
admin@PC1FMBN4:~/tcbdir$ ls
device-trees linux tcb-env-setup.sh tcbuild.yaml torizon-core-docker-verdin-imx8mp-Tezi_6.8.2+build.30.tar

I’ve placed the above 2 overlays I created in device-trees/overlays folder and created a tcbuild.yaml file as
tcbuild.yaml (332 Bytes)

Now using the torizon builder to apply overlay I’m facing below issue,

admin@PC1FMBN4:~/tcbdir$ torizoncore-builder dto apply device-trees/overlays/adv7535-overlay.dts --device-tree imx8mp-verdin-wifi-yavia.dtb
'adv7535-overlay.dts' compiles successfully.

Failed to apply '/tmp/tmp3oqczhb4': FDT_ERR_NOTFOUND

error: cannot apply device tree overlays ['/storage/sysroot/ostree/deploy/torizon/deploy/632d2e063bc4774fd300dc99eaca7fba7669d41ebe2a289ae88ef476b1ce79e9.0/usr/lib/modules/5.15.177-6.8.2+git.5a6602cc6c32/dtb/overlays/verdin-imx8mp_hdmi_overlay.dtbo', '/storage/sysroot/ostree/deploy/torizon/deploy/632d2e063bc4774fd300dc99eaca7fba7669d41ebe2a289ae88ef476b1ce79e9.0/usr/lib/modules/5.15.177-6.8.2+git.5a6602cc6c32/dtb/overlays/verdin-imx8mp_dsi-to-hdmi_overlay.dtbo', '/storage/sysroot/ostree/deploy/torizon/deploy/632d2e063bc4774fd300dc99eaca7fba7669d41ebe2a289ae88ef476b1ce79e9.0/usr/lib/modules/5.15.177-6.8.2+git.5a6602cc6c32/dtb/overlays/verdin-imx8mp_spidev_overlay.dtbo', '/tmp/tmp3oqczhb4'] against device tree /storage/sysroot/ostree/deploy/torizon/deploy/632d2e063bc4774fd300dc99eaca7fba7669d41ebe2a289ae88ef476b1ce79e9.0/usr/lib/modules/5.15.177-6.8.2+git.5a6602cc6c32/dtb/imx8mp-verdin-wifi-yavia.dtb.
error: overlay 'device-trees/overlays/adv7535-overlay.dts' is not applicable.

The second issue I’m facing is at enabling ADV7511 driver for kernel 5.15.

In the linux folder where the kernel is cloned.
I ran make menuconfig as you suggested
but I don’t find the ADV7511 option in menuconfig for kernel 5.15 but it is there for kernel 6.6

In kernel 6.6 I did,
CONFIG_DRM_I2C_ADV7511=y
CONFIG_DRM_I2C_ADV7511_AUDIO=y
CONFIG_DRM_I2C_ADV7511_CEC=y

In kernel 5.15
CONFIG_VIDEO_ADV7511=y
CONFIG_VIDEO_ADV7511_CEC=y

Do I need to add AUDIO in version 5.15 of kernel?

If I’m proceeding with compiling kernel with these configuration,
Kernel compilation is successful and Image.gz is generated for kernel 6.6.

But the same doesn’t works for kernel 5.15, I run into issue

min@PC1FMBN4:~/tcbdir/linux$ make -j$(nproc) Image.gz 2>&1 | tee build.log
make DTC_FLAGS="-@" freescale/imx8mp-verdin-wifi-yavia.dtb
ls ./arch/arm64/boot/Image.gz
ls ./arch/arm64/boot/dts/freescale/imx8mp-verdin-wifi-yavia.dtb
  SYNC    include/config/auto.conf.cmd
  HOSTCC  scripts/kconfig/conf.o
  HOSTLD  scripts/kconfig/conf
.config:727:warning: symbol value 'm' invalid for KVM
*
* Restart config...
*
*
* Platform selection
*

And I’m trying to generate an installable iso/image that can be installed with easy installer.

For that,

I am unable to understand the step,
Build Linux Kernel from Source Code | Toradex Developer Center.

Where can I get these set of files bootfs tar, and how the image is generated without going Yocto way.

I’m reiterating the steps I’m trying, please provide alternative/corrections if any,
1. Get the kernel source for my required OS.
2. Enable kernel in .config and build kernel from source.
3.Create an overlay replacing the existing lontium overlay for dsi to hdmi, catering to ADV7535.
4.Merge the kernel image I created after enabling driver and the overlay into torizon os image,
5. Generate custom OS image that have my driver inbuilt into kernel and my overlay in place for ADV7535 replacing the existing Lontium based overlay.

Thanks & Regards,
Rupesh

Hi @lucas_az.tx ,

Any update on my previous comments?

Thanks & Regards,
Rupesh

Hi @rkathar!

The first error is caused by referencing nodes that do not exist. For example, in your adv7535-overlay.dts, you call the nodes &adv7535_in and &adv7535_out, but they are not defined, neither in our device tree nor your overlay.

About the kernel configuration, I’ve found the driver for it in kernel 5.15:

Regarding our developer article that you sent, the bootfs file is located inside the image’s folder. It means you should download the image from our artifacts and replace the files with the ones you built in the previous steps of the article.

If you are not experienced in writing overlays and/or working with device trees, I would recommend taking a look at our Partner Network, where you can find partners with the expertise necessary to accelerate your project.

Best regards.

Hi @lucas_az.tx ,

Kindly please let me know once driver has been added to the nightly images on Torizon 0S7.x.

Thanks & Regards,
Rupesh Kathar

Hi @rkathar!

Yes, I already asked the team to add the CONFIGs. I’ll let you know once it is added.

Best regards.

Hi @rkathar!

On Torizon 7, I found these two configs:

  • CONFIG_VIDEO_ADV7511
  • CONFIG_DRM_I2C_ADV7511

However, they cannot be enabled simultaneously, as you can see here. Could you please confirm which one we should enable?

Best regards.

Hi @lucas_az.tx ,

CONFIG_DRM_I2C_ADV7511 need to be enabled.

Thanks & Regards,
Rupesh Kathar

Hi @rkathar!

Okay, I’ll ask the Torizon team to enable it and let you know once it is done.

Best regards.

Hi @lucas_az.tx ,

I’ve been following the Toradex article “TorizonCore Builder Tool - Customizing Torizon OS Images” to enable support for the ADV7535 HDMI transmitter on my custom hardware. Here’s a summary of what I’ve done so far:

# Steps Taken:

  1. Retrieved the kernel source (v5.15) for my target OS.

  2. Enabled the ADV7511 driver in menuconfig:

    CONFIG_DRM_I2C_ADV7511=m
    ** CONFIG_DRM_I2C_ADV7511_AUDIO=y**
    ** CONFIG_DRM_I2C_ADV7511_CEC=y**

  3. Created a device tree overlay (adv7535.dts) to:

    • Add ADV7535 under the I2C2 node.
    • Disable the Lontium LT8912 node.
  4. Updated the tcbuild.yaml file accordingly.

  5. Built the custom image successfully with no build-time errors.

  6. Deployed the image to the target hardware.

# Observations After Deployment:

  • dmesg | grep adv shows no entries related to ADV7511/7535.
  • lsmod | grep adv shows no loaded modules for ADV7511/7535.
  • No splash screen appears during boot, despite specifying the image path in tcbuild.yaml.
  • i2cdetect -y 2 shows no devices detected on I2C2.

# Questions:

  • Am I missing any steps or configurations?
  • Could there be an issue with my overlay? Would you recommend sharing it here for review?
  • Is there a better or alternate approach to enable ADV7535 support on TorizonCore?

Any guidance or suggestions would be greatly appreciated. Thanks in advance!
dmesg_18062025_0702 (1).txt (49.6 KB)
adv7535.dts (2.1 KB)
tcbuild.yaml (7.0 KB)
Build logs (2.6 KB)
config (181.8 KB)

Best regards,
Rupesh Kathar

Hi @rkathar!

I saw on your tcbuild.yaml that you added your overlay. I would recommend setting the variable clear to true. By doing so, your overlay would be the only one applied, and you could guarantee that the verdin-imx8mp_dsi-to-hdmi_overlay.dtbo is not interfering in your image.

Besides that, are you sure that the right driver is CONFIG_DRM_I2C_ADV7511? I saw that there is a CONFIG_VIDEO_ADV7511 driver too, but I’m not sure which should be enabled for your use-case.

Best regards.

Hi @lucas_az.tx ,

I have tried setting the variable clear to true, but ADV7535 is not enabled.

Since, ADV7535 seems to be an in-tree module, so I am not sure if I can use torizon core builder to enable the module & build the kernel. Now, I am trying to enable driver with Linux Kernel Source Code approach.

I’ve been following the Toradex article “Build Linux Kernel from Source Code” to build the linux kernel with kernel-config file provided in toradex artifacts. Here’s a summary of what I’ve done so far:

  1. Downloaded the linux kernel source code for downstream based with following command
    git clone -b toradex_5.15-2.0.x-imx Index of /linux-toradex.git

  2. As we are using BSP6 Downstream Linux Reference Multimedia Verdin iMX8M Plus 6.8.2+build.16. I have downloaded kernel-config file from https://artifacts.toradex.com/artifactory/tdxref-oe-prod-frankfurt/kirkstone-6.x.y/release/16/verdin-imx8mp/tdx-xwayland/tdx-reference-multimedia-image/oedeploy/kernel-config

  3. As specified in kernel configuration steps, I have replaced the downloaded kernel-config file with .config.

  4. As specified in Kernel compilation steps, I have compiled kernel with only below command without any changes in .config (downloaded kernel-config) file for testing purpose on Verdin IMX8M plus board.
    make -j$(nproc) Image.gz 2>&1 | tee build.log
    ls ./arch/arm64/boot/Image.gz

  5. Deploying the kernel to an Image:
    i) Downloaded and extracted BSP6 Downstream Linux Reference Multimedia Verdin iMX8M Plus 6.8.2+build.16 image
    ii) Integrated the built artifacts into the downloaded embedded Linux image by replacing the kernel binary (Image.gz) in the extracted folder from the bootfs.tar.xz file. I haven’t replaced device trees as there are no changes in it. Then, replace the new bootfs.tar.xz file with the previous one.
    iii) Deployed the modified OS image with toradex easy installer 6.8.2+build.10

Issues found:

  1. After flashing OS image, we cannot able to access IMX with SSH.

Questions:

  1. Am I following the correct steps? Is kernel-config file downloaded is correct one?
  2. Does the BSP6 Downstream Linux Reference Multimedia Verdin iMX8M Plus 6.8.2+build.16 uses the same kernel-config file provided in toradex artifacts?
  3. Is there anything I am missing out? My objective is to later modify the .config file by enabling ADV7535 & disabling lontium_8912b.

Thanks & Regards,
Rupesh Kathar

Hi @rkathar!

The driver for ADV7535 is already enabled on our nightly images for BSP 7.

About the steps you took, SSH was not supposed to stop with the built image. After you’ve downloaded the kernel-config, did you rename it to .config and run make olddefconfig?

Best regards.

Hi @lucas_az.tx

Could you please let me know if ADV7535 is also enabled in BSP 6.4 and later versions (kernel branch: toradex_5.15-2.2.x-imx).

I have followed the below steps:

  1. Added a child node “hdmi_adv7535” under I2C2 in imx8mp-verdin.dtsi



  2. Created a device tree overlay for dsi to hdmi port and configured ADV7535 in I2C2 node. I have attached the device tree overlay for it in this thread.

  3. Updated the tcbuild.yaml file accordingly (with clear to true).

  4. Build custom OS with torizon core builder.

  5. Deployed OS image on target hardware with USB stick

Issues faced with above configurations:

  1. There is no entry for ADV7535 in kernel logs

  2. Below error appeared for drm bridge
    [ 2.603511] [drm:drm_bridge_attach] ERROR failed to attach bridge /soc@0/bus@32c00000/mipi_dsi@32e60000 to encoder DSI-37: -517
    [ 2.615202] imx_sec_dsim_drv 32e60000.mipi_dsi: Failed to attach bridge: 32e60000.mipi_dsi
    [ 2.623604] imx_sec_dsim_drv 32e60000.mipi_dsi: failed to bind sec dsim bridge: -517

  3. i2cdetect -y 2
    0 1 2 3 4 5 6 7 8 9 a b c d e f
    00: – – – – – – – –
    10: – – – – – – – – – – – – – – – –
    20: – – – – – – – – – – – – – – – –
    30: – – – – – – – – – – – – – – – –
    40: – – – – – – – – – – – – – – – –
    50: – – – – – – – – – – – – – – – –
    60: – – – – – – – – – – – – – – – –
    70: – – – – – – – –

Questions:

  1. What could be the reason for Failed to attach bridge issue?
  2. Is there any changes required in imx8mp-verdin.dtsi?
  3. Am I missing any steps or configurations?
  4. Could there be an issue with my overlay? Would you recommend sharing it here for review?
  5. Could you please review device tree overlay (adv7535.dts)

Any guidance or suggestions would be greatly appreciated. Thanks in advance!

adv7535.dts (2.2 KB)
tcbuild.yaml (6.9 KB)
dmesg_07072025_0446.txt (49.1 KB)

Thanks & Regards,
Rupesh

Hi @rkathar!

I’ve checked, and it is enabled on BSP 6.8.3.

About your modifications, are you modifying the device tree and also creating an overlay? We don’t recommend customizing the device tree except in specific situations. You should try to do all the modifications in one or more overlays and then apply them to the final image.

Regarding the modification content, looking at it, I would recommend using the verdin-imx8mp_dsi-to-hdmi_overlay.dts as a starting point because I found some differences that may cause issues (for example, the port definition is done in a node that is out of the &i2c2 node, but in yours you do it within the node), but it would require some deeper tests to be sure what the root of the problem is.

So, summarizing, I recommend using only overlays and not modifying the device tree itself. Besides, use the overlay that we already have as a base to write yours.

Best regards.

Hi @lucas_az.tx ,

We are currently working with a custom carrier board where we are using I2C channel 2 to communicate with the ADV7535 DSI to HDMI bridge, unlike the Yavia Carrier Board which uses a different I2C channel. As a result, we have made the following updates to the device tree to reflect this change:

:white_check_mark: Device Tree Changes

1. verdin-imx8mp_dsi-to-hdmi_overlay.dts

  • Removed the existing hdmi_lontium_lt8912 node.
  • Added a new hdmi_adv7535 node under the I2C2 node.

2. imx8mp-verdin.dtsi

  • Removed the hdmi_lontium_lt8912 node.
  • Removed Lontium pin connection details from the hdmi_connector node.
  • Added hdmi_adv7535 as a subnode under I2C2.

:white_check_mark: Observed Results After Changes

  1. Successfully able to read/write internal registers of ADV7535.

  2. Able to dump I2C data:

torizon@verdin-imx8mp-15404184:~$ i2cdump -y -f 1 0x39
No size specified (using byte-data access)
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f    0123456789abcdef
00: 14 00 00 00 00 00 00 00 00 00 41 0e bc 18 01 13    ?.........A?????
10: 25 37 00 00 00 00 38 00 46 62 04 a8 00 00 1c 84    %7....8.Fb??..??
20: 1c bf 04 a8 1e 70 02 1e 00 00 04 a8 08 12 1b ac    ?????p??..??????
30: 00 00 00 00 00 00 00 00 00 00 00 80 00 00 00 b0    ...........?...?
40: 00 50 f0 76 10 68 68 68 68 00 80 00 00 00 00 00    .P?v?hhhh.?.....
50: 00 00 02 0d 6d 02 00 00 00 00 00 00 00 00 00 00    ..??m?..........
60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
70: 01 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ??..............
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
90: 00 00 00 00 c0 00 40 00 03 02 e0 18 30 61 00 00    ....?.@.????0a..
a0: 00 00 a4 a4 08 04 00 00 00 00 00 40 00 00 40 14    ..????.....@..@?
b0: 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00    ..........?.....
c0: 00 00 00 00 00 00 06 00 00 03 00 00 02 00 01 04    ......?..?..?.??
d0: 0c ff 80 80 80 00 00 00 00 00 00 00 00 00 88 01    ?.???.........??
e0: d0 70 01 00 00 00 fd 00 00 00 52 46 00 00 00 00    ?p?...?...RF....
f0: 95 04 ff 00 00 00 00 00 00 00 7d aa 1c 00 b0 00    ??........}??.?.
  1. HDMI display is detected and EDID data is retrieved on the i.MX8MP. While HDMI-A -1 is DSI to HDMI and HDMI-A-2 is native HDMI port.
    image
root@verdin-imx8mp-15288064:/home/torizon# cat /sys/class/drm/card0-HDMI-A-1/edid | edid-decode
edid-decode (hex):
 
00 ff ff ff ff ff ff 00 30 ae 86 10 01 01 01 01
22 15 01 03 80 29 1a 78 ee e5 b5 a3 55 49 99 27
13 50 54 af ef 00 61 40 81 c0 81 80 81 8a 81 90
95 00 95 0f 01 01 64 19 00 40 41 00 26 30 18 88
36 00 a0 1d 00 00 00 18 00 00 00 fc 00 4c 45 4e
20 4c 31 39 35 30 77 44 0a 20 00 00 00 fd 00 32
4c 1e 51 0e 00 0a 20 20 20 20 20 20 00 00 00 ff
00 42 33 34 33 32 38 34 35 0a 20 20 20 20 01 0b
 
02 03 21 71 4e 06 07 02 03 15 96 11 12 13 04 14
05 1f 90 23 09 07 07 83 01 00 00 65 03 0c 00 10
00 8c 0a d0 90 20 40 31 20 0c 40 55 00 b9 88 21
00 00 18 01 1d 80 18 71 1c 16 20 58 2c 25 00 b9
88 21 00 00 9e 01 1d 80 d0 72 1c 16 20 10 2c 25
80 b9 88 21 00 00 9e 01 1d 00 bc 52 d0 1e 20 b8
28 55 40 b9 88 21 00 00 1e 02 3a 80 d0 72 38 2d
40 10 2c 45 80 b9 88 21 00 00 1e 00 00 00 00 d0

:cross_mark: Issues Encountered

  1. No image output on the connected HDMI display.
  2. dmesg log error:
    imx_sec_dsim_drv 32e60000.mipi_dsi: failed to get pmsk for: fin = 12000, fout = 0
    

:wrench: Troubleshooting Attempt

We attempted to modify the MIPI DSI controller clock settings in the device tree as follows:

mipi_dsi: mipi_dsi@32e60000 {
				#address-cells = <1>;
				#size-cells = <0>;
				compatible = "fsl,imx8mp-mipi-dsim";
				reg = <0x32e60000 0x10000>;
				clocks = <&media_blk_ctrl IMX8MP_CLK_MEDIA_BLK_CTRL_MIPI_DSI_PCLK>,
					 <&media_blk_ctrl IMX8MP_CLK_MEDIA_BLK_CTRL_MIPI_DSI_CLKREF>;
				clock-names = "cfg", "pll-ref";
				assigned-clocks = <&clk IMX8MP_CLK_MEDIA_MIPI_PHY1_REF>;
				assigned-clock-parents = <&clk IMX8MP_CLK_24M>;
				assigned-clock-rates = <11000000>;
				interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>;
				power-domains = <&mipi_phy1_pd>;
				status = "disabled";

				port@0 {
					dsim_from_lcdif: endpoint {
						remote-endpoint = <&lcdif_to_dsim>;
					};
				};
			};

However, the default frequency still shows as 12 MHz in the dmesg logs.


:red_question_mark: Request for Clarification

We would appreciate your guidance on the following points:

  1. How can we correctly update the fin and fout values to resolve the pmsk error?
  2. Are there any additional device tree changes required to enable proper image output via ADV7535?

Looking forward to your insights and suggestions.

Please see attached dmesg log, device tree overlay into this thread.

Thanks & Regards,
Rupesh Kathar
dmesg_16072025_0350 1.txt (88.4 KB)
adv7535.dts (2.0 KB)