realtek: fix link-state interrupt
authorBjørn Mork <bjorn@mork.no>
Sat, 13 Mar 2021 16:45:49 +0000 (17:45 +0100)
committerHauke Mehrtens <hauke@hauke-m.de>
Sun, 18 Apr 2021 10:06:23 +0000 (12:06 +0200)
This bug was the root cause for the failing sfp driver.

Acked-by: Birger Koblitz <mail@birger-koblitz.de>
Signed-off-by: Bjørn Mork <bjorn@mork.no>
(cherry picked from commit b8e473d18c6af2abf0d047247fdbe6d178228ac0)

target/linux/realtek/files-5.4/drivers/net/dsa/rtl83xx/common.c

index 698f2892ea1e263600ce9c7b816ae1880764a0ee..197a96f8ad13b54e14cfc7e85a13c6153b86c026 100644 (file)
@@ -555,7 +555,6 @@ static int __init rtl83xx_sw_probe(struct platform_device *pdev)
        int err = 0, i;
        struct rtl838x_switch_priv *priv;
        struct device *dev = &pdev->dev;
-       u64 irq_mask;
        u64 bpdu_mask;
 
        pr_debug("Probing RTL838X switch device\n");
@@ -650,9 +649,9 @@ static int __init rtl83xx_sw_probe(struct platform_device *pdev)
 
        /* Enable link and media change interrupts. Are the SERDES masks needed? */
        sw_w32_mask(0, 3, priv->r->isr_glb_src);
-       
-       priv->r->set_port_reg_le(irq_mask, priv->r->isr_port_link_sts_chg);
-       priv->r->set_port_reg_le(irq_mask, priv->r->imr_port_link_sts_chg);
+
+       priv->r->set_port_reg_le(priv->irq_mask, priv->r->isr_port_link_sts_chg);
+       priv->r->set_port_reg_le(priv->irq_mask, priv->r->imr_port_link_sts_chg);
 
        priv->link_state_irq = platform_get_irq(pdev, 0);
        pr_info("LINK state irq: %d\n", priv->link_state_irq);