leds: lp5521: fix circular locking
authorSamu Onkalo <samu.p.onkalo@nokia.com>
Thu, 13 Jan 2011 00:59:19 +0000 (16:59 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 13 Jan 2011 16:03:06 +0000 (08:03 -0800)
commitd4e7ad03e84b2301be4f9a39ef2778126699ff0c
treef9eddca8aed77b76aa3a7690ae25fa5b5fc2c467
parentfbac0812de0455c6af3e1f29fccffc207073b7eb
leds: lp5521: fix circular locking

Driver contained possibility for circular locking.

One lock is held by sysfs-core and another one by the driver itself.  This
happened when the driver created or removed sysfs entries dynamically.
There is no real need to do those operations.  Now all the sysfs entries
are created at probe and removed at removal.  Engine load sysfs entries
are now visible all the time.  However, access to the entries fails if the
engine is disabled or running.

Signed-off-by: Samu Onkalo <samu.p.onkalo@nokia.com>
Cc: Arun Murthy <arun.murthy@stericsson.com>
Reviewed-by: Ilkka Koskinen <ilkka.koskinen@nokia.com>
Cc: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
drivers/leds/leds-lp5521.c