[PATCH] powerpc/cpm2 Fix set interrupt type

Kumar Gala galak at kernel.crashing.org
Wed Jan 28 12:16:16 EST 2009


On Jan 27, 2009, at 12:14 PM, Anton Vorontsov wrote:

> On Tue, Jan 27, 2009 at 08:31:16AM -0600, Kumar Gala wrote:
>>
>> On Jan 27, 2009, at 2:44 AM, paulfax wrote:
>>
>>> This is a simple change to correct problems when using  
>>> set_irq_type on
>>> platforms using CPM2.
>>> This code correct the problem on most platform but still fails on  
>>> 8272
>>> derived platforms for some interrupts.
>>> On 8272 PC2 & 3 are missing and PC 23 & 29 are added, which this  
>>> patch
>>> does not address.
>
> This is the same as in MPC8555.

I guess I'm concerned about Paul's comments related to 8272 still  
failing and the patch not addressing PC2/3.

>>> Signed-off-by: Paul Bilke <paul at conspiracy.net>
>>> ---
>>
>> Anton,
>>
>> Is this something you can review
>
> Sure. According to MPC8555 and MPC8272 reference manuals,
> current code indeed has the issue, and the patch correctly
> fixes it. SIEXR register map looks like this (bits are in
> big-endian numbering scheme):
>
> [0:1] - PC0..PC1
> [2:13] - PC4..PC15
> [14:15] - PC23 and PC29
>
> Let's look into fixed version, assuming we got src 48 (PC29):
>
> edibit = (31 - (CPM2_IRQ_PORTC0 - src));
> edibit = (31 - (63 - 48)) = 16
>
> 1 << 16 points to PC29 (bit 15 in big-endian bit numbering scheme),
> just as it should be.
>
> The same code should work for MPC8560 too (where there are no
> PC23 & PC29, but PC2 and PC3).
>
>> and look into the 8272 issue?
>
> I don't actually see any issues wrt 8272. To me, it looks like
> the fixed code should work fine...

Paul?

- k



More information about the Linuxppc-dev mailing list