summaryrefslogtreecommitdiff
path: root/sys/src/9/pc/sdiahci.c
AgeCommit message (Collapse)Author
2015-01-04sdiahci: sanitize ahci pci barcinap_lenrek
make sure the ahci pci bar is not in i/o space and has the right size. also make sure Aport registers are within the ahci bar range.
2014-07-10Add AHCI support for Intel 8 Series/C220 Series Chipset Family SATA ↵cinap_lenrek
Controller. (from sources)
2014-05-16sdiahci: fix (unused) hba reset function (thanks erik quanstro)cinap_lenrek
from the specification: software may reset the entire HBA by setting GHC.HR to '1'. When software sets the GHC.HR bit to '1', the HBA shall perform an internal reset action. The bit shall be cleared to '0' by the HBA when the reset is complete.
2014-02-01pc64: enable iahci supportcinap_lenrek
2014-01-22sdiahci: fix hardcoded 512 byte sector sizecinap_lenrek
2013-11-22pc kernel: kproc error and exitcinap_lenrek
catch the error() that can be thrown by sleep() and tsleep() in kprocs. add missing pexit() calls. always set the freemem argument to pexit() from kproc otherwise the process gets added to the broken list.
2013-04-14sdiahci: add pci id for 82801eb/er and c210cinap_lenrek
2013-02-23sdiahci: only wait for drives that are in the process of becoming ready when ↵cinap_lenrek
onlining, add *noahci option
2013-02-22sdiahci: fix mistakecinap_lenrek
2013-02-22sdiahci: prevent nil pointer dereference on spurious interrupt statuscinap_lenrek
on some controllers, we get bogus interrupt indication for non present drives. ack the irq but ignore.
2013-01-04sdiahci: do port reset on stuck drive on bootcinap_lenrek
2012-12-31sdiahci: add pci did for 82801fbm (ich6) SATA controllercinap_lenrek
2012-12-29sdahci: fix mistakecinap_lenrek
2012-12-28sdahci: get dvd drive to work with x301cinap_lenrek
2012-12-25sdiahci: prevent x301 dvd-ram from hanging machinecinap_lenrek
matushita dvd-ram on thinkpad x301 hangs on the inquiry command done from scsiverify(). not sure whats wrong with it, but at least this makes the machine boot.
2012-12-24adiahci: drive onlining, task file error (atapi) handling, missed ↵cinap_lenrek
interrupts, bios handoff, idle, cleanup wait for the drives to become ready or missing in iaonline() and iaverify() to prevent nobootprompt= race. handle task file error status (this can happen for atapi) under some circumstances and would hang the io if not handled. preventively poll interrupts from the checkdrive kproc in case we loose interrupts (bad via machine). implement bios handoff procedure. make sure the port is idle before programming the port dma regios in configdrive(), do not start command processing on the port unless phylink has been established.
2012-12-02sdiahci: fix staggered spinup wait loop, fix confusioncinap_lenrek
setting Asud in the cmd register is not needed, because Apwr is (Asud|Apod) already. the problem really was that the drive comes up with sstatus Spresent (001), so we never spun it up because (p->sstatus & Sphylink) == 0 was never met (Sphylink being a mask (011) overlaping Spresent bit). the spinup wait loop has to run only for the staggered spinup case (h->cap & Hss) and it should wait for the drive to be detected by the phy, not just cold presence detect.
2012-12-02sdiahci: make drive dvd drive spinup work, add *ahcidebug= boot parametercinap_lenrek
thinkpad r400 dvd drive was not recognized. port status indicated present device but no Sphylink because the device did not spin up. setting the Asud bit in ahciconfigdrive() made it come up clean. add scsciverify() call in iaverify() for atapi inquiry. keep in some of the debug prints and add a *ahcidebug= boot parameter to enable them.
2012-09-09Add alignment hints for e512 ATA drives.google
2012-03-28panic: trailing newlinescinap_lenrek
2011-12-06fix cdrom media changecinap_lenrek
2011-12-04sdiahci: add Hudson SATA controllercinap_lenrek
2011-11-09sdide: Marvell PATA, sdiahci: 82801 SATA RAIDcinap_lenrek
2011-07-10merge sd changes from 9atomcinap_lenrek
2011-03-30Import sources from 2011-03-30 iso image - libTaru Karttunen
2011-03-30Import sources from 2011-03-30 iso imageTaru Karttunen