mbox series

[v7,0/2] PCI: dwc: fix two MSI issues

Message ID 20201009155311.22d3caa5@xhacker.debian
Headers show
Series PCI: dwc: fix two MSI issues | expand

Message

Jisheng Zhang Oct. 9, 2020, 7:53 a.m. UTC
Fix two MSI issues. One to skip PCIE_MSI_INTR0* programming if MSI is
disabled, another to use an address in the driver data for MSI address,
to fix the MSI page leakage during suspend/resume.

Since v6:
  - Keep the IS_ENABLED(CONFIG_PCI_MSI) check in dw_pcie_msi_init().

Since v5:
  - rebase on pci/dwc branch
  - add Acked-by tag

Since v4:
  - fix pci-dra7xx.c

Since v3:
  - add Acked-by tag
  - change patch2 commit msg to make it clear
  - map the MSI msg with dma_map_single_attrs() for some platforms
    which either has separate addrs for dma and phy or has mem access
    limitation for the PCIe.

Since v2:
  - add Acked-by tag
  - use an address in the driver data for MSI address. Thank Ard and Rob
    for pointing out this correct direction.
  - Since the MSI page has gone, the leak issue doesn't exist anymore,
    remove unnecessary patches.
  - Remove dw_pcie_free_msi rename and the last patch. They could be
    targeted to next. So will send out patches in a separate series.

Since v1:
  - add proper error handling patches.
  - solve the msi page leakage by moving dw_pcie_msi_init() from each
    users to designware host

Jisheng Zhang (2):
  PCI: dwc: Skip PCIE_MSI_INTR0* programming if MSI is disabled
  PCI: dwc: Fix MSI page leakage in suspend/resume

 drivers/pci/controller/dwc/pci-dra7xx.c       | 18 +++++++++-
 .../pci/controller/dwc/pcie-designware-host.c | 35 ++++++++++---------
 drivers/pci/controller/dwc/pcie-designware.h  |  2 +-
 3 files changed, 37 insertions(+), 18 deletions(-)

Comments

Lorenzo Pieralisi Oct. 9, 2020, 8:49 a.m. UTC | #1
On Fri, Oct 09, 2020 at 03:53:11PM +0800, Jisheng Zhang wrote:
> Fix two MSI issues. One to skip PCIE_MSI_INTR0* programming if MSI is

> disabled, another to use an address in the driver data for MSI address,

> to fix the MSI page leakage during suspend/resume.

> 

> Since v6:

>   - Keep the IS_ENABLED(CONFIG_PCI_MSI) check in dw_pcie_msi_init().

> 

> Since v5:

>   - rebase on pci/dwc branch

>   - add Acked-by tag

> 

> Since v4:

>   - fix pci-dra7xx.c

> 

> Since v3:

>   - add Acked-by tag

>   - change patch2 commit msg to make it clear

>   - map the MSI msg with dma_map_single_attrs() for some platforms

>     which either has separate addrs for dma and phy or has mem access

>     limitation for the PCIe.

> 

> Since v2:

>   - add Acked-by tag

>   - use an address in the driver data for MSI address. Thank Ard and Rob

>     for pointing out this correct direction.

>   - Since the MSI page has gone, the leak issue doesn't exist anymore,

>     remove unnecessary patches.

>   - Remove dw_pcie_free_msi rename and the last patch. They could be

>     targeted to next. So will send out patches in a separate series.

> 

> Since v1:

>   - add proper error handling patches.

>   - solve the msi page leakage by moving dw_pcie_msi_init() from each

>     users to designware host

> 

> Jisheng Zhang (2):

>   PCI: dwc: Skip PCIE_MSI_INTR0* programming if MSI is disabled

>   PCI: dwc: Fix MSI page leakage in suspend/resume

> 

>  drivers/pci/controller/dwc/pci-dra7xx.c       | 18 +++++++++-

>  .../pci/controller/dwc/pcie-designware-host.c | 35 ++++++++++---------

>  drivers/pci/controller/dwc/pcie-designware.h  |  2 +-

>  3 files changed, 37 insertions(+), 18 deletions(-)


Applied to pci/dwc, thanks.

Lorenzo