Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/nvme/nvme_private.h
Show First 20 Lines • Show All 166 Lines • ▼ Show 20 Lines | struct nvme_tracker { | ||||
TAILQ_ENTRY(nvme_tracker) tailq; | TAILQ_ENTRY(nvme_tracker) tailq; | ||||
struct nvme_request *req; | struct nvme_request *req; | ||||
struct nvme_qpair *qpair; | struct nvme_qpair *qpair; | ||||
struct callout timer; | struct callout timer; | ||||
bus_dmamap_t payload_dma_map; | bus_dmamap_t payload_dma_map; | ||||
uint16_t cid; | uint16_t cid; | ||||
uint64_t prp[NVME_MAX_PRP_LIST_ENTRIES]; | uint64_t *prp; | ||||
bus_addr_t prp_bus_addr; | bus_addr_t prp_bus_addr; | ||||
bus_dmamap_t prp_dma_map; | |||||
}; | }; | ||||
struct nvme_qpair { | struct nvme_qpair { | ||||
struct nvme_controller *ctrlr; | struct nvme_controller *ctrlr; | ||||
uint32_t id; | uint32_t id; | ||||
uint32_t phase; | uint32_t phase; | ||||
Show All 15 Lines | struct nvme_qpair { | ||||
int64_t num_intr_handler_calls; | int64_t num_intr_handler_calls; | ||||
struct nvme_command *cmd; | struct nvme_command *cmd; | ||||
struct nvme_completion *cpl; | struct nvme_completion *cpl; | ||||
bus_dma_tag_t dma_tag; | bus_dma_tag_t dma_tag; | ||||
bus_dma_tag_t dma_tag_payload; | bus_dma_tag_t dma_tag_payload; | ||||
bus_dmamap_t cmd_dma_map; | bus_dmamap_t queuemem_map; | ||||
uint64_t cmd_bus_addr; | uint64_t cmd_bus_addr; | ||||
bus_dmamap_t cpl_dma_map; | |||||
uint64_t cpl_bus_addr; | uint64_t cpl_bus_addr; | ||||
TAILQ_HEAD(, nvme_tracker) free_tr; | TAILQ_HEAD(, nvme_tracker) free_tr; | ||||
TAILQ_HEAD(, nvme_tracker) outstanding_tr; | TAILQ_HEAD(, nvme_tracker) outstanding_tr; | ||||
STAILQ_HEAD(, nvme_request) queued_req; | STAILQ_HEAD(, nvme_request) queued_req; | ||||
struct nvme_tracker **act_tr; | struct nvme_tracker **act_tr; | ||||
▲ Show 20 Lines • Show All 191 Lines • ▼ Show 20 Lines | |||||
void nvme_ctrlr_start_config_hook(void *ctrlr_arg); | void nvme_ctrlr_start_config_hook(void *ctrlr_arg); | ||||
void nvme_ctrlr_submit_admin_request(struct nvme_controller *ctrlr, | void nvme_ctrlr_submit_admin_request(struct nvme_controller *ctrlr, | ||||
struct nvme_request *req); | struct nvme_request *req); | ||||
void nvme_ctrlr_submit_io_request(struct nvme_controller *ctrlr, | void nvme_ctrlr_submit_io_request(struct nvme_controller *ctrlr, | ||||
struct nvme_request *req); | struct nvme_request *req); | ||||
void nvme_ctrlr_post_failed_request(struct nvme_controller *ctrlr, | void nvme_ctrlr_post_failed_request(struct nvme_controller *ctrlr, | ||||
struct nvme_request *req); | struct nvme_request *req); | ||||
void nvme_qpair_construct(struct nvme_qpair *qpair, uint32_t id, | int nvme_qpair_construct(struct nvme_qpair *qpair, uint32_t id, | ||||
uint16_t vector, uint32_t num_entries, | uint16_t vector, uint32_t num_entries, | ||||
uint32_t num_trackers, | uint32_t num_trackers, | ||||
struct nvme_controller *ctrlr); | struct nvme_controller *ctrlr); | ||||
void nvme_qpair_submit_tracker(struct nvme_qpair *qpair, | void nvme_qpair_submit_tracker(struct nvme_qpair *qpair, | ||||
struct nvme_tracker *tr); | struct nvme_tracker *tr); | ||||
void nvme_qpair_process_completions(struct nvme_qpair *qpair); | void nvme_qpair_process_completions(struct nvme_qpair *qpair); | ||||
void nvme_qpair_submit_request(struct nvme_qpair *qpair, | void nvme_qpair_submit_request(struct nvme_qpair *qpair, | ||||
struct nvme_request *req); | struct nvme_request *req); | ||||
▲ Show 20 Lines • Show All 105 Lines • Show Last 20 Lines |