On 06/17/2014 04:54 PM, Nicolas Ferre wrote:
Hi Nicolas,
On 17/06/2014 05:39, Jongsung Kim :
quoted
On 06/17/2014 06:28 AM, Sören Brinkmann wrote:
quoted
Shouldn't it be sufficient to replace 'MACB_BIT(RCOMP) with 'MACB_RX_INT_FLAGS'
to clear all the RX IRQ flags.
I'm afraid not.
You know, this driver initially targeted only GEMs configured with "gem_irq_clear_read."
For this implementation of GEM, the ISR is automatically cleared by reading. The driver
was designed to operate with the value read from ISR, not with the ISR itself.
However, there are other GEMs configured without "gem_irq_clear_read," people like you
and I working with. To support them, they insert similar codes conditionally clearing
the ISR here and there. Now they are found at 6 places. Not enough yet. Do you want to
insert another at the end of macb_reset_hw..? Maybe not.
Can't we separate a bit more the implementations of "clear on read" and
"clear on write" so that we do not spread the tests that you are talking
about all over the place and slower the driver's hot paths?
I see. I'll revise my patch. Thank you for your advice.
Regards,
Jongsung