summaryrefslogtreecommitdiff
path: root/sys/src/9/pc/sdide.c
AgeCommit message (Collapse)Author
2022-03-18sdide: add pci id for AMT IDE-r controller on x230cinap_lenrek
2020-12-05pc/dma, pc/sdide: use uintptr for physical address instead of ulongcinap_lenrek
2020-09-13kernel: massive pci code rewritecinap_lenrek
The new pci code is moved to port/pci.[hc] and shared by all ports. Each port has its own PCI controller implementation, providing the pcicfgrw*() functions for low level pci config space access. The locking for pcicfgrw*() is now done by the caller (only port/pci.c). Device drivers now need to include "../port/pci.h" in addition to "io.h". The new code now checks bridge windows and membars, while enumerating the bus, giving the pc driver a chance to re-assign them. This is needed because some UEFI implementations fail to assign the bars for some devices, so we need to do it outselfs. (See pcireservemem()). While working on this, it was discovered that the pci code assimed the smallest I/O bar size is 16 (pcibarsize()), which is wrong. I/O bars can be as small as 4 bytes. Bit 1 in an I/O bar is also reserved and should be masked off, making the port mask: port = bar & ~3;
2019-10-08sdiahci: force Hudson SATA Controller to AHCI modecinap_lenrek
2019-09-09sdide: silence compiler warning in atadebug()cinap_lenrek
2015-01-04sdide: add vid/did for 82801IIH Intel Q35 IDE controller (thanks kenji)cinap_lenrek
2014-05-02sdide: never timeout or retry scsi commands from the controller drivercinap_lenrek
this was a big mistake. we should never attempt to timeout or retry a scsi command from the controller driver because theres no way to tell how long a command would take or if a command has side effects when being retried.
2013-11-10sdide: add pci did for VIA VT6415 PATA IDE controllerBurnZeZ
2013-05-11sdide: add Intel SERIES 6 SATA controller pci idscinap_lenrek
2012-12-28sdide: confusioncinap_lenrek
2012-12-26sdide: packet io byte count.cinap_lenrek
instead of setting the packet io byte count to some bullshit value, use the dlen from the scsi request. limit transfer byte count to 32k for atapi.
2012-09-19Enable busmastering for SCH (Poulsbo) PATA controller.google
2012-09-16sdide: make sure bmiba is in i/o port space, not memorycinap_lenrek
2012-09-09Add alignment hints for e512 ATA drives.google
2012-04-19sdide: increase Drq wait timeouts (fixes i/o errors in vbox)cinap_lenrek
2012-04-19sdide: do drive presence check in atadrive, probe slave drive before master.cinap_lenrek
2012-04-18sdide: make ataidentify wait longer if theres no floating buscinap_lenrek
2012-04-18sdide: do drive probles the non-clever way, this got a-'s cdrom to workingcinap_lenrek
2012-02-12sdide: fix lba48 transition bugcinap_lenrek
2012-01-25sdide: add another pci vid/did for nVidia MCP55cinap_lenrek
2012-01-21sdide: add another vid/did for 82801FBcinap_lenrek
2011-12-12kernel: fix more malloc bugscinap_lenrek
2011-12-06fix cdrom media changecinap_lenrek
2011-11-11sdide: make pkt io non interruptable, do scsionline in pio modecinap_lenrek
2011-11-10sdide: remove debug printscinap_lenrek
2011-11-09sdide: Marvell PATA, sdiahci: 82801 SATA RAIDcinap_lenrek
2011-11-04sdide: add pci id for bvaleks amd ide controllercinap_lenrek
2011-07-23sdide: limit max dma transfer size, make sure dma transfer is stoped in ↵cinap_lenrek
error case, set bytecount to 0 for dma
2011-07-19sdide: fix issue #69cinap_lenrek
2011-07-18sdide: inquery times on qemu, make pktio timeoutcinap_lenrek
2011-07-13sdide: remove set dma printcinap_lenrek
2011-07-10sdide: fix tab/spacescinap_lenrek
2011-07-10sdide: add pci ids from old sdata driver, turn on dma by defaultcinap_lenrek
2011-07-10merge sd changes from 9atomcinap_lenrek