This is the situation. I'm new to embedded linux and I'm trying to test some commands for the LED driver LP5521. The board I have has a RGB LED with this controller IC and it is being initialized with the "heartbeat" pattern directly in the device tree. Therefore the LED starts blinking as soon as the board boots.

I've been asked to try to change the blinking pattern of the controller from the command line and to play in general with the LP5521 to get familiar with it.

I found in the LP5521 driver documentation https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/Documentation/leds/leds-lp55xx.txt this exapmle:

For example, run blinking pattern in engine #1 of LP5521
echo 1 > /sys/bus/i2c/devices/xxxx/select_engine
echo 1 > /sys/class/firmware/lp5521/loading
echo "4000600040FF6000" > /sys/class/firmware/lp5521/data
echo 0 > /sys/class/firmware/lp5521/loading
echo 1 > /sys/bus/i2c/devices/xxxx/run_engine

The thing is that when I try the first line I get the error:

Direct firmware load for lp5521 failed with error -2

I have absolute no idea why this is happening. I think that I can't send anything from the shell since the kernel is already using the driver for the heartbeat pattern but I'm not sure about this.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.