lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Wed, 8 Jan 2020 19:34:44 +0200
From:   Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
To:     Mika Westerberg <mika.westerberg@...ux.intel.com>
Cc:     Darren Hart <dvhart@...radead.org>,
        Lee Jones <lee.jones@...aro.org>,
        Thomas Gleixner <tglx@...utronix.de>,
        Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
        "H . Peter Anvin" <hpa@...or.com>, x86@...nel.org,
        Zha Qipeng <qipeng.zha@...el.com>,
        Rajneesh Bhardwaj <rajneesh.bhardwaj@...ux.intel.com>,
        "David E . Box" <david.e.box@...ux.intel.com>,
        Guenter Roeck <linux@...ck-us.net>,
        Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        Wim Van Sebroeck <wim@...ux-watchdog.org>,
        platform-driver-x86@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 00/36] platform/x86: Rework intel_scu_ipc and
 intel_pmc_ipc drivers

On Wed, Jan 08, 2020 at 02:41:25PM +0300, Mika Westerberg wrote:
> Hi,
> 
> Currently both intel_scu_ipc.c and intel_pmc_ipc.c implement the same SCU
> IPC communications with minor differences. This duplication does not make
> much sense so this series reworks the two drivers so that there is only a
> single implementation of the SCU IPC. In addition to that the API will be
> updated to take SCU instance pointer as an argument, and most of the
> callers will be converted to this new API. The old API is left there but
> the plan is to get rid the callers and then the old API as well (this is
> something we are working with Andy Shevchenko).
> 
> The intel_pmc_ipc.c is then moved under MFD which suits better for this
> kind of a driver that pretty much sets up the SCU IPC and then creates a
> bunch of platform devices for the things sitting behind the PMC. The driver
> is renamed to intel_pmc_bxt.c which should follow the existing conventions
> under drivers/mfd (and it is only meant for Intel Broxton derivatives).
> 
> Previous version of the series:
> 
>   https://www.spinics.net/lists/platform-driver-x86/msg20359.html
> 
> Changes from the previous version:
> 
>   * Update changelog of patch 16 according to what the patch actually does.
>   * Add kernel-doc for struct intel_soc_pmic.
>   * Move octal permission patch to be before MFD conversion.
>   * Convert the intel_pmc_bxt.c to MFD APIs whilst it is being moved under
>     drivers/mfd.

Hmm... I didn't see you appended Lee's ACKs.

> 
> I'm including all x86 maintainers just to be sure they are aware of this as
> I'm not sure if x86@...nel.org reaches them all. Let me know if you have
> issues with this series.
> 
> I would prefer this to be merged through platform/x86 or MFD trees assuming
> there are no objections.

I'm almost reviewed it (few patches left which I plan to do soon), I'm fine if
it goes via other tree.

