[EMAIL PROTECTED] writes:
> From: Chaithrika U S <[EMAIL PROTECTED]>
>
> Disables the DM646x EMAC interrupts in the initialization of EMAC driver.
> DM646x EMAC interrupts were not being freed correctly on EMAC stop, this has
> been resolved in EMAC device stop function.
>
> Signed-off-by: Chaithrika U S <[EMAIL PROTECTED]>
Have you validated this change on dm644x also?
For shared drivers, it will be helpful in the future if the patch
description also describes which platforms the patch was tested on.
Kevin
> ---
> drivers/net/davinci_emac.c | 12 ++++++++++--
> 1 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
> index 62516c6..3e44232 100644
> --- a/drivers/net/davinci_emac.c
> +++ b/drivers/net/davinci_emac.c
> @@ -2252,7 +2252,7 @@ static int emac_hw_enable(struct emac_priv *priv)
> cpu_relax();
>
> /* Disable interrupt & Set pacing for more interrupts initially */
> - emac_ctrl_write(EMAC_CTRL_EWCTL, 0x0);
> + emac_int_disable(priv);
>
> /* Set speed and duplex mode */
> priv->duplex = EMAC_DUPLEX_UNKNOWN;
> @@ -2603,6 +2603,9 @@ rollback:
> */
> static int emac_dev_stop(struct net_device *ndev)
> {
> + struct resource *res;
> + int i = 0;
> + int irq_num;
> struct emac_priv *priv = netdev_priv(ndev);
>
> /* inform the upper layers. */
> @@ -2622,7 +2625,12 @@ static int emac_dev_stop(struct net_device *ndev)
> emac_write(EMAC_SOFTRESET, 1);
>
> /* Free IRQ */
> - free_irq(ndev->irq, priv->ndev);
> + while ((res = platform_get_resource(priv->pdev, IORESOURCE_IRQ, i))) {
> + for (irq_num = res->start; irq_num <= res->end; irq_num++)
> + free_irq(irq_num, priv->ndev);
> + i++;
> + }
> +
> if (netif_msg_drv(priv))
> dev_notice(EMAC_DEV, "DaVinci EMAC: %s stopped\n", ndev->name);
>
> --
> 1.5.4.1
>
> _______________________________________________
> Davinci-linux-open-source mailing list
> [email protected]
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source