These steps helped me debug the overlay and finally, it shows Loaded overlay max98090.dtbo but show errors in the interrupt part, it shows pin 55 for PCM/I2S IRQ in BCM2711 datasheet https://datasheets.raspberrypi.com/bcm2 ... herals.pdf in Pg-88. It show errors when I writeyou should have a look at your kernel logs.
even if you're able to compile the overlay will it load?
add below to your config.txtlook at your kernel logsCode:
dtdebug=1
Code:
raspinfo | pastebinit
Code:
interrupts = <55 2>;
Code:
[ 7.995702] bcm2835_audio bcm2835_audio: card created with 8 channels[ 8.031619] gpio gpiochip0: (pinctrl-bcm2711): gpiochip_lock_as_irq: cannot get GPIO direction[ 8.031650] gpio gpiochip0: (pinctrl-bcm2711): unable to lock HW IRQ 2 for IRQ[ 8.031663] genirq: Failed to request resources for max98090_interrupt (irq 55) on irqchip pinctrl-bcm2835[ 8.031773] max98090 1-0010: request_irq failed: -22[ 8.031907] max98090: probe of 1-0010 failed with error -22
and also showed I2S sync error! when pin no is written 55 (missed to copy).
On changing 55 to 79 as in https://forum.digikey.com/t/raspberry-p ... lave/13320
Code:
interrupts = <79 2>;
Code:
[ 8.939042] max98090 1-0010: request_irq failed: -22[ 8.939177] max98090: probe of 1-0010 failed with error -22
I'm pasting my DTS file here,
Code:
/dts-v1/;/plugin/;/ { compatible = "brcm,bcm2835"; fragment@0 { target = <&i2c_arm>; __overlay__ { #address-cells = <1>; #size-cells = <0>; max98090: audio-codec@10 { compatible = "maxim,max98090"; reg = <0x10>; interrupt-parent = <&gpio>;// gpio interrupts = <79 2>; // Adjust GPIO as needed clocks = <&i2s>; clock-names = "mclk"; #sound-dai-cells = <0>; maxim,dmic-freq = <2500000>; // Default digital mic frequency maxim,micbias = <3>; // Micbias voltage set to 2.8V }; }; }; fragment@1 { target = <&i2s>; __overlay__ { status = "okay"; }; }; fragment@2 { target = <&sound>; __overlay__ { status = "okay"; compatible = "simple-audio-card"; simple-audio-card,format = "i2s"; simple-audio-card,bitclock-master = <&dailink_master>; simple-audio-card,frame-master = <&dailink_master>; simple-audio-card,cpu { sound-dai = <&i2s>; }; dailink_master: simple-audio-card,codec { sound-dai = <&max98090>; }; }; };};
Statistics: Posted by electronics_enthu — Mon Nov 11, 2024 12:29 pm