MFC 348757,351225: acpi and nvdimm location_str updates348757:nvdimm: Provide nvdimm location informationProvide the acpi handle path as the location string for the nvdimmchildren of the nvdimm
MFC 348757,351225: acpi and nvdimm location_str updates348757:nvdimm: Provide nvdimm location informationProvide the acpi handle path as the location string for the nvdimmchildren of the nvdimm_root device.351225:Don't set the string "unknown" as a device's location_strReturn an empty string when the location is unknown instead of thestring "unknown". This ensures that all location entries are ofthe form key=val.Approved by: scottl (mentor)Sponsored by: Intel CorporationDifferential Revision: https://reviews.freebsd.org/D20644
show more ...
MFC r344474-r344476r344474:nvdimm: split spa dev into a separate entitySeparate code for exposing a device backed by a system physicaladdress range away from the NVDIMM spa code. This will allo
MFC r344474-r344476r344474:nvdimm: split spa dev into a separate entitySeparate code for exposing a device backed by a system physicaladdress range away from the NVDIMM spa code. This will allow afuture patch to add support for NVDIMM namespaces while using thesame device code.Submitted by: D Scott Phillips <[email protected]>Reviewed by: bwidawskSponsored by: Intel CorporationDifferential Revision: https://reviews.freebsd.org/D18736r344475:nvdimm: Read NVDIMM namespace labelsWhen attaching to NVDIMM devices, read and verify the namespacelabels from the special namespace label storage area. A laterchange will expose NVDIMM namespaces derived from this label data.Submitted by: D Scott Phillips <[email protected]>Discussed with: kibSponsored by: Intel CorporationDifferential Revision: https://reviews.freebsd.org/D18735r344476:nvdimm: Simple namespace supportAdd support for simple NVDIMM v1.2 namespaces from the UEFIversion 2.7 specification. The combination of NVDIMM regions andlabels can lead to a wide variety of namespace layouts. Here wesupport a simple subset of namespaces where each NVDIMM SPA rangeis composed of a single region per member dimm.Submitted by: D Scott Phillips <[email protected]>Discussed with: kibSponsored by: Intel CorporationDifferential Revision: https://reviews.freebsd.org/D18736
MFC r343629:nvdimm: only enumerate present nvdimm devices
MFC r343628:nvdimm: enumerate NVDIMM SPA ranges from the root device
MFC r343144:nvdimm: initialize SPA uuids statically.
MFC r343143:nvdimm: add a driver for the NVDIMM root device
MFC r339461:nvdimm(4): Fix GCC 6.4.0 build
MFC r342382:nvdimm SPA geom: Update bio fields needed for devstat_end_transaction_bio().
Add initial driver for ACPI NFIT-enumerated NVDIMMs.Driver enumerates NVDIMMs. Besides, for each found System PhysicalAddress (SPA) range, spaN geom provider is created, which allowsformatting a
Add initial driver for ACPI NFIT-enumerated NVDIMMs.Driver enumerates NVDIMMs. Besides, for each found System PhysicalAddress (SPA) range, spaN geom provider is created, which allowsformatting and mounting the region as the normal volume. Also,/dev/nvdimm_spaN node is created, which can be read/written/mapped byuserspace, the mapping is zero-copy.No support for block access methods implemented, labels are notparsed. No management interfaces are provided.Tested by: Intel, NetAppSponsored by: The FreeBSD FoundationApproved by: re (gjb)MFC after: 2 weeks