ultra5/cmd646 hang

Soren Schmidt sos at spider.deepcore.dk
Thu Nov 20 23:47:48 PST 2003


It seems Thomas Moestl wrote:
> I've played around some more with panther2, and managed to get it to work
> seemingly stable in WDMA2 mode by tweaking the initialization code a bit.
> I've attached the patch which I have used; the following changes in it
> seem to all be required:
> 
> - Programming the timings before setting the transfer mode with
>   ata_controlcmd(atadev, ATA_SETFEATURES, ATA_SF_SETXFER, ...);

Wierd, sounds like the machine doesn't set it up at all, which would
make it hard to boot from ??

> - The added interrupt acking code in the chipset interrupt handler
>   (cribbed from NetBSD)

That shouldn't be needed according to docs, but I'll look through the
endless list of erratas for this..

> - #if 0-ing out the code that sets the PIO timings. I have not
>   yet investigated whether this is because of the PIO initialization
>   of the disk before DMA is tried, or causes troubles when used
>   for the secondary master, which is a PIO3 CD-ROM.

This all sounds screwed somehow, I've just upgraded my alpha to the
latest -current and there the '646 works just fine as is...

-Søren


More information about the freebsd-sparc64 mailing list