Re: [PATCH v4 5/8] cxl/acpi: Introduce ACPI0017 driver and cxl_root

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 14, 2021 at 2:19 AM Jonathan Cameron
<Jonathan.Cameron@xxxxxxxxxx> wrote:
>
> On Thu, 13 May 2021 22:22:10 -0700
> Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
>
> > While CXL builds upon the PCI software model for dynamic enumeration and
> > control, a static platform component is required to bootstrap the CXL
> > memory layout. In addition to identifying the host bridges ACPI is
> > responsible for enumerating the CXL memory space that can be addressed
> > by decoders. This is similar to the requirement for ACPI to publish
> > resources reported by _CRS for PCI host bridges.
> >
> > Introduce the cxl_root object as an abstract "port" into the CXL.mem
> > address space described by HDM decoders identified by the ACPI
> > CEDT.CHBS.
> >
> > For now just establish the initial boilerplate and sysfs attributes, to
> > be followed by enumeration of the ports within the host bridge.
> >
> > Note the allocation of CXL core device objects is split into separate
> > alloc and add steps in order to separate the alloc error path (kfree())
> > from the device add error path (put_device()).
> >
> > Cc: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > Signed-off-by: Dan Williams <dan.j.williams@xxxxxxxxx>
>
> A few really minor editorial things in the docs that need tidying up.

Sure, I'm going to see if b4 can follow a v5 reply to just this one
patch, or otherwise hack it to support that flow so I don't need to
resend the full series.

> With that done
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
>
> I'll make the bold assumption that this is going to get applied
> before the DOE series and base that on top of this one.

Yes, the plan is to make the 'next' branch of:

git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl.git

...the stable non-rebasing development branch for contributions. bf gntcbttttt

>
> Thanks,
>
> Jonathan
>
> > ---
> >  Documentation/ABI/testing/sysfs-bus-cxl |   78 +++++++
> >  drivers/cxl/Kconfig                     |   14 +
> >  drivers/cxl/Makefile                    |    2
> >  drivers/cxl/acpi.c                      |   39 +++
> >  drivers/cxl/core.c                      |  360 +++++++++++++++++++++++++++++++
> >  drivers/cxl/cxl.h                       |   65 ++++++
> >  6 files changed, 558 insertions(+)
> >  create mode 100644 drivers/cxl/acpi.c
> >
> > diff --git a/Documentation/ABI/testing/sysfs-bus-cxl b/Documentation/ABI/testing/sysfs-bus-cxl
> > index 2fe7490ad6a8..d21469e2bf8b 100644
> > --- a/Documentation/ABI/testing/sysfs-bus-cxl
> > +++ b/Documentation/ABI/testing/sysfs-bus-cxl
> > @@ -24,3 +24,81 @@ Description:
> >               (RO) "Persistent Only Capacity" as bytes. Represents the
> >               identically named field in the Identify Memory Device Output
> >               Payload in the CXL-2.0 specification.
> > +
> > +What:           /sys/bus/cxl/devices/address_spaceX/start
> > +Date:           May, 2021
> > +KernelVersion:  v5.14
> > +Contact:        linux-cxl@xxxxxxxxxxxxxxx
> > +Description:
>
> I'm not that fussy about this, but others may comment on wrapping lines around 70 chars
> whereas can at least go to 80 for docs.

Sure I can reflow.

>
> > +             (RO) System-physical base address for an address range
> > +             that supports CXL.mem targets. A CXL address space can
> > +             be optionally populated with endpoints that decode that
> > +             range, similar to how devices behind a PCI bridge can
> > +             decode a portion of the bridge's secondary bus address
> > +             space.
> > +
> > +What:           /sys/bus/cxl/devices/address_spaceX/end
> > +Date:           May, 2021
> > +KernelVersion:  v5.14
> > +Contact:        linux-cxl@xxxxxxxxxxxxxxx
> > +Description:
> > +             (RO) System-physical end address for an address range
> > +             that supports CXL.mem targets. A CXL address space can
> > +             be optionally populated with endpoints that decode that
> > +             range, similar to how devices behind a PCI bridge can
> > +             decode a portion of the bridge's secondary bus address
> > +             space.
> > +
> > +What:                /sys/bus/cxl/devices/address_spaceX/supports_ram
>
> Inconsistent tabs vs spaces.

ok.



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux