Re: [PATCH v1] arm64: dts: rk3399: i2s: switch BCLK to GPIO

From: Brian Norris
Date: Thu Jul 14 2022 - 14:14:57 EST


On Fri, Jul 8, 2022 at 1:07 AM Judy Hsiao <judyhsiao@xxxxxxxxxxxx> wrote:
>
> We discoverd that the state of BCLK on, LRCLK off and SD_MODE on

super-nit: s/discoverd/discovered/

(If this is the only issue, perhaps Heiko can fix that when applying.)

> may cause the speaker melting issue. Removing LRCLK while BCLK
> is present can cause unexpected output behavior including a large
> DC output voltage as described in the Max98357a datasheet.
>
> In order to:
> 1. prevent BCLK from turning on by other component.
> 2. keep BCLK and LRCLK being present at the same time
>
> This patch adjusts the device tree to allow BCLK to switch
> to GPIO func before LRCLK output, and switch back during
> LRCLK is output.
>
> Signed-off-by: Judy Hsiao <judyhsiao@xxxxxxxxxxxx>

IIUC, it's not guaranteed everyone is using max98357a on this I2S
channel, but I suppose this change is still safe anyway? Or if this is
expected only for Gru-related boards, we could override the i2s node
settings in rk3399-gru.dtsi or similar.

Anyway, I think this is right:

Reviewed-by: Brian Norris <briannorris@xxxxxxxxxxxx>