leds: qnap-mcu: Fix state numbering for USB LED
authorHeiko Stuebner <heiko@sntech.de>
Mon, 4 Aug 2025 11:49:48 +0000 (13:49 +0200)
committerLee Jones <lee@kernel.org>
Tue, 2 Sep 2025 07:54:02 +0000 (08:54 +0100)
The "@Cx" commands span a number of different functions, from the status
and USB LEDs to the buzzer and power button.

So change the USB-LED enum to start at 0 and adapt the offset accordingly
to not suggest @CD would relate to the USB-LED - while in fact "@CD" is a
state of the status LED.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Link: https://lore.kernel.org/r/20250804114949.3127417-2-heiko@sntech.de
Signed-off-by: Lee Jones <lee@kernel.org>
drivers/leds/leds-qnap-mcu.c

index 4e47094..fe055c5 100644 (file)
@@ -104,9 +104,9 @@ static int qnap_mcu_register_err_led(struct device *dev, struct qnap_mcu *mcu, i
 }
 
 enum qnap_mcu_usb_led_mode {
-       QNAP_MCU_USB_LED_ON = 1,
-       QNAP_MCU_USB_LED_OFF = 3,
-       QNAP_MCU_USB_LED_BLINK = 2,
+       QNAP_MCU_USB_LED_ON = 0,
+       QNAP_MCU_USB_LED_OFF = 2,
+       QNAP_MCU_USB_LED_BLINK = 1,
 };
 
 struct qnap_mcu_usb_led {
@@ -137,7 +137,7 @@ static int qnap_mcu_usb_led_set(struct led_classdev *led_cdev,
         * Byte 3 is shared between the usb led target on/off/blink
         * and also the buzzer control (in the input driver)
         */
-       cmd[2] = 'D' + usb_led->mode;
+       cmd[2] = 'E' + usb_led->mode;
 
        return qnap_mcu_exec_with_ack(usb_led->mcu, cmd, sizeof(cmd));
 }
@@ -161,7 +161,7 @@ static int qnap_mcu_usb_led_blink_set(struct led_classdev *led_cdev,
         * Byte 3 is shared between the USB LED target on/off/blink
         * and also the buzzer control (in the input driver)
         */
-       cmd[2] = 'D' + usb_led->mode;
+       cmd[2] = 'E' + usb_led->mode;
 
        return qnap_mcu_exec_with_ack(usb_led->mcu, cmd, sizeof(cmd));
 }