[PATCH] arm64: dts: rockchip: Fix audio-supply for ROCK Pi 4

FUKAUMI Naoki naoki at radxa.com
Fri Nov 28 19:40:10 PST 2025


Hi Alex,

On 11/29/25 10:36, Alex Bee wrote:
> Hi,
> 
> Am 28.11.25 um 13:33 schrieb Quentin Schulz:
>> Hi Naoki,
>>
>> On 11/28/25 1:09 PM, FUKAUMI Naoki wrote:
>>> Hi Quentin,
>>>
>>> On 11/28/25 19:24, Quentin Schulz wrote:
>>>> Hi Naoki,
>>>>
>>>> On 11/27/25 4:20 PM, Quentin Schulz wrote:
>>>>> Hi Naoki,
>>>>>
>>>>> On 10/27/25 1:52 AM, FUKAUMI Naoki wrote:
>>>>>> This reverts commit 8240e87f16d17 ("arm64: dts: rockchip: fix
>>>>>> audio-supply for Rock Pi 4").
>>>>>>
>>>>>> Fix the APIO5_VDD power supply to vcc_3v0 as per the schematics[1][2]
>>>>>> [3][4][5].
>>>>>>
>>>>>> This fixes the SPI-NOR flash probe failure when the blue LED is 
>>>>>> on[6],
>>>>>> and the garbled serial console output on Linux.
>>>>>>
>>>>>> The ES8316 headphone and microphone are confirmed to work correctly
>>>>>> after this fix.
>>>>>>
>>>>
>>>> Please test the ES8316 works when booting Linux from a U-Boot where 
>>>> ROCKCHIP_IODOMAIN and SPL_ROCKCHIP_IODOMAIN is *disabled*.
>>>
>>> I tried below, and confirmed that ES8316 is still working.
>>>
>>> diff --git a/configs/rock-pi-4-rk3399_defconfig b/configs/rock-pi-4- 
>>> rk3399_defconfig
>>> index 219f42bc7d4..276ca961c10 100644
>>> --- a/configs/rock-pi-4-rk3399_defconfig
>>> +++ b/configs/rock-pi-4-rk3399_defconfig
>>> @@ -53,6 +53,7 @@ CONFIG_ROCKCHIP_GPIO=y
>>>   CONFIG_SYS_I2C_ROCKCHIP=y
>>>   CONFIG_LED=y
>>>   CONFIG_LED_GPIO=y
>>> +# CONFIG_ROCKCHIP_IODOMAIN is not set
>>>   CONFIG_MMC_DW=y
>>>   CONFIG_MMC_DW_ROCKCHIP=y
>>>   CONFIG_MMC_SDHCI=y
>>> diff --git a/dts/upstream/src/arm64/rockchip/rk3399-rock-pi-4.dtsi b/ 
>>> dts/upstream/src/arm64/rockchip/rk3399-rock-pi-4.dtsi
>>> index 046dbe32901..c734f7824c0 100644
>>> --- a/dts/upstream/src/arm64/rockchip/rk3399-rock-pi-4.dtsi
>>> +++ b/dts/upstream/src/arm64/rockchip/rk3399-rock-pi-4.dtsi
>>> @@ -51,7 +51,7 @@
>>>
>>>          sound: sound {
>>>                  compatible = "audio-graph-card";
>>> -               label = "Analog";
>>> +               label = "rk3588-es8316";
>>>                  dais = <&i2s0_p0>;
>>>          };
>>>
>>> @@ -516,7 +516,7 @@
>>>   };
>>>
>>>   &io_domains {
>>> -       audio-supply = <&vcca1v8_codec>;
>>> +       audio-supply = <&vcc_3v0>;
>>>          bt656-supply = <&vcc_3v0>;
>>>          gpio1830-supply = <&vcc_3v0>;
>>>          sdmmc-supply = <&vcc_sdio>;
>>>
>>> Notes:
>>> - SPL_ROCKCHIP_IODOMAIN is not set by default
>>> - I don't understand alsa ucm2 ;) so I modified /sound/label
>>>
>>
>> Thanks for testing. Let's hope the original issue doesn't appear for 
>> *some* boots (depending on probe order or some timing for example). 
>> For now I guess this will do. Adding Alex in Cc maybe they are able to 
>> reproduce the issue they had 4 years ago with their board?
>>
>> Cheers,
>> Quentin
> 
> 
> I can confirm that with this change analog audio is _broken_ for me again.
> 
> I never had any issues with uart2 or spi - neither in kernel nor in u-boot
> (also not after io-domain driver has been added to u-boot for RK3399).
> Given this commit is now ~4 years in tree  I'd guess that someone else
> would have reported that issue earlier. It's correct that this information
> came from a "Power Domain Map"  which you call "non schematic" and the
> "schematic part"  says something else -  it would have been indeed be
> better to have clearer information.

We can confirm that "schematic part" is correct.

> Anyway: I can't neither see how this change should relate to uart2 or spi
> which are both in different io-domain, nor why it would happen only in
> u-boot. My strongest guess is, that radxa changed something along the way.

I'm sorry, I can't explain the relationship between UART2/SPI and APIO5.

However, I had been seeing "the garbled serial console output on Linux" 
for a long time, and couldn't figure out how to fix it.

What version of your ROCK Pi 4 board do you have?

Best regards,

--
FUKAUMI Naoki
Radxa Computer (Shenzhen) Co., Ltd.

> Or maybe it would be worth to double-check the io-domain driver in u-boot.
> 
> 
> Regards,
> Alex
> 
> 
> 





More information about the Linux-rockchip mailing list