Jump to content

Recommended Posts

Posted

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:

  1. Verified physical wiring (BCLK/LRC/DIN, 5V/GND).
  2. Updated to the latest nightly build (25.5.0-trunk.147).
  3. Added overlays=i2s, param_i2s=on to /boot/armbianEnv.txt.
  4. Tried manual driver load: modprobe sun8i-i2s (no effect).

 

Questions:

  1. Is I2S support for Allwinner H618 available in kernel 6.6.75?
  2. Are there plans to add sun50i-h618-i2s.dtbo in future releases?
  3. Is there a workaround to enable I2S on H618 (e.g., custom DTB)?
  4. 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!

Posted
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.

Posted
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" },

 

Posted
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:

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines