All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <20140430135855.GO29462@lee--X1>

diff --git a/a/1.txt b/N1/1.txt
index 1aefa37..ee256fd 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -1,76 +1,90 @@
-PiBDb21wb25lbnRzIG9mIHRoZSBWZXJzYXRpbGUgRXhwcmVzcyBwbGF0Zm9ybSAoY29uZmlndXJh
-dGlvbgo+IG1pY3JvY29udHJvbGxlcnMgb24gbW90aGVyYm9hcmQgYW5kIGRhdWdodGVyYm9hcmRz
-IGluIHBhcnRpY3VsYXIpCj4gdGFsayB0byBlYWNoIG90aGVyIG92ZXIgYSBjdXN0b20gY29uZmln
-dXJhdGlvbiBidXMuIFRoZXkKPiBwcm92aWRlIG1pc2NlbGxhbmVvdXMgZnVuY3Rpb25zIChmcm9t
-IGNsb2NrIGdlbmVyYXRvciBjb250cm9sCj4gdG8gZW5lcmd5IHNlbnNvcnMpIHdoaWNoIGFyZSBy
-ZXByZXNlbnRlZCBhcyBwbGF0Zm9ybSBkZXZpY2VzCj4gKGFuZCBEZXZpY2UgVHJlZSBub2Rlcyku
-IFRoZSB0cmFuc2FjdGlvbnMgb24gdGhlIGJ1cyBjYW4KPiBiZSBnZW5lcmF0ZWQgYnkgZGlmZmVy
-ZW50ICJicmlkZ2VzIiBpbiB0aGUgc3lzdGVtLCBzb21lCj4gb2Ygd2hpY2ggYXJlIHVuaXZlcnNh
-bCBmb3IgdGhlIHdob2xlIHBsYXRmb3JtIChmb3IgdGhlIHByaWNlCj4gb2YgaGlnaCB0cmFuc2Zl
-ciBsYXRlbmNpZXMpLCBvdGhlcnMgcmVzdHJpY3RlZCB0byBhIHN1YnN5c3RlbQo+IChidXQgbXVj
-aCBmYXN0ZXIpLgo+IAo+IFVudGlsIG5vdyBkcml2ZXJzIGZvciBzdWNoIGZ1bmN0aW9ucyB3ZXJl
-IHVzaW5nIGN1c3RvbSAiZnVuYyIKPiBBUEksIHdoaWNoIGlzIGJlaW5nIHJlcGxhY2VkIGluIHRo
-aXMgcGF0Y2ggYnkgcmVnbWFwIGNhbGxzLgo+IFRoaXMgcmVxdWlyZWQ6Cj4gCj4gKiBhIHJld29y
-ayAoYW5kIG1vdmUgdG8gZHJpdmVycy9idXMgZGlyZWN0b3J5LCBhcyBzdWdnZXN0ZWQKPiAgIGJ5
-IFNhbXVlbCBhbmQgQXJuZCkgb2YgdGhlIGNvbmZpZyBidXMgY29yZSwgd2hpY2ggaXMgbXVjaAo+
-ICAgc2ltcGxlciBub3cgYW5kIHVzZXMgZGV2aWNlIG1vZGVsIGluZnJhc3RydWN0dXJlIChjbGFz
-cykKPiAgIHRvIGtlZXAgdHJhY2sgb2YgdGhlIGJyaWRnZXM7IG5vbi1EVCBjYXNlIChzb29uIHRv
-IGJlCj4gICByZXRpcmVkIGFueXdheSkgaXMgc2ltcGx5IGNvdmVyZWQgYnkgYSBzcGVjaWFsIGRl
-dmljZQo+ICAgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uCj4gCj4gKiB0aGUgbmV3IGNvbmZpZy1idXMg
-ZHJpdmVyIGFsc28gdGFrZXMgb3ZlciBkZXZpY2UgcG9wdWxhdGlvbiwKPiAgIHNvIHRoZXJlIGlz
-IG5vIG5lZWQgZm9yIHNwZWNpYWwgbWF0Y2hpbmcgdGFibGUgZm9yCj4gICBvZl9wbGF0Zm9ybV9w
-b3B1bGF0ZSBub3IgInNpbXBsZS1idXMiIGhhY2sgaW4gdGhlIGFybTY0Cj4gICBtb2RlbCBkdHNp
-IGZpbGUgKHJlbGV2YW50IGJpbmRpbmdzIGRvY3VtZW50YXRpb24gaGFzCj4gICBiZWVuIHVwZGF0
-ZWQpOyB0aGlzIGFsbG93cyBhbGwgdGhlIHZleHByZXNzIGRldmljZXMKPiAgIGZpdCBpbnRvIG5v
-cm1hbCBkZXZpY2UgbW9kZWwsIG1ha2luZyBpdCBwb3NzaWJsZQo+ICAgdG8gcmVtb3ZlIHBsZW50
-eSBvZiBlYXJseSBpbml0cyBhbmQgb3RoZXIgaGFja3MgaW4KPiAgIHRoZSBuZWFyIGZ1dHVyZQo+
-IAo+ICogYWRhcHRhdGlvbiBvZiB0aGUgc3lzY2ZnIGJyaWRnZSBpbXBsZW1lbnRhdGlvbiBpbiB0
-aGUKPiAgIHN5c3JlZyBkcml2ZXIsIGFnYWluIG1ha2luZyBpdCBtdWNoIHNpbXBsZXI7IHRoZXJl
-IGlzCj4gICBhIHNwZWNpYWwgY2FzZSBvZiB0aGUgImVuZXJneSIgZnVuY3Rpb24gc3Bhbm5pbmcg
-dHdvCj4gICByZWdpc3RlcnMsIHdoZXJlIHRoZXkgc2hvdWxkIGJlIGJvdGggZGVmaW5lZCBpbiB0
-aGUgdHJlZQo+ICAgbm93LCBidXQgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpcyBtYWludGFpbmVk
-IGluIHRoZSBjb2RlCj4gCj4gKiBtb2RpZmljYXRpb24gb2YgdGhlIHJlbGV2YW50IGRyaXZlcnM6
-Cj4gCj4gICAqIGh3bW9uIC0ganVzdCBhIHN0cmFpZ2h0LWZvcndhcmQgQVBJIGNoYW5nZQo+ICAg
-KiBwb3dlci9yZXNldCBkcml2ZXIgLSBBUEkgY2hhbmdlCj4gICAqIHJlZ3VsYXRvciAtIEFQSSBj
-aGFuZ2UgcGx1cyBlcnJvciBoYW5kbGluZwo+ICAgICBzaW1wbGlmaWNhdGlvbgo+ICAgKiBvc2Mg
-Y2xvY2sgZHJpdmVyIC0gdGhpcyBvbmUgcmVxdWlyZWQgbGFyZ2VyIHJld29yawo+ICAgICBpbiBv
-cmRlciB0byB0dXJuIGluIGludG8gYSBzdGFuZGFyZCBwbGF0Zm9ybSBkcml2ZXIKPiAKPiBDYzog
-SmVhbiBEZWx2YXJlIDxqZGVsdmFyZUBzdXNlLmRlPgo+IENjOiBHdWVudGVyIFJvZWNrIDxsaW51
-eEByb2Vjay11cy5uZXQ+Cj4gQ2M6IGxtLXNlbnNvcnNAbG0tc2Vuc29ycy5vcmcKPiBDYzogTWFy
-ayBCcm93biA8YnJvb25pZUBrZXJuZWwub3JnPgo+IENjOiBMaWFtIEdpcmR3b29kIDxsZ2lyZHdv
-b2RAZ21haWwuY29tPgo+IENjOiBEYXZpZCBXb29kaG91c2UgPGR3bXcyQGluZnJhZGVhZC5vcmc+
-Cj4gQ2M6IERtaXRyeSBFcmVtaW4tU29sZW5pa292IDxkYmFyeXNoa292QGdtYWlsLmNvbT4KPiBD
-YzogTWlrZSBUdXJxdWV0dGUgPG10dXJxdWV0dGVAbGluYXJvLm9yZz4KPiBTaWduZWQtb2ZmLWJ5
-OiBQYXdlbCBNb2xsIDxwYXdlbC5tb2xsQGFybS5jb20+Cj4gLS0tCj4gIC4uLi9kZXZpY2V0cmVl
-L2JpbmRpbmdzL2FybS92ZXhwcmVzcy1zeXNyZWcudHh0ICAgIHwgIDQzICsrLQo+ICBEb2N1bWVu
-dGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvYXJtL3ZleHByZXNzLnR4dCB8ICAxNSArLQo+ICBh
-cmNoL2FybS9ib290L2R0cy92ZXhwcmVzcy12MnAtY2ExNV9hNy5kdHMgICAgICAgICB8ICAgNSAr
-LQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL2N0LWNhOXg0LmMgICAgICAgICAgICAgICAgICB8
-ICAxMCArLQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL3YybS5jICAgICAgICAgICAgICAgICAg
-ICAgICB8ICAxOCArLQo+ICBhcmNoL2FybTY0L2Jvb3QvZHRzL3J0c21fdmUtbW90aGVyYm9hcmQu
-ZHRzaSAgICAgICB8ICAgMiArLQo+ICBkcml2ZXJzL2J1cy9LY29uZmlnICAgICAgICAgICAgICAg
-ICAgICAgICAgICAgICAgICB8ICAgOSArCj4gIGRyaXZlcnMvYnVzL01ha2VmaWxlICAgICAgICAg
-ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKPiAgZHJpdmVycy9idXMvdmV4cHJlc3MtY29u
-ZmlnLmMgICAgICAgICAgICAgICAgICAgICAgfCAyMDIgKysrKysrKysrKysKPiAgZHJpdmVycy9j
-bGsvdmVyc2F0aWxlL2Nsay12ZXhwcmVzcy1vc2MuYyAgICAgICAgICAgfCAgOTQgKysrLS0KPiAg
-ZHJpdmVycy9od21vbi92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTUg
-Ky0KPiAgZHJpdmVycy9tZmQvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
-fCAgIDIgKy0KPiAgZHJpdmVycy9tZmQvdmV4cHJlc3MtY29uZmlnLmMgICAgICAgICAgICAgICAg
-ICAgICAgfCAyODcgLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvbWZkL3ZleHByZXNzLXN5c3Jl
-Zy5jICAgICAgICAgICAgICAgICAgICAgIHwgMzk1ICsrKysrKysrKysrLS0tLS0tLS0tLQo+ICBk
-cml2ZXJzL3Bvd2VyL3Jlc2V0L3ZleHByZXNzLXBvd2Vyb2ZmLmMgICAgICAgICAgICB8ICAxNiAr
-LQo+ICBkcml2ZXJzL3JlZ3VsYXRvci92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICB8
-ICA1MCArLS0KPiAgaW5jbHVkZS9saW51eC92ZXhwcmVzcy5oICAgICAgICAgICAgICAgICAgICAg
-ICAgICAgfCAgNzkgKy0tLS0KPiAgMTcgZmlsZXMgY2hhbmdlZCwgNTY3IGluc2VydGlvbnMoKyks
-IDY3NyBkZWxldGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvYnVzL3ZleHBy
-ZXNzLWNvbmZpZy5jCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21mZC92ZXhwcmVzcy1j
-b25maWcuYwoKQmxpbWV5IQoKTUZEIGRpZmZzdGF0IGxvb2tzIGdyZWF0IGFuZCB0aGUgY2hhbmdl
-cyBsb29rIHNlbnNpYmxlOgogIEFja2VkLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8u
-b3JnPgoKSSBndWVzcyBzb21lb25lIHdpbGwgbmVlZCB0byBjcmVhdGUgYSBicmFuY2ggZm9yIHVz
-IGFsbCB0byBwdWxsIGZyb20uCkknbSBoYXBweSB0byBkbyBpdCBpZiBuZWVkcyBiZS4KCi0tIApM
-ZWUgSm9uZXMKTGluYXJvIFNUTWljcm9lbGVjdHJvbmljcyBMYW5kaW5nIFRlYW0gTGVhZApMaW5h
-cm8ub3JnIOKUgiBPcGVuIHNvdXJjZSBzb2Z0d2FyZSBmb3IgQVJNIFNvQ3MKRm9sbG93IExpbmFy
-bzogRmFjZWJvb2sgfCBUd2l0dGVyIHwgQmxvZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
-X19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBtYWlsaW5nIGxpc3QKbG0tc2Vuc29yc0Bs
-bS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vuc29ycy5vcmcvbWFpbG1hbi9saXN0aW5m
-by9sbS1zZW5zb3Jz
+> 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 at 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
diff --git a/a/content_digest b/N1/content_digest
index 1abb34b..416c6db 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -1,103 +1,100 @@
  "ref\01398707877-22596-1-git-send-email-pawel.moll@arm.com\0"
  "ref\01398707877-22596-3-git-send-email-pawel.moll@arm.com\0"
