Lines Matching refs:nvdimm
760 u32 nd_cmd_in_size(struct nvdimm *nvdimm, int cmd, in nd_cmd_in_size() argument
769 if (nvdimm && cmd == ND_CMD_SET_CONFIG_DATA && idx == 2) { in nd_cmd_in_size()
773 } else if (nvdimm && cmd == ND_CMD_VENDOR && idx == 2) { in nd_cmd_in_size()
787 u32 nd_cmd_out_size(struct nvdimm *nvdimm, int cmd, in nd_cmd_out_size() argument
797 if (nvdimm && cmd == ND_CMD_GET_CONFIG_DATA && idx == 1) in nd_cmd_out_size()
799 else if (nvdimm && cmd == ND_CMD_VENDOR && idx == 2) in nd_cmd_out_size()
801 else if (!nvdimm && cmd == ND_CMD_ARS_STATUS && idx == 2) { in nd_cmd_out_size()
891 struct nvdimm *nvdimm, unsigned int cmd, void *data) in nd_cmd_clear_to_send() argument
897 int rc = nd_desc->clear_to_send(nd_desc, nvdimm, cmd); in nd_cmd_clear_to_send()
904 if (!nvdimm && cmd == ND_CMD_CLEAR_ERROR) in nd_cmd_clear_to_send()
908 if (!nvdimm || cmd != ND_CMD_SET_CONFIG_DATA) in nd_cmd_clear_to_send()
913 if (atomic_read(&nvdimm->busy)) in nd_cmd_clear_to_send()
918 static int __nd_ioctl(struct nvdimm_bus *nvdimm_bus, struct nvdimm *nvdimm, in __nd_ioctl() argument
937 if (nvdimm) { in __nd_ioctl()
940 cmd_mask = nvdimm->cmd_mask; in __nd_ioctl()
941 dimm_name = dev_name(&nvdimm->dev); in __nd_ioctl()
967 nvdimm ? nvdimm_cmd_name(cmd) in __nd_ioctl()
978 in_size = nd_cmd_in_size(nvdimm, cmd, desc, i, in_env); in __nd_ioctl()
1002 u32 out_size = nd_cmd_out_size(nvdimm, cmd, desc, i, in __nd_ioctl()
1038 rc = nd_cmd_clear_to_send(nvdimm_bus, nvdimm, func, buf); in __nd_ioctl()
1042 rc = nd_desc->ndctl(nd_desc, nvdimm, cmd, buf, buf_len, &cmd_rc); in __nd_ioctl()
1046 if (!nvdimm && cmd == ND_CMD_CLEAR_ERROR && cmd_rc >= 0) { in __nd_ioctl()
1091 struct nvdimm *nvdimm = to_nvdimm(dev); in match_dimm() local
1093 return nvdimm->id == id; in match_dimm()
1109 struct nvdimm *nvdimm; in nvdimm_ioctl() local
1114 nvdimm = to_nvdimm(dev); in nvdimm_ioctl()
1115 rc = __nd_ioctl(nvdimm_bus, nvdimm, ro, cmd, arg); in nvdimm_ioctl()