[RESEND v2 3/4] doc/devicetree: Persistent memory region bindings

Dan Williams dan.j.williams at intel.com
Thu Apr 5 00:21:32 AEST 2018


On Wed, Apr 4, 2018 at 7:04 AM, Oliver <oohall at gmail.com> wrote:
> On Wed, Apr 4, 2018 at 10:07 PM, Balbir Singh <bsingharora at gmail.com> wrote:
>> On Tue, 3 Apr 2018 10:37:51 -0700
>> Dan Williams <dan.j.williams at intel.com> wrote:
>>
>>> On Tue, Apr 3, 2018 at 7:24 AM, Oliver O'Halloran <oohall at gmail.com> wrote:
>>> > Add device-tree binding documentation for the nvdimm region driver.
>>> >
>>> > Cc: devicetree at vger.kernel.org
>>> > Signed-off-by: Oliver O'Halloran <oohall at gmail.com>
>>> > ---
>>> > v2: Changed name from nvdimm-region to pmem-region.
>>> >     Cleaned up the example binding and fixed the overlapping regions.
>>> >     Added support for multiple regions in a single reg.
>>> > ---
>>> >  .../devicetree/bindings/pmem/pmem-region.txt       | 80 ++++++++++++++++++++++
>>> >  MAINTAINERS                                        |  1 +
>>> >  2 files changed, 81 insertions(+)
>>> >  create mode 100644 Documentation/devicetree/bindings/pmem/pmem-region.txt
>>>
>>> Device-tree folks, does this look, ok?
>>>
>>> Oliver, is there any concept of a management interface to the
>>> device(s) backing these regions? libnvdimm calls these "nmem" devices
>>> and support operations like health status and namespace label
>>> management.
>
> It's something I'm planning on implementing as soon as someone gives
> me some hardware that isn't hacked up lab crap. I'm posting this
> version with just regions since people have been asking for something
> in upstream even if it's not fully featured.
>
> Grumbling aside, the plan is to have separate drivers for the DIMM
> type. Discovering DIMM devices happens via the normal discovery
> mechanisms (e.g. an NVDIMM supporting the JEDEC interface is an I2C
> device) and when binding to a specific DIMM device it registers a DIMM
> descriptor structure and a ndctl implementation for that DIMM type
> with of_pmem. When of_pmem binds to a region it can plug everything
> into the region specific bus. There's a few details to work out, but I
> think it's a reasonable approach.

Yeah, that sounds reasonable. It would mean that your management
interface would need to understand that nmems on different buses could
potentially move to another bus after a reconfiguration, but that's
not too much different than the ACPI case where nmems can join and
leave regions after a reset / reconfig.

>> We would need a way to have nmem and pmem-regions find each other. Since we
>> don't have the ACPI abstractions, the nmem region would need to add the
>> ability for a driver to have a phandle to the interleaving and nmem properties.
>>
>> I guess that would be a separate driver, that would manage the nmem devices
>> and there would be a way to relate the pmem and nmems. Oliver?
>
> Yes, that's the plan.

So Balbir, is that enough for an Acked-by for this device-tree proposal?


More information about the Linuxppc-dev mailing list