Skip to content

Commit

Permalink
ARM: davinci: da850-evm: use GPIO hogs instead of the legacy API
Browse files Browse the repository at this point in the history
In order to drop the hard-coded GPIO base values from the davinci GPIO
driver's platform data, we first need to get rid of all calls to the
legacy GPIO functions. Convert the mdio configuration to hogging the
relevant GPIO line in the da850-evm board file.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
Signed-off-by: Sekhar Nori <nsekhar@ti.com>
  • Loading branch information
Bartosz Golaszewski authored and Sekhar Nori committed Feb 8, 2019
1 parent e430685 commit ca107e3
Showing 1 changed file with 14 additions and 8 deletions.
22 changes: 14 additions & 8 deletions arch/arm/mach-davinci/board-da850-evm.c
Original file line number Diff line number Diff line change
Expand Up @@ -1038,6 +1038,17 @@ static const short da850_evm_rmii_pins[] = {
-1
};

static struct gpiod_hog da850_evm_emac_gpio_hogs[] = {
{
.chip_label = "davinci_gpio",
.chip_hwnum = DA850_MII_MDIO_CLKEN_PIN,
.line_name = "mdio_clk_en",
.lflags = 0,
/* dflags set in da850_evm_config_emac() */
},
{ }
};

static int __init da850_evm_config_emac(void)
{
void __iomem *cfg_chip3_base;
Expand Down Expand Up @@ -1076,14 +1087,9 @@ static int __init da850_evm_config_emac(void)
if (ret)
pr_warn("%s:GPIO(2,6) mux setup failed\n", __func__);

ret = gpio_request(DA850_MII_MDIO_CLKEN_PIN, "mdio_clk_en");
if (ret) {
pr_warn("Cannot open GPIO %d\n", DA850_MII_MDIO_CLKEN_PIN);
return ret;
}

/* Enable/Disable MII MDIO clock */
gpio_direction_output(DA850_MII_MDIO_CLKEN_PIN, rmii_en);
da850_evm_emac_gpio_hogs[0].dflags = rmii_en ? GPIOD_OUT_HIGH
: GPIOD_OUT_LOW;
gpiod_add_hogs(da850_evm_emac_gpio_hogs);

soc_info->emac_pdata->phy_id = DA850_EVM_PHY_ID;

Expand Down

0 comments on commit ca107e3

Please sign in to comment.