2023-09-21 02:01:10

by Frank Li

[permalink] [raw]
Subject: Re: [PATCH v2 0/5] Add RC-to-EP doorbell with platform MSI controller

On Mon, Sep 11, 2023 at 06:09:15PM -0400, Frank Li wrote:
> ┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐
> │ │ │ │ │ │
> │ │ │ PCI Endpoint │ │ PCI Host │
> │ │ │ │ │ │
> │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │
> │ │ │ │ │ │
> │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │
> │ Controller │ │ update doorbell register address│ │ │
> │ │ │ for BAR │ │ │
> │ │ │ │ │ 3. Write BAR<n>│
> │ │◄──┼───────────────────────────────────┼───┤ │
> │ │ │ │ │ │
> │ ├──►│ 4.Irq Handle │ │ │
> │ │ │ │ │ │
> │ │ │ │ │ │
> └────────────┘ └───────────────────────────────────┘ └────────────────┘

@mani:
Do you have chance to review this patch again?

Frank

>
> This patches based on old https://lore.kernel.org/imx/[email protected]/
>
> Original patch only target to vntb driver. But actually it is common
> method.
>
> This patches add new API to pci-epf-core, so any EP driver can use it.
>
> The key point is comments from Thomas Gleixner, who suggest use new
> PCI/IMS. But arm platform change still not be merged yet.
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-arm
>
> So I still use existed method implement RC to EP doorbell.
>
> If Thomas Gleixner want to continue work on devmsi-v2-arm, I can help test
> and update this patch.
>
> Change from v1 to v2
> - Add missed patch for endpont/pci-epf-test.c
> - Move alloc and free to epc driver from epf.
> - Provide general help function for EPC driver to alloc platform msi irq.
> - Fixed manivannan's comments.
>
> Frank Li (5):
> PCI: endpoint: Add RC-to-EP doorbell support using platform MSI
> controller
> PCI: dwc: add doorbell support by use MSI controller
> PCI: endpoint: pci-epf-test: add doorbell test
> misc: pci_endpoint_test: Add doorbell test case
> tools: PCI: Add 'B' option for test doorbell
>
> drivers/misc/pci_endpoint_test.c | 48 +++++
> .../pci/controller/dwc/pcie-designware-ep.c | 2 +
> drivers/pci/endpoint/functions/pci-epf-test.c | 59 +++++-
> drivers/pci/endpoint/pci-epc-core.c | 192 ++++++++++++++++++
> drivers/pci/endpoint/pci-epf-core.c | 44 ++++
> include/linux/pci-epc.h | 6 +
> include/linux/pci-epf.h | 7 +
> include/uapi/linux/pcitest.h | 1 +
> tools/pci/pcitest.c | 16 +-
> 9 files changed, 373 insertions(+), 2 deletions(-)
>
> --
> 2.34.1
>


2023-09-30 19:07:15

by Manivannan Sadhasivam

[permalink] [raw]
Subject: Re: [PATCH v2 0/5] Add RC-to-EP doorbell with platform MSI controller

On Wed, Sep 20, 2023 at 05:39:48PM -0400, Frank Li wrote:
> On Mon, Sep 11, 2023 at 06:09:15PM -0400, Frank Li wrote:
> > ┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐
> > │ │ │ │ │ │
> > │ │ │ PCI Endpoint │ │ PCI Host │
> > │ │ │ │ │ │
> > │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │
> > │ │ │ │ │ │
> > │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │
> > │ Controller │ │ update doorbell register address│ │ │
> > │ │ │ for BAR │ │ │
> > │ │ │ │ │ 3. Write BAR<n>│
> > │ │◄──┼───────────────────────────────────┼───┤ │
> > │ │ │ │ │ │
> > │ ├──►│ 4.Irq Handle │ │ │
> > │ │ │ │ │ │
> > │ │ │ │ │ │
> > └────────────┘ └───────────────────────────────────┘ └────────────────┘
>
> @mani:
> Do you have chance to review this patch again?

I was on vacation for past few weeks. Will take a look in the coming week.

- Mani

