From: Robert Marko <robert.marko@sartura.hr>
Date: Thu, 4 Mar 2021 11:38:31 +0000 (+0100)
Subject: ipq40xx: net: phy: qca807x: fix GPIO driver
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=7f2d9ccd09a1d3034aaf9c943747fc1631da5cac;p=openwrt%2Fstaging%2Fblogic.git

ipq40xx: net: phy: qca807x: fix GPIO driver

While rebasing into setting bits instead of magic values,
I accidentally forgot to actually set the force bit.

Without it using the pins as GPIO-s did not actually work.

Fixes: b5c93ed ("ipq40xx: add Qualcomm QCA807x driver")

Signed-off-by: Robert Marko <robert.marko@sartura.hr>
---

diff --git a/target/linux/ipq40xx/files/drivers/net/phy/qca807x.c b/target/linux/ipq40xx/files/drivers/net/phy/qca807x.c
index 10d38d94a65c..16d7a80455ef 100644
--- a/target/linux/ipq40xx/files/drivers/net/phy/qca807x.c
+++ b/target/linux/ipq40xx/files/drivers/net/phy/qca807x.c
@@ -356,6 +356,7 @@ static void qca807x_gpio_set(struct gpio_chip *gc, unsigned int offset, int valu
 
 	val = phy_read_mmd(priv->phy, MDIO_MMD_AN, qca807x_gpio_get_reg(offset));
 	val &= ~QCA807X_GPIO_FORCE_MODE_MASK;
+	val |= QCA807X_GPIO_FORCE_EN;
 	val |= FIELD_PREP(QCA807X_GPIO_FORCE_MODE_MASK, value);
 
 	phy_write_mmd(priv->phy, MDIO_MMD_AN, qca807x_gpio_get_reg(offset), val);