Re: [PATCH v18 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-05-01 Thread Frank Li
On Mon, Apr 14, 2025 at 02:30:54PM -0400, Frank Li wrote: Marc Zyngier: Do you have additional comments for this version? Frank Li

[PATCH v18 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-04-14 Thread Frank Li
│ ││ ││ │ │ ││ ││ │ │ ││ └┘ └───┘ └┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-frank...@nxp.com/ 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. Previous v2 discussion here. https

[PATCH v18 15/15] arm64: dts: imx95: Add msi-map for pci-ep device

2025-04-14 Thread Frank Li
Add msi-map for pci-ep device. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/imx95.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale

[PATCH v18 07/15] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller

2025-04-14 Thread Frank Li
iklas Cassel Signed-off-by: Frank Li --- Change from v15 to v16 - fix rebase conflict Change from v14 to v15 - check CONFIG_GENERIC_MSI Fix below build error | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202502082204.6prr3cfg-...@intel.com/ All errors (new

[PATCH v18 12/15] selftests: pci_endpoint: Add doorbell test case

2025-04-14 Thread Frank Li
Add doorbell test case. Signed-off-by: Frank Li --- change from v14 to v16 - Add set IRQ type change from v13 to v14 - merge to selftests framework --- .../selftests/pci_endpoint/pci_endpoint_test.c | 28 ++ 1 file changed, 28 insertions(+) diff --git a/tools/testing

[PATCH v18 14/15] pci: imx6: Add LUT setting for MSI/IOMMU in Endpoint mode

2025-04-14 Thread Frank Li
Support only one physical function, so call imx_pcie_add_lut_by_rid(0) to add a single LUT entry when operating in EP mode. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 8 +++- 1 file changed, 7

[PATCH v18 04/15] dt-bindings: PCI: pci-ep: Add support for iommu-map and msi-map

2025-04-14 Thread Frank Li
systems and is therefore not a reliable identifier. Signed-off-by: Frank Li --- Change from v17 to v18 - mask max value should 0x7 - order according to property name Change from v16 to v17 - new patch --- Documentation/devicetree/bindings/pci/pci-ep.yaml | 68 +++ 1 file

[PATCH v18 13/15] pci: imx6: Add helper function imx_pcie_add_lut_by_rid()

2025-04-14 Thread Frank Li
Add helper function imx_pcie_add_lut_by_rid(), which will be used for Endpoint mode in the future. No functional change. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 17 ++--- 1 file changed

[PATCH v18 09/15] PCI: endpoint: Add pci_epf_align_inbound_addr() helper for address alignment

2025-04-14 Thread Frank Li
Introduce the helper function pci_epf_align_inbound_addr() to adjust addresses according to PCI BAR alignment requirements, converting addresses into base and offset values. Signed-off-by: Frank Li --- Change from v15 to v16 - none Change from v14 to v15 - change out address type to dma_addr_t

[PATCH v18 11/15] misc: pci_endpoint_test: Add doorbell test case

2025-04-14 Thread Frank Li
case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v14 to v16 - none Change from v13 to v14 - update to use pci_endpoint_test -f pcie_ep_doorbell - change ioctrl id to fix conflict Change from v9 to v13 - none Change from v8 to v9 - change PCITEST_DOORBELL to 0xa Cha

[PATCH v18 10/15] PCI: endpoint: pci-epf-test: Add doorbell test support

2025-04-14 Thread Frank Li
pci_endpoint_test -f pcie_ep_doorbell' return success. If EP side doesn't support MSI, the same to 'F'. F: 'pci_endpoint_test -f pcie_ep_doorbell' return failure, other case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v15 to v16 - use le32

[PATCH v18 08/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-04-14 Thread Frank Li
Some MSI controller change address/data pair when irq_set_affinity(). Current PCI endpoint can't support this type MSI controller. So add flag MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate doorbell. Signed-off-by: Frank Li --- change from v14 to v16 - none change from

[PATCH v18 06/15] PCI: endpoint: Set ID and of_node for function driver

2025-04-14 Thread Frank Li
hem. Setting the ID and 'of_node' prepares for proper support. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 new patch --- drivers/pci/endpoint/pci-epf-core.c | 4 include/linux/pci-epf.h | 2 ++ 2 files changed, 6 insertions(+) diff --gi

[PATCH v18 05/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-04-14 Thread Frank Li
^^^ 0xc is implement defined sideband information, which append to AXI write transaction. ^ 0 is function index. msi-mask = <0x7> } Check msi-map if msi-parent missed to keep compatility with existed system. Signed-off-by

[PATCH v18 03/15] irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS

2025-04-14 Thread Frank Li
the PCIe Root Complex (RC) side. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v12 - roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-...@kernel.org/ change from v11 to v12

[PATCH v18 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-04-14 Thread Frank Li
remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org

[PATCH v18 01/15] platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()

2025-04-14 Thread Frank Li
: Marc Zyngier Signed-off-by: Frank Li --- Change from v14 to v16 - use Marc Zyngier's suggested commit message - Add Marc Zyngier's ack tag change from v14 to v15 - none change from v13 to v14 - bring back from v9 and remove fixup and cc stable before it is new use case. --- dr

[PATCH v17 05/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-04-10 Thread Frank Li
^^^ 0xc is implement defined sideband information, which append to AXI write transaction. ^ 0 is function index. msi-mask = <0x7> } Check msi-map if msi-parent missed to keep compatility with existed system. Signed-off-by

[PATCH v17 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-04-10 Thread Frank Li
│ ││ ││ │ │ ││ ││ │ │ ││ └┘ └───┘ └┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-frank...@nxp.com/ 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. Previous v2 discussion here. https

[PATCH v17 13/15] pci: imx6: Add helper function imx_pcie_add_lut_by_rid()

2025-04-10 Thread Frank Li
Add helper function imx_pcie_add_lut_by_rid(), which will be used for Endpoint mode in the future. No functional change. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 17 ++--- 1 file changed

[PATCH v17 15/15] arm64: dts: imx95: Add msi-map for pci-ep device

2025-04-10 Thread Frank Li
Add msi-map for pci-ep device. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/imx95.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale

[PATCH v17 01/15] platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()

2025-04-10 Thread Frank Li
: Marc Zyngier Signed-off-by: Frank Li --- Change from v14 to v16 - use Marc Zyngier's suggested commit message - Add Marc Zyngier's ack tag change from v14 to v15 - none change from v13 to v14 - bring back from v9 and remove fixup and cc stable before it is new use case. --- dr

[PATCH v17 07/15] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller

2025-04-10 Thread Frank Li
iklas Cassel Signed-off-by: Frank Li --- Change from v15 to v16 - fix rebase conflict Change from v14 to v15 - check CONFIG_GENERIC_MSI Fix below build error | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202502082204.6prr3cfg-...@intel.com/ All errors (new

[PATCH v17 09/15] PCI: endpoint: Add pci_epf_align_inbound_addr() helper for address alignment

2025-04-10 Thread Frank Li
Introduce the helper function pci_epf_align_inbound_addr() to adjust addresses according to PCI BAR alignment requirements, converting addresses into base and offset values. Signed-off-by: Frank Li --- Change from v15 to v16 - none Change from v14 to v15 - change out address type to dma_addr_t

[PATCH v17 12/15] selftests: pci_endpoint: Add doorbell test case

2025-04-08 Thread Frank Li
Add doorbell test case. Signed-off-by: Frank Li --- change from v14 to v16 - Add set IRQ type change from v13 to v14 - merge to selftests framework --- .../selftests/pci_endpoint/pci_endpoint_test.c | 28 ++ 1 file changed, 28 insertions(+) diff --git a/tools/testing

[PATCH v17 08/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-04-07 Thread Frank Li
Some MSI controller change address/data pair when irq_set_affinity(). Current PCI endpoint can't support this type MSI controller. So add flag MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate doorbell. Signed-off-by: Frank Li --- change from v14 to v16 - none change from

[PATCH v17 11/15] misc: pci_endpoint_test: Add doorbell test case

2025-04-07 Thread Frank Li
case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v14 to v16 - none Change from v13 to v14 - update to use pci_endpoint_test -f pcie_ep_doorbell - change ioctrl id to fix conflict Change from v9 to v13 - none Change from v8 to v9 - change PCITEST_DOORBELL to 0xa Cha

[PATCH v17 06/15] PCI: endpoint: Set ID and of_node for function driver

2025-04-07 Thread Frank Li
hem. Setting the ID and 'of_node' prepares for proper support. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 new patch --- drivers/pci/endpoint/pci-epf-core.c | 4 include/linux/pci-epf.h | 2 ++ 2 files changed, 6 insertions(+) diff --gi

[PATCH v17 10/15] PCI: endpoint: pci-epf-test: Add doorbell test support

2025-04-07 Thread Frank Li
pci_endpoint_test -f pcie_ep_doorbell' return success. If EP side doesn't support MSI, the same to 'F'. F: 'pci_endpoint_test -f pcie_ep_doorbell' return failure, other case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v15 to v16 - use le32

[PATCH v17 14/15] pci: imx6: Add LUT setting for MSI/IOMMU in Endpoint mode

2025-04-07 Thread Frank Li
Support only one physical function, so call imx_pcie_add_lut_by_rid(0) to add a single LUT entry when operating in EP mode. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 8 +++- 1 file changed, 7

[PATCH v17 04/15] dt-bindings: PCI: pci-ep: Add support for iommu-map and msi-map

2025-04-07 Thread Frank Li
systems and is therefore not a reliable identifier. Signed-off-by: Frank Li --- Change from v16 to v17 - new patch --- Documentation/devicetree/bindings/pci/pci-ep.yaml | 67 +++ 1 file changed, 67 insertions(+) diff --git a/Documentation/devicetree/bindings/pci/pci-ep.yaml b

[PATCH v17 03/15] irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS

2025-04-07 Thread Frank Li
the PCIe Root Complex (RC) side. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v12 - roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-...@kernel.org/ change from v11 to v12

[PATCH v17 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-04-07 Thread Frank Li
remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org

Re: [PATCH] remoteproc: imx_rproc: Add mutex protection for workqueue

2025-04-05 Thread Frank Li
queue_add_split > virtqueue_add_inbuf > rpmsg_recv_done > vring_interrupt > rproc_vq_interrupt > imx_rproc_vq_work > process_one_work > worker_thread > kthread > ret_from_fork > > Signed-off-by: Peng Fan Reviewed-by: Frank Li > --- > drivers/remoteproc/

Re: [PATCH v16 04/15] dt-bindings: pci: pci-msi: Add support for PCI Endpoint msi-map

2025-04-04 Thread Frank Li
On Fri, Apr 04, 2025 at 03:11:40PM -0500, Rob Herring wrote: > On Fri, Apr 04, 2025 at 03:01:05PM -0400, Frank Li wrote: > > Document the use of msi-map for PCI Endpoint (EP) controllers, which can > > use MSI as a doorbell mechanism. Each EP controller can support up to 8 > &g

[PATCH v16 15/15] arm64: dts: imx95: Add msi-map for pci-ep device

2025-04-04 Thread Frank Li
Add msi-map for pci-ep device. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/imx95.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale

[PATCH v16 13/15] pci: imx6: Add helper function imx_pcie_add_lut_by_rid()

2025-04-04 Thread Frank Li
Add helper function imx_pcie_add_lut_by_rid(), which will be used for Endpoint mode in the future. No functional change. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 17 ++--- 1 file changed

[PATCH v16 14/15] pci: imx6: Add LUT setting for MSI/IOMMU in Endpoint mode

2025-04-04 Thread Frank Li
Support only one physical function, so call imx_pcie_add_lut_by_rid(0) to add a single LUT entry when operating in EP mode. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 8 +++- 1 file changed, 7

[PATCH v16 08/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-04-04 Thread Frank Li
Some MSI controller change address/data pair when irq_set_affinity(). Current PCI endpoint can't support this type MSI controller. So add flag MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate doorbell. Signed-off-by: Frank Li --- change from v14 to v16 - none change from

[PATCH v16 12/15] selftests: pci_endpoint: Add doorbell test case

2025-04-04 Thread Frank Li
Add doorbell test case. Signed-off-by: Frank Li --- change from v14 to v16 - Add set IRQ type change from v13 to v14 - merge to selftests framework --- .../selftests/pci_endpoint/pci_endpoint_test.c | 28 ++ 1 file changed, 28 insertions(+) diff --git a/tools/testing

[PATCH v16 11/15] misc: pci_endpoint_test: Add doorbell test case

2025-04-04 Thread Frank Li
case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v14 to v16 - none Change from v13 to v14 - update to use pci_endpoint_test -f pcie_ep_doorbell - change ioctrl id to fix conflict Change from v9 to v13 - none Change from v8 to v9 - change PCITEST_DOORBELL to 0xa Cha

[PATCH v16 10/15] PCI: endpoint: pci-epf-test: Add doorbell test support

2025-04-04 Thread Frank Li
pci_endpoint_test -f pcie_ep_doorbell' return success. If EP side doesn't support MSI, the same to 'F'. F: 'pci_endpoint_test -f pcie_ep_doorbell' return failure, other case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v15 to v16 - use le32

[PATCH v16 09/15] PCI: endpoint: Add pci_epf_align_inbound_addr() helper for address alignment

2025-04-04 Thread Frank Li
Introduce the helper function pci_epf_align_inbound_addr() to adjust addresses according to PCI BAR alignment requirements, converting addresses into base and offset values. Signed-off-by: Frank Li --- Change from v15 to v16 - none Change from v14 to v15 - change out address type to dma_addr_t

[PATCH v16 07/15] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller

2025-04-04 Thread Frank Li
iklas Cassel Signed-off-by: Frank Li --- Change from v15 to v16 - fix rebase conflict Change from v14 to v15 - check CONFIG_GENERIC_MSI Fix below build error | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202502082204.6prr3cfg-...@intel.com/ All errors (new

[PATCH v16 06/15] PCI: endpoint: Set ID and of_node for function driver

2025-04-04 Thread Frank Li
hem. Setting the ID and 'of_node' prepares for proper support. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 new patch --- drivers/pci/endpoint/pci-epf-core.c | 4 include/linux/pci-epf.h | 2 ++ 2 files changed, 6 insertions(+) diff --gi

[PATCH v16 05/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-04-04 Thread Frank Li
^^^ 0xc is implement defined sideband information, which append to AXI write transaction. ^ 0 is function index. msi-mask = <0x7> } Check msi-map if msi-parent missed to keep compatility with existed system. Signed-off-by

[PATCH v16 04/15] dt-bindings: pci: pci-msi: Add support for PCI Endpoint msi-map

2025-04-04 Thread Frank Li
], enabling msi-map to associate each child device with a specific msi-specifier. Include a device tree example illustrating this configuration. Signed-off-by: Frank Li --- change from v15 to v16 - new patch --- Documentation/devicetree/bindings/pci/pci-msi.txt | 51 +++ 1 file

[PATCH v16 03/15] irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS

2025-04-04 Thread Frank Li
the PCIe Root Complex (RC) side. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v12 - roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-...@kernel.org/ change from v11 to v12

[PATCH v16 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-04-04 Thread Frank Li
remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li --- change from v14 to v16 - none change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org

[PATCH v16 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-04-04 Thread Frank Li
│ ││ ││ │ │ ││ ││ │ │ ││ └┘ └───┘ └┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-frank...@nxp.com/ 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. Previous v2 discussion here. https

[PATCH v16 01/15] platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()

2025-04-04 Thread Frank Li
: Marc Zyngier Signed-off-by: Frank Li --- Change from v14 to v16 - use Marc Zyngier's suggested commit message - Add Marc Zyngier's ack tag change from v14 to v15 - none change from v13 to v14 - bring back from v9 and remove fixup and cc stable before it is new use case. --- dr

Re: [PATCH v3] remoteproc: imx_dsp_rproc: Add support for DSP-specific features

2025-04-04 Thread Frank Li
gic number.\n"); > + goto ignored; > + } > + > + /* > + * For now, in struct fw_rsc_imx_dsp, version 0, > + * only FEATURE_DONT_WAIT_FW_READY is valid. > + * > + * When adding new features, please upgrade version. > + */ > + if (

Re: [PATCH v15 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-03-10 Thread Frank Li
m to ensure that the underlying irqdomain provides a > immutable address/data pair. > > So it does not matter for GIC-ITS, but in the larger picture it matters. Marc: Do you satisfy Thomans's anwser? So I can respin this series. Frank > > Thanks, > > tglx

Re: [PATCH v15 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-03-03 Thread Frank Li
On Sat, Mar 01, 2025 at 11:10:35AM +, Marc Zyngier wrote: > On Tue, 11 Feb 2025 19:21:55 +, > Frank Li wrote: > > > > Add the flag IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and the API function > > irq_domain_is_msi_immutable() to check if the MSI controller retains an > &g

Re: [PATCH v15 04/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-03-03 Thread Frank Li
On Sat, Mar 01, 2025 at 11:37:14AM +, Marc Zyngier wrote: > On Tue, 11 Feb 2025 19:21:57 +, > Frank Li wrote: > > > > Some platform devices create child devices dynamically and require the > > parent device's msi-map to map device IDs to actual sideband infor

Re: [PATCH v15 07/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-03-03 Thread Frank Li
On Sat, Mar 01, 2025 at 11:44:50AM +, Marc Zyngier wrote: > On Tue, 11 Feb 2025 19:22:00 +, > Frank Li wrote: > > > > Some MSI controller change address/data pair when irq_set_affinity(). > > Current PCI endpoint can't support this type MSI controller. So add

Re: [PATCH v15 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-02-28 Thread Frank Li
On Thu, Feb 20, 2025 at 09:42:57PM +0100, Thomas Gleixner wrote: > On Thu, Feb 20 2025 at 15:01, Frank Li wrote: > > On Tue, Feb 11, 2025 at 02:21:53PM -0500, Frank Li wrote: > > > > Thomas Gleixner and Marc Zyngier: > > > > Do you have any comments about

Re: [PATCH v15 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-02-20 Thread Frank Li
On Tue, Feb 11, 2025 at 02:21:53PM -0500, Frank Li wrote: Thomas Gleixner and Marc Zyngier: Do you have any comments about irq/msi part? Frank

Re: [PATCH 4/5] reset: imx8mp-audiomix: Add support for DSP run/stall

2025-02-18 Thread Frank Li
; --- Reviewed-by: Frank Li > drivers/reset/reset-imx8mp-audiomix.c | 12 ++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/reset/reset-imx8mp-audiomix.c > b/drivers/reset/reset-imx8mp-audiomix.c > index 8cc0a6b58cbc..ee56d52a7278 10064

Re: [PATCH 3/5] reset: imx8mp-audiomix: Introduce active_low configuration option

2025-02-18 Thread Frank Li
On Tue, Feb 18, 2025 at 10:57:10AM +0200, Daniel Baluta wrote: > For EARC and EARC PHY the reset happens when clearing the reset bits. > Refactor assert/deassert function in order to take into account > the active_low configuratin option. > > Signed-off-by: Daniel Baluta Review

Re: [PATCH 3/5] reset: imx8mp-audiomix: Introduce active_low configuration option

2025-02-18 Thread Frank Li
tive_low configuratin option. > ^ > missing 'o'. run ./scripts/checkpatch.pl -g HEAD --strict --codespell Frank > > > > > Signed-off-by: Daniel Baluta > > --- > > drivers/reset/reset-imx8mp-aud

Re: [PATCH 2/5] reset: imx8mp-audiomix: Prepare the code for more reset bits

2025-02-18 Thread Frank Li
ASK 0x3 > +#define IMX8MP_AUDIOMIX_EARC_RESET_MASK 0x1 > +#define IMX8MP_AUDIOMIX_EARC_PHY_RESET_MASK 0x2 > + > +#define IMX8MP_AUDIOMIX_EARC 0 > +#define IMX8MP_AUDIOMIX_EARC_PHY 1 Does dt binding need such macro? If not, you

Re: [PATCH 1/5] reset: imx8mp-audiomix: Add prefix for internal macro

2025-02-18 Thread Frank Li
On Tue, Feb 18, 2025 at 10:57:08AM +0200, Daniel Baluta wrote: > This adds IMX8MP_AUDIOMIX_ prefix to internal macros > in order to show that specific macros are related to > audiomix. nit: warp at 75 chars Reviewed-by: Frank Li > > Signed-off-by: Daniel Baluta > --- >

[PATCH v15 15/15] arm64: dts: imx95-19x19-evk: Add PCIe1 endpoint function overlay file

2025-02-11 Thread Frank Li
Add an overlay file to configure PCIe1 to function as an endpoint. Enable PCIe1 to work as endpoint mode on the imx95-19x19-evk platform. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/Makefile | 3

[PATCH v15 14/15] arm64: dts: imx95: Add msi-map for pci-ep device

2025-02-11 Thread Frank Li
Add msi-map for pci-ep device. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/imx95.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale

[PATCH v15 13/15] pci: imx6: Add LUT setting for MSI/IOMMU in Endpoint mode

2025-02-11 Thread Frank Li
Support only one physical function, so call imx_pcie_add_lut_by_rid(0) to add a single LUT entry when operating in EP mode. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 8 +++- 1 file changed, 7

[PATCH v15 12/15] pci: imx6: Add helper function imx_pcie_add_lut_by_rid()

2025-02-11 Thread Frank Li
Add helper function imx_pcie_add_lut_by_rid(), which will be used for Endpoint mode in the future. No functional change. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 17 ++--- 1 file changed

[PATCH v15 11/15] selftests: pci_endpoint: Add doorbell test case

2025-02-11 Thread Frank Li
Add doorbell test case. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - merge to selftests framework --- .../selftests/pci_endpoint/pci_endpoint_test.c | 25 ++ 1 file changed, 25 insertions(+) diff --git a/tools/testing/selftests

[PATCH v15 10/15] misc: pci_endpoint_test: Add doorbell test case

2025-02-11 Thread Frank Li
case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v14 to v15 - none Change from v13 to v14 - update to use pci_endpoint_test -f pcie_ep_doorbell - change ioctrl id to fix conflict Change from v9 to v13 - none Change from v8 to v9 - change PCITEST_DOORBELL to 0xa Cha

[PATCH v15 08/15] PCI: endpoint: Add pci_epf_align_inbound_addr() helper for address alignment

2025-02-11 Thread Frank Li
Introduce the helper function pci_epf_align_inbound_addr() to adjust addresses according to PCI BAR alignment requirements, converting addresses into base and offset values. Signed-off-by: Frank Li --- Change form v14 to v15 - change out address type to dma_addr_t to fix below build issue

[PATCH v15 09/15] PCI: endpoint: pci-epf-test: Add doorbell test support

2025-02-11 Thread Frank Li
pci_endpoint_test -f pcie_ep_doorbell' return success. If EP side doesn't support MSI, the same to 'F'. F: 'pci_endpoint_test -f pcie_ep_doorbell' return failure, other case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- change from v14 to v15 - none Ch

[PATCH v15 07/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-02-11 Thread Frank Li
Some MSI controller change address/data pair when irq_set_affinity(). Current PCI endpoint can't support this type MSI controller. So add flag MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate doorbell. Signed-off-by: Frank Li --- change from v14 to v15 - none change from

[PATCH v15 06/15] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller

2025-02-11 Thread Frank Li
iklas Cassel Signed-off-by: Frank Li --- Change from v14 to v15 - check CONFIG_GENERIC_MSI Fix below build error | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202502082204.6prr3cfg-...@intel.com/ All errors (new ones prefixed by >>): drivers/pci/e

[PATCH v15 05/15] PCI: endpoint: Set ID and of_node for function driver

2025-02-11 Thread Frank Li
hem. Setting the ID and 'of_node' prepares for proper support. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 new patch --- drivers/pci/endpoint/pci-epf-core.c | 4 include/linux/pci-epf.h | 2 ++ 2 files changed, 6 insertions(+) diff --gi

[PATCH v15 04/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-02-11 Thread Frank Li
ined sideband information, which append to AXI write transaction. ^ 0 is function index. msi-mask = <0x7> } Check msi-map if msi-parent missed to keep compatility with existed system. Signed-off-by: Frank Li --- change from v14 to v15 - none c

[PATCH v15 03/15] irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS

2025-02-11 Thread Frank Li
the PCIe Root Complex (RC) side. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v12 - roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-...@kernel.org/ change from v11 to v12

[PATCH v15 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-02-11 Thread Frank Li
remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li --- change from v14 to v15 - none change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org

[PATCH v15 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-02-11 Thread Frank Li
│ ││ ││ │ │ ││ ││ │ │ ││ └┘ └───┘ └┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-frank...@nxp.com/ 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. Previous v2 discussion here. https

[PATCH v15 01/15] platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()

2025-02-11 Thread Frank Li
call msi_remove_device_irq_domain(). This cause above kernel dump when call platform_device_msi_init_and_alloc_irqs() again. Signed-off-by: Frank Li --- change from v14 5o v15 - none change from v13 to v14 - bring back from v9 and remove fixup and cc stable before it is new use case

[PATCH v14 15/15] arm64: dts: imx95-19x19-evk: Add PCIe1 endpoint function overlay file

2025-02-07 Thread Frank Li
Add an overlay file to configure PCIe1 to function as an endpoint. Enable PCIe1 to work as endpoint mode on the imx95-19x19-evk platform. Signed-off-by: Frank Li --- change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/Makefile | 3 +++ .../dts/freescale/imx95

[PATCH v14 14/15] arm64: dts: imx95: Add msi-map for pci-ep device

2025-02-07 Thread Frank Li
Add msi-map for pci-ep device. Signed-off-by: Frank Li --- change from v13 to v14 - new patch --- arch/arm64/boot/dts/freescale/imx95.dtsi | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/boot/dts/freescale/imx95.dtsi b/arch/arm64/boot/dts/freescale/imx95.dtsi index 6b8470cb3461a

[PATCH v14 13/15] pci: imx6: Add LUT setting for MSI/IOMMU in Endpoint mode

2025-02-07 Thread Frank Li
Support only one physical function, so call imx_pcie_add_lut_by_rid(0) to add a single LUT entry when operating in EP mode. Signed-off-by: Frank Li --- change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 8 +++- 1 file changed, 7 insertions(+), 1 deletion(-) diff

[PATCH v14 10/15] misc: pci_endpoint_test: Add doorbell test case

2025-02-07 Thread Frank Li
case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- Change from v13 to v14 - update to use pci_endpoint_test -f pcie_ep_doorbell - change ioctrl id to fix conflict Change from v9 to v13 - none Change from v8 to v9 - change PCITEST_DOORBELL to 0xa Change form v6

[PATCH v14 12/15] pci: imx6: Add helper function imx_pcie_add_lut_by_rid()

2025-02-07 Thread Frank Li
Add helper function imx_pcie_add_lut_by_rid(), which will be used for Endpoint mode in the future. No functional change. Signed-off-by: Frank Li --- change from v13 to v14 - new patch --- drivers/pci/controller/dwc/pci-imx6.c | 17 ++--- 1 file changed, 10 insertions(+), 7 deletions

[PATCH v14 11/15] selftests: pci_endpoint: Add doorbell test case

2025-02-07 Thread Frank Li
Add doorbell test case. Signed-off-by: Frank Li --- change from v13 to v14 - merge to selftests framework --- .../selftests/pci_endpoint/pci_endpoint_test.c | 25 ++ 1 file changed, 25 insertions(+) diff --git a/tools/testing/selftests/pci_endpoint/pci_endpoint_test.c

[PATCH v14 09/15] PCI: endpoint: pci-epf-test: Add doorbell test support

2025-02-07 Thread Frank Li
pci_endpoint_test -f pcie_ep_doorbell' return success. If EP side doesn't support MSI, the same to 'F'. F: 'pci_endpoint_test -f pcie_ep_doorbell' return failure, other case as usual. Tested-by: Niklas Cassel Signed-off-by: Frank Li --- Change from v9 to v14 -

[PATCH v14 08/15] PCI: endpoint: Add pci_epf_align_inbound_addr() helper for address alignment

2025-02-07 Thread Frank Li
Introduce the helper function pci_epf_align_inbound_addr() to adjust addresses according to PCI BAR alignment requirements, converting addresses into base and offset values. Signed-off-by: Frank Li --- Change form v9 to v14 - none change from v8 to v9 - pci_epf_align_inbound_addr(), base and

[PATCH v14 07/15] PCI: endpoint: pci-ep-msi: Add MSI address/data pair mutable check

2025-02-07 Thread Frank Li
Some MSI controller change address/data pair when irq_set_affinity(). Current PCI endpoint can't support this type MSI controller. So add flag MSI_FLAG_MUTABLE in include/linux/msi.h and check it when allocate doorbell. Signed-off-by: Frank Li --- change fomr v13 to v14 - bring v10 back C

[PATCH v14 06/15] PCI: endpoint: Add RC-to-EP doorbell support using platform MSI controller

2025-02-07 Thread Frank Li
iklas Cassel Signed-off-by: Frank Li --- Change from v13 to v14 - basic roll back to v9 - use device:id as msi-map input, its will handle it - use existed platform_device_msi_init_and_alloc_irqs() - pass down epf->dev point, because epf->dev of-node will be the same as epc's parent. Ch

[PATCH v14 05/15] PCI: endpoint: Set ID and of_node for function driver

2025-02-07 Thread Frank Li
hem. Setting the ID and 'of_node' prepares for proper support. Signed-off-by: Frank Li --- drivers/pci/endpoint/pci-epf-core.c | 4 include/linux/pci-epf.h | 2 ++ 2 files changed, 6 insertions(+) diff --git a/drivers/pci/endpoint/pci-epf-core.c b/drivers/pci/endpoint/pci

[PATCH v14 04/15] irqchip/gic-v3-its: Add support for device tree msi-map and msi-mask

2025-02-07 Thread Frank Li
ined sideband information, which append to AXI write transaction. ^ 0 is function index. msi-mask = <0x7> } Check msi-map if msi-parent missed to keep compatility with existed system. Signed-off-by: Frank Li --- drivers/irqchip/irq-gic-v3-its-ms

[PATCH v14 03/15] irqchip/gic-v3-its: Set IRQ_DOMAIN_FLAG_MSI_IMMUTABLE for ITS

2025-02-07 Thread Frank Li
the PCIe Root Complex (RC) side. Signed-off-by: Frank Li --- change from v13 to v12 - roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl-...@kernel.org/ change from v11 to v12 - new patch --- drivers

[PATCH v14 02/15] irqdomain: Add IRQ_DOMAIN_FLAG_MSI_IMMUTABLE and irq_domain_is_msi_immutable()

2025-02-07 Thread Frank Li
remain unchanged after setup. Use this function to verify if the MSI controller is immutable. Signed-off-by: Frank Li --- change from v13 to v14 - Roll back to v12 version because Marc Zyngier have concern about add DOMAIN_BUS_DEVICE_PCI_EP_MSI. https://lore.kernel.org/imx/861pxfq315.wl

[PATCH v14 01/15] platform-msi: Add msi_remove_device_irq_domain() in platform_device_msi_free_irqs_all()

2025-02-07 Thread Frank Li
call msi_remove_device_irq_domain(). This cause above kernel dump when call platform_device_msi_init_and_alloc_irqs() again. Signed-off-by: Frank Li --- change from v13 to v14 - bring back from v9 and remove fixup and cc stable before it is new use case. --- drivers/base/platform-msi.c | 1 + 1

[PATCH v14 00/15] PCI: EP: Add RC-to-EP doorbell with platform MSI controller

2025-02-07 Thread Frank Li
│ ││ ││ │ │ ││ ││ │ │ ││ └┘ └───┘ └┘ This patches based on old https://lore.kernel.org/imx/20221124055036.1630573-1-frank...@nxp.com/ 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. Previous v2 discussion here. https

Re: [PATCH][next] KVM: selftests: Fix spelling mistake "initally" -> "initially"

2025-02-04 Thread Janosch Frank
On 2/4/25 9:48 AM, Colin Ian King wrote: There is a spelling mistake in a literal string. Fix it. Signed-off-by: Colin Ian King --- tools/testing/selftests/kvm/s390/cmma_test.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/testing/selftests/kvm/s390/cmma_test.c b

Re: [PATCH bpf] selftests/bpf: add XDP_UMEM_TX_METADATA_LEN flag to umem_config

2024-12-20 Thread Frank Li
AULT_FLAGS, > + .flags = XDP_UMEM_TX_METADATA_LEN, look like "XSK_UMEM__DEFAULT_FLAGS | XDP_UMEM_TX_METADATA_LEN" You clean other flags, does it what you what? Frank > .tx_metadata_len = sizeof(struct xsk_tx_metadata), > }; > __u32 idx = 0; > -- > 2.34.1 >

Re: [PATCH 2/4] ASoC: dt-bindings: audio-graph-card2: add widgets and hp-det-gpios support

2024-10-23 Thread Frank Li
of strings, the first being the type of > + widget ("Microphone", "Line", "Headphone", "Speaker"), the > + second being the machine specific name for the widget. > +$ref: /schemas/types.yaml#/definitions/non-unique-string-array Is it

Re: [PATCH 4/4] arm64: dts: imx: add imx95 dts for sof

2024-10-23 Thread Frank Li
L", > + "Headphones", "HPOUTR", > + "Headset Mic", "MICBIAS", > + "IN3R", "Headset Mic", > + "IN1R", "Headset Mic"; > + };

Re: [PATCH 3/4] ASoC: SOF: imx: add driver for imx95

2024-10-23 Thread Frank Li
On Wed, Oct 23, 2024 at 12:21:13PM -0400, Laurentiu Mihalcea wrote: > From: Laurentiu Mihalcea > > Add SOF driver for imx95. > > Signed-off-by: Laurentiu Mihalcea > --- > sound/soc/sof/imx/Kconfig | 8 + > sound/soc/sof/imx/Makefile | 2 + > sound/soc/sof/imx/imx95.c | 383

  1   2   3   4   5   6   7   8   9   10   >