>
> Frank
>
> >
> > This patches based on old https://lore.kernel.org/imx/[email protected]/
> >
> > Original patch only target to vntb driver. But actually it is common
> > method.
> >
> > This patches add new API to pci-epf-core, so any EP driver can use it.
> >
> > The key point is comments from Thomas Gleixner, who suggest use new
> > PCI/IMS. But arm platform change still not be merged yet.
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-arm
> >
> > So I still use existed method implement RC to EP doorbell.
> >
> > If Thomas Gleixner want to continue work on devmsi-v2-arm, I can help test
> > and update this patch.
> >
> > Change from v1 to v2
> > - Add missed patch for endpont/pci-epf-test.c
> > - Move alloc and free to epc driver from epf.
> > - Provide general help function for EPC driver to alloc platform msi irq.
> > - Fixed manivannan's comments.
> >
> > Frank Li (5):
> > PCI: endpoint: Add RC-to-EP doorbell support using platform MSI
> > controller
> > PCI: dwc: add doorbell support by use MSI controller
> > PCI: endpoint: pci-epf-test: add doorbell test
> > misc: pci_endpoint_test: Add doorbell test case
> > tools: PCI: Add 'B' option for test doorbell
> >
> > drivers/misc/pci_endpoint_test.c | 48 +++++
> > .../pci/controller/dwc/pcie-designware-ep.c | 2 +
> > drivers/pci/endpoint/functions/pci-epf-test.c | 59 +++++-
> > drivers/pci/endpoint/pci-epc-core.c | 192 ++++++++++++++++++
> > drivers/pci/endpoint/pci-epf-core.c | 44 ++++
> > include/linux/pci-epc.h | 6 +
> > include/linux/pci-epf.h | 7 +
> > include/uapi/linux/pcitest.h | 1 +
> > tools/pci/pcitest.c | 16 +-
> > 9 files changed, 373 insertions(+), 2 deletions(-)
> >
> > --
> > 2.34.1
> >

--
மணிவண்ணன் சதாசிவம்

2023-10-10 14:21:59

by Frank Li

[permalink] [raw]
Subject: Re: [PATCH v2 0/5] Add RC-to-EP doorbell with platform MSI controller

On Sat, Sep 30, 2023 at 11:02:49AM +0200, Manivannan Sadhasivam wrote:
> On Wed, Sep 20, 2023 at 05:39:48PM -0400, Frank Li wrote:
> > On Mon, Sep 11, 2023 at 06:09:15PM -0400, Frank Li wrote:
> > > ┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐
> > > │ │ │ │ │ │
> > > │ │ │ PCI Endpoint │ │ PCI Host │
> > > │ │ │ │ │ │
> > > │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │
> > > │ │ │ │ │ │
> > > │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │
> > > │ Controller │ │ update doorbell register address│ │ │
> > > │ │ │ for BAR │ │ │
> > > │ │ │ │ │ 3. Write BAR<n>│
> > > │ │◄──┼───────────────────────────────────┼───┤ │
> > > │ │ │ │ │ │
> > > │ ├──►│ 4.Irq Handle │ │ │
> > > │ │ │ │ │ │
> > > │ │ │ │ │ │
> > > └────────────┘ └───────────────────────────────────┘ └────────────────┘
> >
> > @mani:
> > Do you have chance to review this patch again?
>
> I was on vacation for past few weeks. Will take a look in the coming week.

Ping?

Frank

>
> - Mani
>
> >
> > Frank
> >
> > >
> > > This patches based on old https://lore.kernel.org/imx/[email protected]/
> > >
> > > Original patch only target to vntb driver. But actually it is common
> > > method.
> > >
> > > This patches add new API to pci-epf-core, so any EP driver can use it.
> > >
> > > The key point is comments from Thomas Gleixner, who suggest use new
> > > PCI/IMS. But arm platform change still not be merged yet.
> > >
> > > git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-arm
> > >
> > > So I still use existed method implement RC to EP doorbell.
> > >
> > > If Thomas Gleixner want to continue work on devmsi-v2-arm, I can help test
> > > and update this patch.
> > >
> > > Change from v1 to v2
> > > - Add missed patch for endpont/pci-epf-test.c
> > > - Move alloc and free to epc driver from epf.
> > > - Provide general help function for EPC driver to alloc platform msi irq.
> > > - Fixed manivannan's comments.
> > >
> > > Frank Li (5):
> > > PCI: endpoint: Add RC-to-EP doorbell support using platform MSI
> > > controller
> > > PCI: dwc: add doorbell support by use MSI controller
> > > PCI: endpoint: pci-epf-test: add doorbell test
> > > misc: pci_endpoint_test: Add doorbell test case
> > > tools: PCI: Add 'B' option for test doorbell
> > >
> > > drivers/misc/pci_endpoint_test.c | 48 +++++
> > > .../pci/controller/dwc/pcie-designware-ep.c | 2 +
> > > drivers/pci/endpoint/functions/pci-epf-test.c | 59 +++++-
> > > drivers/pci/endpoint/pci-epc-core.c | 192 ++++++++++++++++++
> > > drivers/pci/endpoint/pci-epf-core.c | 44 ++++
> > > include/linux/pci-epc.h | 6 +
> > > include/linux/pci-epf.h | 7 +
> > > include/uapi/linux/pcitest.h | 1 +
> > > tools/pci/pcitest.c | 16 +-
> > > 9 files changed, 373 insertions(+), 2 deletions(-)
> > >
> > > --
> > > 2.34.1
> > >
>
> --
> மணிவண்ணன் சதாசிவம்

