On 25. 09. 19 2:47, Andrew Lunn wrote:
The CPU port does not have a PHY connected to it. So calling
phy_support_asym_pause() results in an Opps. As with other DSA
drivers, add a guard that the port is a user port.

Reported-by: Michal Vokáč <michal.vo...@ysoft.com>

Thank you for the prompt fix Andrew!

Tested-by: Michal Vokáč <michal.vo...@ysoft.com>

Fixes: 0394a63acfe2 ("net: dsa: enable and disable all ports")
Signed-off-by: Andrew Lunn <and...@lunn.ch>
---
  drivers/net/dsa/qca8k.c | 3 +++
  1 file changed, 3 insertions(+)

diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c
index 16f15c93a102..684aa51684db 100644
--- a/drivers/net/dsa/qca8k.c
+++ b/drivers/net/dsa/qca8k.c
@@ -936,6 +936,9 @@ qca8k_port_enable(struct dsa_switch *ds, int port,
  {
        struct qca8k_priv *priv = (struct qca8k_priv *)ds->priv;
+ if (!dsa_is_user_port(ds, port))
+               return 0;
+
        qca8k_port_set_status(priv, port, 1);
        priv->port_sts[port].enabled = 1;

Reply via email to