Re: [PATCH] leds: Introduce userspace leds driver

From: Jacek Anaszewski
Date: Thu Sep 15 2016 - 10:53:59 EST


Hi Pavel,

On 09/15/2016 02:41 PM, Pavel Machek wrote:
Hi!

Thanks for the patch. It is very nice. I have only one minor remark
in the code.

I think that it would be good to add a documentation for this
driver to Documentation/leds, with exemplary C program instead
of python one. The program could poll the dev node in a loop,
which allows to conveniently check the impact of setting particular
triggers and all other brightness change events.

Actually, I'd say that python is fine -- it is used heavily in tools/.

But perhaps the example program should go to tools/?

I see python scripts only in perf tools. Let's stay by C application.

David, could you please prepare another version of the patch, that
splits test app code to the separate file in tools/leds (the directory
doesn't exist so far), also providing suitable Makefile?

def change_brightness(b):
with open('/sys/class/leds/{}/brightness'.format(name) , 'w') as f:
f.write(str(b))


with open('/dev/uleds', 'rb+', 0) as uleds:
bname = name.encode("ascii")
# create the leds class device
uleds.write(bname + b'\0' * (ULEDS_MAX_NAME_SIZE - len(bname)))

Umm. I don't see it in the kernel code. You let userspace provide a
LED name?

Where is the LED name tested for sanity? I guess there could be a lot
of fun naming a led ".." for example...

Good point.

--
Best regards,
Jacek Anaszewski