linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Lee Jones <lee.jones@linaro.org>
To: Pawel Moll <pawel.moll@arm.com>
Cc: Grant Likely <grant.likely@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Samuel Ortiz <sameo@linux.intel.com>,
	Arnd Bergmann <arnd@arndb.de>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Russell King <linux@arm.linux.org.uk>,
	linux-kernel@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, arm@kernel.org,
	Jean Delvare <jdelvare@suse.de>,
	Guenter Roeck <linux@roeck-us.net>,
	lm-sensors@lm-sensors.org, Mark Brown <broonie@kernel.org>,
	Liam Girdwood <lgirdwood@gmail.com>,
	David Woodhouse <dwmw2@infradead.org>,
	Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>,
	Mike Turquette <mturquette@linaro.org>
Subject: Re: [PATCH 02/10] mfd: vexpress: Convert custom func API to regmap
Date: Wed, 30 Apr 2014 14:58:55 +0100	[thread overview]
Message-ID: <20140430135855.GO29462@lee--X1> (raw)
In-Reply-To: <1398707877-22596-3-git-send-email-pawel.moll@arm.com>

> Components of the Versatile Express platform (configuration
> microcontrollers on motherboard and daughterboards in particular)
> talk to each other over a custom configuration bus. They
> provide miscellaneous functions (from clock generator control
> to energy sensors) which are represented as platform devices
> (and Device Tree nodes). The transactions on the bus can
> be generated by different "bridges" in the system, some
> of which are universal for the whole platform (for the price
> of high transfer latencies), others restricted to a subsystem
> (but much faster).
> 
> Until now drivers for such functions were using custom "func"
> API, which is being replaced in this patch by regmap calls.
> This required:
> 
> * a rework (and move to drivers/bus directory, as suggested
>   by Samuel and Arnd) of the config bus core, which is much
>   simpler now and uses device model infrastructure (class)
>   to keep track of the bridges; non-DT case (soon to be
>   retired anyway) is simply covered by a special device
>   registration function
> 
> * the new config-bus driver also takes over device population,
>   so there is no need for special matching table for
>   of_platform_populate nor "simple-bus" hack in the arm64
>   model dtsi file (relevant bindings documentation has
>   been updated); this allows all the vexpress devices
>   fit into normal device model, making it possible
>   to remove plenty of early inits and other hacks in
>   the near future
> 
> * adaptation of the syscfg bridge implementation in the
>   sysreg driver, again making it much simpler; there is
>   a special case of the "energy" function spanning two
>   registers, where they should be both defined in the tree
>   now, but backward compatibility is maintained in the code
> 
> * modification of the relevant drivers:
> 
>   * hwmon - just a straight-forward API change
>   * power/reset driver - API change
>   * regulator - API change plus error handling
>     simplification
>   * osc clock driver - this one required larger rework
>     in order to turn in into a standard platform driver
> 
> Cc: Jean Delvare <jdelvare@suse.de>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Cc: lm-sensors@lm-sensors.org
> Cc: Mark Brown <broonie@kernel.org>
> Cc: Liam Girdwood <lgirdwood@gmail.com>
> Cc: David Woodhouse <dwmw2@infradead.org>
> Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
> Cc: Mike Turquette <mturquette@linaro.org>
> Signed-off-by: Pawel Moll <pawel.moll@arm.com>
> ---
>  .../devicetree/bindings/arm/vexpress-sysreg.txt    |  43 ++-
>  Documentation/devicetree/bindings/arm/vexpress.txt |  15 +-
>  arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts         |   5 +-
>  arch/arm/mach-vexpress/ct-ca9x4.c                  |  10 +-
>  arch/arm/mach-vexpress/v2m.c                       |  18 +-
>  arch/arm64/boot/dts/rtsm_ve-motherboard.dtsi       |   2 +-
>  drivers/bus/Kconfig                                |   9 +
>  drivers/bus/Makefile                               |   2 +
>  drivers/bus/vexpress-config.c                      | 202 +++++++++++
>  drivers/clk/versatile/clk-vexpress-osc.c           |  94 +++--
>  drivers/hwmon/vexpress.c                           |  15 +-
>  drivers/mfd/Makefile                               |   2 +-
>  drivers/mfd/vexpress-config.c                      | 287 ---------------
>  drivers/mfd/vexpress-sysreg.c                      | 395 +++++++++++----------
>  drivers/power/reset/vexpress-poweroff.c            |  16 +-
>  drivers/regulator/vexpress.c                       |  50 +--
>  include/linux/vexpress.h                           |  79 +----
>  17 files changed, 567 insertions(+), 677 deletions(-)
>  create mode 100644 drivers/bus/vexpress-config.c
>  delete mode 100644 drivers/mfd/vexpress-config.c