2023-10-16 14:51:43

by Frank Li

[permalink] [raw]
Subject: Re: [PATCH v2 0/5] Add RC-to-EP doorbell with platform MSI controller

On Tue, Oct 10, 2023 at 10:21:24AM -0400, Frank Li wrote:
> On Sat, Sep 30, 2023 at 11:02:49AM +0200, Manivannan Sadhasivam wrote:
> > On Wed, Sep 20, 2023 at 05:39:48PM -0400, Frank Li wrote:
> > > On Mon, Sep 11, 2023 at 06:09:15PM -0400, Frank Li wrote:
> > > > ┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐
> > > > │ │ │ │ │ │
> > > > │ │ │ PCI Endpoint │ │ PCI Host │
> > > > │ │ │ │ │ │
> > > > │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │
> > > > │ │ │ │ │ │
> > > > │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │
> > > > │ Controller │ │ update doorbell register address│ │ │
> > > > │ │ │ for BAR │ │ │
> > > > │ │ │ │ │ 3. Write BAR<n>│
> > > > │ │◄──┼───────────────────────────────────┼───┤ │
> > > > │ │ │ │ │ │
> > > > │ ├──►│ 4.Irq Handle │ │ │
> > > > │ │ │ │ │ │
> > > > │ │ │ │ │ │
> > > > └────────────┘ └───────────────────────────────────┘ └────────────────┘
> > >
> > > @mani:
> > > Do you have chance to review this patch again?
> >
> > I was on vacation for past few weeks. Will take a look in the coming week.
>
> Ping?
>
> Frank

@mani: did you have chance to look at this?

>
> >
> > - Mani
> >
> > >
> > > Frank
> > >
> > > >
> > > > This patches based on old https://lore.kernel.org/imx/[email protected]/
> > > >
> > > > Original patch only target to vntb driver. But actually it is common
> > > > method.
> > > >
> > > > This patches add new API to pci-epf-core, so any EP driver can use it.
> > > >
> > > > The key point is comments from Thomas Gleixner, who suggest use new
> > > > PCI/IMS. But arm platform change still not be merged yet.
> > > >
> > > > git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-arm
> > > >
> > > > So I still use existed method implement RC to EP doorbell.
> > > >
> > > > If Thomas Gleixner want to continue work on devmsi-v2-arm, I can help test
> > > > and update this patch.
> > > >
> > > > Change from v1 to v2
> > > > - Add missed patch for endpont/pci-epf-test.c
> > > > - Move alloc and free to epc driver from epf.
> > > > - Provide general help function for EPC driver to alloc platform msi irq.
> > > > - Fixed manivannan's comments.
> > > >
> > > > Frank Li (5):
> > > > PCI: endpoint: Add RC-to-EP doorbell support using platform MSI
> > > > controller
> > > > PCI: dwc: add doorbell support by use MSI controller
> > > > PCI: endpoint: pci-epf-test: add doorbell test
> > > > misc: pci_endpoint_test: Add doorbell test case
> > > > tools: PCI: Add 'B' option for test doorbell
> > > >
> > > > drivers/misc/pci_endpoint_test.c | 48 +++++
> > > > .../pci/controller/dwc/pcie-designware-ep.c | 2 +
> > > > drivers/pci/endpoint/functions/pci-epf-test.c | 59 +++++-
> > > > drivers/pci/endpoint/pci-epc-core.c | 192 ++++++++++++++++++
> > > > drivers/pci/endpoint/pci-epf-core.c | 44 ++++
> > > > include/linux/pci-epc.h | 6 +
> > > > include/linux/pci-epf.h | 7 +
> > > > include/uapi/linux/pcitest.h | 1 +
> > > > tools/pci/pcitest.c | 16 +-
> > > > 9 files changed, 373 insertions(+), 2 deletions(-)
> > > >
> > > > --
> > > > 2.34.1
> > > >
> >
> > --
> > மணிவண்ணன் சதாசிவம்

2023-10-16 17:17:02

by Manivannan Sadhasivam

[permalink] [raw]
Subject: Re: [PATCH v2 0/5] Add RC-to-EP doorbell with platform MSI controller

