/Linux-v5.4/drivers/nvdimm/ |
D | security.c | 50 static struct key *nvdimm_request_key(struct nvdimm *nvdimm) in nvdimm_request_key() argument 55 struct device *dev = &nvdimm->dev; in nvdimm_request_key() 57 sprintf(desc, "%s%s", NVDIMM_PREFIX, nvdimm->dimm_id); in nvdimm_request_key() 80 static const void *nvdimm_get_key_payload(struct nvdimm *nvdimm, in nvdimm_get_key_payload() argument 83 *key = nvdimm_request_key(nvdimm); in nvdimm_get_key_payload() 90 static struct key *nvdimm_lookup_user_key(struct nvdimm *nvdimm, in nvdimm_lookup_user_key() argument 96 struct device *dev = &nvdimm->dev; in nvdimm_lookup_user_key() 120 static const void *nvdimm_get_user_key_payload(struct nvdimm *nvdimm, in nvdimm_get_user_key_payload() argument 131 *key = nvdimm_lookup_user_key(nvdimm, id, subclass); in nvdimm_get_user_key_payload() 139 static int nvdimm_key_revalidate(struct nvdimm *nvdimm) in nvdimm_key_revalidate() argument [all …]
|
D | dimm_devs.c | 31 struct nvdimm *nvdimm = to_nvdimm(dev); in nvdimm_check_config_data() local 33 if (!nvdimm->cmd_mask || in nvdimm_check_config_data() 34 !test_bit(ND_CMD_GET_CONFIG_DATA, &nvdimm->cmd_mask)) { in nvdimm_check_config_data() 35 if (test_bit(NDD_ALIASING, &nvdimm->flags)) in nvdimm_check_config_data() 178 struct nvdimm *nvdimm = to_nvdimm(dev); in nvdimm_set_aliasing() local 180 set_bit(NDD_ALIASING, &nvdimm->flags); in nvdimm_set_aliasing() 185 struct nvdimm *nvdimm = to_nvdimm(dev); in nvdimm_set_locked() local 187 set_bit(NDD_LOCKED, &nvdimm->flags); in nvdimm_set_locked() 192 struct nvdimm *nvdimm = to_nvdimm(dev); in nvdimm_clear_locked() local 194 clear_bit(NDD_LOCKED, &nvdimm->flags); in nvdimm_clear_locked() [all …]
|
D | region_devs.c | 25 static int nvdimm_map_flush(struct device *dev, struct nvdimm *nvdimm, int dimm, in nvdimm_map_flush() argument 30 dev_dbg(dev, "%s: map %d flush address%s\n", nvdimm_name(nvdimm), in nvdimm_map_flush() 31 nvdimm->num_flush, nvdimm->num_flush == 1 ? "" : "es"); in nvdimm_map_flush() 33 struct resource *res = &nvdimm->flush_wpq[i]; in nvdimm_map_flush() 39 struct resource *res_j = &nvdimm->flush_wpq[j]; in nvdimm_map_flush() 72 struct nvdimm *nvdimm = nd_mapping->nvdimm; in nd_region_activate() local 74 if (test_bit(NDD_SECURITY_OVERWRITE, &nvdimm->flags)) { in nd_region_activate() 81 num_flush = min_not_zero(num_flush, nvdimm->num_flush); in nd_region_activate() 82 if (!nvdimm->num_flush) in nd_region_activate() 84 flush_data_size += nvdimm->num_flush * sizeof(void *); in nd_region_activate() [all …]
|
D | bus.c | 331 struct nvdimm_bus *nvdimm_to_bus(struct nvdimm *nvdimm) in nvdimm_to_bus() argument 333 return to_nvdimm_bus(nvdimm->dev.parent); in nvdimm_to_bus() 396 struct nvdimm *nvdimm = to_nvdimm(dev); in child_unregister() local 401 set_bit(NVDIMM_SECURITY_FROZEN, &nvdimm->sec.flags); in child_unregister() 402 if (test_and_clear_bit(NDD_WORK_PENDING, &nvdimm->flags)) in child_unregister() 405 cancel_delayed_work_sync(&nvdimm->dwork); in child_unregister() 818 u32 nd_cmd_in_size(struct nvdimm *nvdimm, int cmd, in nd_cmd_in_size() argument 827 if (nvdimm && cmd == ND_CMD_SET_CONFIG_DATA && idx == 2) { in nd_cmd_in_size() 831 } else if (nvdimm && cmd == ND_CMD_VENDOR && idx == 2) { in nd_cmd_in_size() 845 u32 nd_cmd_out_size(struct nvdimm *nvdimm, int cmd, in nd_cmd_out_size() argument [all …]
|
D | nd-core.h | 31 struct nvdimm { struct 51 struct nvdimm *nvdimm, enum nvdimm_passphrase_type ptype) in nvdimm_security_flags() argument 59 if (!nvdimm->sec.ops) in nvdimm_security_flags() 62 flags = nvdimm->sec.ops->get_flags(nvdimm, ptype); in nvdimm_security_flags() 64 dev_WARN_ONCE(&nvdimm->dev, hweight64(flags & state_flags) > 1, in nvdimm_security_flags() 69 int nvdimm_security_freeze(struct nvdimm *nvdimm);
|
D | namespace_devs.c | 799 struct nvdimm *nvdimm = data; in __reserve_free_pmem() local 817 if (nd_mapping->nvdimm != nvdimm) in __reserve_free_pmem() 848 struct nvdimm *nvdimm = nd_mapping->nvdimm; in reserve_free_pmem() local 851 rc = device_for_each_child(&nvdimm_bus->dev, nvdimm, in reserve_free_pmem() 1151 struct nvdimm *nvdimm = nd_mapping->nvdimm; in nvdimm_namespace_locked() local 1153 if (test_bit(NDD_LOCKED, &nvdimm->flags)) { in nvdimm_namespace_locked() 1154 dev_dbg(dev, "%s locked\n", nvdimm_name(nvdimm)); in nvdimm_namespace_locked() 1957 struct nvdimm *nvdimm = nd_region->mapping[i].nvdimm; in create_namespace_pmem() local 1965 nvdimm_name(nvdimm), nd_label->uuid); in create_namespace_pmem() 2474 struct nvdimm *nvdimm = nd_mapping->nvdimm; in deactivate_labels() local [all …]
|
D | nd.h | 123 struct nvdimm *nvdimm; member 236 struct nvdimm;
|
D | Makefile | 34 TEST_SRC := $(TOOLS)/testing/nvdimm/test
|
D | Kconfig | 36 Documentation/driver-api/nvdimm/nvdimm.rst for more details.
|
/Linux-v5.4/include/linux/ |
D | libnvdimm.h | 75 struct nvdimm; 78 struct nvdimm *nvdimm, unsigned int cmd, void *buf, 92 struct nvdimm *nvdimm, unsigned int cmd, void *data); 114 struct nvdimm *nvdimm; member 188 unsigned long (*get_flags)(struct nvdimm *nvdimm, 190 int (*freeze)(struct nvdimm *nvdimm); 191 int (*change_key)(struct nvdimm *nvdimm, 195 int (*unlock)(struct nvdimm *nvdimm, 197 int (*disable)(struct nvdimm *nvdimm, 199 int (*erase)(struct nvdimm *nvdimm, [all …]
|
/Linux-v5.4/drivers/acpi/nfit/ |
D | intel.c | 10 static unsigned long intel_security_flags(struct nvdimm *nvdimm, in intel_security_flags() argument 13 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in intel_security_flags() 38 if (nvdimm_in_overwrite(nvdimm) && ptype == NVDIMM_USER) in intel_security_flags() 41 rc = nvdimm_ctl(nvdimm, ND_CMD_CALL, &nd_cmd, sizeof(nd_cmd), NULL); in intel_security_flags() 44 nvdimm_name(nvdimm), rc, nd_cmd.cmd.status); in intel_security_flags() 77 static int intel_security_freeze(struct nvdimm *nvdimm) in intel_security_freeze() argument 79 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in intel_security_freeze() 96 rc = nvdimm_ctl(nvdimm, ND_CMD_CALL, &nd_cmd, sizeof(nd_cmd), NULL); in intel_security_freeze() 104 static int intel_security_change_key(struct nvdimm *nvdimm, in intel_security_change_key() argument 109 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in intel_security_change_key() [all …]
|
D | core.c | 174 static int xlat_nvdimm_status(struct nvdimm *nvdimm, void *buf, unsigned int cmd, in xlat_nvdimm_status() argument 177 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in xlat_nvdimm_status() 211 static int xlat_status(struct nvdimm *nvdimm, void *buf, unsigned int cmd, in xlat_status() argument 214 if (!nvdimm) in xlat_status() 216 return xlat_nvdimm_status(nvdimm, buf, cmd, status); in xlat_status() 397 static bool payload_dumpable(struct nvdimm *nvdimm, unsigned int func) in payload_dumpable() argument 399 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in payload_dumpable() 438 int acpi_nfit_ctl(struct nvdimm_bus_descriptor *nd_desc, struct nvdimm *nvdimm, in acpi_nfit_ctl() argument 442 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in acpi_nfit_ctl() 463 if (nvdimm) { in acpi_nfit_ctl() [all …]
|
D | nfit.h | 186 struct nvdimm *nvdimm; member 344 int acpi_nfit_ctl(struct nvdimm_bus_descriptor *nd_desc, struct nvdimm *nvdimm,
|
/Linux-v5.4/tools/testing/nvdimm/ |
D | dimm_devs.c | 15 struct nvdimm *nvdimm = to_nvdimm(dev); in security_show() local 21 nvdimm->sec.flags = nvdimm_security_flags(nvdimm, NVDIMM_USER); in security_show() 23 if (test_bit(NVDIMM_SECURITY_DISABLED, &nvdimm->sec.flags)) in security_show() 25 if (test_bit(NVDIMM_SECURITY_UNLOCKED, &nvdimm->sec.flags)) in security_show() 27 if (test_bit(NVDIMM_SECURITY_LOCKED, &nvdimm->sec.flags)) in security_show()
|
D | Kbuild | 21 NVDIMM_SRC := $(DRIVERS)/nvdimm
|
/Linux-v5.4/Documentation/ABI/testing/ |
D | sysfs-bus-nfit | 8 Contact: linux-nvdimm@lists.01.org 17 Contact: linux-nvdimm@lists.01.org 26 Contact: linux-nvdimm@lists.01.org 34 Contact: linux-nvdimm@lists.01.org 42 Contact: linux-nvdimm@lists.01.org 52 Contact: linux-nvdimm@lists.01.org 55 the state of the data on the nvdimm relative to its energy 71 Contact: linux-nvdimm@lists.01.org 87 Contact: linux-nvdimm@lists.01.org 95 Contact: linux-nvdimm@lists.01.org [all …]
|
/Linux-v5.4/arch/powerpc/platforms/pseries/ |
D | papr_scm.c | 38 struct nvdimm *nvdimm; member 248 int papr_scm_ndctl(struct nvdimm_bus_descriptor *nd_desc, struct nvdimm *nvdimm, in papr_scm_ndctl() argument 255 if (!nvdimm) in papr_scm_ndctl() 258 p = nvdimm_provider_data(nvdimm); in papr_scm_ndctl() 351 p->nvdimm = nvdimm_create(p->bus, p, papr_scm_dimm_groups, in papr_scm_nvdimm_init() 353 if (!p->nvdimm) { in papr_scm_nvdimm_init() 364 mapping.nvdimm = p->nvdimm; in papr_scm_nvdimm_init()
|
/Linux-v5.4/Documentation/driver-api/nvdimm/ |
D | security.rst | 17 The "security" sysfs attribute is provided in the nvdimm sysfs directory. For 32 overwrite <keyid> - wipe the entire nvdimm. 48 kernel API call during nvdimm unlock. It is up to the user to make sure that 51 A nvdimm encrypted-key of format enc32 has the description format of: 52 nvdimm:<bus-provider-specific-unique-id> 93 An key with the current passphrase payload that is tied to the nvdimm should be 101 An key with the current passphrase payload that is tied to the nvdimm should be 113 Overwrite can last tens of minutes or more depending on nvdimm size. 115 An encrypted-key with the current user passphrase that is tied to the nvdimm
|
D | index.rst | 10 nvdimm
|
/Linux-v5.4/tools/testing/nvdimm/test/ |
D | Kbuild | 2 ccflags-y := -I$(src)/../../../../drivers/nvdimm/
|
D | nfit.c | 665 struct nvdimm *nvdimm = NULL; in nfit_test_search_spa() local 687 nvdimm = nd_mapping->nvdimm; in nfit_test_search_spa() 689 spa->devices[0].nfit_device_handle = handle[nvdimm->id]; in nfit_test_search_spa() 1196 struct nvdimm *nvdimm, unsigned int cmd, void *buf, in nfit_test_ctl() argument 1208 if (nvdimm) { in nfit_test_ctl() 1209 struct nfit_mem *nfit_mem = nvdimm_provider_data(nvdimm); in nfit_test_ctl() 1210 unsigned long cmd_mask = nvdimm_cmd_mask(nvdimm); in nfit_test_ctl() 2695 struct nvdimm *nvdimm; in nfit_ctl_test() local 2756 nvdimm = devm_kzalloc(dev, sizeof(*nvdimm), GFP_KERNEL); in nfit_ctl_test() 2757 if (!nvdimm) in nfit_ctl_test() [all …]
|
/Linux-v5.4/Documentation/ABI/removed/ |
D | sysfs-bus-nfit | 4 Contact: linux-nvdimm@lists.01.org
|
/Linux-v5.4/Documentation/ABI/obsolete/ |
D | sysfs-class-dax | 4 Contact: linux-nvdimm@lists.01.org
|
/Linux-v5.4/Documentation/driver-api/ |
D | index.rst | 52 nvdimm/index
|
/Linux-v5.4/drivers/ |
D | Makefile | 73 obj-$(CONFIG_LIBNVDIMM) += nvdimm/
|