mfd: Conditionally add WM831x backlight subdevice

The WM831x backlight driver requires at least the specification of the
current sink to use and a maximum current to allow them to function and
will actively interfere with other users of the regulators it uses if
misconfigured so only register the subdevice for it if this platform
data has been supplied.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
这个提交包含在:
Mark Brown
2009-07-27 14:45:55 +01:00
提交者 Samuel Ortiz
父节点 7e9f9fd4b8
当前提交 63aed85e35
修改 2 个文件,包含 21 行新增0 行删除

查看文件

@@ -1172,6 +1172,12 @@ static struct mfd_cell wm8312_devs[] = {
},
};
static struct mfd_cell backlight_devs[] = {
{
.name = "wm831x-backlight",
},
};
/*
* Instantiate the generic non-control parts of the device.
*/
@@ -1325,6 +1331,15 @@ static int wm831x_device_init(struct wm831x *wm831x, unsigned long id, int irq)
goto err_irq;
}
if (pdata && pdata->backlight) {
/* Treat errors as non-critical */
ret = mfd_add_devices(wm831x->dev, -1, backlight_devs,
ARRAY_SIZE(backlight_devs), NULL, 0);
if (ret < 0)
dev_err(wm831x->dev, "Failed to add backlight: %d\n",
ret);
}
if (pdata && pdata->post_init) {
ret = pdata->post_init(wm831x);
if (ret != 0) {