[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MVME5500 status, and on to PMC interrupts

Hi Peter,

You wrote :
>The PMC card on the other side of the DEC bridge on the PMC_SPAN
>daughter card seems to return data, but any attempts to access the
> returned address space crashes.

In the log file you sent me :

> pmc730_1@0x01FFED68: 0/2/2/0 base address B4000000 intr 0E.

it seems that the IRQ of the  2nd PMC730  returns as a VME
interrupt 3.  My understanding is that the PMCspan  card is
a VME module featuring the DEC21150 PCI-to-PCI interface
bridge.  You do not need  to write a  newdriver for the bridge to
search for the PMC module.  However,  I think you need to program
the PMCspan VME module corrctly to access the returned address

It will help if one has a programmer's manual of the
PMCspan module, which I am still working on.

Peter Dufault wrote:

> On Feb 28, 2005, at 11:48 AM, Joel Sherrill <joel@OARcorp.com> wrote:
> >> I notice that these are both 0x40 added to what I'm getting back from
> >> PCIx_read_config_byte for PCI0_INTERRUPT_LINE.  I'm adding the 0x40
> >> into that value and my interrupts are now working.
> >
> > Great!  That wasn't too bad!
> >
> We'll probably have to come up with a better explanation than "add
> 0x40", though.  But given the cards are removable we should keep it
> dynamic.

You can keep it dynamic by simply adding the retuned intr number

For the example of  the log file you sent me :

>BSP_PCIxFindDevice: found 0x445716D5 at 0/0/6/0
>pmc730_0@0x01FFEE38: 0/0/6/0 base address 80200000 intr 08.
>XXX Second PMC730 (other side of bridge) thinks it is at 0/2/2/0

In the pmcxx driver, you can keep it dynamic by doing :
pmcxx_intr_line = BSP_GPP_IRQ_LOWEST_OFFSET + retuned IRQ;

In this case the returned IRQ is 08.