[PATCH v2] ARM: dts: ux500: Fix BT+WLAN on Samsung phones

Stephan Gerhold stephan at gerhold.net
Wed Mar 17 16:16:50 GMT 2021


On Wed, Mar 17, 2021 at 04:53:58PM +0100, Linus Walleij wrote:
> On Wed, Mar 17, 2021 at 4:28 PM Stephan Gerhold <stephan at gerhold.net> wrote:
> 
> > According to the schematics for samsung-golden:
> >   - GPIO215 goes to WL_REG_ON of BCM4334
> >   - GPIO222 goes to BT_REG_ON of BCM4334
> 
> Yes it appears you are right...
> 
> This is in conflict with the source code in the vendor tree:
> board-golden-pins.c:
> 
>         GPIO215_GPIO            | PIN_OUTPUT_LOW,       /* WLAN_RST_N */
>         GPIO222_GPIO            | PIN_OUTPUT_LOW,       /* BT_VREG_EN */
> 
> However the BCM4334 does not have appear to have
> any signal named WLAN_RST_N.
> 
> So I suspect a copy/paste error from Janice, which might
> need this because of differences between BCM4330 and
> BCM4334.
> 

Huh, so it gets more confusing: unlike BCM4334, the BCM4330 datasheet [2]
mentions a BT_RST_N but not a WLAN_RST_N... :O

[2]: https://www.cypress.com/file/298676/download

> However another part of the patch is still needed because
> GPIO215 is default initilized as low:
> 
>                 wlan_en_default: wlan_en_default {
>                         golden_cfg1 {
>                                 pins = "GPIO215_AH13";  /* WLAN_EN */
>                                 ste,config = <&gpio_out_lo>;
>                         };
>                 };
> 
> It needs to be high, or the SDIO will not enumerate unless
> someone powers on the Bluetooth by chance. (The driver
> probes after the SDIO card is detected ... catch 22.)
> 

At least on samsung-golden, GPIO215 belongs to the regulator-wl-reg-on,
which is the vmmc-supply for the SDIO card. I would expect the MMC core
to power that up before scanning for SDIO cards.

> Also IMO GPIO 222 should be modeled as a regulator and
> not assigned to "shutdown-gpios", which could be a separate
> patch. The whole notion of "shutdown-gpios" seems backward
> as the driver handles regulators just fine.
> 

Yeah I suppose it might be better modelled as a regulator. But I guess
in that case we would need support for another regulator.
The "vbat" and "vddio" are likely supposed to point to the "BT_VDDBAT"
and "VDDIO" input pins of the BCM4334.

Stephan



More information about the linux-arm-kernel mailing list