Commit a260f080 authored by Claudiu Beznea's avatar Claudiu Beznea Committed by David S. Miller

net: ravb: Get rid of the temporary variable irq

The 4th argument of ravb_setup_irq() is used to save the IRQ number that
will be further used by the driver code. Not all ravb_setup_irqs() calls
need to save the IRQ number. The previous code used to pass a dummy
variable as the 4th argument in case the IRQ is not needed for further
usage. That is not necessary as the code from ravb_setup_irq() can detect
by itself if the IRQ needs to be saved. Thus, get rid of the code that is
not needed.
Reported-by: default avatarSergey Shtylyov <s.shtylyov@omp.ru>
Signed-off-by: default avatarClaudiu Beznea <claudiu.beznea.uj@bp.renesas.com>
Reviewed-by: default avatarSergey Shtylyov <s.shtylyov@omp.ru>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 31f26e4f
......@@ -2743,24 +2743,27 @@ static int ravb_setup_irq(struct ravb_private *priv, const char *irq_name,
struct device *dev = &pdev->dev;
const char *dev_name;
unsigned long flags;
int error;
int error, irq_num;
if (irq_name) {
dev_name = devm_kasprintf(dev, GFP_KERNEL, "%s:%s", ndev->name, ch);
if (!dev_name)
return -ENOMEM;
*irq = platform_get_irq_byname(pdev, irq_name);
irq_num = platform_get_irq_byname(pdev, irq_name);
flags = 0;
} else {
dev_name = ndev->name;
*irq = platform_get_irq(pdev, 0);
irq_num = platform_get_irq(pdev, 0);
flags = IRQF_SHARED;
}
if (*irq < 0)
return *irq;
if (irq_num < 0)
return irq_num;
if (irq)
*irq = irq_num;
error = devm_request_irq(dev, *irq, handler, flags, dev_name, ndev);
error = devm_request_irq(dev, irq_num, handler, flags, dev_name, ndev);
if (error)
netdev_err(ndev, "cannot request IRQ %s\n", dev_name);
......@@ -2772,7 +2775,7 @@ static int ravb_setup_irqs(struct ravb_private *priv)
const struct ravb_hw_info *info = priv->info;
struct net_device *ndev = priv->ndev;
const char *irq_name, *emac_irq_name;
int error, irq;
int error;
if (!info->multi_irqs)
return ravb_setup_irq(priv, NULL, NULL, &ndev->irq, ravb_interrupt);
......@@ -2795,28 +2798,28 @@ static int ravb_setup_irqs(struct ravb_private *priv)
return error;
if (info->err_mgmt_irqs) {
error = ravb_setup_irq(priv, "err_a", "err_a", &irq, ravb_multi_interrupt);
error = ravb_setup_irq(priv, "err_a", "err_a", NULL, ravb_multi_interrupt);
if (error)
return error;
error = ravb_setup_irq(priv, "mgmt_a", "mgmt_a", &irq, ravb_multi_interrupt);
error = ravb_setup_irq(priv, "mgmt_a", "mgmt_a", NULL, ravb_multi_interrupt);
if (error)
return error;
}
error = ravb_setup_irq(priv, "ch0", "ch0:rx_be", &irq, ravb_be_interrupt);
error = ravb_setup_irq(priv, "ch0", "ch0:rx_be", NULL, ravb_be_interrupt);
if (error)
return error;
error = ravb_setup_irq(priv, "ch1", "ch1:rx_nc", &irq, ravb_nc_interrupt);
error = ravb_setup_irq(priv, "ch1", "ch1:rx_nc", NULL, ravb_nc_interrupt);
if (error)
return error;
error = ravb_setup_irq(priv, "ch18", "ch18:tx_be", &irq, ravb_be_interrupt);
error = ravb_setup_irq(priv, "ch18", "ch18:tx_be", NULL, ravb_be_interrupt);
if (error)
return error;
return ravb_setup_irq(priv, "ch19", "ch19:tx_nc", &irq, ravb_nc_interrupt);
return ravb_setup_irq(priv, "ch19", "ch19:tx_nc", NULL, ravb_nc_interrupt);
}
static int ravb_probe(struct platform_device *pdev)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment