Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

leds: turris-omnia: use constants instead of macros for color command

Use integer constants directly when building I2C messages for LED color
change command, instead of macros. The command is simple enough to
understand what is going on even without these names.

Signed-off-by: Marek Behún <kabel@kernel.org>
Signed-off-by: Pavel Machek <pavel@ucw.cz>

authored by

Marek Behún and committed by
Pavel Machek
493d2e43 0fe5ac3d

+13 -21
+13 -21
drivers/leds/leds-turris-omnia.c
··· 27 27 #define CMD_LED_SET_BRIGHTNESS 7 28 28 #define CMD_LED_GET_BRIGHTNESS 8 29 29 30 - #define OMNIA_CMD 0 31 - 32 - #define OMNIA_CMD_LED_COLOR_LED 1 33 - #define OMNIA_CMD_LED_COLOR_R 2 34 - #define OMNIA_CMD_LED_COLOR_G 3 35 - #define OMNIA_CMD_LED_COLOR_B 4 36 - #define OMNIA_CMD_LED_COLOR_LEN 5 37 - 38 30 struct omnia_led { 39 31 struct led_classdev_mc mc_cdev; 40 32 struct mc_subled subled_info[OMNIA_LED_NUM_CHANNELS]; ··· 47 55 struct led_classdev_mc *mc_cdev = lcdev_to_mccdev(cdev); 48 56 struct omnia_leds *leds = dev_get_drvdata(cdev->dev->parent); 49 57 struct omnia_led *led = to_omnia_led(mc_cdev); 50 - u8 buf[OMNIA_CMD_LED_COLOR_LEN], state; 58 + u8 buf[5], state; 51 59 int ret; 52 60 53 61 mutex_lock(&leds->lock); 54 62 55 63 led_mc_calc_color_components(&led->mc_cdev, brightness); 56 64 57 - buf[OMNIA_CMD] = CMD_LED_COLOR; 58 - buf[OMNIA_CMD_LED_COLOR_LED] = led->reg; 59 - buf[OMNIA_CMD_LED_COLOR_R] = mc_cdev->subled_info[0].brightness; 60 - buf[OMNIA_CMD_LED_COLOR_G] = mc_cdev->subled_info[1].brightness; 61 - buf[OMNIA_CMD_LED_COLOR_B] = mc_cdev->subled_info[2].brightness; 65 + buf[0] = CMD_LED_COLOR; 66 + buf[1] = led->reg; 67 + buf[2] = mc_cdev->subled_info[0].brightness; 68 + buf[3] = mc_cdev->subled_info[1].brightness; 69 + buf[4] = mc_cdev->subled_info[2].brightness; 62 70 63 71 state = CMD_LED_STATE_LED(led->reg); 64 - if (buf[OMNIA_CMD_LED_COLOR_R] || buf[OMNIA_CMD_LED_COLOR_G] || buf[OMNIA_CMD_LED_COLOR_B]) 72 + if (buf[2] || buf[3] || buf[4]) 65 73 state |= CMD_LED_STATE_ON; 66 74 67 75 ret = i2c_smbus_write_byte_data(leds->client, CMD_LED_STATE, state); ··· 242 250 243 251 static int omnia_leds_remove(struct i2c_client *client) 244 252 { 245 - u8 buf[OMNIA_CMD_LED_COLOR_LEN]; 253 + u8 buf[5]; 246 254 247 255 /* put all LEDs into default (HW triggered) mode */ 248 256 i2c_smbus_write_byte_data(client, CMD_LED_MODE, 249 257 CMD_LED_MODE_LED(OMNIA_BOARD_LEDS)); 250 258 251 259 /* set all LEDs color to [255, 255, 255] */ 252 - buf[OMNIA_CMD] = CMD_LED_COLOR; 253 - buf[OMNIA_CMD_LED_COLOR_LED] = OMNIA_BOARD_LEDS; 254 - buf[OMNIA_CMD_LED_COLOR_R] = 255; 255 - buf[OMNIA_CMD_LED_COLOR_G] = 255; 256 - buf[OMNIA_CMD_LED_COLOR_B] = 255; 260 + buf[0] = CMD_LED_COLOR; 261 + buf[1] = OMNIA_BOARD_LEDS; 262 + buf[2] = 255; 263 + buf[3] = 255; 264 + buf[4] = 255; 257 265 258 266 i2c_master_send(client, buf, 5); 259 267