[Linux-kernel-mentees] [PATCH v3 0/3] drivers: ide: use generic power management

Bartlomiej Zolnierkiewicz b.zolnierkie at samsung.com
Tue Jul 14 07:32:56 UTC 2020


Hi,

On 7/13/20 7:36 PM, Vaibhav Gupta wrote:
> Linux Kernel Mentee: Remove Legacy Power Management.
> 
> The purpose of this patch series is to remove legacy power management callbacks
> from ide drivers.
> 
> The suspend() and resume() callbacks operations are still invoking
> pci_save/restore_state(), pci_set_power_state(), pci_enable/disable_state(),
> etc. and handling the power management themselves, which is not recommended.
> 
> The conversion requires the removal of the those function calls and change the
> callback definition accordingly and make use of dev_pm_ops structure.

IDE subsystem (drivers/ide/) is deprecated and has been superseded by libata
subsystem (drivers/ata/).

libata drivers have the same issue so please concentrate on fixing them
first. Later (if desirable) changes can be back-ported to drivers/ide/.

> All patches are compile-tested only.

This patchset needs (at least) some basic testing. It should be easier with
libata subsystem as it also support SATA controllers and devices.

Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics

> v3:
>     - Modpost error for undefined reference by Kbuild in v1.
>     - Another approach to disable PM in drivers/ide/triflex.c suggested by
>       Bjorn Helgaas in v2.
> 
> Test tools:
>     - Compiler: gcc (GCC) 10.1.0
>     - allmodconfig build: make -j$(nproc) W=1 all
> 
> Vaibhav Gupta (3):
>   ide: use generic power management
>   ide: sc1200: use generic power management
>   ide: delkin_cb: use generic power management
> 
>  drivers/ide/aec62xx.c         |  3 +--
>  drivers/ide/alim15x3.c        |  3 +--
>  drivers/ide/amd74xx.c         |  3 +--
>  drivers/ide/atiixp.c          |  3 +--
>  drivers/ide/cmd64x.c          |  3 +--
>  drivers/ide/cs5520.c          |  3 +--
>  drivers/ide/cs5530.c          |  3 +--
>  drivers/ide/cs5535.c          |  3 +--
>  drivers/ide/cs5536.c          |  3 +--
>  drivers/ide/cy82c693.c        |  3 +--
>  drivers/ide/delkin_cb.c       | 32 +++++---------------------
>  drivers/ide/hpt366.c          |  3 +--
>  drivers/ide/ide-pci-generic.c |  3 +--
>  drivers/ide/it8172.c          |  3 +--
>  drivers/ide/it8213.c          |  3 +--
>  drivers/ide/it821x.c          |  3 +--
>  drivers/ide/jmicron.c         |  3 +--
>  drivers/ide/ns87415.c         |  3 +--
>  drivers/ide/opti621.c         |  3 +--
>  drivers/ide/pdc202xx_new.c    |  3 +--
>  drivers/ide/pdc202xx_old.c    |  3 +--
>  drivers/ide/piix.c            |  3 +--
>  drivers/ide/sc1200.c          | 43 ++++++++++++-----------------------
>  drivers/ide/serverworks.c     |  3 +--
>  drivers/ide/setup-pci.c       | 29 +++++------------------
>  drivers/ide/siimage.c         |  3 +--
>  drivers/ide/sis5513.c         |  3 +--
>  drivers/ide/sl82c105.c        |  3 +--
>  drivers/ide/slc90e66.c        |  3 +--
>  drivers/ide/triflex.c         | 24 +++++++------------
>  drivers/ide/via82cxxx.c       |  3 +--
>  include/linux/ide.h           |  8 +------
>  32 files changed, 62 insertions(+), 155 deletions(-)
> 



More information about the Linux-kernel-mentees mailing list