Re: [PATCH v3 2/8] mfd / platform: cros_ec: move lightbar attributes to its own driver.

From: Enric Balletbo i Serra
Date: Mon Dec 03 2018 - 17:21:40 EST


Hi Lee,

On 3/12/18 11:36, Lee Jones wrote:
> On Tue, 27 Nov 2018, Enric Balletbo i Serra wrote:
>
>> The entire way how cros sysfs attibutes are created is broken.
>> cros_ec_lightbar should be its own driver and its attributes should be
>> associated with a lightbar driver not the mfd driver. In order to retain
>> the path, the lightbar attributes are attached to the cros_class.
>
> I'm not exactly clear on what a lightbar is, but shouldn't it live in
> the appropriate subsystem. Like LED for example?
>

The lightbar is a four-color indicator available on some Chromebook, but the
fact that can you can program this lightbar with different sequences, including
user defined sequences makes the device a bit special and very chrome platform
specific. The same happens with the VBC driver.

Other subdevices like, rtc, keyboard, usbpd charger,etc. are already in their
subsystems.

>> The patch also adds the sysfs documentation.
>>
>> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@xxxxxxxxxxxxx>
>> ---
>>
>> Changes in v3:
>> - Removed unneded check for ec_dev.
>>
>> Changes in v2:
>> - Removed the two exported functions to attach/detach to the cros_class.
>> - Use dev_warn instead of dev_err when adding the lightbar.
>>
>> ...sfs-class-chromeos-driver-cros-ec-lightbar | 74 +++++++++++++++
>> drivers/mfd/cros_ec_dev.c | 24 ++---
>> drivers/mfd/cros_ec_dev.h | 6 --
>> drivers/platform/chrome/Kconfig | 10 ++
>> drivers/platform/chrome/Makefile | 3 +-
>> drivers/platform/chrome/cros_ec_lightbar.c | 95 ++++++++++++++-----
>> include/linux/mfd/cros_ec.h | 1 -
>> 7 files changed, 172 insertions(+), 41 deletions(-)
>> create mode 100644 Documentation/ABI/testing/sysfs-class-chromeos-driver-cros-ec-lightbar
>