- "From\0Lee Jones <lee.jones@linaro.org>\0"
- "Subject\0Re: [lm-sensors] [PATCH 02/10] mfd: vexpress: Convert custom func API to regmap\0"
- "Date\0Wed, 30 Apr 2014 13:58:55 +0000\0"
- "To\0Pawel Moll <pawel.moll@arm.com>\0"
- "Cc\0Grant 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>\0"
+ "From\0lee.jones@linaro.org (Lee Jones)\0"
+ "Subject\0[PATCH 02/10] mfd: vexpress: Convert custom func API to regmap\0"
+ "Date\0Wed, 30 Apr 2014 14:58:55 +0100\0"
+ "To\0linux-arm-kernel@lists.infradead.org\0"
  "\00:1\0"
  "b\0"
- "PiBDb21wb25lbnRzIG9mIHRoZSBWZXJzYXRpbGUgRXhwcmVzcyBwbGF0Zm9ybSAoY29uZmlndXJh\n"
- "dGlvbgo+IG1pY3JvY29udHJvbGxlcnMgb24gbW90aGVyYm9hcmQgYW5kIGRhdWdodGVyYm9hcmRz\n"
- "IGluIHBhcnRpY3VsYXIpCj4gdGFsayB0byBlYWNoIG90aGVyIG92ZXIgYSBjdXN0b20gY29uZmln\n"
- "dXJhdGlvbiBidXMuIFRoZXkKPiBwcm92aWRlIG1pc2NlbGxhbmVvdXMgZnVuY3Rpb25zIChmcm9t\n"
- "IGNsb2NrIGdlbmVyYXRvciBjb250cm9sCj4gdG8gZW5lcmd5IHNlbnNvcnMpIHdoaWNoIGFyZSBy\n"
- "ZXByZXNlbnRlZCBhcyBwbGF0Zm9ybSBkZXZpY2VzCj4gKGFuZCBEZXZpY2UgVHJlZSBub2Rlcyku\n"
- "IFRoZSB0cmFuc2FjdGlvbnMgb24gdGhlIGJ1cyBjYW4KPiBiZSBnZW5lcmF0ZWQgYnkgZGlmZmVy\n"
- "ZW50ICJicmlkZ2VzIiBpbiB0aGUgc3lzdGVtLCBzb21lCj4gb2Ygd2hpY2ggYXJlIHVuaXZlcnNh\n"
- "bCBmb3IgdGhlIHdob2xlIHBsYXRmb3JtIChmb3IgdGhlIHByaWNlCj4gb2YgaGlnaCB0cmFuc2Zl\n"
- "ciBsYXRlbmNpZXMpLCBvdGhlcnMgcmVzdHJpY3RlZCB0byBhIHN1YnN5c3RlbQo+IChidXQgbXVj\n"
- "aCBmYXN0ZXIpLgo+IAo+IFVudGlsIG5vdyBkcml2ZXJzIGZvciBzdWNoIGZ1bmN0aW9ucyB3ZXJl\n"
- "IHVzaW5nIGN1c3RvbSAiZnVuYyIKPiBBUEksIHdoaWNoIGlzIGJlaW5nIHJlcGxhY2VkIGluIHRo\n"
- "aXMgcGF0Y2ggYnkgcmVnbWFwIGNhbGxzLgo+IFRoaXMgcmVxdWlyZWQ6Cj4gCj4gKiBhIHJld29y\n"
- "ayAoYW5kIG1vdmUgdG8gZHJpdmVycy9idXMgZGlyZWN0b3J5LCBhcyBzdWdnZXN0ZWQKPiAgIGJ5\n"
- "IFNhbXVlbCBhbmQgQXJuZCkgb2YgdGhlIGNvbmZpZyBidXMgY29yZSwgd2hpY2ggaXMgbXVjaAo+\n"
- "ICAgc2ltcGxlciBub3cgYW5kIHVzZXMgZGV2aWNlIG1vZGVsIGluZnJhc3RydWN0dXJlIChjbGFz\n"
- "cykKPiAgIHRvIGtlZXAgdHJhY2sgb2YgdGhlIGJyaWRnZXM7IG5vbi1EVCBjYXNlIChzb29uIHRv\n"
- "IGJlCj4gICByZXRpcmVkIGFueXdheSkgaXMgc2ltcGx5IGNvdmVyZWQgYnkgYSBzcGVjaWFsIGRl\n"
- "dmljZQo+ICAgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uCj4gCj4gKiB0aGUgbmV3IGNvbmZpZy1idXMg\n"
- "ZHJpdmVyIGFsc28gdGFrZXMgb3ZlciBkZXZpY2UgcG9wdWxhdGlvbiwKPiAgIHNvIHRoZXJlIGlz\n"
- "IG5vIG5lZWQgZm9yIHNwZWNpYWwgbWF0Y2hpbmcgdGFibGUgZm9yCj4gICBvZl9wbGF0Zm9ybV9w\n"
- "b3B1bGF0ZSBub3IgInNpbXBsZS1idXMiIGhhY2sgaW4gdGhlIGFybTY0Cj4gICBtb2RlbCBkdHNp\n"
- "IGZpbGUgKHJlbGV2YW50IGJpbmRpbmdzIGRvY3VtZW50YXRpb24gaGFzCj4gICBiZWVuIHVwZGF0\n"
- "ZWQpOyB0aGlzIGFsbG93cyBhbGwgdGhlIHZleHByZXNzIGRldmljZXMKPiAgIGZpdCBpbnRvIG5v\n"
- "cm1hbCBkZXZpY2UgbW9kZWwsIG1ha2luZyBpdCBwb3NzaWJsZQo+ICAgdG8gcmVtb3ZlIHBsZW50\n"
- "eSBvZiBlYXJseSBpbml0cyBhbmQgb3RoZXIgaGFja3MgaW4KPiAgIHRoZSBuZWFyIGZ1dHVyZQo+\n"
- "IAo+ICogYWRhcHRhdGlvbiBvZiB0aGUgc3lzY2ZnIGJyaWRnZSBpbXBsZW1lbnRhdGlvbiBpbiB0\n"
- "aGUKPiAgIHN5c3JlZyBkcml2ZXIsIGFnYWluIG1ha2luZyBpdCBtdWNoIHNpbXBsZXI7IHRoZXJl\n"
- "IGlzCj4gICBhIHNwZWNpYWwgY2FzZSBvZiB0aGUgImVuZXJneSIgZnVuY3Rpb24gc3Bhbm5pbmcg\n"
- "dHdvCj4gICByZWdpc3RlcnMsIHdoZXJlIHRoZXkgc2hvdWxkIGJlIGJvdGggZGVmaW5lZCBpbiB0\n"
- "aGUgdHJlZQo+ICAgbm93LCBidXQgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpcyBtYWludGFpbmVk\n"
- "IGluIHRoZSBjb2RlCj4gCj4gKiBtb2RpZmljYXRpb24gb2YgdGhlIHJlbGV2YW50IGRyaXZlcnM6\n"
- "Cj4gCj4gICAqIGh3bW9uIC0ganVzdCBhIHN0cmFpZ2h0LWZvcndhcmQgQVBJIGNoYW5nZQo+ICAg\n"
- "KiBwb3dlci9yZXNldCBkcml2ZXIgLSBBUEkgY2hhbmdlCj4gICAqIHJlZ3VsYXRvciAtIEFQSSBj\n"
- "aGFuZ2UgcGx1cyBlcnJvciBoYW5kbGluZwo+ICAgICBzaW1wbGlmaWNhdGlvbgo+ICAgKiBvc2Mg\n"
- "Y2xvY2sgZHJpdmVyIC0gdGhpcyBvbmUgcmVxdWlyZWQgbGFyZ2VyIHJld29yawo+ICAgICBpbiBv\n"
- "cmRlciB0byB0dXJuIGluIGludG8gYSBzdGFuZGFyZCBwbGF0Zm9ybSBkcml2ZXIKPiAKPiBDYzog\n"
- "SmVhbiBEZWx2YXJlIDxqZGVsdmFyZUBzdXNlLmRlPgo+IENjOiBHdWVudGVyIFJvZWNrIDxsaW51\n"
- "eEByb2Vjay11cy5uZXQ+Cj4gQ2M6IGxtLXNlbnNvcnNAbG0tc2Vuc29ycy5vcmcKPiBDYzogTWFy\n"
- "ayBCcm93biA8YnJvb25pZUBrZXJuZWwub3JnPgo+IENjOiBMaWFtIEdpcmR3b29kIDxsZ2lyZHdv\n"
- "b2RAZ21haWwuY29tPgo+IENjOiBEYXZpZCBXb29kaG91c2UgPGR3bXcyQGluZnJhZGVhZC5vcmc+\n"
- "Cj4gQ2M6IERtaXRyeSBFcmVtaW4tU29sZW5pa292IDxkYmFyeXNoa292QGdtYWlsLmNvbT4KPiBD\n"
- "YzogTWlrZSBUdXJxdWV0dGUgPG10dXJxdWV0dGVAbGluYXJvLm9yZz4KPiBTaWduZWQtb2ZmLWJ5\n"
- "OiBQYXdlbCBNb2xsIDxwYXdlbC5tb2xsQGFybS5jb20+Cj4gLS0tCj4gIC4uLi9kZXZpY2V0cmVl\n"
- "L2JpbmRpbmdzL2FybS92ZXhwcmVzcy1zeXNyZWcudHh0ICAgIHwgIDQzICsrLQo+ICBEb2N1bWVu\n"
- "dGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvYXJtL3ZleHByZXNzLnR4dCB8ICAxNSArLQo+ICBh\n"
- "cmNoL2FybS9ib290L2R0cy92ZXhwcmVzcy12MnAtY2ExNV9hNy5kdHMgICAgICAgICB8ICAgNSAr\n"
- "LQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL2N0LWNhOXg0LmMgICAgICAgICAgICAgICAgICB8\n"
- "ICAxMCArLQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL3YybS5jICAgICAgICAgICAgICAgICAg\n"
- "ICAgICB8ICAxOCArLQo+ICBhcmNoL2FybTY0L2Jvb3QvZHRzL3J0c21fdmUtbW90aGVyYm9hcmQu\n"
- "ZHRzaSAgICAgICB8ICAgMiArLQo+ICBkcml2ZXJzL2J1cy9LY29uZmlnICAgICAgICAgICAgICAg\n"
- "ICAgICAgICAgICAgICAgICB8ICAgOSArCj4gIGRyaXZlcnMvYnVzL01ha2VmaWxlICAgICAgICAg\n"
- "ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKPiAgZHJpdmVycy9idXMvdmV4cHJlc3MtY29u\n"
- "ZmlnLmMgICAgICAgICAgICAgICAgICAgICAgfCAyMDIgKysrKysrKysrKysKPiAgZHJpdmVycy9j\n"
- "bGsvdmVyc2F0aWxlL2Nsay12ZXhwcmVzcy1vc2MuYyAgICAgICAgICAgfCAgOTQgKysrLS0KPiAg\n"
- "ZHJpdmVycy9od21vbi92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTUg\n"
- "Ky0KPiAgZHJpdmVycy9tZmQvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\n"
- "fCAgIDIgKy0KPiAgZHJpdmVycy9tZmQvdmV4cHJlc3MtY29uZmlnLmMgICAgICAgICAgICAgICAg\n"
- "ICAgICAgfCAyODcgLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvbWZkL3ZleHByZXNzLXN5c3Jl\n"
- "Zy5jICAgICAgICAgICAgICAgICAgICAgIHwgMzk1ICsrKysrKysrKysrLS0tLS0tLS0tLQo+ICBk\n"
- "cml2ZXJzL3Bvd2VyL3Jlc2V0L3ZleHByZXNzLXBvd2Vyb2ZmLmMgICAgICAgICAgICB8ICAxNiAr\n"
- "LQo+ICBkcml2ZXJzL3JlZ3VsYXRvci92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICB8\n"
- "ICA1MCArLS0KPiAgaW5jbHVkZS9saW51eC92ZXhwcmVzcy5oICAgICAgICAgICAgICAgICAgICAg\n"
- "ICAgICAgfCAgNzkgKy0tLS0KPiAgMTcgZmlsZXMgY2hhbmdlZCwgNTY3IGluc2VydGlvbnMoKyks\n"
- "IDY3NyBkZWxldGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvYnVzL3ZleHBy\n"
- "ZXNzLWNvbmZpZy5jCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21mZC92ZXhwcmVzcy1j\n"
- "b25maWcuYwoKQmxpbWV5IQoKTUZEIGRpZmZzdGF0IGxvb2tzIGdyZWF0IGFuZCB0aGUgY2hhbmdl\n"
- "cyBsb29rIHNlbnNpYmxlOgogIEFja2VkLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8u\n"
- "b3JnPgoKSSBndWVzcyBzb21lb25lIHdpbGwgbmVlZCB0byBjcmVhdGUgYSBicmFuY2ggZm9yIHVz\n"
- "IGFsbCB0byBwdWxsIGZyb20uCkknbSBoYXBweSB0byBkbyBpdCBpZiBuZWVkcyBiZS4KCi0tIApM\n"
- "ZWUgSm9uZXMKTGluYXJvIFNUTWljcm9lbGVjdHJvbmljcyBMYW5kaW5nIFRlYW0gTGVhZApMaW5h\n"
- "cm8ub3JnIOKUgiBPcGVuIHNvdXJjZSBzb2Z0d2FyZSBmb3IgQVJNIFNvQ3MKRm9sbG93IExpbmFy\n"
- "bzogRmFjZWJvb2sgfCBUd2l0dGVyIHwgQmxvZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f\n"
- "X19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBtYWlsaW5nIGxpc3QKbG0tc2Vuc29yc0Bs\n"
- "bS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vuc29ycy5vcmcvbWFpbG1hbi9saXN0aW5m\n"
- by9sbS1zZW5zb3Jz
+ "> Components of the Versatile Express platform (configuration\n"
+ "> microcontrollers on motherboard and daughterboards in particular)\n"
+ "> talk to each other over a custom configuration bus. They\n"
+ "> provide miscellaneous functions (from clock generator control\n"
+ "> to energy sensors) which are represented as platform devices\n"
+ "> (and Device Tree nodes). The transactions on the bus can\n"
+ "> be generated by different \"bridges\" in the system, some\n"
+ "> of which are universal for the whole platform (for the price\n"
+ "> of high transfer latencies), others restricted to a subsystem\n"
+ "> (but much faster).\n"
+ "> \n"
+ "> Until now drivers for such functions were using custom \"func\"\n"
+ "> API, which is being replaced in this patch by regmap calls.\n"
+ "> This required:\n"
+ "> \n"
+ "> * a rework (and move to drivers/bus directory, as suggested\n"
+ ">   by Samuel and Arnd) of the config bus core, which is much\n"
+ ">   simpler now and uses device model infrastructure (class)\n"
+ ">   to keep track of the bridges; non-DT case (soon to be\n"
+ ">   retired anyway) is simply covered by a special device\n"
+ ">   registration function\n"
+ "> \n"
+ "> * the new config-bus driver also takes over device population,\n"
+ ">   so there is no need for special matching table for\n"
+ ">   of_platform_populate nor \"simple-bus\" hack in the arm64\n"
+ ">   model dtsi file (relevant bindings documentation has\n"
+ ">   been updated); this allows all the vexpress devices\n"
+ ">   fit into normal device model, making it possible\n"
+ ">   to remove plenty of early inits and other hacks in\n"
+ ">   the near future\n"
+ "> \n"
+ "> * adaptation of the syscfg bridge implementation in the\n"
+ ">   sysreg driver, again making it much simpler; there is\n"
+ ">   a special case of the \"energy\" function spanning two\n"
+ ">   registers, where they should be both defined in the tree\n"
+ ">   now, but backward compatibility is maintained in the code\n"
+ "> \n"
+ "> * modification of the relevant drivers:\n"
+ "> \n"
+ ">   * hwmon - just a straight-forward API change\n"
+ ">   * power/reset driver - API change\n"
+ ">   * regulator - API change plus error handling\n"
+ ">     simplification\n"
+ ">   * osc clock driver - this one required larger rework\n"
+ ">     in order to turn in into a standard platform driver\n"
+ "> \n"
+ "> Cc: Jean Delvare <jdelvare@suse.de>\n"
+ "> Cc: Guenter Roeck <linux@roeck-us.net>\n"
+ "> Cc: lm-sensors at lm-sensors.org\n"
+ "> Cc: Mark Brown <broonie@kernel.org>\n"
+ "> Cc: Liam Girdwood <lgirdwood@gmail.com>\n"
+ "> Cc: David Woodhouse <dwmw2@infradead.org>\n"
+ "> Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>\n"
+ "> Cc: Mike Turquette <mturquette@linaro.org>\n"
+ "> Signed-off-by: Pawel Moll <pawel.moll@arm.com>\n"
+ "> ---\n"
+ ">  .../devicetree/bindings/arm/vexpress-sysreg.txt    |  43 ++-\n"
+ ">  Documentation/devicetree/bindings/arm/vexpress.txt |  15 +-\n"
+ ">  arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts         |   5 +-\n"
+ ">  arch/arm/mach-vexpress/ct-ca9x4.c                  |  10 +-\n"
+ ">  arch/arm/mach-vexpress/v2m.c                       |  18 +-\n"
+ ">  arch/arm64/boot/dts/rtsm_ve-motherboard.dtsi       |   2 +-\n"
+ ">  drivers/bus/Kconfig                                |   9 +\n"
+ ">  drivers/bus/Makefile                               |   2 +\n"
+ ">  drivers/bus/vexpress-config.c                      | 202 +++++++++++\n"
+ ">  drivers/clk/versatile/clk-vexpress-osc.c           |  94 +++--\n"
+ ">  drivers/hwmon/vexpress.c                           |  15 +-\n"
+ ">  drivers/mfd/Makefile                               |   2 +-\n"
+ ">  drivers/mfd/vexpress-config.c                      | 287 ---------------\n"
+ ">  drivers/mfd/vexpress-sysreg.c                      | 395 +++++++++++----------\n"
+ ">  drivers/power/reset/vexpress-poweroff.c            |  16 +-\n"
+ ">  drivers/regulator/vexpress.c                       |  50 +--\n"
+ ">  include/linux/vexpress.h                           |  79 +----\n"
+ ">  17 files changed, 567 insertions(+), 677 deletions(-)\n"
+ ">  create mode 100644 drivers/bus/vexpress-config.c\n"
+ ">  delete mode 100644 drivers/mfd/vexpress-config.c\n"
+ "\n"
+ "Blimey!\n"
+ "\n"
+ "MFD diffstat looks great and the changes look sensible:\n"
+ "  Acked-by: Lee Jones <lee.jones@linaro.org>\n"
+ "\n"
+ "I guess someone will need to create a branch for us all to pull from.\n"
+ "I'm happy to do it if needs be.\n"
+ "\n"
+ "-- \n"
+ "Lee Jones\n"
+ "Linaro STMicroelectronics Landing Team Lead\n"
+ "Linaro.org ? Open source software for ARM SoCs\n"
+ Follow Linaro: Facebook | Twitter | Blog
 
