Trying a Promise Ultra/66 on powerpc
Michel Lanners
mlan at cpu.lu
Sun Aug 1 17:23:47 EST 1999
Hi all,
Below you'll find my experiences so far with the Ultra/66...
On 27 Jul, this message from Daniel Jacobowitz echoed through cyberspace:
> OK. I have this working now. In getting it to work, I've come across
> a couple of issues.
>
> (A) You can't compile IDE as a module and enable ide-pmac. There will
> be link errors in pmac_setup.c.
Compiling workes for me. I've not been able to boot that kernel,
though... for other reasons (crashes in MacOS; I need BootX).
> (B) Very closely tied to that, if ide-pmac is not enabled, a dummy
> pmac_ide_init_hwif_ports() is compiled in pmac_setup.c. But the real
> version of this function (in ide-pmac.c) does more than just onboard
> IDE specific tasks. For PCI IDE cards it is still needed. Enabling
> ide-pmac eventually let me make use of the card.
I agree; I had the same problem. I first tried to comment out
pmac_ide_init_hwif_ports(), without enabling ide-pmac; but that
resulted in a kernel panic upon initializing of the IDE driver. (Now
that I think about it: the panic might have been due to PCI stuff...)
In addition, I had to change include files: problem is that both
pmac_setup.c and chrp_pci.c need the definition of hw_regs_t, which is
defined in <linux/ide.h>. My solution was to replace
#include <asm/ide.h> with #include <linux/ide.h>; the latter including
<asm/ide.h> anyway. Is this the right solution?
There might be other platform-specific files that need this patch as
well; Andre: I think it is the changes you made to
pmac_ide_init_hwif_ports() that made this necessary; you might need to
patch all files where you changed this function.
> (C) I needed to add a patch to automatically try setting PCI_COMMAND_IO
> if powerpc. Without this the card would be marked as not supporting
> native mode, and not be initialized. On x86 bios32.c takes care of
> bioses which do not set this. Should something in the PPC PCI
> initialization be doing the same?
Noticed that too. My solution is a more generic one: I copied the fixup
code from bios32.c over to arch/ppc/kernel/pmac_pci.c, minus the
I/O-port fixup. So far, it didn't break anything else, and according to
boot messages, it does correct the Ultra's PCI settings:
PCI: Probing PCI hardware
PCI: Enabling I/O for device 00:68
PCI: Enabling memory for device 00:68
Obviously, this is not the best solution neither, as it is only called
on the PowerMac platform.
> On a much less related note:
> drow:~# hdparm -p /dev/hdc
>
> /dev/hdc:
> attempting to auto-tune PIO mode
> HDIO_SET_PIO_MODE failed: Function not implemented
Hmmm, according to boot messages, I'm getting PIO mode for all ports:
Uniform Multi-Platform E-IDE driver Revision: 6.20
PDC20262: IDE controller on PCI bus 00 dev 68
PDC20262: not 100% native mode: will probe irqs later
PDC20262: ROM enabled at 0x80820000
PDC20262: (U)DMA Burst Bit DISABLED Primary PCI Mode Secondary PCI Mode.
ide2: BM-DMA at 0x0400-0x0407, BIOS settings: hde:pio, hdf:pio
ide3: BM-DMA at 0x0408-0x040f, BIOS settings: hdg:pio, hdh:pio
> As it is I get this (off a 5400 RPM Maxtor 25.4G DiamondMax)
> /dev/hdc:
> Timing buffered disk reads: 32 MB in 5.83 seconds = 5.49 MB/sec
You beat me on this one... I'm not getting anything off my disks:
hde: no response (status = 0xa1), resetting drive
hde: no response (status = 0xa1)
hdf: no response (status = 0xa1), resetting drive
hdf: no response (status = 0xa1)
hdg: no response (status = 0xa1), resetting drive
hdg: no response (status = 0xa1)
hdh: no response (status = 0xa1), resetting drive
hdh: no response (status = 0xa1)
hde: no response (status = 0xa1), resetting drive
hde: no response (status = 0xa1)
hdf: no response (status = 0xa1), resetting drive
hdf: no response (status = 0xa1)
hdg: no response (status = 0xa1), resetting drive
hdg: no response (status = 0xa1)
hdh: no response (status = 0xa1), resetting drive
hdh: no response (status = 0xa1)
Andre, any idea why it is not seing my disks? Anything you want me to
try? I've had both a Matrox and an IBM on the two ports, one via the
UDMA66 cable, the other via standard cable.
Thanks
Michel
-------------------------------------------------------------------------
Michel Lanners | " Read Philosophy. Study Art.
23, Rue Paul Henkes | Ask Questions. Make Mistakes.
L-1710 Luxembourg |
email mlan at cpu.lu |
http://www.cpu.lu/~mlan | Learn Always. "
[[ This message was sent via the linuxppc-dev mailing list. Replies are ]]
[[ not forced back to the list, so be sure to Cc linuxppc-dev if your ]]
[[ reply is of general interest. Please check http://lists.linuxppc.org/ ]]
[[ and http://www.linuxppc.org/ for useful information before posting. ]]
More information about the Linuxppc-dev
mailing list