[LEDE-DEV] [PATCH 2/3] brcm47xx: resolve GPIO conflict for WRT54GSv1
Hauke Mehrtens
hauke at hauke-m.de
Fri Jun 23 13:24:50 PDT 2017
On 05/18/2017 09:49 PM, Mirko Parthey wrote:
> On the Linksys WRT54GSv1, the adm6996 switch driver and the
> gpio_button_hotplug module both claim GPIO 6, which is connected to the
> Reset button. When the switch driver's request wins, the Reset button
> cannot work. This makes it impossible to enter failsafe mode without a
> serial console.
>
> Stop requesting the "adm_rc" GPIO in the switch driver, since it is not
> used anywhere.
>
> Fixes FS#792.
>
> Signed-off-by: Mirko Parthey <mirko.parthey at web.de>
> ---
> target/linux/generic/files/drivers/net/phy/adm6996.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/target/linux/generic/files/drivers/net/phy/adm6996.c b/target/linux/generic/files/drivers/net/phy/adm6996.c
> index 25776b836651..0a1b303ab1c0 100644
> --- a/target/linux/generic/files/drivers/net/phy/adm6996.c
> +++ b/target/linux/generic/files/drivers/net/phy/adm6996.c
> @@ -1154,12 +1154,13 @@ static int adm6996_gpio_probe(struct platform_device *pdev)
> ret = devm_gpio_request(&pdev->dev, priv->eedi, "adm_eedi");
> if (ret)
> return ret;
> - ret = devm_gpio_request(&pdev->dev, priv->eerc, "adm_eerc");
> - if (ret)
> - return ret;
Could you also remove the references of eerc from the other places of
the code.
> ret = devm_gpio_request(&pdev->dev, priv->eesk, "adm_eesk");
> if (ret)
> return ret;
> + /*
> + * We do not request the "adm_rc" GPIO here. The driver does not use it,
Do you mean adm_eerc instead of adm_rc?
> + * and it conflicts with the Reset button GPIO on the Linksys WRT54GSv1.
> + */
>
> ret = adm6996_switch_init(priv, dev_name(&pdev->dev), NULL);
> if (ret < 0)
>
More information about the Lede-dev
mailing list