[PATCH v5 0/4] Series short description

Roderick Colenbrander thunderbird2k at gmail.com
Tue May 26 22:41:10 EST 2009


On Mon, May 25, 2009 at 10:47 PM, Roderick Colenbrander
<thunderbird2k at gmail.com> wrote:
> On Mon, May 25, 2009 at 4:41 PM, Grant Likely <grant.likely at secretlab.ca> wrote:
>> Repost of ml510 series.  This time against 2.6.30-rc7 and with the .dts
>> file included.
>>
>> g.
>>
>> --
>> Grant Likely, B.Sc. P.Eng.
>> Secret Lab Technologies Ltd.
>>
>
> Thanks, I will check it out tomorrow.
>
> Roderick
>

Hi,

I have tested the ml510 patches. The code works properly but I had to
make a few slight changes to get it functioning. The most important
change was in xilinx_intc driver. For level interrupts the ack command
was removed during the xilinx_intc rewrite which caused a null pointer
derefence in the i8259 cascade code. I have now changed it to:
/* Let xilinx_intc end the interrupt */
desc->chip->mask(irq);
desc->chip->unmask(irq);

This seems to work properly. Further the driver now also has proper
level support, so i think my dts file has some errors. The pci
interrupts (a/b/c/d) are all active low, so they need to be changed to
'3' for the sense level. Further the i8259 is active high which needs
to be set to 2 instead of 3.

Further I have tested the need for the outb to 0x4d0/0x4d1. Removing
those lines causes interrupt timeouts and ide won't function.
Freescale does the same in arch/powerpc/platforms/fsl_uli1575.c (which
is a much newer version of this chipset) in quirk_final_uli1575 but
they are doing it for some more interrupts. I think this code should
be done using a similar quirk in virtex_ml510.c

Roderick



More information about the Linuxppc-dev mailing list