Alex Dorokhin Posted March 3 Posted March 3 Armbianmonitor: https://paste.next.armbian.com/egohivineg Hardware: Board: Orange Pi Zero 2W (Allwinner H618) Audio Module: MAX98357A (I2S) Connections: BCLK → PI13 (Pin 7) LRC/WS → PI14 (Pin 16) DIN → PI15 (Pin 31) 5V/GND → Properly connected Software: Armbian Version: 25.5.0-trunk.147 (nightly) Kernel: 6.6.75-current-sunxi64 Configuration: /boot/armbianEnv.txt: overlay_prefix=sun50i-h618 overlays=i2s param_i2s=on Problem: No sound output via MAX98357A. aplay -l returns "no soundcards found". dmesg | grep i2s shows no output, indicating the I2S driver is not loaded. Missing I2S overlay: Checked /boot/dtb/allwinner/overlay/ — no sun50i-h618-i2s.dtbo (only I2C overlays are present). Loaded sound modules: Only snd_soc_hdmi_codec (HDMI audio). Steps Taken: Verified physical wiring (BCLK/LRC/DIN, 5V/GND). Updated to the latest nightly build (25.5.0-trunk.147). Added overlays=i2s, param_i2s=on to /boot/armbianEnv.txt. Tried manual driver load: modprobe sun8i-i2s (no effect). Questions: Is I2S support for Allwinner H618 available in kernel 6.6.75? Are there plans to add sun50i-h618-i2s.dtbo in future releases? Is there a workaround to enable I2S on H618 (e.g., custom DTB)? Would upgrading to kernel 6.7+ resolve this? Diagnostics: uname -a: Linux orangepizero2w 6.6.75-current-sunxi64 #1 SMP Sat Feb 1 17:37:57 UTC 2025 aarch64 GNU/Linux cat /etc/armbian-release: VERSION=25.5.0-trunk.147 BRANCH=current BOARD=orangepizero2w dmesg | grep -i i2s: No output. Request: Any guidance or patches to enable I2S on H618 would be greatly appreciated. Thank you! 0 Quote
Werner Posted March 3 Posted March 3 10 minutes ago, kris777 said: i2s doesn't work on my OrangePi lite either...oops both lite and zero 2w have nothing in common besides the name ingredient orange. I suggest to create a individual topic for that one and dont forget providing proper logs. "doesnt work" is probably the worst possible issue description. 0 Quote
going Posted March 3 Posted March 3 55 минут назад, Alex Dorokhin сказал: No sound output via MAX98357A. Probably there should be a driver for this device in the kernel. For 6.12.16: linux-sf> grep -nr 'compatible = "maxim,max9' drivers/media/* drivers/staging/media/* drivers/media/i2c/max9286.c:1666: { .compatible = "maxim,max9286" }, drivers/media/i2c/max96714.c:1006: { .compatible = "maxim,max96714f" }, drivers/media/i2c/max96717.c:1085: { .compatible = "maxim,max96717f" }, drivers/staging/media/max96712/max96712.c:465: { .compatible = "maxim,max96712" }, 0 Quote
Alex Dorokhin Posted March 3 Author Posted March 3 11 минут назад, going сказал: Probably there should be a driver for this device in the kernel. Thank you for investigating the driver support for the MAX98357A! However, the absence of maxim,max98357a in the kernel drivers is expected behavior. Here’s why: The MAX98357A is a "dumb" I2S amplifier Unlike other Maxim devices (e.g., MAX9286 for cameras), the MAX98357A does not require a dedicated kernel driver. It works as a raw I2S-to-analog converter and relies on the I2S interface itself, configured via ALSA and the SoC’s I2S driver. The real issue is I2S driver support for Allwinner H618 For the MAX98357A to work, the I2S controller driver (e.g., sun8i-i2s) must be enabled in the kernel. In the OP’s case (kernel 6.6.75), this driver is missing for the H618. Here’s how to fix it: 0 Quote
going Posted March 4 Posted March 4 22 часа назад, Alex Dorokhin сказал: Unlike other Maxim devices (e.g., MAX9286 for cameras), the MAX98357A does not require a dedicated kernel driver. It works as a raw I2S-to-analog converter and relies on the I2S interface itself, configured via ALSA and the SoC’s I2S driver. The kernel has a driver for i2s: sound/soc/sunxi/sun4i-i2s.c It works for the h6 processor. Try adding the line compatible = "allwinner,sun50i-h6-i2s" to the DTS node so that the driver can be called. This driver may also work for the h618. 0 Quote
itsdikey Posted June 11 Posted June 11 Did you make any progress with this? Also looking to build something with I2S. 0 Quote
Totof le Belge Posted August 4 Posted August 4 Hi all I2s work on orangepi zero 2w with the i2s0 pin, pi0, pi1, pi2, pi3 and pi4 You Need to apply an overlay to activated it on the device tree and choose some clock I succeed to have sound with a Dac PCM5102A Cordialy 0 Quote
subhan Posted Saturday at 05:35 PM Posted Saturday at 05:35 PM “Looks like I2S support for the H618 isn’t in the current overlays yet — you may need a custom DTB or wait for kernel updates. Checking mainline Linux patches for sun50i-h618-i2s could be the next step.” 0 Quote
Totof le Belge Posted yesterday at 05:21 AM Posted yesterday at 05:21 AM (edited) Hi subhan i don't wait kernel update , i just use a script who create a user-overlay who enable the sound on the OPI zero 2w via HDMI , i2S via the 40 pin hat or jack connector via the expansion board and the µc is a H618 In fact the main board except for HDMI have no output for sound , so i think it's better to stay with a user-overlay ☺️ Edited yesterday at 05:22 AM by Totof le Belge 0 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.