ramips: mt7620: handle request_irq fail in gsw ethernet driver
authorChristian Marangi <ansuelsmth@gmail.com>
Sat, 6 May 2023 20:38:42 +0000 (22:38 +0200)
committerChristian Marangi <ansuelsmth@gmail.com>
Fri, 12 May 2023 01:15:37 +0000 (03:15 +0200)
Handle return from request_irq in gsw ethernet driver.
Fix compilation warning:
drivers/net/ethernet/ralink/gsw_mt7620.c: In function 'mtk_gsw_init':
drivers/net/ethernet/ralink/gsw_mt7620.c:236:17: error: ignoring return value of 'request_irq' declared with attribute 'warn_unused_result' [-Werror=unused-result]
  236 |                 request_irq(gsw->irq, gsw_interrupt_mt7620, 0,
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  237 |                             "gsw", priv);
      |                             ~~~~~~~~~~~~
cc1: all warnings being treated as errors

Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
target/linux/ramips/files/drivers/net/ethernet/ralink/gsw_mt7620.c

index 615544cb1733c7209865e883ec83aa4972cc2878..84b6e305a4f9e3cd6ae18f3d489bd4146cfba5eb 100644 (file)
@@ -197,6 +197,7 @@ int mtk_gsw_init(struct fe_priv *priv)
        struct platform_device *pdev = of_find_device_by_node(np);
        struct mt7620_gsw *gsw;
        const __be32 *id;
+       int ret;
        u8 val;
 
        if (!pdev)
@@ -233,8 +234,12 @@ int mtk_gsw_init(struct fe_priv *priv)
        mt7620_ephy_init(gsw);
 
        if (gsw->irq) {
-               request_irq(gsw->irq, gsw_interrupt_mt7620, 0,
-                           "gsw", priv);
+               ret = request_irq(gsw->irq, gsw_interrupt_mt7620, 0,
+                                 "gsw", priv);
+               if (ret) {
+                       dev_err(&pdev->dev, "Failed to request irq");
+                       return ret;
+               }
                mtk_switch_w32(gsw, ~PORT_IRQ_ST_CHG, GSW_REG_IMR);
        }