From: Magnus D. <mag...@gm...> - 2007-07-23 06:00:57
|
On 7/22/07, Paul Mundt <le...@li...> wrote: > On Sat, Jul 21, 2007 at 11:08:27PM -0700, Kristoffer Ericson wrote: > > Since fallout of make_ipr_irq Im not quite sure how to repair this for > > pint irq's. Ive looked at the dma-sh solution but not sure if thats the > > proper way to go. > > > At a quick glance, PINT seems to use a couple of IPR IRQs for cascade, > with the bulk of the logic in the demux. In this case, you're going to > want to make sure that your CPU includes those PINT vectors in its IPR > map, and then set up chained handlers for both where the PINT demux kicks > in as normal. > > None of that should be terribly difficult, though you are going to want > to convert your CPU subtype to the new INTC that Magnus wrote, he might > be able to give you some more input if you run in to some barriers doing > the conversion. I'd be happy to convert the 7709 setup code to work with the new intc handler. And after that I can build pint support on top of intc as well. This needs to be tested though and I don't have any 7709 hardware around. So if anyone could help out testing things that would be great. That would at least solve the issue of converting the 7709 setup code to intc. But maybe hp6xx hardware isn't enough to test pint. I wonder if it is using the pint interrupts at all. Hacking up pint support for a board that doesn't use it seems the wrong way to go... The only board-specific irq constants that i can find being used on hp6xx seem to be located in hp6xx.h except for the IRQ number for hd644661 which is located in the config file as CONFIG_HD64461_IRQ=36. These values all seem to map to IRQ pins. The irq number 93 otoh, it is associated with the pata_platform setup data in arch/sh/boards/hp6xx/setup.c and that is pretty close to PINT_IRQ_BASE which seems to be set to 86. So maybe we have a pint interrupt there after all... Kristoffer, do you have hp6xx hardware and some time for testing? Thanks! / magnus |