-8c1245f6742bc1942b1fc60231722ac70ef01a06e77200e491b4fc0e0d331bfd
+793f8f3aee1fe37f66aaae1c828182c5dd500b8d6dca6427366861ec9333e7fc

diff --git a/a/1.txt b/N2/1.txt
index 1aefa37..a34418e 100644
--- a/a/1.txt
+++ b/N2/1.txt
@@ -1,76 +1,90 @@
-PiBDb21wb25lbnRzIG9mIHRoZSBWZXJzYXRpbGUgRXhwcmVzcyBwbGF0Zm9ybSAoY29uZmlndXJh
-dGlvbgo+IG1pY3JvY29udHJvbGxlcnMgb24gbW90aGVyYm9hcmQgYW5kIGRhdWdodGVyYm9hcmRz
-IGluIHBhcnRpY3VsYXIpCj4gdGFsayB0byBlYWNoIG90aGVyIG92ZXIgYSBjdXN0b20gY29uZmln
-dXJhdGlvbiBidXMuIFRoZXkKPiBwcm92aWRlIG1pc2NlbGxhbmVvdXMgZnVuY3Rpb25zIChmcm9t
-IGNsb2NrIGdlbmVyYXRvciBjb250cm9sCj4gdG8gZW5lcmd5IHNlbnNvcnMpIHdoaWNoIGFyZSBy
-ZXByZXNlbnRlZCBhcyBwbGF0Zm9ybSBkZXZpY2VzCj4gKGFuZCBEZXZpY2UgVHJlZSBub2Rlcyku
-IFRoZSB0cmFuc2FjdGlvbnMgb24gdGhlIGJ1cyBjYW4KPiBiZSBnZW5lcmF0ZWQgYnkgZGlmZmVy
-ZW50ICJicmlkZ2VzIiBpbiB0aGUgc3lzdGVtLCBzb21lCj4gb2Ygd2hpY2ggYXJlIHVuaXZlcnNh
-bCBmb3IgdGhlIHdob2xlIHBsYXRmb3JtIChmb3IgdGhlIHByaWNlCj4gb2YgaGlnaCB0cmFuc2Zl
-ciBsYXRlbmNpZXMpLCBvdGhlcnMgcmVzdHJpY3RlZCB0byBhIHN1YnN5c3RlbQo+IChidXQgbXVj
-aCBmYXN0ZXIpLgo+IAo+IFVudGlsIG5vdyBkcml2ZXJzIGZvciBzdWNoIGZ1bmN0aW9ucyB3ZXJl
-IHVzaW5nIGN1c3RvbSAiZnVuYyIKPiBBUEksIHdoaWNoIGlzIGJlaW5nIHJlcGxhY2VkIGluIHRo
-aXMgcGF0Y2ggYnkgcmVnbWFwIGNhbGxzLgo+IFRoaXMgcmVxdWlyZWQ6Cj4gCj4gKiBhIHJld29y
-ayAoYW5kIG1vdmUgdG8gZHJpdmVycy9idXMgZGlyZWN0b3J5LCBhcyBzdWdnZXN0ZWQKPiAgIGJ5
-IFNhbXVlbCBhbmQgQXJuZCkgb2YgdGhlIGNvbmZpZyBidXMgY29yZSwgd2hpY2ggaXMgbXVjaAo+
-ICAgc2ltcGxlciBub3cgYW5kIHVzZXMgZGV2aWNlIG1vZGVsIGluZnJhc3RydWN0dXJlIChjbGFz
-cykKPiAgIHRvIGtlZXAgdHJhY2sgb2YgdGhlIGJyaWRnZXM7IG5vbi1EVCBjYXNlIChzb29uIHRv
-IGJlCj4gICByZXRpcmVkIGFueXdheSkgaXMgc2ltcGx5IGNvdmVyZWQgYnkgYSBzcGVjaWFsIGRl
-dmljZQo+ICAgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uCj4gCj4gKiB0aGUgbmV3IGNvbmZpZy1idXMg
-ZHJpdmVyIGFsc28gdGFrZXMgb3ZlciBkZXZpY2UgcG9wdWxhdGlvbiwKPiAgIHNvIHRoZXJlIGlz
-IG5vIG5lZWQgZm9yIHNwZWNpYWwgbWF0Y2hpbmcgdGFibGUgZm9yCj4gICBvZl9wbGF0Zm9ybV9w
-b3B1bGF0ZSBub3IgInNpbXBsZS1idXMiIGhhY2sgaW4gdGhlIGFybTY0Cj4gICBtb2RlbCBkdHNp
-IGZpbGUgKHJlbGV2YW50IGJpbmRpbmdzIGRvY3VtZW50YXRpb24gaGFzCj4gICBiZWVuIHVwZGF0
-ZWQpOyB0aGlzIGFsbG93cyBhbGwgdGhlIHZleHByZXNzIGRldmljZXMKPiAgIGZpdCBpbnRvIG5v
-cm1hbCBkZXZpY2UgbW9kZWwsIG1ha2luZyBpdCBwb3NzaWJsZQo+ICAgdG8gcmVtb3ZlIHBsZW50
-eSBvZiBlYXJseSBpbml0cyBhbmQgb3RoZXIgaGFja3MgaW4KPiAgIHRoZSBuZWFyIGZ1dHVyZQo+
-IAo+ICogYWRhcHRhdGlvbiBvZiB0aGUgc3lzY2ZnIGJyaWRnZSBpbXBsZW1lbnRhdGlvbiBpbiB0
-aGUKPiAgIHN5c3JlZyBkcml2ZXIsIGFnYWluIG1ha2luZyBpdCBtdWNoIHNpbXBsZXI7IHRoZXJl
-IGlzCj4gICBhIHNwZWNpYWwgY2FzZSBvZiB0aGUgImVuZXJneSIgZnVuY3Rpb24gc3Bhbm5pbmcg
-dHdvCj4gICByZWdpc3RlcnMsIHdoZXJlIHRoZXkgc2hvdWxkIGJlIGJvdGggZGVmaW5lZCBpbiB0
-aGUgdHJlZQo+ICAgbm93LCBidXQgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpcyBtYWludGFpbmVk
-IGluIHRoZSBjb2RlCj4gCj4gKiBtb2RpZmljYXRpb24gb2YgdGhlIHJlbGV2YW50IGRyaXZlcnM6
-Cj4gCj4gICAqIGh3bW9uIC0ganVzdCBhIHN0cmFpZ2h0LWZvcndhcmQgQVBJIGNoYW5nZQo+ICAg
-KiBwb3dlci9yZXNldCBkcml2ZXIgLSBBUEkgY2hhbmdlCj4gICAqIHJlZ3VsYXRvciAtIEFQSSBj
-aGFuZ2UgcGx1cyBlcnJvciBoYW5kbGluZwo+ICAgICBzaW1wbGlmaWNhdGlvbgo+ICAgKiBvc2Mg
-Y2xvY2sgZHJpdmVyIC0gdGhpcyBvbmUgcmVxdWlyZWQgbGFyZ2VyIHJld29yawo+ICAgICBpbiBv
-cmRlciB0byB0dXJuIGluIGludG8gYSBzdGFuZGFyZCBwbGF0Zm9ybSBkcml2ZXIKPiAKPiBDYzog
-SmVhbiBEZWx2YXJlIDxqZGVsdmFyZUBzdXNlLmRlPgo+IENjOiBHdWVudGVyIFJvZWNrIDxsaW51
-eEByb2Vjay11cy5uZXQ+Cj4gQ2M6IGxtLXNlbnNvcnNAbG0tc2Vuc29ycy5vcmcKPiBDYzogTWFy
-ayBCcm93biA8YnJvb25pZUBrZXJuZWwub3JnPgo+IENjOiBMaWFtIEdpcmR3b29kIDxsZ2lyZHdv
-b2RAZ21haWwuY29tPgo+IENjOiBEYXZpZCBXb29kaG91c2UgPGR3bXcyQGluZnJhZGVhZC5vcmc+
-Cj4gQ2M6IERtaXRyeSBFcmVtaW4tU29sZW5pa292IDxkYmFyeXNoa292QGdtYWlsLmNvbT4KPiBD
-YzogTWlrZSBUdXJxdWV0dGUgPG10dXJxdWV0dGVAbGluYXJvLm9yZz4KPiBTaWduZWQtb2ZmLWJ5
-OiBQYXdlbCBNb2xsIDxwYXdlbC5tb2xsQGFybS5jb20+Cj4gLS0tCj4gIC4uLi9kZXZpY2V0cmVl
-L2JpbmRpbmdzL2FybS92ZXhwcmVzcy1zeXNyZWcudHh0ICAgIHwgIDQzICsrLQo+ICBEb2N1bWVu
-dGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvYXJtL3ZleHByZXNzLnR4dCB8ICAxNSArLQo+ICBh
-cmNoL2FybS9ib290L2R0cy92ZXhwcmVzcy12MnAtY2ExNV9hNy5kdHMgICAgICAgICB8ICAgNSAr
-LQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL2N0LWNhOXg0LmMgICAgICAgICAgICAgICAgICB8
-ICAxMCArLQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL3YybS5jICAgICAgICAgICAgICAgICAg
-ICAgICB8ICAxOCArLQo+ICBhcmNoL2FybTY0L2Jvb3QvZHRzL3J0c21fdmUtbW90aGVyYm9hcmQu
-ZHRzaSAgICAgICB8ICAgMiArLQo+ICBkcml2ZXJzL2J1cy9LY29uZmlnICAgICAgICAgICAgICAg
-ICAgICAgICAgICAgICAgICB8ICAgOSArCj4gIGRyaXZlcnMvYnVzL01ha2VmaWxlICAgICAgICAg
-ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKPiAgZHJpdmVycy9idXMvdmV4cHJlc3MtY29u
-ZmlnLmMgICAgICAgICAgICAgICAgICAgICAgfCAyMDIgKysrKysrKysrKysKPiAgZHJpdmVycy9j
-bGsvdmVyc2F0aWxlL2Nsay12ZXhwcmVzcy1vc2MuYyAgICAgICAgICAgfCAgOTQgKysrLS0KPiAg
-ZHJpdmVycy9od21vbi92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTUg
-Ky0KPiAgZHJpdmVycy9tZmQvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
-fCAgIDIgKy0KPiAgZHJpdmVycy9tZmQvdmV4cHJlc3MtY29uZmlnLmMgICAgICAgICAgICAgICAg
-ICAgICAgfCAyODcgLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvbWZkL3ZleHByZXNzLXN5c3Jl
-Zy5jICAgICAgICAgICAgICAgICAgICAgIHwgMzk1ICsrKysrKysrKysrLS0tLS0tLS0tLQo+ICBk
-cml2ZXJzL3Bvd2VyL3Jlc2V0L3ZleHByZXNzLXBvd2Vyb2ZmLmMgICAgICAgICAgICB8ICAxNiAr
-LQo+ICBkcml2ZXJzL3JlZ3VsYXRvci92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICB8
-ICA1MCArLS0KPiAgaW5jbHVkZS9saW51eC92ZXhwcmVzcy5oICAgICAgICAgICAgICAgICAgICAg
-ICAgICAgfCAgNzkgKy0tLS0KPiAgMTcgZmlsZXMgY2hhbmdlZCwgNTY3IGluc2VydGlvbnMoKyks
-IDY3NyBkZWxldGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvYnVzL3ZleHBy
-ZXNzLWNvbmZpZy5jCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21mZC92ZXhwcmVzcy1j
-b25maWcuYwoKQmxpbWV5IQoKTUZEIGRpZmZzdGF0IGxvb2tzIGdyZWF0IGFuZCB0aGUgY2hhbmdl
-cyBsb29rIHNlbnNpYmxlOgogIEFja2VkLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8u
-b3JnPgoKSSBndWVzcyBzb21lb25lIHdpbGwgbmVlZCB0byBjcmVhdGUgYSBicmFuY2ggZm9yIHVz
-IGFsbCB0byBwdWxsIGZyb20uCkknbSBoYXBweSB0byBkbyBpdCBpZiBuZWVkcyBiZS4KCi0tIApM
-ZWUgSm9uZXMKTGluYXJvIFNUTWljcm9lbGVjdHJvbmljcyBMYW5kaW5nIFRlYW0gTGVhZApMaW5h
-cm8ub3JnIOKUgiBPcGVuIHNvdXJjZSBzb2Z0d2FyZSBmb3IgQVJNIFNvQ3MKRm9sbG93IExpbmFy
-bzogRmFjZWJvb2sgfCBUd2l0dGVyIHwgQmxvZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f
-X19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBtYWlsaW5nIGxpc3QKbG0tc2Vuc29yc0Bs
-bS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vuc29ycy5vcmcvbWFpbG1hbi9saXN0aW5m
-by9sbS1zZW5zb3Jz
+> 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
diff --git a/a/content_digest b/N2/content_digest
index 1abb34b..451f2c8 100644
--- a/a/content_digest
+++ b/N2/content_digest
@@ -1,8 +1,8 @@
  "ref\01398707877-22596-1-git-send-email-pawel.moll@arm.com\0"
  "ref\01398707877-22596-3-git-send-email-pawel.moll@arm.com\0"
  "From\0Lee Jones <lee.jones@linaro.org>\0"
