[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAHrpEqQUHj6nNDSGVTGPuGJynAS7zG4LwQkHcMfSxrO9-oeTrQ@mail.gmail.com>
Date: Tue, 19 Feb 2013 11:27:48 +0800
From: Frank Li <lznuaa@...il.com>
To: Fabio Estevam <festevam@...il.com>
Cc: Fabio Estevam <fabio.estevam@...escale.com>, davem@...emloft.net,
Frank.Li@...escale.com, shawn.guo@...aro.org, marex@...x.de,
s.hauer@...gutronix.de, netdev@...r.kernel.org
Subject: Re: [PATCH v2] net: fec: Fix the disabling of RX interrupt
2013/2/19 Fabio Estevam <festevam@...il.com>:
> On Mon, Feb 18, 2013 at 11:47 PM, Frank Li <lznuaa@...il.com> wrote:
>
>> This is similar with my first implement.
>
> I checked your original implementation and
> spin_lock_irqsave/spin_unlock_irqrestore was very far apart.
>
>> It just protect irq and init function. Many place write FEC_IMASK directly.
>
> Yes, but the main issue with current code is that it does not clear
> the only rx irq as it should.
The key is Read OR and write need lock.
I try reduce FEC lock.
FEC_IMASK should be two state,
one is FEC_DEFAULT_IMASK, the other is FEC_RX_DISABLED_IMASK.
FEC_RX_DISABLED_IMASK is equal as clean rx irq only.
I will found mx53 to found the real root cause
>
>> I think this issue was caused by enable irq before register irq handler.
>> writel(0, fep->hwp + FEC_IMASK) should fix mx53's problem.
>
> No, it does not solve the issue.
>
> I don't have a mx6q board handy. If you could try this patch and let
> me know if you see any deadlock, it would be nice.
>
> Thanks,
>
> Fabio Estevam
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists