[PATCH v3 0/4] pwm: add support for ChromeOS EC PWM

From: Brian Norris
Date: Fri Jun 17 2016 - 15:59:27 EST


Hi,

This is version 3 of my series to support the new ChromeOS EC PWM API, so we
can control, e.g., a PWM backlight when its PWM is attached to the EC. It uses
Boris's latest "atomic" hooks for the PWM API (i.e., the ->apply() callback),
which were recently merged.

It seems nice to have the cros_ec_cmd_xfer_status() helper, which we have
locally in the ChromeOS kernel, and which has been part of another larger patch
series:

https://lkml.org/lkml/2016/4/12/342

So I've picked it into this series as well. Tomeu has acknowledged his USB PD
series is on hold for now, so this should be OK.

Note that after some style bikeshedding, I proposed to put off rewriting the
entire cros_ec_commands.h header at the moment, due to the shared nature of
this file. I plan to follow up with this bug report:

https://bugs.chromium.org/p/chromium/issues/detail?id=621123

As this touches MFD (sort of), drivers/platform/chrome/, and drivers/pwm/, I'm
still not sure who it should all go through: Lee, Thierry, or Olof?

Please review.

Regards,
Brian

Change log (also documented in each patch):

v3:
* fix some int->hex
* fix a small bug in the handling of 'disabled' vs. 'duty_cycle == 0'
* collect acks, tested-by

v2:
* drop the "google,max-pwms" property
* separate the cros_ec vs. PWM abstractions a little more clearly in the driver
* remove dynamic kzalloc()'s and rely on on-stack memory instead

Brian Norris (3):
mfd: cros_ec: add EC_PWM function definitions
doc: dt: pwm: add binding for ChromeOS EC PWM
pwm: add ChromeOS EC PWM driver

Tomeu Vizoso (1):
mfd: cros_ec: Add cros_ec_cmd_xfer_status helper

.../devicetree/bindings/pwm/google,cros-ec-pwm.txt | 23 ++
drivers/platform/chrome/cros_ec_proto.c | 15 ++
drivers/pwm/Kconfig | 7 +
drivers/pwm/Makefile | 1 +
drivers/pwm/pwm-cros-ec.c | 246 +++++++++++++++++++++
include/linux/mfd/cros_ec.h | 18 ++
include/linux/mfd/cros_ec_commands.h | 31 +++
7 files changed, 341 insertions(+)
create mode 100644 Documentation/devicetree/bindings/pwm/google,cros-ec-pwm.txt
create mode 100644 drivers/pwm/pwm-cros-ec.c

--
2.8.0.rc3.226.g39d4020