- "Subject\0Re: [lm-sensors] [PATCH 02/10] mfd: vexpress: Convert custom func API to regmap\0"
- "Date\0Wed, 30 Apr 2014 13:58:55 +0000\0"
+ "Subject\0Re: [PATCH 02/10] mfd: vexpress: Convert custom func API to regmap\0"
+ "Date\0Wed, 30 Apr 2014 14:58:55 +0100\0"
  "To\0Pawel Moll <pawel.moll@arm.com>\0"
  "Cc\0Grant Likely <grant.likely@linaro.org>"
   Rob Herring <robh+dt@kernel.org>
@@ -23,81 +23,95 @@
  " Mike Turquette <mturquette@linaro.org>\0"
  "\00:1\0"
  "b\0"
- "PiBDb21wb25lbnRzIG9mIHRoZSBWZXJzYXRpbGUgRXhwcmVzcyBwbGF0Zm9ybSAoY29uZmlndXJh\n"
- "dGlvbgo+IG1pY3JvY29udHJvbGxlcnMgb24gbW90aGVyYm9hcmQgYW5kIGRhdWdodGVyYm9hcmRz\n"
- "IGluIHBhcnRpY3VsYXIpCj4gdGFsayB0byBlYWNoIG90aGVyIG92ZXIgYSBjdXN0b20gY29uZmln\n"
- "dXJhdGlvbiBidXMuIFRoZXkKPiBwcm92aWRlIG1pc2NlbGxhbmVvdXMgZnVuY3Rpb25zIChmcm9t\n"
- "IGNsb2NrIGdlbmVyYXRvciBjb250cm9sCj4gdG8gZW5lcmd5IHNlbnNvcnMpIHdoaWNoIGFyZSBy\n"
- "ZXByZXNlbnRlZCBhcyBwbGF0Zm9ybSBkZXZpY2VzCj4gKGFuZCBEZXZpY2UgVHJlZSBub2Rlcyku\n"
- "IFRoZSB0cmFuc2FjdGlvbnMgb24gdGhlIGJ1cyBjYW4KPiBiZSBnZW5lcmF0ZWQgYnkgZGlmZmVy\n"
- "ZW50ICJicmlkZ2VzIiBpbiB0aGUgc3lzdGVtLCBzb21lCj4gb2Ygd2hpY2ggYXJlIHVuaXZlcnNh\n"
- "bCBmb3IgdGhlIHdob2xlIHBsYXRmb3JtIChmb3IgdGhlIHByaWNlCj4gb2YgaGlnaCB0cmFuc2Zl\n"
- "ciBsYXRlbmNpZXMpLCBvdGhlcnMgcmVzdHJpY3RlZCB0byBhIHN1YnN5c3RlbQo+IChidXQgbXVj\n"
- "aCBmYXN0ZXIpLgo+IAo+IFVudGlsIG5vdyBkcml2ZXJzIGZvciBzdWNoIGZ1bmN0aW9ucyB3ZXJl\n"
- "IHVzaW5nIGN1c3RvbSAiZnVuYyIKPiBBUEksIHdoaWNoIGlzIGJlaW5nIHJlcGxhY2VkIGluIHRo\n"
- "aXMgcGF0Y2ggYnkgcmVnbWFwIGNhbGxzLgo+IFRoaXMgcmVxdWlyZWQ6Cj4gCj4gKiBhIHJld29y\n"
- "ayAoYW5kIG1vdmUgdG8gZHJpdmVycy9idXMgZGlyZWN0b3J5LCBhcyBzdWdnZXN0ZWQKPiAgIGJ5\n"
- "IFNhbXVlbCBhbmQgQXJuZCkgb2YgdGhlIGNvbmZpZyBidXMgY29yZSwgd2hpY2ggaXMgbXVjaAo+\n"
- "ICAgc2ltcGxlciBub3cgYW5kIHVzZXMgZGV2aWNlIG1vZGVsIGluZnJhc3RydWN0dXJlIChjbGFz\n"
- "cykKPiAgIHRvIGtlZXAgdHJhY2sgb2YgdGhlIGJyaWRnZXM7IG5vbi1EVCBjYXNlIChzb29uIHRv\n"
- "IGJlCj4gICByZXRpcmVkIGFueXdheSkgaXMgc2ltcGx5IGNvdmVyZWQgYnkgYSBzcGVjaWFsIGRl\n"
- "dmljZQo+ICAgcmVnaXN0cmF0aW9uIGZ1bmN0aW9uCj4gCj4gKiB0aGUgbmV3IGNvbmZpZy1idXMg\n"
- "ZHJpdmVyIGFsc28gdGFrZXMgb3ZlciBkZXZpY2UgcG9wdWxhdGlvbiwKPiAgIHNvIHRoZXJlIGlz\n"
- "IG5vIG5lZWQgZm9yIHNwZWNpYWwgbWF0Y2hpbmcgdGFibGUgZm9yCj4gICBvZl9wbGF0Zm9ybV9w\n"
- "b3B1bGF0ZSBub3IgInNpbXBsZS1idXMiIGhhY2sgaW4gdGhlIGFybTY0Cj4gICBtb2RlbCBkdHNp\n"
- "IGZpbGUgKHJlbGV2YW50IGJpbmRpbmdzIGRvY3VtZW50YXRpb24gaGFzCj4gICBiZWVuIHVwZGF0\n"
- "ZWQpOyB0aGlzIGFsbG93cyBhbGwgdGhlIHZleHByZXNzIGRldmljZXMKPiAgIGZpdCBpbnRvIG5v\n"
- "cm1hbCBkZXZpY2UgbW9kZWwsIG1ha2luZyBpdCBwb3NzaWJsZQo+ICAgdG8gcmVtb3ZlIHBsZW50\n"
- "eSBvZiBlYXJseSBpbml0cyBhbmQgb3RoZXIgaGFja3MgaW4KPiAgIHRoZSBuZWFyIGZ1dHVyZQo+\n"
- "IAo+ICogYWRhcHRhdGlvbiBvZiB0aGUgc3lzY2ZnIGJyaWRnZSBpbXBsZW1lbnRhdGlvbiBpbiB0\n"
- "aGUKPiAgIHN5c3JlZyBkcml2ZXIsIGFnYWluIG1ha2luZyBpdCBtdWNoIHNpbXBsZXI7IHRoZXJl\n"
- "IGlzCj4gICBhIHNwZWNpYWwgY2FzZSBvZiB0aGUgImVuZXJneSIgZnVuY3Rpb24gc3Bhbm5pbmcg\n"
- "dHdvCj4gICByZWdpc3RlcnMsIHdoZXJlIHRoZXkgc2hvdWxkIGJlIGJvdGggZGVmaW5lZCBpbiB0\n"
- "aGUgdHJlZQo+ICAgbm93LCBidXQgYmFja3dhcmQgY29tcGF0aWJpbGl0eSBpcyBtYWludGFpbmVk\n"
- "IGluIHRoZSBjb2RlCj4gCj4gKiBtb2RpZmljYXRpb24gb2YgdGhlIHJlbGV2YW50IGRyaXZlcnM6\n"
- "Cj4gCj4gICAqIGh3bW9uIC0ganVzdCBhIHN0cmFpZ2h0LWZvcndhcmQgQVBJIGNoYW5nZQo+ICAg\n"
- "KiBwb3dlci9yZXNldCBkcml2ZXIgLSBBUEkgY2hhbmdlCj4gICAqIHJlZ3VsYXRvciAtIEFQSSBj\n"
- "aGFuZ2UgcGx1cyBlcnJvciBoYW5kbGluZwo+ICAgICBzaW1wbGlmaWNhdGlvbgo+ICAgKiBvc2Mg\n"
- "Y2xvY2sgZHJpdmVyIC0gdGhpcyBvbmUgcmVxdWlyZWQgbGFyZ2VyIHJld29yawo+ICAgICBpbiBv\n"
- "cmRlciB0byB0dXJuIGluIGludG8gYSBzdGFuZGFyZCBwbGF0Zm9ybSBkcml2ZXIKPiAKPiBDYzog\n"
- "SmVhbiBEZWx2YXJlIDxqZGVsdmFyZUBzdXNlLmRlPgo+IENjOiBHdWVudGVyIFJvZWNrIDxsaW51\n"
- "eEByb2Vjay11cy5uZXQ+Cj4gQ2M6IGxtLXNlbnNvcnNAbG0tc2Vuc29ycy5vcmcKPiBDYzogTWFy\n"
- "ayBCcm93biA8YnJvb25pZUBrZXJuZWwub3JnPgo+IENjOiBMaWFtIEdpcmR3b29kIDxsZ2lyZHdv\n"
- "b2RAZ21haWwuY29tPgo+IENjOiBEYXZpZCBXb29kaG91c2UgPGR3bXcyQGluZnJhZGVhZC5vcmc+\n"
- "Cj4gQ2M6IERtaXRyeSBFcmVtaW4tU29sZW5pa292IDxkYmFyeXNoa292QGdtYWlsLmNvbT4KPiBD\n"
- "YzogTWlrZSBUdXJxdWV0dGUgPG10dXJxdWV0dGVAbGluYXJvLm9yZz4KPiBTaWduZWQtb2ZmLWJ5\n"
- "OiBQYXdlbCBNb2xsIDxwYXdlbC5tb2xsQGFybS5jb20+Cj4gLS0tCj4gIC4uLi9kZXZpY2V0cmVl\n"
- "L2JpbmRpbmdzL2FybS92ZXhwcmVzcy1zeXNyZWcudHh0ICAgIHwgIDQzICsrLQo+ICBEb2N1bWVu\n"
- "dGF0aW9uL2RldmljZXRyZWUvYmluZGluZ3MvYXJtL3ZleHByZXNzLnR4dCB8ICAxNSArLQo+ICBh\n"
- "cmNoL2FybS9ib290L2R0cy92ZXhwcmVzcy12MnAtY2ExNV9hNy5kdHMgICAgICAgICB8ICAgNSAr\n"
- "LQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL2N0LWNhOXg0LmMgICAgICAgICAgICAgICAgICB8\n"
- "ICAxMCArLQo+ICBhcmNoL2FybS9tYWNoLXZleHByZXNzL3YybS5jICAgICAgICAgICAgICAgICAg\n"
- "ICAgICB8ICAxOCArLQo+ICBhcmNoL2FybTY0L2Jvb3QvZHRzL3J0c21fdmUtbW90aGVyYm9hcmQu\n"
- "ZHRzaSAgICAgICB8ICAgMiArLQo+ICBkcml2ZXJzL2J1cy9LY29uZmlnICAgICAgICAgICAgICAg\n"
- "ICAgICAgICAgICAgICAgICB8ICAgOSArCj4gIGRyaXZlcnMvYnVzL01ha2VmaWxlICAgICAgICAg\n"
- "ICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKPiAgZHJpdmVycy9idXMvdmV4cHJlc3MtY29u\n"
- "ZmlnLmMgICAgICAgICAgICAgICAgICAgICAgfCAyMDIgKysrKysrKysrKysKPiAgZHJpdmVycy9j\n"
- "bGsvdmVyc2F0aWxlL2Nsay12ZXhwcmVzcy1vc2MuYyAgICAgICAgICAgfCAgOTQgKysrLS0KPiAg\n"
- "ZHJpdmVycy9od21vbi92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMTUg\n"
- "Ky0KPiAgZHJpdmVycy9tZmQvTWFrZWZpbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg\n"
- "fCAgIDIgKy0KPiAgZHJpdmVycy9tZmQvdmV4cHJlc3MtY29uZmlnLmMgICAgICAgICAgICAgICAg\n"
- "ICAgICAgfCAyODcgLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvbWZkL3ZleHByZXNzLXN5c3Jl\n"
- "Zy5jICAgICAgICAgICAgICAgICAgICAgIHwgMzk1ICsrKysrKysrKysrLS0tLS0tLS0tLQo+ICBk\n"
- "cml2ZXJzL3Bvd2VyL3Jlc2V0L3ZleHByZXNzLXBvd2Vyb2ZmLmMgICAgICAgICAgICB8ICAxNiAr\n"
- "LQo+ICBkcml2ZXJzL3JlZ3VsYXRvci92ZXhwcmVzcy5jICAgICAgICAgICAgICAgICAgICAgICB8\n"
- "ICA1MCArLS0KPiAgaW5jbHVkZS9saW51eC92ZXhwcmVzcy5oICAgICAgICAgICAgICAgICAgICAg\n"
- "ICAgICAgfCAgNzkgKy0tLS0KPiAgMTcgZmlsZXMgY2hhbmdlZCwgNTY3IGluc2VydGlvbnMoKyks\n"
- "IDY3NyBkZWxldGlvbnMoLSkKPiAgY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvYnVzL3ZleHBy\n"
- "ZXNzLWNvbmZpZy5jCj4gIGRlbGV0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL21mZC92ZXhwcmVzcy1j\n"
- "b25maWcuYwoKQmxpbWV5IQoKTUZEIGRpZmZzdGF0IGxvb2tzIGdyZWF0IGFuZCB0aGUgY2hhbmdl\n"
- "cyBsb29rIHNlbnNpYmxlOgogIEFja2VkLWJ5OiBMZWUgSm9uZXMgPGxlZS5qb25lc0BsaW5hcm8u\n"
- "b3JnPgoKSSBndWVzcyBzb21lb25lIHdpbGwgbmVlZCB0byBjcmVhdGUgYSBicmFuY2ggZm9yIHVz\n"
- "IGFsbCB0byBwdWxsIGZyb20uCkknbSBoYXBweSB0byBkbyBpdCBpZiBuZWVkcyBiZS4KCi0tIApM\n"
- "ZWUgSm9uZXMKTGluYXJvIFNUTWljcm9lbGVjdHJvbmljcyBMYW5kaW5nIFRlYW0gTGVhZApMaW5h\n"
- "cm8ub3JnIOKUgiBPcGVuIHNvdXJjZSBzb2Z0d2FyZSBmb3IgQVJNIFNvQ3MKRm9sbG93IExpbmFy\n"
- "bzogRmFjZWJvb2sgfCBUd2l0dGVyIHwgQmxvZwoKX19fX19fX19fX19fX19fX19fX19fX19fX19f\n"
- "X19fX19fX19fX19fX19fX19fX18KbG0tc2Vuc29ycyBtYWlsaW5nIGxpc3QKbG0tc2Vuc29yc0Bs\n"
- "bS1zZW5zb3JzLm9yZwpodHRwOi8vbGlzdHMubG0tc2Vuc29ycy5vcmcvbWFpbG1hbi9saXN0aW5m\n"
- by9sbS1zZW5zb3Jz
+ "> Components of the Versatile Express platform (configuration\n"
+ "> microcontrollers on motherboard and daughterboards in particular)\n"
+ "> talk to each other over a custom configuration bus. They\n"
+ "> provide miscellaneous functions (from clock generator control\n"
+ "> to energy sensors) which are represented as platform devices\n"
+ "> (and Device Tree nodes). The transactions on the bus can\n"
+ "> be generated by different \"bridges\" in the system, some\n"
+ "> of which are universal for the whole platform (for the price\n"
+ "> of high transfer latencies), others restricted to a subsystem\n"
+ "> (but much faster).\n"
+ "> \n"
+ "> Until now drivers for such functions were using custom \"func\"\n"
+ "> API, which is being replaced in this patch by regmap calls.\n"
+ "> This required:\n"
+ "> \n"
+ "> * a rework (and move to drivers/bus directory, as suggested\n"
+ ">   by Samuel and Arnd) of the config bus core, which is much\n"
+ ">   simpler now and uses device model infrastructure (class)\n"
+ ">   to keep track of the bridges; non-DT case (soon to be\n"
+ ">   retired anyway) is simply covered by a special device\n"
+ ">   registration function\n"
+ "> \n"
+ "> * the new config-bus driver also takes over device population,\n"
+ ">   so there is no need for special matching table for\n"
+ ">   of_platform_populate nor \"simple-bus\" hack in the arm64\n"
+ ">   model dtsi file (relevant bindings documentation has\n"
+ ">   been updated); this allows all the vexpress devices\n"
+ ">   fit into normal device model, making it possible\n"
+ ">   to remove plenty of early inits and other hacks in\n"
+ ">   the near future\n"
+ "> \n"
+ "> * adaptation of the syscfg bridge implementation in the\n"
+ ">   sysreg driver, again making it much simpler; there is\n"
+ ">   a special case of the \"energy\" function spanning two\n"
+ ">   registers, where they should be both defined in the tree\n"
+ ">   now, but backward compatibility is maintained in the code\n"
+ "> \n"
+ "> * modification of the relevant drivers:\n"
+ "> \n"
+ ">   * hwmon - just a straight-forward API change\n"
+ ">   * power/reset driver - API change\n"
+ ">   * regulator - API change plus error handling\n"
+ ">     simplification\n"
+ ">   * osc clock driver - this one required larger rework\n"
+ ">     in order to turn in into a standard platform driver\n"
+ "> \n"
+ "> Cc: Jean Delvare <jdelvare@suse.de>\n"
+ "> Cc: Guenter Roeck <linux@roeck-us.net>\n"
+ "> Cc: lm-sensors@lm-sensors.org\n"
+ "> Cc: Mark Brown <broonie@kernel.org>\n"
+ "> Cc: Liam Girdwood <lgirdwood@gmail.com>\n"
+ "> Cc: David Woodhouse <dwmw2@infradead.org>\n"
+ "> Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>\n"
+ "> Cc: Mike Turquette <mturquette@linaro.org>\n"
+ "> Signed-off-by: Pawel Moll <pawel.moll@arm.com>\n"
+ "> ---\n"
+ ">  .../devicetree/bindings/arm/vexpress-sysreg.txt    |  43 ++-\n"
+ ">  Documentation/devicetree/bindings/arm/vexpress.txt |  15 +-\n"
+ ">  arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts         |   5 +-\n"
+ ">  arch/arm/mach-vexpress/ct-ca9x4.c                  |  10 +-\n"
+ ">  arch/arm/mach-vexpress/v2m.c                       |  18 +-\n"
+ ">  arch/arm64/boot/dts/rtsm_ve-motherboard.dtsi       |   2 +-\n"
+ ">  drivers/bus/Kconfig                                |   9 +\n"
+ ">  drivers/bus/Makefile                               |   2 +\n"
+ ">  drivers/bus/vexpress-config.c                      | 202 +++++++++++\n"
+ ">  drivers/clk/versatile/clk-vexpress-osc.c           |  94 +++--\n"
+ ">  drivers/hwmon/vexpress.c                           |  15 +-\n"
+ ">  drivers/mfd/Makefile                               |   2 +-\n"
+ ">  drivers/mfd/vexpress-config.c                      | 287 ---------------\n"
+ ">  drivers/mfd/vexpress-sysreg.c                      | 395 +++++++++++----------\n"
+ ">  drivers/power/reset/vexpress-poweroff.c            |  16 +-\n"
+ ">  drivers/regulator/vexpress.c                       |  50 +--\n"
+ ">  include/linux/vexpress.h                           |  79 +----\n"
+ ">  17 files changed, 567 insertions(+), 677 deletions(-)\n"
+ ">  create mode 100644 drivers/bus/vexpress-config.c\n"
+ ">  delete mode 100644 drivers/mfd/vexpress-config.c\n"
+ "\n"
+ "Blimey!\n"
+ "\n"
+ "MFD diffstat looks great and the changes look sensible:\n"
+ "  Acked-by: Lee Jones <lee.jones@linaro.org>\n"
+ "\n"
+ "I guess someone will need to create a branch for us all to pull from.\n"
+ "I'm happy to do it if needs be.\n"
+ "\n"
+ "-- \n"
+ "Lee Jones\n"
+ "Linaro STMicroelectronics Landing Team Lead\n"
+ "Linaro.org \342\224\202 Open source software for ARM SoCs\n"
+ Follow Linaro: Facebook | Twitter | Blog
 
-8c1245f6742bc1942b1fc60231722ac70ef01a06e77200e491b4fc0e0d331bfd
+81faec3e889f51950b98781fa190ee10e4bc4229eb36e2997292de4b870e136a

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.