Date: Sat, 23 Sep 2006 22:15:17 GMT From: Sven Petai <hadara@bsd.ee> To: freebsd-gnats-submit@FreeBSD.org Subject: kern/103534: [ata] [patch] support for ALI 5288 Message-ID: <200609232215.k8NMFHSH030882@www.freebsd.org> Resent-Message-ID: <200609232220.k8NMKBZ3070659@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 103534 >Category: kern >Synopsis: [ata] [patch] support for ALI 5288 >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Sep 23 22:20:11 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Sven Petai >Release: current (23.09.2006) >Organization: NPO BSD Estonia >Environment: FreeBSD 7.0-CURRENT FreeBSD 7.0-CURRENT #33: Sat Sep 23 22:19:06 EEST 2006 root@:/usr/obj/usr/src/sys/DEPRESSION64 amd64 >Description: ALI (ULI) 5288 ata chipset is not supported, machine will not find any disks when IDE type is set to RAID (the default) or AHCI in the BIOS. It will find the disks in UDMA33 mode when non-RAID type is selected from BIOS. With the above patch disks are recognized as SATA 150 capable devices in all 3 BIOS modes. PS. this chip can be found on ASROCK 939SLI32-eSATA2 motherboard. >How-To-Repeat: >Fix: --- sys-orig/dev/ata/ata-chipset.c Sat Sep 23 19:09:32 2006 +++ sys/dev/ata/ata-chipset.c Sat Sep 23 22:42:58 2006 @@ -950,6 +950,7 @@ struct ata_chip_id *idx; static struct ata_chip_id ids[] = {{ ATA_ALI_5289, 0x00, 2, ALISATA, ATA_SA150, "M5289" }, + { ATA_ALI_5288, 0x00, 4, ALISATA, ATA_SA300, "M5288" }, { ATA_ALI_5287, 0x00, 4, ALISATA, ATA_SA150, "M5287" }, { ATA_ALI_5281, 0x00, 2, ALISATA, ATA_SA150, "M5281" }, { ATA_ALI_5229, 0xc5, 0, ALINEW, ATA_UDMA6, "M5229" }, @@ -984,6 +985,12 @@ ctlr->channels = ctlr->chip->cfg1; ctlr->allocate = ata_ali_sata_allocate; ctlr->setmode = ata_sata_setmode; + ctlr->r_type2 = SYS_RES_MEMORY; + ctlr->r_rid2 = PCIR_BAR(5); + + if ((ctlr->r_res2 = bus_alloc_resource_any(dev, ctlr->r_type2, + &ctlr->r_rid2, RF_ACTIVE))) + return ata_ahci_chipinit(dev); /* enable PCI interrupt */ pci_write_config(dev, PCIR_COMMAND, >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200609232215.k8NMFHSH030882>