All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
To: Mika Westerberg <mika.westerberg@linux.intel.com>
Cc: Darren Hart <dvhart@infradead.org>,
	Lee Jones <lee.jones@linaro.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	"H . Peter Anvin" <hpa@zytor.com>,
	x86@kernel.org, Zha Qipeng <qipeng.zha@intel.com>,
	Rajneesh Bhardwaj <rajneesh.bhardwaj@linux.intel.com>,
	"David E . Box" <david.e.box@linux.intel.com>,
	Guenter Roeck <linux@roeck-us.net>,
	Heikki Krogerus <heikki.krogerus@linux.intel.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Wim Van Sebroeck <wim@linux-watchdog.org>,
	platform-driver-x86@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2 00/36] platform/x86: Rework intel_scu_ipc and intel_pmc_ipc drivers
Date: Wed, 8 Jan 2020 19:34:44 +0200	[thread overview]
Message-ID: <20200108173444.GZ32742@smile.fi.intel.com> (raw)
In-Reply-To: <20200108114201.27908-1-mika.westerberg@linux.intel.com>

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@kernel.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



  parent reply	other threads:[~2020-01-08 17:34 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-08 11:41 [PATCH v2 00/36] platform/x86: Rework intel_scu_ipc and intel_pmc_ipc drivers Mika Westerberg
2020-01-08 11:41 ` [PATCH v2 01/36] platform/x86: intel_mid_powerbtn: Take a copy of ddata Mika Westerberg
2020-01-08 16:37   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 02/36] platform/x86: intel_scu_ipcutil: Remove default y from Kconfig Mika Westerberg
2020-01-08 16:38   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 03/36] platform/x86: intel_scu_ipc: Add constants for register offsets Mika Westerberg
2020-01-08 16:39   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 04/36] platform/x86: intel_scu_ipc: Remove Lincroft support Mika Westerberg
2020-01-08 16:39   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 05/36] platform/x86: intel_scu_ipc: Drop intel_scu_ipc_i2c_cntrl() Mika Westerberg
2020-01-08 16:39   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 06/36] platform/x86: intel_scu_ipc: Fix interrupt support Mika Westerberg
2020-01-08 16:40   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 07/36] platform/x86: intel_scu_ipc: Sleeping is fine when polling Mika Westerberg
2020-01-08 17:12   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 08/36] platform/x86: intel_scu_ipc: Drop unused prototype intel_scu_ipc_fw_update() Mika Westerberg
2020-01-08 16:41   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 09/36] platform/x86: intel_scu_ipc: Drop unused macros Mika Westerberg
2020-01-08 16:41   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 10/36] platform/x86: intel_scu_ipc: Drop intel_scu_ipc_io[read|write][8|16]() Mika Westerberg
2020-01-08 16:41   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 11/36] platform/x86: intel_scu_ipc: Drop intel_scu_ipc_raw_command() Mika Westerberg
2020-01-08 16:42   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 12/36] platform/x86: intel_scu_ipc: Split out SCU IPC functionality from the SCU driver Mika Westerberg
2020-01-08 17:22   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 13/36] platform/x86: intel_scu_ipc: Reformat kernel-doc comments of exported functions Mika Westerberg
2020-01-08 16:42   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 14/36] platform/x86: intel_scu_ipc: Introduce new SCU IPC API Mika Westerberg
2020-01-09 11:30   ` Andy Shevchenko
2020-01-09 11:39     ` Mika Westerberg
2020-01-08 11:41 ` [PATCH v2 15/36] platform/x86: intel_mid_powerbtn: Convert to use " Mika Westerberg
2020-01-08 16:43   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 16/36] watchdog: intel-mid_wdt: " Mika Westerberg
2020-01-08 15:37   ` Guenter Roeck
2020-01-08 17:38   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 17/36] platform/x86: intel_scu_ipcutil: " Mika Westerberg
2020-01-08 16:45   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 18/36] platform/x86: intel_pmc_ipc: Make intel_pmc_gcr_update() static Mika Westerberg
2020-01-08 16:46   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 19/36] platform/x86: intel_pmc_ipc: Make intel_pmc_ipc_simple_command() static Mika Westerberg
2020-01-08 16:46   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 20/36] platform/x86: intel_pmc_ipc: Make intel_pmc_ipc_raw_cmd() static Mika Westerberg
2020-01-08 16:46   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 21/36] platform/x86: intel_pmc_ipc: Drop intel_pmc_gcr_read() and intel_pmc_gcr_write() Mika Westerberg
2020-01-08 16:47   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 22/36] platform/x86: intel_pmc_ipc: Drop ipc_data_readb() Mika Westerberg
2020-01-08 16:47   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 23/36] platform/x86: intel_pmc_ipc: Get rid of unnecessary includes Mika Westerberg
2020-01-08 16:47   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 24/36] platform/x86: intel_scu_ipc: Add function to remove SCU IPC Mika Westerberg
2020-01-08 17:28   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 25/36] platform/x86: intel_pmc_ipc: Start using " Mika Westerberg
2020-01-08 16:52   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 26/36] mfd: intel_soc_pmic: Add SCU IPC member to struct intel_soc_pmic Mika Westerberg
2020-01-08 17:31   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 27/36] mfd: intel_soc_pmic_bxtwc: Convert to use new SCU IPC API Mika Westerberg
2020-01-08 17:32   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 28/36] mfd: intel_soc_pmic_mrfld: " Mika Westerberg
2020-01-08 17:35   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 29/36] platform/x86: intel_telemetry: " Mika Westerberg
2020-01-08 16:54   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 30/36] platform/x86: intel_pmc_ipc: Drop intel_pmc_ipc_command() Mika Westerberg
2020-01-08 16:57   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 31/36] x86/platform/intel-mid: Add empty stubs for intel_scu_devices_[create|destroy]() Mika Westerberg
2020-01-08 17:36   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 32/36] platform/x86: intel_pmc_ipc: Move PCI IDs to intel_scu_pcidrv.c Mika Westerberg
2020-01-08 17:03   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 33/36] platform/x86: intel_pmc_ipc: Use octal permissions in sysfs attributes Mika Westerberg
2020-01-08 16:58   ` Andy Shevchenko
2020-01-08 11:41 ` [PATCH v2 34/36] platform/x86: intel_pmc_ipc: Convert to MFD Mika Westerberg
2020-01-09 11:43   ` Andy Shevchenko
2020-01-09 11:47     ` Mika Westerberg
2020-01-09 12:57       ` Mika Westerberg
2020-01-09 14:25         ` Andy Shevchenko
2020-01-08 11:42 ` [PATCH v2 35/36] mfd: intel_pmc_bxt: Switch to use driver->dev_groups Mika Westerberg
2020-01-08 17:30   ` Andy Shevchenko
2020-01-08 11:42 ` [PATCH v2 36/36] MAINTAINERS: Update entry for Intel Broxton PMC driver Mika Westerberg
2020-01-08 17:06   ` Andy Shevchenko
2020-01-08 17:34 ` Andy Shevchenko [this message]
2020-01-09  6:13   ` [PATCH v2 00/36] platform/x86: Rework intel_scu_ipc and intel_pmc_ipc drivers Mika Westerberg
2020-01-13 10:38 ` Lee Jones

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200108173444.GZ32742@smile.fi.intel.com \
    --to=andriy.shevchenko@linux.intel.com \
    --cc=bp@alien8.de \
    --cc=david.e.box@linux.intel.com \
    --cc=dvhart@infradead.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=heikki.krogerus@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mika.westerberg@linux.intel.com \
    --cc=mingo@redhat.com \
    --cc=platform-driver-x86@vger.kernel.org \
    --cc=qipeng.zha@intel.com \
    --cc=rajneesh.bhardwaj@linux.intel.com \
    --cc=tglx@linutronix.de \
    --cc=wim@linux-watchdog.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.