Message ID | 1386313107-8597-1-git-send-email-mugunthanvnm@ti.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
From: Mugunthan V N <mugunthanvnm@ti.com> Date: Fri, 6 Dec 2013 12:28:27 +0530 > From: George Cherian <george.cherian@ti.com> > > Use netdev_name while requesting irq so that eth* name is shown > in /proc/interrupts. Previously it was showing device name as (null) > for cpsw interrupts. For using netdev_name register_netdev and then > call devm_request_irq. > > Signed-off-by: George Cherian <george.cherian@ti.com> > Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> Why is it showing "(null)" as the name, is dev_name() not working properly for this device? The only change you are making is passing netdev_name() instead of dev_name(). dev_name() giving NULL doesn't make much sense to me. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Saturday 07 December 2013 02:16 AM, David Miller wrote: > From: Mugunthan V N <mugunthanvnm@ti.com> > Date: Fri, 6 Dec 2013 12:28:27 +0530 > >> From: George Cherian <george.cherian@ti.com> >> >> Use netdev_name while requesting irq so that eth* name is shown >> in /proc/interrupts. Previously it was showing device name as (null) >> for cpsw interrupts. For using netdev_name register_netdev and then >> call devm_request_irq. >> >> Signed-off-by: George Cherian <george.cherian@ti.com> >> Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com> > Why is it showing "(null)" as the name, is dev_name() not working > properly for this device? > > The only change you are making is passing netdev_name() instead > of dev_name(). dev_name() giving NULL doesn't make much sense > to me. priv->dev is a network device which is registered to network stack after request interrupt, so dev name is null, with this patch request interrupt is moved below after registering the network device with the network Initial driver was using DT node name for the interrupts, but with the devm changes by Daniel Mack in commit 50a5fb068 it was changed to ndev name which introduced this issue. Regards Mugunthan V N -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: Mugunthan V N <mugunthanvnm@ti.com> Date: Mon, 9 Dec 2013 14:59:05 +0530 > commit 50a5fb068 This commit doesn't appear in any tree. And any change which makes a real "struct device" return NULL for dev_name() is broken. I'm not applying this patch, you have completely failed to provide any information necessary to support and justify your change. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tuesday 10 December 2013 06:27 AM, David Miller wrote: > From: Mugunthan V N <mugunthanvnm@ti.com> > Date: Mon, 9 Dec 2013 14:59:05 +0530 > >> commit 50a5fb068 > This commit doesn't appear in any tree. > > And any change which makes a real "struct device" return NULL > for dev_name() is broken. > > I'm not applying this patch, you have completely failed to > provide any information necessary to support and justify > your change. Oops, the commit ID is wrong my mistake, since you have dropped this patch, I will submit the patch again with more details. Regards Mugunthan V N -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/ti/cpsw.c b/drivers/net/ethernet/ti/cpsw.c index a91f0c9..61ae17f 100644 --- a/drivers/net/ethernet/ti/cpsw.c +++ b/drivers/net/ethernet/ti/cpsw.c @@ -2090,19 +2090,6 @@ static int cpsw_probe(struct platform_device *pdev) goto clean_ale_ret; } - while ((res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, k))) { - for (i = res->start; i <= res->end; i++) { - if (devm_request_irq(&pdev->dev, i, cpsw_interrupt, 0, - dev_name(priv->dev), priv)) { - dev_err(priv->dev, "error attaching irq\n"); - goto clean_ale_ret; - } - priv->irqs_table[k] = i; - priv->num_irqs = k + 1; - } - k++; - } - ndev->features |= NETIF_F_HW_VLAN_CTAG_FILTER; ndev->netdev_ops = &cpsw_netdev_ops; @@ -2118,6 +2105,19 @@ static int cpsw_probe(struct platform_device *pdev) goto clean_ale_ret; } + while ((res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, k))) { + for (i = res->start; i <= res->end; i++) { + if (devm_request_irq(&pdev->dev, i, cpsw_interrupt, 0, + netdev_name(ndev), priv)) { + dev_err(priv->dev, "error attaching irq\n"); + goto clean_ale_ret; + } + priv->irqs_table[k] = i; + priv->num_irqs = k + 1; + } + k++; + } + if (cpts_register(&pdev->dev, priv->cpts, data->cpts_clock_mult, data->cpts_clock_shift)) dev_err(priv->dev, "error registering cpts device\n");