nvmf: Add spdk_nvmf_ctrlr_get_regs to nvmf_transport.h
Add a way for the transport to query the value of the controller registers. Change-Id: Id365ff088989f6f8e74e26ff6f3d435f35bee2f4 Signed-off-by: Ben Walker <benjamin.walker@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/422 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jacek Kalwas <jacek.kalwas@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
e8c195b3eb
commit
68c2244cdc
@ -322,6 +322,21 @@ void spdk_nvmf_transport_register(const struct spdk_nvmf_transport_ops *ops);
|
||||
|
||||
int spdk_nvmf_ctrlr_connect(struct spdk_nvmf_request *req);
|
||||
|
||||
/**
|
||||
* A subset of struct spdk_nvme_registers that are emulated by a fabrics device.
|
||||
*/
|
||||
struct spdk_nvmf_registers {
|
||||
union spdk_nvme_cap_register cap;
|
||||
union spdk_nvme_vs_register vs;
|
||||
union spdk_nvme_cc_register cc;
|
||||
union spdk_nvme_csts_register csts;
|
||||
union spdk_nvme_aqa_register aqa;
|
||||
uint64_t asq;
|
||||
uint64_t acq;
|
||||
};
|
||||
|
||||
const struct spdk_nvmf_registers *spdk_nvmf_ctrlr_get_regs(struct spdk_nvmf_ctrlr *ctrlr);
|
||||
|
||||
void spdk_nvmf_request_free_buffers(struct spdk_nvmf_request *req,
|
||||
struct spdk_nvmf_transport_poll_group *group,
|
||||
struct spdk_nvmf_transport *transport);
|
||||
|
@ -644,6 +644,12 @@ spdk_nvmf_ctrlr_cmd_connect(struct spdk_nvmf_request *req)
|
||||
return _spdk_nvmf_ctrlr_connect(req);
|
||||
}
|
||||
|
||||
const struct spdk_nvmf_registers *
|
||||
spdk_nvmf_ctrlr_get_regs(struct spdk_nvmf_ctrlr *ctrlr)
|
||||
{
|
||||
return &ctrlr->vcprop;
|
||||
}
|
||||
|
||||
static uint64_t
|
||||
nvmf_prop_get_cap(struct spdk_nvmf_ctrlr *ctrlr)
|
||||
{
|
||||
|
@ -194,15 +194,7 @@ struct spdk_nvmf_ctrlr {
|
||||
char hostnqn[SPDK_NVMF_NQN_MAX_LEN + 1];
|
||||
struct spdk_nvmf_subsystem *subsys;
|
||||
|
||||
struct {
|
||||
union spdk_nvme_cap_register cap;
|
||||
union spdk_nvme_vs_register vs;
|
||||
union spdk_nvme_cc_register cc;
|
||||
union spdk_nvme_csts_register csts;
|
||||
union spdk_nvme_aqa_register aqa;
|
||||
uint64_t asq;
|
||||
uint64_t acq;
|
||||
} vcprop; /* virtual controller properties */
|
||||
struct spdk_nvmf_registers vcprop;
|
||||
|
||||
struct spdk_nvmf_ctrlr_feat feat;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user