Re: [PATCH V13 3/9] PCI: Create PCIe library functions in support of DOE mailboxes.

From: Ira Weiny
Date: Mon Jul 11 2022 - 15:13:41 EST


On Thu, Jul 07, 2022 at 11:22:23AM -0500, Bjorn Helgaas wrote:
> On Tue, Jul 05, 2022 at 08:49:26AM -0700, ira.weiny@xxxxxxxxx wrote:
> > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
>
> Possible subject:
>
> PCI/DOE: Add DOE mailbox support functions
>
> (no trailing period required)
>
> > Introduced in a PCIe r6.0, sec 6.30, DOE provides a config space based
> > mailbox with standard protocol discovery. Each mailbox is accessed
> > through a DOE Extended Capability.
> >
> > Each DOE mailbox must support the DOE discovery protocol in addition to
> > any number of additional protocols.
> >
> > Define core PCIe functionality to manage a single PCIe DOE mailbox at a
> > defined config space offset. Functionality includes iterating,
> > creating, query of supported protocol, and task submission. Destruction
> > of the mailboxes is device managed.
> >
> > Cc: "Li, Ming" <ming4.li@xxxxxxxxx>
> > Cc: Bjorn Helgaas <helgaas@xxxxxxxxxx>
> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> > Co-developed-by: Ira Weiny <ira.weiny@xxxxxxxxx>
> > Signed-off-by: Ira Weiny <ira.weiny@xxxxxxxxx>
>
> Whenever the CXL folks are happy with this:
>
> Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>
>
> > +static int pci_doe_recv_resp(struct pci_doe_mb *doe_mb, struct pci_doe_task *task)
> > ...
> > + pci_err(pdev,
> > + "[%x] expected [VID, Protocol] = [%04x, %02x], got [%04x, %02x]\n",
>
> Since the string already wraps, I think there's no benefit to starting
> it on its own line. Joining with "pci_err(pdev, "[%x] ..." improves
> greppability slightly.
>
> > + pci_err(pdev,
> > + "[%x] busy detected; another entity is sending conflicting requests\n",
> > + offset);
>
> Ditto.
>
> > + * pci_doe_submit_task() - Submit a task to be processed by the state machine
> > ...
> > + * RETURNS: 0 when task has been successful queued, -ERRNO on error
>
> successfully
>
> > +int pci_doe_submit_task(struct pci_doe_mb *doe_mb, struct pci_doe_task *task)
> > ...
> > + * DOE requests must be a whole number of DW
> > + * and the response needs to be big enough for at least 1 DW
>
> Rewrap to fill 78 columns or so.

Thanks, I've fixed these up and will submit a 13.1 soon with Willy's change to
xa_mk_value() which he caught from the other thread.

Thanks again for all the review,
Ira