> -----Original Message-----
> From: Gustavo Pimentel <[email protected]>
> Sent: 2019年9月12日 19:24
> To: Andrew Murray <[email protected]>; Xiaowei Bao
> <[email protected]>
> Cc: [email protected]; [email protected]; [email protected]; Leo
> Li <[email protected]>; [email protected]; [email protected]; M.h.
> Lian <[email protected]>; Mingkai Hu <[email protected]>; Roy
> Zang <[email protected]>; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; Z.q. Hou
> <[email protected]>
> Subject: RE: [PATCH v3 08/11] PCI: layerscape: Modify the MSIX to the
> doorbell mode
> 
> Hi,
> 
> Sorry for the delay I was in parental leave and I'm still trying not to drown 
> in
> the mailing list emails... 😊
> 
> On Mon, Sep 2, 2019 at 13:1:47, Andrew Murray <[email protected]>
> wrote:
> 
> > On Mon, Sep 02, 2019 at 11:17:13AM +0800, 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.
> 
> Hum... the implementation of msix implementation did work on my use case,
> however, at the time the setup used for developing and testing the
> implementation only had one PF (by default 0). Perhaps this could was is
> causing the different behavior between our setups.
> 
> You have more than one PF, right?

Yes, I have two PFs.

Thanks
Xiaowei

> 
> If I remember correctly, msix feature support entered on kernel 4.19 version
> and it worked quite well at the time, but I didn't test since there (I've to
> manage time to be able to retest it again), I'm didn't seen any patch that
> could interfere with this.
> 
> Regards,
> Gustavo
> 
> 
> > >
> > > Signed-off-by: Xiaowei Bao <[email protected]>
> >
> > Reviewed-by: Andrew Murray <[email protected]>
> >
> > > ---
> > > v2:
> > >  - No change
> > > v3:
> > >  - Modify the commit message make it clearly.
> > >
> > >  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;
> > > --
> > > 2.9.5
> > >
> 

Reply via email to