Default device trees for audio codex support - Verdin imx8mini


We are developing a PCB that is going to use an audio codec. We currently develop on the Dahlia board, but the codec on that board is not in storage anymore at the manufacturers.
Our quetion is: Does Toradex have any default device trees that we can use for any other codec uses? I assume that there is one for the NAU8822 codec, since the Verdin Eval board uses that one. But are there any other default device-trees for any different codecs?

Dear @edmirsuljicOIM,

Welcome to the Toradex Comunity :rocket: ! Please feel free to roam around and ask any questions that you may have.

As you’re planning to use a custom PCB, I suggest you have a look at the Verdin Carrier Board Design Guide. It has plenty of useful information for you to create your own.

Like you correctly said, the Verdin Development Board uses a different codec than the Dahlia as stated here: Audio (Linux) | Toradex Developer Center.

You can find sample device-trees on our github: GitHub - toradex/device-trees: Device tree, device tree overlays and related header files. Used by TorizonCore Builder.. You could have a look for instance here: device-trees/imx8mm-verdin-dev.dtsi at toradex_5.4-2.3.x-imx · toradex/device-trees · GitHub.

Please tell me if this helps you.

Best regards,

1 Like

I am having a similar issue.

imx8mm V1.1D, dahlia V1.1

I think the codec is wrong:
cat /proc/asound/cards
0 [imx8mmnau8822 ]: imx8mm-nau8822 - imx8mm-nau8822

Should it be imx8mmwm8904?

I am using Yocto to build the bt2qt stack.


Dear @pshulam,

If you enter u-boot, what’s the output of printenv fdt-board? If it’s dev, then you should correct it to dahlia with:

setenv fdt-board dahlia

Then you can reboot your module. Please test it.

However, as you’re building your image with Yocto you can do this during the image creation process. To edit the default device tree like here: Custom meta layers, recipes and images in Yocto Project (hello-world examples) | Toradex Developer Center

There is a sample on how to change the default device tree.

partial Output of printenv:

cat /proc/asound/cards
0 [imx8mmnau8822 ]: imx8mm-nau8822 - imx8mm-nau8822

Dear @pshulam, can you please open a new thread so that we can discuss it there? Please add the information you shared here and if possible, the output of a dmesg on a text file.

Best regards,

It is working now. Thanks. :smiley:
dmesg.txt (28.1 KB)

cat /proc/asound/cards
0 [imx8mmwm8904 ]: imx8mm-wm8904 - imx8mm-wm8904

1 Like

Dear @edmirsuljicOIM, do you have any news on the topic?

I am able to run the Qt mplayer code. What is the procedure or required to change “fdt_board=dahlia” in a Yacto boot2Qt build? I am planning to perform another build for the Verdin-imxmp SOM (V1.0E) on Dahlia V1.1 board.

Thanks so much.


Dear @pshulam, can you please open another topic about it?

I did: Verdin imx8 Plus – defining which Audio CODEC to use

1 Like

Hi again,

Sorry for the late response. Vacation and all…

We managed to get a hold of the codec we wanted initially so we didn’t have to make any changes to the device tree. Sorry to disappoint!

Hi @edmirsuljicOIM, thanks for the update.

You don’t need to say sorry for that. I’m glad you could make things work on your side :slight_smile:

I’ll tag your answer as the solution.