nvdimm: Provide nvdimm location information
Provide the acpi handle path as the location string for the nvdimm children of the nvdimm_root device. Reviewed by: kib Approved by: jhb (mentor) MFC after: 1 week Sponsored by: Intel Corporation Differential Revision: https://reviews.freebsd.org/D20528
This commit is contained in:
parent
ce7fb386d8
commit
806adc6c00
@ -560,6 +560,24 @@ nvdimm_root_write_ivar(device_t dev, device_t child, int index,
|
||||
return (0);
|
||||
}
|
||||
|
||||
static int
|
||||
nvdimm_root_child_location_str(device_t dev, device_t child, char *buf,
|
||||
size_t buflen)
|
||||
{
|
||||
ACPI_HANDLE handle;
|
||||
int res;
|
||||
|
||||
handle = nvdimm_root_get_acpi_handle(child);
|
||||
if (handle != NULL)
|
||||
res = snprintf(buf, buflen, "handle=%s", acpi_name(handle));
|
||||
else
|
||||
res = snprintf(buf, buflen, "unknown");
|
||||
|
||||
if (res >= buflen)
|
||||
return (EOVERFLOW);
|
||||
return (0);
|
||||
}
|
||||
|
||||
static device_method_t nvdimm_methods[] = {
|
||||
DEVMETHOD(device_probe, nvdimm_probe),
|
||||
DEVMETHOD(device_attach, nvdimm_attach),
|
||||
@ -582,6 +600,7 @@ static device_method_t nvdimm_root_methods[] = {
|
||||
DEVMETHOD(bus_add_child, bus_generic_add_child),
|
||||
DEVMETHOD(bus_read_ivar, nvdimm_root_read_ivar),
|
||||
DEVMETHOD(bus_write_ivar, nvdimm_root_write_ivar),
|
||||
DEVMETHOD(bus_child_location_str, nvdimm_root_child_location_str),
|
||||
DEVMETHOD_END
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user