From 7f285b9c1df2b2332832df33bee9a12c0532cee6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Thu, 20 Apr 2023 11:09:38 +0200 Subject: [PATCH] bmips: leds-sercomm-msp430: improve driver MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit - Add missing module functions. - Fix infinite pattern trigger by converting negative values to 0. Signed-off-by: Álvaro Fernández Rojas --- .../bmips/files/drivers/leds/leds-sercomm-msp430.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/target/linux/bmips/files/drivers/leds/leds-sercomm-msp430.c b/target/linux/bmips/files/drivers/leds/leds-sercomm-msp430.c index 5409142989..d3167de053 100644 --- a/target/linux/bmips/files/drivers/leds/leds-sercomm-msp430.c +++ b/target/linux/bmips/files/drivers/leds/leds-sercomm-msp430.c @@ -212,6 +212,10 @@ static int msp430_pattern_set(struct led_classdev *led_cdev, delay0 = msp430_blink_delay(pattern[0].delta_t); delay1 = msp430_blink_delay(pattern[1].delta_t); + /* Infinite pattern */ + if (repeat < 0) + repeat = 0; + /* Pulse: */ if (delay0 == delay1 && pattern[0].brightness == LED_OFF && @@ -354,14 +358,15 @@ static int msp430_leds_probe(struct spi_device *spi) static const struct of_device_id msp430_leds_of_match[] = { { .compatible = "sercomm,msp430-leds", }, - { }, + { /* sentinel */ }, }; MODULE_DEVICE_TABLE(of, msp430_leds_of_match); static const struct spi_device_id msp430_leds_id_table[] = { { "msp430-leds", 0 }, - { } + { /* sentinel */ } }; +MODULE_DEVICE_TABLE(spi, msp430_leds_id_table); static struct spi_driver msp430_leds_driver = { .driver = { @@ -371,7 +376,6 @@ static struct spi_driver msp430_leds_driver = { .id_table = msp430_leds_id_table, .probe = msp430_leds_probe, }; - module_spi_driver(msp430_leds_driver); MODULE_AUTHOR("Álvaro Fernández Rojas "); -- 2.30.2