From: Marek BehĂșn Date: Mon, 11 Nov 2024 10:03:50 +0000 (+0100) Subject: leds: turris-omnia: Document driver private structures X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=8ca5bf8ad183e1b05034ccfd96d59e7b802d6335;p=users%2Fdwmw2%2Flinux.git leds: turris-omnia: Document driver private structures Add documentation for driver private structures, `struct omnia_leds` and `struct omnia_led`. Signed-off-by: Marek BehĂșn Link: https://lore.kernel.org/r/20241111100355.6978-7-kabel@kernel.org Signed-off-by: Lee Jones --- diff --git a/drivers/leds/leds-turris-omnia.c b/drivers/leds/leds-turris-omnia.c index 1212df8315ab5..83a011e5259c1 100644 --- a/drivers/leds/leds-turris-omnia.c +++ b/drivers/leds/leds-turris-omnia.c @@ -18,6 +18,15 @@ /* MCU controller I2C address 0x2a, needed for detecting MCU features */ #define OMNIA_MCU_I2C_ADDR 0x2a +/** + * struct omnia_led - per-LED part of driver private data structure + * @mc_cdev: multi-color LED class device + * @subled_info: per-channel information + * @cached_channels: cached values of per-channel brightness that was sent to the MCU + * @on: whether the LED was set on + * @hwtrig: whether the LED blinking was offloaded to the MCU + * @reg: LED identifier to the MCU + */ struct omnia_led { struct led_classdev_mc mc_cdev; struct mc_subled subled_info[OMNIA_LED_NUM_CHANNELS]; @@ -28,6 +37,13 @@ struct omnia_led { #define to_omnia_led(l) container_of(l, struct omnia_led, mc_cdev) +/** + * struct omnia_leds - driver private data structure + * @client: I2C client device + * @lock: mutex to protect cached state + * @has_gamma_correction: whether the MCU firmware supports gamma correction + * @leds: flexible array of per-LED data + */ struct omnia_leds { struct i2c_client *client; struct mutex lock;