Просмотр исходного кода

realtek: fix link-state interrupt

This bug was the root cause for the failing sfp driver.

Acked-by: Birger Koblitz <[email protected]>
Signed-off-by: Bjørn Mork <[email protected]>
Bjørn Mork 4 лет назад
Родитель
Сommit
b8e473d18c
1 измененных файлов с 3 добавлено и 4 удалено
  1. 3 4
      target/linux/realtek/files-5.4/drivers/net/dsa/rtl83xx/common.c

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

@@ -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);