Patch for Intel 5000X hardware (ata and ichsmb)
Søren Schmidt
sos at freebsd.org
Mon Aug 14 05:59:10 UTC 2006
Reed A. Cartwright wrote:
> Freebsd wouldn't recognize my hard drive contoler, so I modified a
> patch I found on the "stable" list, adding all the device ids I found
> in Intel's documentation. Please add this to the stable or current
> branch.
>
> Below is the patch, I made with respect to 6.1-Release-p3. It works
> with both i386 and amd64.
I have a bunch of new Intel ID's including this ESB2 and the new
PATA-less ICH8, to appear shortly in -current..
-Søren
>
> Index: sys/dev/ata/ata-chipset.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/ata/ata-chipset.c,v
> retrieving revision 1.126.2.11
> diff -u -r1.126.2.11 ata-chipset.c
> --- sys/dev/ata/ata-chipset.c 16 Mar 2006 21:28:51 -0000 1.126.2.11
> +++ sys/dev/ata/ata-chipset.c 9 Aug 2006 20:28:30 -0000
> @@ -1595,6 +1595,11 @@
> { ATA_I82801GB_R1, 0, AHCI, 0x00, ATA_SA300, "ICH7" },
> { ATA_I82801GB_M, 0, AHCI, 0x00, ATA_SA300, "ICH7" },
> { ATA_I82801GB_AH, 0, AHCI, 0x00, ATA_SA300, "ICH7" },
> + { ATA_I631xESB, 0, 0, 0x00, ATA_UDMA5, "631xESB" },
> + { ATA_I631xESB_C1, 0, 0, 0x00, ATA_UDMA5, "631xESB" },
> + { ATA_I631xESB_S1, 0, AHCI, 0x00, ATA_SA300, "631xESB" },
> + { ATA_I631xESB_R1, 0, AHCI, 0x00, ATA_SA300, "631xESB" },
> + { ATA_I631xESB_R2, 0, AHCI, 0x00, ATA_SA300, "631xESB" },
> { ATA_I31244, 0, 0, 0x00, ATA_SA150, "31244" },
> { 0, 0, 0, 0, 0, 0}};
> char buffer[64];
> Index: sys/dev/ata/ata-pci.h
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/ata/ata-pci.h,v
> retrieving revision 1.49.2.8
> diff -u -r1.49.2.8 ata-pci.h
> --- sys/dev/ata/ata-pci.h 16 Mar 2006 21:28:51 -0000 1.49.2.8
> +++ sys/dev/ata/ata-pci.h 9 Aug 2006 20:28:30 -0000
> @@ -148,6 +148,11 @@
> #define ATA_I82801FB_S1 0x26518086
> #define ATA_I82801FB_R1 0x26528086
> #define ATA_I82801FB_M 0x26538086
> +#define ATA_I631xESB_C1 0x26808086
> +#define ATA_I631xESB_S1 0x26818086
> +#define ATA_I631xESB_R1 0x26828086
> +#define ATA_I631xESB_R2 0x26838086
> +#define ATA_I631xESB 0x269e8086
> #define ATA_I82801GB 0x27df8086
> #define ATA_I82801GB_S1 0x27c08086
> #define ATA_I82801GB_R1 0x27c38086
> Index: sys/dev/ichsmb/ichsmb_pci.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/ichsmb/ichsmb_pci.c,v
> retrieving revision 1.16.2.1
> diff -u -r1.16.2.1 ichsmb_pci.c
> --- sys/dev/ichsmb/ichsmb_pci.c 19 Aug 2005 18:38:55 -0000 1.16.2.1
> +++ sys/dev/ichsmb/ichsmb_pci.c 9 Aug 2006 20:28:31 -0000
> @@ -74,6 +74,7 @@
> #define ID_82801DC 0x24C38086
> #define ID_82801EB 0x24D38086
> #define ID_6300ESB 0x25a48086
> +#define ID_631xESB 0x269b8086
>
> #define PCIS_SERIALBUS_SMBUS_PROGIF 0x00
>
> @@ -146,6 +147,9 @@
> case ID_6300ESB:
> device_set_desc(dev, "Intel 6300ESB (ICH) SMBus controller");
> break;
> + case ID_631xESB:
> + device_set_desc(dev, "Intel 631xESB (ESB2) SMBus controller");
> + break;
> default:
> if (pci_get_class(dev) == PCIC_SERIALBUS
> && pci_get_subclass(dev) == PCIS_SERIALBUS_SMBUS
>
More information about the freebsd-hackers
mailing list