On Fri, Jan 11, 2008 at 01:00:50AM -0700, Art Lemasters wrote:
> I've installed an Abit AN52 motherboard. It has an "nvidia nf520
> single chip." It only sees one SATA channel out of four. The BIOS
> sees two hard drives. FreeBSD (live cd) sees both drives (two
> drives plugged into two of the four SATA interfaces on the motherboard.
> My guess from looking at the FreeBSD dmesg (if the dmesg was accurate
> enough) is that there are two onboard SATA controllers, each with two
> channels (four interfaces on the motherboard).
>
> Here's a dmesg with a current kernel. I have a 4.0 userland installed,
> and the compile and installation of the current kernel was only to see
> if the current kernel can see more of the buses than 4.0.
>
> CC replies to me, especially if you want me to do any diagnostic
> configs and send or post the results. Also let me know if this should
> be copied to the tech-kern or another list.
>
...
Okay, I've looked at the NetBSD, FreeBSD, and OpenBSD code,
we're the only one that tries to use the native-SATA registers
to detect the drive with this chip.
Anyway, I think we're wrong to try to use these registers in this
case. I believe that, unlike some other nvidia sata controllers,
this model uses master+slave emulation. The native SATA registers
are currently subregioned in a way that is unlikely to actually
work in this mode. And the bogus detected speed is an indication
that this is the case.
Please file a PR (perhaps referencing this message
on http://mail-index.netbsd.org).
Jonathan Kollasch
Attachment:
pgpc9SfKxYTUc.pgp
Description: PGP signature