On Mon, Oct 16, 2023 at 10:50:58AM -0400, Frank Li wrote:
> On Tue, Oct 10, 2023 at 10:21:24AM -0400, Frank Li wrote:
> > On Sat, Sep 30, 2023 at 11:02:49AM +0200, Manivannan Sadhasivam wrote:
> > > On Wed, Sep 20, 2023 at 05:39:48PM -0400, Frank Li wrote:
> > > > On Mon, Sep 11, 2023 at 06:09:15PM -0400, Frank Li wrote:
> > > > > ┌────────────┐ ┌───────────────────────────────────┐ ┌────────────────┐
> > > > > │ │ │ │ │ │
> > > > > │ │ │ PCI Endpoint │ │ PCI Host │
> > > > > │ │ │ │ │ │
> > > > > │ │◄──┤ 1.platform_msi_domain_alloc_irqs()│ │ │
> > > > > │ │ │ │ │ │
> > > > > │ MSI ├──►│ 2.write_msi_msg() ├──►├─BAR<n> │
> > > > > │ Controller │ │ update doorbell register address│ │ │
> > > > > │ │ │ for BAR │ │ │
> > > > > │ │ │ │ │ 3. Write BAR<n>│
> > > > > │ │◄──┼───────────────────────────────────┼───┤ │
> > > > > │ │ │ │ │ │
> > > > > │ ├──►│ 4.Irq Handle │ │ │
> > > > > │ │ │ │ │ │
> > > > > │ │ │ │ │ │
> > > > > └────────────┘ └───────────────────────────────────┘ └────────────────┘
> > > >
> > > > @mani:
> > > > Do you have chance to review this patch again?
> > >
> > > I was on vacation for past few weeks. Will take a look in the coming week.
> >
> > Ping?
> >
> > Frank
>
> @mani: did you have chance to look at this?
>

Sorry for the long delay. I will take a look tomorrow.

- Mani

> >
> > >
> > > - Mani
> > >
> > > >
> > > > Frank
> > > >
> > > > >
> > > > > This patches based on old https://lore.kernel.org/imx/[email protected]/
> > > > >
> > > > > Original patch only target to vntb driver. But actually it is common
> > > > > method.
> > > > >
> > > > > This patches add new API to pci-epf-core, so any EP driver can use it.
> > > > >
> > > > > The key point is comments from Thomas Gleixner, who suggest use new
> > > > > PCI/IMS. But arm platform change still not be merged yet.
> > > > >
> > > > > git://git.kernel.org/pub/scm/linux/kernel/git/tglx/devel.git devmsi-v2-arm
> > > > >
> > > > > So I still use existed method implement RC to EP doorbell.
> > > > >
> > > > > If Thomas Gleixner want to continue work on devmsi-v2-arm, I can help test
> > > > > and update this patch.
> > > > >
> > > > > Change from v1 to v2
> > > > > - Add missed patch for endpont/pci-epf-test.c
> > > > > - Move alloc and free to epc driver from epf.
> > > > > - Provide general help function for EPC driver to alloc platform msi irq.
> > > > > - Fixed manivannan's comments.
> > > > >
> > > > > Frank Li (5):
> > > > > PCI: endpoint: Add RC-to-EP doorbell support using platform MSI
> > > > > controller
> > > > > PCI: dwc: add doorbell support by use MSI controller
> > > > > PCI: endpoint: pci-epf-test: add doorbell test
> > > > > misc: pci_endpoint_test: Add doorbell test case
> > > > > tools: PCI: Add 'B' option for test doorbell
> > > > >
> > > > > drivers/misc/pci_endpoint_test.c | 48 +++++
> > > > > .../pci/controller/dwc/pcie-designware-ep.c | 2 +
> > > > > drivers/pci/endpoint/functions/pci-epf-test.c | 59 +++++-
> > > > > drivers/pci/endpoint/pci-epc-core.c | 192 ++++++++++++++++++
> > > > > drivers/pci/endpoint/pci-epf-core.c | 44 ++++
> > > > > include/linux/pci-epc.h | 6 +
> > > > > include/linux/pci-epf.h | 7 +
> > > > > include/uapi/linux/pcitest.h | 1 +
> > > > > tools/pci/pcitest.c | 16 +-
> > > > > 9 files changed, 373 insertions(+), 2 deletions(-)
> > > > >
> > > > > --
> > > > > 2.34.1
> > > > >
> > >
> > > --
> > > மணிவண்ணன் சதாசிவம்

--
மணிவண்ணன் சதாசிவம்