Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Sep 2004 20:54:44 -0400
From:      John Baldwin <jhb@FreeBSD.org>
To:        freebsd-alpha@FreeBSD.org
Cc:        Lukas Kaminski <kaminski@rbg.informatik.tu-darmstadt.de>
Subject:   Re: Wierd ATA-Detection on MIATA (Beta4 and 5.2.1)
Message-ID:  <200409172054.44079.jhb@FreeBSD.org>
In-Reply-To: <Pine.SOL.4.58.0409171430030.3055@ultra18.rbg.informatik.tu-darmstadt.de>
References:  <Pine.SOL.4.58.0409171430030.3055@ultra18.rbg.informatik.tu-darmstadt.de>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 17 September 2004 09:05 am, Lukas Kaminski wrote:
> Hi,
>
> on my Miata ( PWS 500au ) the cypress ide controller is somehow detected
> twice, or not correctly.
>
> (Generic-kernel 5.2.1)
>
> ... isa0: <ISA bus> on isab0
> atapci0: <Cypress 82C693 ATA controller> port
> 0x90a0-0x90af,0x3f4-0x3f7,0x1f0-0x1f7 irq 254 at device 7.1 on pci0
> ata0: at 0x1f0 irq 14 on atapci0
> ata0: interrupting at ISA irq 14
> ata0: [MPSAFE]
> ata1: at 0x170 irq 15 on atapci0
> ata1: interrupting at ISA irq 15
> ata1: [MPSAFE]
> atapci1: <GENERIC ATA controller> port 0x374-0x377,0x170-0x177 mem
> 0x81170000-0x8117ffff at device 7.2 on pci0
> atapci1: unable to map interrupt
> ohci0: <OHCI (generic) USB con ...
>
> and then
>
> GEOM: create disk ad0 dp=0xfffffc00173bc4a0
> ad0: 76351MB <SAMSUNG SP8004H> [155127/16/63] at ata0-master BIOSPIO
> acd0: DVDR <HL-DT-ST DVDRAM GSA-4040B> at ata1-master BIOSPIO
> Waiting 15 seconds for SCSI devices to settle
> ...
>
> This happens on FreeBSD 5.2.1 (generic kernel) and on Beta 4.
> Is there a way to disable the detection of a "GENERIC ATA controller"?
> The drive is working, but only in PIO mode. (it supports DMA).
> If DMA is enabled, the system locks up if the hd is accessed.

The messages look weird but ata(4) is still working.  I have the same oddness 
on my DS20.  It seems that either Alphas have non-standard atapci controllers 
or ata(4) is broken (haven't looked to see which yet).  The ata(4) driver 
assumes that any atapci device that supports the legacy ISA ports and IRQs 
are both on the same device, but Cypress doesn't do it that way, it has the 
legacy primary channel on function 0 and legacy secondary channel on function 
1.  Note that since they are the devices with legacy ISA ports and IRQs, it 
still works fine for atapci to think that ata1 lives on atapci0 rather than 
atapci1.  The DMA problems are more likely due to bugs in busdma on Alpha 
and/or in ata(4).  Note that sparc64 had problems with DMA on ATA due to bugs 
in its busdma implementation.

-- 
John Baldwin <jhb@FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409172054.44079.jhb>