backlight: mp3309c: Initialize backlight properties without memset

Assigning values to a struct using a compound literal (since C99) also
guarantees that all unspecified struct members are empty-initialized, so
it properly replaces the memset to zero.

The code looks a bit nicer and more idiomatic (though that might be
subjective?). The resulting binary is a bit smaller. On ARCH=arm with
an allnoconfig + minimal changes to enable the mp3309c driver the
difference is 12 bytes.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com>
Tested-by: Flavio Suligoi <f.suligoi@asem.it>
Reviewed-by: Daniel Thompson (RISCstar) <danielt@kernel.org>
Link: https://lore.kernel.org/r/14514a1b0d3df6438aa10bb74f1c4fc2367d9987.1751361465.git.u.kleine-koenig@baylibre.com
Signed-off-by: Lee Jones <lee@kernel.org>
This commit is contained in:
Uwe Kleine-König 2025-07-01 11:22:37 +02:00 committed by Lee Jones
parent 2720c87b76
commit fe85a39d84
1 changed files with 7 additions and 6 deletions

View File

@ -352,12 +352,13 @@ static int mp3309c_probe(struct i2c_client *client)
chip->pdata = pdata; chip->pdata = pdata;
/* Backlight properties */ /* Backlight properties */
memset(&props, 0, sizeof(struct backlight_properties)); props = (typeof(props)){
props.brightness = pdata->default_brightness; .brightness = pdata->default_brightness,
props.max_brightness = pdata->max_brightness; .max_brightness = pdata->max_brightness,
props.scale = BACKLIGHT_SCALE_LINEAR; .scale = BACKLIGHT_SCALE_LINEAR,
props.type = BACKLIGHT_RAW; .type = BACKLIGHT_RAW,
props.power = BACKLIGHT_POWER_ON; .power = BACKLIGHT_POWER_ON,
};
chip->bl = devm_backlight_device_register(dev, "mp3309c", dev, chip, chip->bl = devm_backlight_device_register(dev, "mp3309c", dev, chip,
&mp3309c_bl_ops, &props); &mp3309c_bl_ops, &props);
if (IS_ERR(chip->bl)) if (IS_ERR(chip->bl))