Lines Matching +full:bl +full:- +full:name

1 // SPDX-License-Identifier: GPL-2.0-only
8 * Copyright (C) 2006-2008 Marvell International Ltd.
40 static int da903x_backlight_set(struct backlight_device *bl, int brightness) in da903x_backlight_set() argument
42 struct da903x_backlight_data *data = bl_get_data(bl); in da903x_backlight_set()
43 struct device *dev = data->da903x_dev; in da903x_backlight_set()
47 switch (data->id) { in da903x_backlight_set()
54 if (data->current_brightness && brightness == 0) in da903x_backlight_set()
59 if (data->current_brightness == 0 && brightness) in da903x_backlight_set()
74 data->current_brightness = brightness; in da903x_backlight_set()
78 static int da903x_backlight_update_status(struct backlight_device *bl) in da903x_backlight_update_status() argument
80 return da903x_backlight_set(bl, backlight_get_brightness(bl)); in da903x_backlight_update_status()
83 static int da903x_backlight_get_brightness(struct backlight_device *bl) in da903x_backlight_get_brightness() argument
85 struct da903x_backlight_data *data = bl_get_data(bl); in da903x_backlight_get_brightness()
87 return data->current_brightness; in da903x_backlight_get_brightness()
98 struct da9034_backlight_pdata *pdata = dev_get_platdata(&pdev->dev); in da903x_backlight_probe()
100 struct backlight_device *bl; in da903x_backlight_probe() local
104 data = devm_kzalloc(&pdev->dev, sizeof(*data), GFP_KERNEL); in da903x_backlight_probe()
106 return -ENOMEM; in da903x_backlight_probe()
108 switch (pdev->id) { in da903x_backlight_probe()
116 dev_err(&pdev->dev, "invalid backlight device ID(%d)\n", in da903x_backlight_probe()
117 pdev->id); in da903x_backlight_probe()
118 return -EINVAL; in da903x_backlight_probe()
121 data->id = pdev->id; in da903x_backlight_probe()
122 data->da903x_dev = pdev->dev.parent; in da903x_backlight_probe()
123 data->current_brightness = 0; in da903x_backlight_probe()
127 da903x_write(data->da903x_dev, DA9034_WLED_CONTROL2, in da903x_backlight_probe()
128 DA9034_WLED_ISET(pdata->output_current)); in da903x_backlight_probe()
133 bl = devm_backlight_device_register(&pdev->dev, pdev->name, in da903x_backlight_probe()
134 data->da903x_dev, data, in da903x_backlight_probe()
136 if (IS_ERR(bl)) { in da903x_backlight_probe()
137 dev_err(&pdev->dev, "failed to register backlight\n"); in da903x_backlight_probe()
138 return PTR_ERR(bl); in da903x_backlight_probe()
141 bl->props.brightness = max_brightness; in da903x_backlight_probe()
143 platform_set_drvdata(pdev, bl); in da903x_backlight_probe()
144 backlight_update_status(bl); in da903x_backlight_probe()
150 .name = "da903x-backlight",
161 MODULE_ALIAS("platform:da903x-backlight");