How to add I2S0 in DTS

I am trying to make WM8960 work on MQ-Quad. from the schematic. it uses I2S0 pins. but I do not see it in DTS file. how do I add-in i2s definitions. what is the right format? I had follow this post to fix I2C problem. now I can see “1A” on I2C bus. seams I2S0 pins are not defined.

So there are 3 I2S interfaces:
I2S0 from PI0-PI4 pins they are NOT exposed on the pcb
I2S2 from PG10-PG14 pins are EXPOSED on the small 18 ffc on the side on the board
I2S3 from PH5-PH9 pins are EXPOSED on the same pins as SPI

So your easiest path will be to sacrifice SPI for I2s if you don’t want that you have to make yourself a breakout board for 18ffc (which actually exposes 2xUSB2.0, 100Mbps Ethernet interface and I2S2 pins)

I do see some definitions:

i2s3_pins = "/soc/pinctrl@300b000/i2s3-pins";

here also

                        i2s3-pins {
                                pins = "PH5\0PH6\0PH7\0PH8\0PH9";
                                function = "i2s3";
                                phandle = <0x27>;
                        };

here are the ahub devices:

ahub-i2s1@0x05097000
.....
ahub-i2s3@0x05097000
......

Not sure if that’s enough though as I’m not particularly interested in I2S at the moment

My boards were made for RPI. it uses GPIO pins. from schematic of MQ-Quad. I2S0 does connect to the right pin. can you help to define I2S0 and make it to work with WM8960? I have no idea how to setup DTS file.

Have you solved the problem of connecting the wm8960 sound card? I am also trying to solve this problem.

Just wire it manually with cables or make such pcb mangopi-header-reroute - EasyEDA open source hardware lab. Just be careful on which side you put the headers

1 Like

Also modify the pins under the re-route pcb to match wm8960 board pins if necessary

Thank you so mach :slightly_smiling_face:

Do I understand correctly that the i2s0 pins are not physically output on the board in the Header 20X2_RPI connector?

The i2s0 is correctly connect to 40 pins GPIO. but not defined in the device tree setting. I try to add it in. but is still not working. any idea?

Try to look at my project GitHub - mamin27/H616-mangopi: DTS file for setting MQ-Quad / MCore-H616 board. I updated OPi.GPIO package for mq-quad board (pin numbering). Now it could be used for managing GPIO pins. I had tested I2C pins and Status LED (blue) for flashing.