Local to pci accesses

Hello, i am trying to set PLX9054 and MPC860 to be able to write from
Local to PCI address space.

In my handle start device routine i allocate a common buffer and i get
the physical address (lets say is 0x03981000).

I want to instruct PLX so every local access in space address 0x5FFFFFFF
be addressed in to PCI memory space.

So i write in PLX registers the following values.

reg(0x1C) = 0x40000000
reg(0x20) = 0x50000000
reg(0x28) = 0x00000001

The range is about 512MB

Now all my accesses from the MPC are at 0x50000000 + 0x03981000 + offset.

when i check the values of the virtual address returned from
AllocateCommonBuffer nothing is written.

Any ideas?
Thank you in advance.

If I read you correctly, you are trying to mapped
certain local address space into host memory address?

Now all my accesses from the MPC are at 0x50000000 +
0x03981000 + offset.

The key is to make sure when your onboard MPC making
access to 0x50000000 + 0x03981000:

  1. The PLX (as initiator) must correctly assert
    address 0x03981000 on the bus,
  2. The NB (or the Root Complex in the case of PCI-E)
    must claim it and feed correct data.

I don’t remember how 9054 works but this can be easily
verified by hooking a bus analyzer and watching the
PCI cycles.

HTH

Calvin Guan (Windows DDK MVP)
NetXtreme Longhorn Miniport Prime
Broadcom Corp. www.broadcom.com


Find your next car at http://autos.yahoo.ca