Message ID | 20190924021849.3185-9-xiaowei.bao@nxp.com (mailing list archive) |
---|---|
State | Changes Requested, archived |
Delegated to: | Lorenzo Pieralisi |
Headers | show |
Series | Add the multiple PF support for DWC and Layerscape | expand |
Hi Xiaowei, On 24/09/19 7:48 am, Xiaowei Bao wrote: > dw_pcie_ep_raise_msix_irq was never called in the exisitng driver > before, because the ls1046a platform don't support the MSIX feature > and msix_capable was always set to false. > Now that add the ls1088a platform with MSIX support, but the existing > dw_pcie_ep_raise_msix_irq doesn't work, so use the doorbell method to > support the MSIX feature. It does work after [1]. So the commit message might not be exactly true. [1] -> https://lore.kernel.org/r/20200225081703.8857-1-kishon@ti.com Thanks Kishon > > Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com> > Reviewed-by: Andrew Murray <andrew.murray@arm.com> > --- > v2: > - No change > v3: > - Modify the commit message make it clearly. > v4: > - No change > > drivers/pci/controller/dwc/pci-layerscape-ep.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/pci/controller/dwc/pci-layerscape-ep.c b/drivers/pci/controller/dwc/pci-layerscape-ep.c > index 1e07287..5f0cb99 100644 > --- a/drivers/pci/controller/dwc/pci-layerscape-ep.c > +++ b/drivers/pci/controller/dwc/pci-layerscape-ep.c > @@ -79,7 +79,8 @@ static int ls_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, > case PCI_EPC_IRQ_MSI: > return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); > case PCI_EPC_IRQ_MSIX: > - return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); > + return dw_pcie_ep_raise_msix_irq_doorbell(ep, func_no, > + interrupt_num); > default: > dev_err(pci->dev, "UNKNOWN IRQ type\n"); > return -EINVAL; >
> -----Original Message----- > From: Kishon Vijay Abraham I <kishon@ti.com> > Sent: 2020年2月28日 19:41 > To: Xiaowei Bao <xiaowei.bao@nxp.com>; robh+dt@kernel.org; > mark.rutland@arm.com; shawnguo@kernel.org; Leo Li > <leoyang.li@nxp.com>; lorenzo.pieralisi@arm.com; M.h. Lian > <minghuan.lian@nxp.com>; Mingkai Hu <mingkai.hu@nxp.com>; Roy Zang > <roy.zang@nxp.com>; jingoohan1@gmail.com; > gustavo.pimentel@synopsys.com; andrew.murray@arm.com; > linux-pci@vger.kernel.org; linux-arm-kernel@lists.infradead.org; > devicetree@vger.kernel.org; linux-kernel@vger.kernel.org; > linuxppc-dev@lists.ozlabs.org > Subject: Re: [PATCH v4 08/11] PCI: layerscape: Modify the MSIX to the > doorbell mode > > Hi Xiaowei, > > On 24/09/19 7:48 am, Xiaowei Bao wrote: > > dw_pcie_ep_raise_msix_irq was never called in the exisitng driver > > before, because the ls1046a platform don't support the MSIX feature > > and msix_capable was always set to false. > > Now that add the ls1088a platform with MSIX support, but the existing > > dw_pcie_ep_raise_msix_irq doesn't work, so use the doorbell method to > > support the MSIX feature. > > > It does work after [1]. So the commit message might not be exactly true. Got it, I will verify it with your patch, do you mean that I should correct the commit message? I think we can reserve my MSI-X patch, this patch can provide another MSI-X trigger way, and this way is clearly stated in the DWC manual, thanks, please give your comments. Thanks Xiaowei > > [1] -> > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flore.ke > rnel.org%2Fr%2F20200225081703.8857-1-kishon%40ti.com&data=02% > 7C01%7Cxiaowei.bao%40nxp.com%7C84191df0cd09451ef3e608d7bc427745 > %7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C637184865969684 > 169&sdata=K9fvbpQ4xuuZKhWT6UV2M4SVyHxQ3LjpuJQztktLaRI%3D& > amp;reserved=0 > > Thanks > Kishon > > > > > Signed-off-by: Xiaowei Bao <xiaowei.bao@nxp.com> > > Reviewed-by: Andrew Murray <andrew.murray@arm.com> > > --- > > v2: > > - No change > > v3: > > - Modify the commit message make it clearly. > > v4: > > - No change > > > > drivers/pci/controller/dwc/pci-layerscape-ep.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/pci/controller/dwc/pci-layerscape-ep.c > > b/drivers/pci/controller/dwc/pci-layerscape-ep.c > > index 1e07287..5f0cb99 100644 > > --- a/drivers/pci/controller/dwc/pci-layerscape-ep.c > > +++ b/drivers/pci/controller/dwc/pci-layerscape-ep.c > > @@ -79,7 +79,8 @@ static int ls_pcie_ep_raise_irq(struct dw_pcie_ep *ep, > u8 func_no, > > case PCI_EPC_IRQ_MSI: > > return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); > > case PCI_EPC_IRQ_MSIX: > > - return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); > > + return dw_pcie_ep_raise_msix_irq_doorbell(ep, func_no, > > + interrupt_num); > > default: > > dev_err(pci->dev, "UNKNOWN IRQ type\n"); > > return -EINVAL; > >
diff --git a/drivers/pci/controller/dwc/pci-layerscape-ep.c b/drivers/pci/controller/dwc/pci-layerscape-ep.c index 1e07287..5f0cb99 100644 --- a/drivers/pci/controller/dwc/pci-layerscape-ep.c +++ b/drivers/pci/controller/dwc/pci-layerscape-ep.c @@ -79,7 +79,8 @@ static int ls_pcie_ep_raise_irq(struct dw_pcie_ep *ep, u8 func_no, case PCI_EPC_IRQ_MSI: return dw_pcie_ep_raise_msi_irq(ep, func_no, interrupt_num); case PCI_EPC_IRQ_MSIX: - return dw_pcie_ep_raise_msix_irq(ep, func_no, interrupt_num); + return dw_pcie_ep_raise_msix_irq_doorbell(ep, func_no, + interrupt_num); default: dev_err(pci->dev, "UNKNOWN IRQ type\n"); return -EINVAL;