> 
> I have tested this on Intel Edison (Merrifield) and Joule (Broxton-M).
> 
> Mika Westerberg (36):
>   platform/x86: intel_mid_powerbtn: Take a copy of ddata
>   platform/x86: intel_scu_ipcutil: Remove default y from Kconfig
>   platform/x86: intel_scu_ipc: Add constants for register offsets
>   platform/x86: intel_scu_ipc: Remove Lincroft support
>   platform/x86: intel_scu_ipc: Drop intel_scu_ipc_i2c_cntrl()
>   platform/x86: intel_scu_ipc: Fix interrupt support
>   platform/x86: intel_scu_ipc: Sleeping is fine when polling
>   platform/x86: intel_scu_ipc: Drop unused prototype intel_scu_ipc_fw_update()
>   platform/x86: intel_scu_ipc: Drop unused macros
>   platform/x86: intel_scu_ipc: Drop intel_scu_ipc_io[read|write][8|16]()
>   platform/x86: intel_scu_ipc: Drop intel_scu_ipc_raw_command()
>   platform/x86: intel_scu_ipc: Split out SCU IPC functionality from the SCU driver
>   platform/x86: intel_scu_ipc: Reformat kernel-doc comments of exported functions
>   platform/x86: intel_scu_ipc: Introduce new SCU IPC API
>   platform/x86: intel_mid_powerbtn: Convert to use new SCU IPC API
>   watchdog: intel-mid_wdt: Convert to use new SCU IPC API
>   platform/x86: intel_scu_ipcutil: Convert to use new SCU IPC API
>   platform/x86: intel_pmc_ipc: Make intel_pmc_gcr_update() static
>   platform/x86: intel_pmc_ipc: Make intel_pmc_ipc_simple_command() static
>   platform/x86: intel_pmc_ipc: Make intel_pmc_ipc_raw_cmd() static
>   platform/x86: intel_pmc_ipc: Drop intel_pmc_gcr_read() and intel_pmc_gcr_write()
>   platform/x86: intel_pmc_ipc: Drop ipc_data_readb()
>   platform/x86: intel_pmc_ipc: Get rid of unnecessary includes
>   platform/x86: intel_scu_ipc: Add function to remove SCU IPC
>   platform/x86: intel_pmc_ipc: Start using SCU IPC
>   mfd: intel_soc_pmic: Add SCU IPC member to struct intel_soc_pmic
>   mfd: intel_soc_pmic_bxtwc: Convert to use new SCU IPC API
>   mfd: intel_soc_pmic_mrfld: Convert to use new SCU IPC API
>   platform/x86: intel_telemetry: Convert to use new SCU IPC API
>   platform/x86: intel_pmc_ipc: Drop intel_pmc_ipc_command()
>   x86/platform/intel-mid: Add empty stubs for intel_scu_devices_[create|destroy]()
>   platform/x86: intel_pmc_ipc: Move PCI IDs to intel_scu_pcidrv.c
>   platform/x86: intel_pmc_ipc: Use octal permissions in sysfs attributes
>   platform/x86: intel_pmc_ipc: Convert to MFD
>   mfd: intel_pmc_bxt: Switch to use driver->dev_groups
>   MAINTAINERS: Update entry for Intel Broxton PMC driver
> 
>  MAINTAINERS                                   |   13 +-
>  arch/x86/Kconfig                              |    2 +-
>  arch/x86/include/asm/intel-mid.h              |    9 +-
>  arch/x86/include/asm/intel_pmc_ipc.h          |   91 --
>  arch/x86/include/asm/intel_scu_ipc.h          |  104 +-
>  arch/x86/include/asm/intel_scu_ipc_legacy.h   |   76 ++
>  arch/x86/include/asm/intel_telemetry.h        |    3 +
>  drivers/mfd/Kconfig                           |   18 +-
>  drivers/mfd/Makefile                          |    1 +
>  drivers/mfd/intel_pmc_bxt.c                   |  539 +++++++++
>  drivers/mfd/intel_soc_pmic_bxtwc.c            |   22 +-
>  drivers/mfd/intel_soc_pmic_mrfld.c            |   10 +-
>  drivers/platform/x86/Kconfig                  |   49 +-
>  drivers/platform/x86/Makefile                 |    2 +-
>  drivers/platform/x86/intel_mid_powerbtn.c     |   20 +-
>  drivers/platform/x86/intel_pmc_ipc.c          | 1031 -----------------
>  drivers/platform/x86/intel_scu_ipc.c          |  681 +++++------
>  drivers/platform/x86/intel_scu_ipcutil.c      |   43 +-
>  drivers/platform/x86/intel_scu_pcidrv.c       |   75 ++
>  .../platform/x86/intel_telemetry_debugfs.c    |    2 +-
>  drivers/platform/x86/intel_telemetry_pltdrv.c |  101 +-
>  drivers/usb/typec/tcpm/Kconfig                |    2 +-
>  drivers/watchdog/intel-mid_wdt.c              |   53 +-
>  include/linux/mfd/intel_pmc_bxt.h             |   50 +
>  include/linux/mfd/intel_soc_pmic.h            |   15 +
>  25 files changed, 1319 insertions(+), 1693 deletions(-)
>  delete mode 100644 arch/x86/include/asm/intel_pmc_ipc.h
>  create mode 100644 arch/x86/include/asm/intel_scu_ipc_legacy.h
>  create mode 100644 drivers/mfd/intel_pmc_bxt.c
>  delete mode 100644 drivers/platform/x86/intel_pmc_ipc.c
>  create mode 100644 drivers/platform/x86/intel_scu_pcidrv.c
>  create mode 100644 include/linux/mfd/intel_pmc_bxt.h
> 
> -- 
> 2.24.1
> 

-- 
With Best Regards,
Andy Shevchenko


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