mbox series

[v4,00/29] scsi: use generic power management

Message ID 20201102164730.324035-1-vaibhavgupta40@gmail.com (mailing list archive)
Headers show
Series scsi: use generic power management | expand

Message

Vaibhav Gupta Nov. 2, 2020, 4:47 p.m. UTC
Linux Kernel Mentee: Remove Legacy Power Management.

The purpose of this patch series is to upgrade power management in xxxxxxxx
drivers. This has been done by upgrading .suspend() and .resume() callbacks.

The upgrade makes sure that the involvement of PCI Core does not change the
order of operations executed in a driver. Thus, does not change its behavior.

In general, drivers with legacy PM, .suspend() and .resume() make use of PCI
helper functions like pci_enable/disable_device_mem(), pci_set_power_state(),
pci_save/restore_state(), pci_enable/disable_device(), etc. to complete
their job.

The conversion requires the removal of those function calls, change the
callbacks' definition accordingly and make use of dev_pm_ops structure.

All patches are compile-tested only.

Test tools:
    - Compiler: gcc (GCC) 10.2.0
    - allmodconfig build: make -j$(nproc) W=1 all

Vaibhav Gupta (29):
  scsi: megaraid_sas: Drop PCI wakeup calls from .resume
  scsi: megaraid_sas: use generic power management
  scsi: megaraid_sas: update function description
  scsi: aacraid: Drop pci_enable_wake() from .resume
  scsi: aacraid: use generic power management
  scsi: aic7xxx: use generic power management
  scsi: aic79xx: use generic power management
  scsi: arcmsr: Drop PCI wakeup calls from .resume
  scsi: arcmsr: use generic power management
  scsi: esas2r: Drop PCI Wakeup calls from .resume
  scsi: esas2r: use generic power management
  scsi: hisi_sas_v3_hw: Drop PCI Wakeup calls from .resume
  scsi: hisi_sas_v3_hw: Don't use PCI helper functions
  scsi: hisi_sas_v3_hw: Remove extra function calls for runtime pm
  scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume
  scsi: mpt3sas_scsih: use generic power management
  scsi: lpfc: use generic power management
  scsi: pm_8001: Drop PCI Wakeup calls from .resume
  scsi: pm_8001: use generic power management
  scsi: hpsa: use generic power management
  scsi: 3w-9xxx: Drop PCI Wakeup calls from .resume
  scsi: 3w-9xxx: use generic power management
  scsi: 3w-sas: Drop PCI Wakeup calls from .resume
  scsi: 3w-sas: use generic power management
  scsi: mvumi: Drop PCI Wakeup calls from .resume
  scsi: mvumi: use generic power management
  scsi: mvumi: update function description
  scsi: pmcraid: Drop PCI Wakeup calls from .resume
  scsi: pmcraid: use generic power management

 drivers/scsi/3w-9xxx.c                    |  30 ++-----
 drivers/scsi/3w-sas.c                     |  32 ++-----
 drivers/scsi/aacraid/linit.c              |  34 ++------
 drivers/scsi/aic7xxx/aic79xx.h            |  12 +--
 drivers/scsi/aic7xxx/aic79xx_core.c       |   8 +-
 drivers/scsi/aic7xxx/aic79xx_osm_pci.c    |  43 +++-------
 drivers/scsi/aic7xxx/aic79xx_pci.c        |   6 +-
 drivers/scsi/aic7xxx/aic7xxx.h            |  10 +--
 drivers/scsi/aic7xxx/aic7xxx_core.c       |   6 +-
 drivers/scsi/aic7xxx/aic7xxx_osm_pci.c    |  46 +++-------
 drivers/scsi/aic7xxx/aic7xxx_pci.c        |   4 +-
 drivers/scsi/arcmsr/arcmsr_hba.c          |  29 ++-----
 drivers/scsi/esas2r/esas2r.h              |   5 +-
 drivers/scsi/esas2r/esas2r_init.c         |  48 +++--------
 drivers/scsi/esas2r/esas2r_main.c         |   3 +-
 drivers/scsi/hisi_sas/hisi_sas_v3_hw.c    |  41 ++-------
 drivers/scsi/hpsa.c                       |  12 +--
 drivers/scsi/lpfc/lpfc_init.c             | 100 +++++++---------------
 drivers/scsi/megaraid/megaraid_sas_base.c |  54 +++---------
 drivers/scsi/mpt3sas/mpt3sas_scsih.c      |  35 +++-----
 drivers/scsi/mvumi.c                      |  49 +++--------
 drivers/scsi/pm8001/pm8001_init.c         |  46 ++++------
 drivers/scsi/pmcraid.c                    |  44 +++-------
 23 files changed, 193 insertions(+), 504 deletions(-)

