-
Notifications
You must be signed in to change notification settings - Fork 116
Description
Hey,
I tried to fix this with gemini all day, so I asked him to summerize it in order to describe this problem as good as possible. Maybe i forgot to add sometype of audio file when i was installing this rom. I am genuinely lost, please help. Thanks!
Subject: [Bug] ABOX IOMMU Mapping Failure - No USB Audio Output (Card 3)
Device: Samsung Galaxy S20 (Exynos) ROM: One UI 7 Port Kernel: ExtremeKRNL Hardware: Apple USB-C EarPods (USB Audio Class 2.0)
Problem Description: USB-C audio devices are correctly detected by the kernel and registered as Card 3, but there is no audio output. The system fails to transition the PCM stream from the PREPARED state to the RUNNING state. This issue appears to be a kernel-level IOMMU/DMA mapping failure within the ABOX driver.
Technical Analysis:
Kernel IOMMU Fault: The dmesg logs show a consistent failure when the ABOX driver attempts to map the memory address for the USB stream: "abox_iommu_map(0xc0003000): no virtual address"
ALSA State Machine Hang: Inspection of /proc/asound/card3/pcm0p/sub0/status during playback shows the stream is stuck:
State: PREPARED
hw_ptr: 0 (The hardware pointer never increments)
appl_ptr: 80 (The application has pushed data to the buffer, but the hardware has not consumed it)
trigger_time: 0.000000000 (The hardware clock never started)
Hardware Parameters (hw_params): The system is using the correct native parameters for the Apple DAC, ruling out a sample rate mismatch:
Access: RW_INTERLEAVED
Format: S24_3LE
Channels: 2
Rate: 48000 Hz
Period size: 480
Buffer size: 1920
Driver Context:
ABOX firmware is loaded (calliope_version: TWB0).
The issue persists even with SELinux set to Permissive (setenforce 0).
A hardware reset via /sys/devices/platform/18c50000.abox/reset succeeds but does not resolve the mapping failure.
Suspected Cause: There appears to be a mismatch between the One UI 7 Audio HAL and the kernel regarding IOMMU domain configurations or reserved memory regions. The ABOX is attempting to access a DMA memory region that hasn't been properly mapped in the kernel's virtual address space for the ABOX peripheral, preventing the hardware from triggering the playback start.
Steps to Reproduce:
Connect Apple USB-C EarPods to a Galaxy S20 running One UI 7 port with ExtremeKRNL.
Attempt to play any media (YouTube, Music, etc.).
Observe that Card 3 is detected but remains silent.
Check dmesg for "abox_iommu_map" errors.