summaryrefslogtreecommitdiff
path: root/sys/dev/ic/nvme.c
AgeCommit message (Expand)Author
2017-08-18Avoid a NULL dereference in an error path. Coverity CID 1453201.Jonathan Gray
2017-06-12typo; from bryan vyhmeisterTheo de Raadt
2017-05-29Add hibernate support for nvme(4). This creates a separate IO queue that isJonathan Matthew
2017-05-27nvme: Don't set prp1 for DEL_IOCQStefan Fritsch
2017-05-27nvme: Add suspend/resume codeStefan Fritsch
2017-05-12subtract one sector from the disk size before passing it back to theJoshua Stein
2017-04-08A pile of sizes to free(9). In test for a few days in snapshots.Theo de Raadt
2016-11-15Do not use bus_space_{read,write}_8() even on LP64 archs,Martin Pieuchot
2016-11-15Mask non relevant bits when pritting version number.Martin Pieuchot
2016-10-25mask and unmask the interrupt source in an intx specific intr handler.David Gwynne
2016-05-20check we allocated the cq, not the sq, after trying to allocate the cqDavid Gwynne
2016-04-18allocate an array of entries, not pointers for the queuesDavid Gwynne
2016-04-14shorten the io path slightlyDavid Gwynne
2016-04-14apparently it's spelled NVMe, not NVMEDavid Gwynne
2016-04-14provide a shutdown hook that follows the procedure in the docsDavid Gwynne
2016-04-14implement translation of scsi SYNC CACHE to nvme FLUSHDavid Gwynne
2016-04-14bump openings to 64 to match the number of ccbs.David Gwynne
2016-04-14if io needs more than two prpe slots, overflow into the ccb prplDavid Gwynne
2016-04-14reallocate the ccbs after we figure out how big the sgls can beDavid Gwynne
2016-04-14set the scsi status to SCSI_OKDavid Gwynne
2016-04-14allocate dma memory for ccbs to use as prpe listsDavid Gwynne
2016-04-14dont attach if the min nvme page size is bigger than the cpu page sizeDavid Gwynne
2016-04-14dont complete scsi writes twiceDavid Gwynne
2016-04-14WAITOK for the dmamap create for ccbs tooDavid Gwynne
2016-04-14cut the memory for io buffers up into page sized chunksDavid Gwynne
2016-04-14check both the admin and io queue for completions in the interrupt handlerDavid Gwynne
2016-04-14dont put names in arguments.David Gwynne
2016-04-13implement handling of scsi reads and writesDavid Gwynne
2016-04-13enable interrupts before attaching the scsibusDavid Gwynne
2016-04-13allocate a queue for io commands and tell the chip about it.David Gwynne
2016-04-13nvme_q_create() issues the commands to tell the chip about io queuesDavid Gwynne
2016-04-13stub out handling of TEST_UNIT_READY, PREVENT_ALLOW, and START_STOPDavid Gwynne
2016-04-13implement handling of scsi read capacity commandsDavid Gwynne
2016-04-13implement basic scsi inquiry handlingDavid Gwynne
2016-04-13implement the guts of the scsi probe and free functionDavid Gwynne
2016-04-13wire up the scsi midlayer. scsibus should appear after this.David Gwynne
2016-04-13allocate an array of things to hold info about namespacesDavid Gwynne
2016-04-13stash the controller identify and number of namespaces in the softc.David Gwynne
2016-04-13provide an scsi_adapter and stub functions for emulation to sit inDavid Gwynne
2016-04-13nvme_sqe_fill will post a copy of an sqe from a callerDavid Gwynne
2016-04-13poll for command completion on the cqe itll be of calling nvme_intrDavid Gwynne
2016-04-13make nvme_poll return the flags from the completion queue entryDavid Gwynne
2016-04-13keep track of the queue id in nvme_queue.David Gwynne
2016-04-13rename idx to id in nvme_q_allocDavid Gwynne
2016-04-13nvme_dmamem_alloc runs in autoconf or process context, so it can sleepDavid Gwynne
2016-04-12shuffle attach so we read chip capabilities before operating on itDavid Gwynne
2016-01-15when enabling the controller, wait till CSTS.RDY lights up.David Gwynne
2016-01-15feng shui.David Gwynne
2016-01-15handle the version register like ahci.David Gwynne
2016-01-15wrap up dma syncs for the whole mapping.David Gwynne