Comments

Martin K. Petersen Dec. 1, 2020, 5:05 a.m. UTC | #1
On Mon, 2 Nov 2020 22:17:01 +0530, Vaibhav Gupta wrote:

> Linux Kernel Mentee: Remove Legacy Power Management.
> 
> The purpose of this patch series is to upgrade power management in xxxxxxxx
> drivers. This has been done by upgrading .suspend() and .resume() callbacks.
> 
> The upgrade makes sure that the involvement of PCI Core does not change the
> order of operations executed in a driver. Thus, does not change its behavior.
> 
> [...]

Applied to 5.11/scsi-queue, thanks!

[01/29] scsi: megaraid_sas: Drop PCI wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/8ed9d987c6d9
[02/29] scsi: megaraid_sas: Use generic power management
        https://git.kernel.org/mkp/scsi/c/977001df0368
[03/29] scsi: megaraid_sas: Update function description
        https://git.kernel.org/mkp/scsi/c/498854102c1c
[04/29] scsi: aacraid: Drop pci_enable_wake() from .resume
        https://git.kernel.org/mkp/scsi/c/7dd222218076
[05/29] scsi: aacraid: Use generic power management
        https://git.kernel.org/mkp/scsi/c/7e380b5c27ea
[06/29] scsi: aic7xxx: Use generic power management
        https://git.kernel.org/mkp/scsi/c/6897b9a177df
[07/29] scsi: aic79xx: Use generic power management
        https://git.kernel.org/mkp/scsi/c/ec199a8df698
[08/29] scsi: arcmsr: Drop PCI wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/b7b862d75b49
[09/29] scsi: arcmsr: Use generic power management
        https://git.kernel.org/mkp/scsi/c/756ebbe73fc4
[10/29] scsi: esas2r: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/996360c141a6
[11/29] scsi: esas2r: Use generic power management
        https://git.kernel.org/mkp/scsi/c/5f2d8c365050
[12/29] scsi: hisi_sas_v3_hw: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/17b5e4d14837
[13/29] scsi: hisi_sas_v3_hw: Don't use PCI helper functions
        https://git.kernel.org/mkp/scsi/c/027e508aea45
[14/29] scsi: hisi_sas_v3_hw: Remove extra function calls for runtime pm
        https://git.kernel.org/mkp/scsi/c/71c8f15e1dbc
[15/29] scsi: mpt3sas_scsih: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/eaf148359d00
[16/29] scsi: mpt3sas_scsih: Use generic power management
        https://git.kernel.org/mkp/scsi/c/17287305a526
[17/29] scsi: lpfc: Use generic power management
        https://git.kernel.org/mkp/scsi/c/ef6fa16b5d4a
[18/29] scsi: pm_8001: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/66aea31a2d26
[19/29] scsi: pm_8001: Use generic power management
        https://git.kernel.org/mkp/scsi/c/47c37c4dbf93
[20/29] scsi: hpsa: Use generic power management
        https://git.kernel.org/mkp/scsi/c/e5b79ebfb854
[21/29] scsi: 3w-9xxx: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/3a09951ae366
[22/29] scsi: 3w-9xxx: Use generic power management
        https://git.kernel.org/mkp/scsi/c/d53ae6bbeb71
[23/29] scsi: 3w-sas: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/7ea03ab79e00
[24/29] scsi: 3w-sas: Use generic power management
        https://git.kernel.org/mkp/scsi/c/99769d8d9109
[25/29] scsi: mvumi: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/bd7463cdbe1a
[26/29] scsi: mvumi: Use generic power management
        https://git.kernel.org/mkp/scsi/c/0572edbc32c5
[27/29] scsi: mvumi: Update function description
        https://git.kernel.org/mkp/scsi/c/53fdec73c14f
[28/29] scsi: pmcraid: Drop PCI Wakeup calls from .resume
        https://git.kernel.org/mkp/scsi/c/0aea8a8f3a77
[29/29] scsi: pmcraid: Use generic power management
        https://git.kernel.org/mkp/scsi/c/ac85cca31637