Marvell 6145 SATA drivers for FreeBSD

Andrey V. Elsukov bu7cher at yandex.ru
Tue Apr 8 15:40:38 UTC 2008


08.04.08, 17:43, "John Baldwin" <jhb at freebsd.org>:

> > This is the "pciconf -l"'s output of My system.
> So the problem is that for some reason the ata driver thinks the 6145 is a 
> PATA controller rather than a SATA controller which doesn't seem right.  You 
> can try this diff but it may not work:
> Index: ata-chipset.c
> ===================================================================
> RCS file: /host/cvs/usr/cvs/src/sys/dev/ata/ata-chipset.c,v
> retrieving revision 1.202.2.7
> diff -u -r1.202.2.7 ata-chipset.c
> --- ata-chipset.c       1 Apr 2008 15:20:49 -0000       1.202.2.7
> +++ ata-chipset.c       8 Apr 2008 13:42:58 -0000
> @@ -2456,7 +2456,7 @@
>       { ATA_M88SX6041, 0, 4, MV60XX, ATA_SA300, "88SX6041" },
>       { ATA_M88SX6081, 0, 8, MV60XX, ATA_SA300, "88SX6081" },
>       { ATA_M88SX6101, 0, 1, MV61XX, ATA_UDMA6, "88SX6101" },
> -     { ATA_M88SX6145, 0, 2, MV61XX, ATA_UDMA6, "88SX6145" },
> +     { ATA_M88SX6145, 0, 4, MV60XX, ATA_SA300, "88SX6145" },
>       { 0, 0, 0, 0, 0, 0}};
>      if (!(ctlr->chip = ata_match_chip(dev, ids)))

I think it won't work. This controller is AHCI-like.

There is unfinished driver for this family of controllers:
http://butcher.heavennet.ru/patches/kernel/ata/marvell/freebsd-working_module.tgz

Some people reported that it works. But it has several problems:
1. PATA support isn't implemented.
2. Error handling is incorrect, i think.

Now I have two motherboards with different controllers from this family.
And I'm going to finish it when I will have some free time.

--
WBR, Andrey V. Elsukov


More information about the freebsd-drivers mailing list