Blimey!

MFD diffstat looks great and the changes look sensible:
  Acked-by: Lee Jones <lee.jones@linaro.org>

I guess someone will need to create a branch for us all to pull from.
I'm happy to do it if needs be.

-- 
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

  parent reply	other threads:[~2014-04-30 13:59 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-28 17:57 [PATCH 00/10] Versatile Express changes for 3.16 Pawel Moll
2014-04-28 17:57 ` [PATCH 01/10] of: Keep track of populated platform devices Pawel Moll
2014-04-28 18:02   ` Rob Herring
2014-04-29 12:56     ` Grant Likely
2014-04-30 11:48       ` Pawel Moll
2014-04-28 17:57 ` [PATCH 02/10] mfd: vexpress: Convert custom func API to regmap Pawel Moll
2014-04-29 22:21   ` Mark Brown
2014-04-30 13:58   ` Lee Jones [this message]
2014-04-30 14:13     ` Pawel Moll
2014-04-30 14:29       ` Lee Jones
2014-04-30 14:38         ` Pawel Moll
2014-04-30 16:01   ` [PATCH v2] " Pawel Moll
2014-04-30 17:05     ` Guenter Roeck
2014-05-01 18:58     ` Mike Turquette
2014-04-28 17:57 ` [PATCH 03/10] mfd: syscon: Add platform data with a regmap config name Pawel Moll
2014-04-28 17:57 ` [PATCH 04/10] mfd: vexpress: Define the device as MFD cells Pawel Moll
2014-05-09 11:24   ` Lee Jones
2014-04-28 17:57 ` [PATCH 05/10] clk: versatile: Split config options for sp810 and vexpress_osc Pawel Moll
2014-05-01 18:55   ` Mike Turquette
2014-04-28 17:57 ` [PATCH 06/10] clocksource: Sched clock source for Versatile Express Pawel Moll
2014-04-28 17:57 ` [PATCH 07/10] ARM: vexpress: remove redundant vexpress_dt_cpus_num to get cpu count Pawel Moll
2014-04-28 17:57 ` [PATCH 08/10] ARM: vexpress: Simplify SMP operations for DT-powered system Pawel Moll
2014-04-28 17:57 ` [PATCH 09/10] ARM: vexpress: move HBI check to sysreg driver Pawel Moll
2014-04-30 14:02   ` Lee Jones
2014-04-28 17:57 ` [PATCH 10/10] hwmon: vexpress: Use devm helper for hwmon device registration Pawel Moll
2014-04-28 22:59   ` Guenter Roeck
2014-04-30 15:16     ` Pawel Moll
2014-04-30 15:27       ` Guenter Roeck
2014-04-30 15:33         ` Pawel Moll

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=20140430135855.GO29462@lee--X1 \
    --to=lee.jones@linaro.org \
    --cc=arm@kernel.org \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=dbaryshkov@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=grant.likely@linaro.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jdelvare@suse.de \
    --cc=lgirdwood@gmail.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=linux@roeck-us.net \
    --cc=lm-sensors@lm-sensors.org \
    --cc=mturquette@linaro.org \
    --cc=pawel.moll@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=sameo@linux.intel.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).