Message ID | 20210528082240.3863991-3-yangyingliang@huawei.com |
---|---|
State | New |
Headers | show |
Series | net: dsa: qca8k: check return value of read functions correctly | expand |
On Fri, 28 May 2021 16:22:40 +0800 Yang Yingliang wrote: > Now we can check qca8k_read() return value correctly, so if > it fails, we need return directly. > > Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> > --- > drivers/net/dsa/qca8k.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c > index a8c274227348..6fe963ba23e8 100644 > --- a/drivers/net/dsa/qca8k.c > +++ b/drivers/net/dsa/qca8k.c > @@ -1200,6 +1200,8 @@ qca8k_phylink_mac_config(struct dsa_switch *ds, int port, unsigned int mode, > > /* Enable/disable SerDes auto-negotiation as necessary */ > ret = qca8k_read(priv, QCA8K_REG_PWS, &val); > + if (ret) > + return; > if (phylink_autoneg_inband(mode)) > val &= ~QCA8K_PWS_SERDES_AEN_DIS; > else > @@ -1208,6 +1210,8 @@ qca8k_phylink_mac_config(struct dsa_switch *ds, int port, unsigned int mode, > > /* Configure the SGMII parameters */ > ret = qca8k_read(priv, QCA8K_REG_SGMII_CTRL, &val); > + if (ret) > + return; > > val |= QCA8K_SGMII_EN_PLL | QCA8K_SGMII_EN_RX | > QCA8K_SGMII_EN_TX | QCA8K_SGMII_EN_SD; You should ignore the return value in the previous patch and add the ret variable here, to avoid the transient build warning.
diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c index a8c274227348..6fe963ba23e8 100644 --- a/drivers/net/dsa/qca8k.c +++ b/drivers/net/dsa/qca8k.c @@ -1200,6 +1200,8 @@ qca8k_phylink_mac_config(struct dsa_switch *ds, int port, unsigned int mode, /* Enable/disable SerDes auto-negotiation as necessary */ ret = qca8k_read(priv, QCA8K_REG_PWS, &val); + if (ret) + return; if (phylink_autoneg_inband(mode)) val &= ~QCA8K_PWS_SERDES_AEN_DIS; else @@ -1208,6 +1210,8 @@ qca8k_phylink_mac_config(struct dsa_switch *ds, int port, unsigned int mode, /* Configure the SGMII parameters */ ret = qca8k_read(priv, QCA8K_REG_SGMII_CTRL, &val); + if (ret) + return; val |= QCA8K_SGMII_EN_PLL | QCA8K_SGMII_EN_RX | QCA8K_SGMII_EN_TX | QCA8K_SGMII_EN_SD;
Now we can check qca8k_read() return value correctly, so if it fails, we need return directly. Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> --- drivers/net/dsa/qca8k.c | 4 ++++ 1 file changed, 4 insertions(+)