64-bit pci bus on a powermac g4

3 messages, 3 authors, 2000-09-09 · open the first message on its own page

64-bit pci bus on a powermac g4

From: Chas Williams <hidden>
Date: 2000-09-09 17:57:36

i am writing a driver for an atm adapter and i am seeing some strange
problems.  the card is 32/64 bit.  it works fine in my 32-bit pci bus
on my umax s900, but in the g4 it oops' with a trap 300 during operation.
i understand this to be 'data access exception' or 'data storage exception'.

a couple questions:

. is the 64bit pci bus capability functional in the g4?  (i gather it
  must be since my 64bit ati rage pro for the second monitor is working fine)

. anyone else written a driver for a 64bit pci card in the g4's?

. do i need to align my dma regions to 64bits?  shouldnt the card be
  able transfer non-dma until it gets to a dma region?  i suppose this
  depends on the bridge/card controller.  the driver documentation
  is a bit lacking on this detail.  it claims that tx buffers dont
  require special alignment but if you dont use dma, of course it doesnt.


** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

Re: 64-bit pci bus on a powermac g4

From: Tom Gall <hidden>
Date: 2000-09-09 19:06:45

Chas Williams wrote:
i am writing a driver for an atm adapter and i am seeing some strange
problems.  the card is 32/64 bit.  it works fine in my 32-bit pci bus
on my umax s900, but in the g4 it oops' with a trap 300 during operation.
i understand this to be 'data access exception' or 'data storage exception'.
Hi Chas,

  We're working towards much the same goal. I'm trying to get multiple
PCI buses working on IBM hardware... and they just happen to be 64 bit
PCI. The card I am working with is an 64 bit LVD SCSI card.
a couple questions:

. is the 64bit pci bus capability functional in the g4?  (i gather it
  must be since my 64bit ati rage pro for the second monitor is working fine)
  That's a good sign. For me, any device on the buses other than the
first were not even there...  I've got past that hurdle now tho.
. anyone else written a driver for a 64bit pci card in the g4's?
  I'm not on a G4, but on a Model 270, which is a Power3 processor...
but I'm sure we're not too far off.
. do i need to align my dma regions to 64bits?  shouldnt the card be
  able transfer non-dma until it gets to a dma region?  i suppose this
  depends on the bridge/card controller.  the driver documentation
  is a bit lacking on this detail.  it claims that tx buffers dont
  require special alignment but if you dont use dma, of course it doesnt.
  For the LVD SCSI (it's an SYMBIOS 896 chip) I literally haven't had to
do anything to the existing driver. Right now the driver (as well as my
test code) can talk to the card, get the config space, IRQ #s etc.  Are
you able to do this at a minimum?

  The current problem I do have is that IRQs are not setup right at the
moment. Anything on the first bus still works fine but the 2nd buses etc
don't. The driver will send commands to the card, expect and IRQ back
and things will time out. I suspect some mixture of
arch/ppc/kernel/prom.c  chrp_setup.c and chrp_pci.c probably to blame.

  Hopefully the work that I'm doing with merge with the efforts that Ben
is doing and all will be well.

--
Regards,

Tom

-----------------------------------------------------------
Linux Guy          "My heart is human, my blood is boiling,
tgall@uswest.net    my brain IBM" -- Mr Roboto, Styxx

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/

Re: 64-bit pci bus on a powermac g4

From: Timothy A. Seufert <hidden>
Date: 2000-09-09 22:22:47

At 1:57 PM -0400 9/9/00, Chas Williams wrote:
i am writing a driver for an atm adapter and i am seeing some strange
problems.  the card is 32/64 bit.  it works fine in my 32-bit pci bus
on my umax s900, but in the g4 it oops' with a trap 300 during operation.
i understand this to be 'data access exception' or 'data storage exception'.

a couple questions:

. is the 64bit pci bus capability functional in the g4?  (i gather it
  must be since my 64bit ati rage pro for the second monitor is working fine)
The Rage 128 (Pro) is a 32-bit PCI card, not 64 (or at least all of
them I've seen are).

If you didn't already know, the 64-bit bus in PowerMacs is actually
behind a  PCI to PCI bridge chip.  The main PCI bus is 32-bit 66 MHz,
and Apple uses a DEC/Intel bridge to connect it to the 64-bit 33 MHz
bus.

I have a 64-bit PCI card (Adaptec 39160) installed in a 64-bit slot
on my Blue&White G3.  The aic7xxx driver in the most current 2.2.x
trees mostly works OK with it.  There are some initialization
problems but they seem to be unrelated to PCI.  Once the card is
initialized it works fine, though there seems to be a problem with
achieving more than 40 MB/s write throughput.  This happens under
both MacOS and Linux though, so either it's a common problem in the
way the drivers are performing writes or the hardware is poorly
designed.
. anyone else written a driver for a 64bit pci card in the g4's?

. do i need to align my dma regions to 64bits?  shouldnt the card be
  able transfer non-dma until it gets to a dma region?  i suppose this
  depends on the bridge/card controller.  the driver documentation
  is a bit lacking on this detail.  it claims that tx buffers dont
  require special alignment but if you dont use dma, of course it doesnt.
Aligning DMA buffers might be worth a shot, maybe the card is
inflexible in this regard.


  Tim Seufert

** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help