An updated patch against recent changes in ata(4) for users with IXP600 and IXP700 chipsets is attached. The patch enables SATA300 (via AHCI) e.g on mainboards with AMD690G chipsets. Patch applies against recent -CURRENT, 7-STABLE and 6-STABLE. ata(4) commiters please review, others please report any issues here. I have submitted a PR as well, but the mail server seems to have problems right now. Index: src/sys/dev/ata/ata-chipset.c =================================================================== RCS file: /home/ncvs/src/sys/dev/ata/ata-chipset.c,v retrieving revision 1.207 diff -a -u -r1.207 ata-chipset.c --- src/sys/dev/ata/ata-chipset.c 20 Nov 2007 04:52:19 -0000 1.207 +++ src/sys/dev/ata/ata-chipset.c 22 Nov 2007 00:01:14 -0000 _at__at_ -1345,7 +1345,9 _at__at_ { ATA_ATI_IXP400_S1, 0x00, SIIMEMIO, 0, ATA_SA150, "IXP400" }, { ATA_ATI_IXP400_S2, 0x00, SIIMEMIO, 0, ATA_SA150, "IXP400" }, { ATA_ATI_IXP600, 0x00, 0, 0, ATA_UDMA6, "IXP600" }, + { ATA_ATI_IXP600_S1, 0x00, 0, AHCI, ATA_SA300, "IXP600" }, { ATA_ATI_IXP700, 0x00, 0, 0, ATA_UDMA6, "IXP700" }, + { ATA_ATI_IXP700_S1, 0x00, 0, AHCI, ATA_SA300, "IXP700" }, { 0, 0, 0, 0, 0, 0}}; if (!(ctlr->chip = ata_match_chip(dev, ids))) _at__at_ -1366,6 +1368,9 _at__at_ { struct ata_pci_controller *ctlr = device_get_softc(dev); + if ((ctlr->chip->cfg2 == AHCI) && ata_ahci_chipinit(dev) != ENXIO) + return 0; + if (ata_setup_interrupt(dev)) return ENXIO; Index: src/sys/dev/ata/ata-pci.h =================================================================== RCS file: /home/ncvs/src/sys/dev/ata/ata-pci.h,v retrieving revision 1.82 diff -a -u -r1.82 ata-pci.h --- src/sys/dev/ata/ata-pci.h 18 Nov 2007 14:44:52 -0000 1.82 +++ src/sys/dev/ata/ata-pci.h 22 Nov 2007 00:01:14 -0000 _at__at_ -104,7 +104,9 _at__at_ #define ATA_ATI_IXP400_S1 0x43791002 #define ATA_ATI_IXP400_S2 0x437a1002 #define ATA_ATI_IXP600 0x438c1002 +#define ATA_ATI_IXP600_S1 0x43801002 #define ATA_ATI_IXP700 0x439c1002 +#define ATA_ATI_IXP700_S1 0x43901002 #define ATA_CENATEK_ID 0x16ca #define ATA_CENATEK_ROCKET 0x000116caReceived on Thu Nov 22 2007 - 08:04:47 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:22 UTC