Commit e1b94f1d authored by Archit Taneja's avatar Archit Taneja Committed by Tomi Valkeinen

OMAPDSS: picodlp: use devm_kzalloc for allocating driver data

Use devm_kzalloc instead of kzalloc to allocate driver data for the picodlp
panel driver. This simplifies the driver's probe and remove functions.
Signed-off-by: default avatarArchit Taneja <archit@ti.com>
parent e4dace46
...@@ -423,11 +423,11 @@ static int picodlp_panel_probe(struct omap_dss_device *dssdev) ...@@ -423,11 +423,11 @@ static int picodlp_panel_probe(struct omap_dss_device *dssdev)
struct picodlp_panel_data *picodlp_pdata = get_panel_data(dssdev); struct picodlp_panel_data *picodlp_pdata = get_panel_data(dssdev);
struct i2c_adapter *adapter; struct i2c_adapter *adapter;
struct i2c_client *picodlp_i2c_client; struct i2c_client *picodlp_i2c_client;
int r = 0, picodlp_adapter_id; int picodlp_adapter_id;
dssdev->panel.timings = pico_ls_timings; dssdev->panel.timings = pico_ls_timings;
picod = kzalloc(sizeof(struct picodlp_data), GFP_KERNEL); picod = devm_kzalloc(&dssdev->dev, sizeof(*picod), GFP_KERNEL);
if (!picod) if (!picod)
return -ENOMEM; return -ENOMEM;
...@@ -438,25 +438,21 @@ static int picodlp_panel_probe(struct omap_dss_device *dssdev) ...@@ -438,25 +438,21 @@ static int picodlp_panel_probe(struct omap_dss_device *dssdev)
adapter = i2c_get_adapter(picodlp_adapter_id); adapter = i2c_get_adapter(picodlp_adapter_id);
if (!adapter) { if (!adapter) {
dev_err(&dssdev->dev, "can't get i2c adapter\n"); dev_err(&dssdev->dev, "can't get i2c adapter\n");
r = -ENODEV; return -ENODEV;
goto err;
} }
picodlp_i2c_client = i2c_new_device(adapter, &picodlp_i2c_board_info); picodlp_i2c_client = i2c_new_device(adapter, &picodlp_i2c_board_info);
if (!picodlp_i2c_client) { if (!picodlp_i2c_client) {
dev_err(&dssdev->dev, "can't add i2c device::" dev_err(&dssdev->dev, "can't add i2c device::"
" picodlp_i2c_client is NULL\n"); " picodlp_i2c_client is NULL\n");
r = -ENODEV; return -ENODEV;
goto err;
} }
picod->picodlp_i2c_client = picodlp_i2c_client; picod->picodlp_i2c_client = picodlp_i2c_client;
dev_set_drvdata(&dssdev->dev, picod); dev_set_drvdata(&dssdev->dev, picod);
return r;
err: return 0;
kfree(picod);
return r;
} }
static void picodlp_panel_remove(struct omap_dss_device *dssdev) static void picodlp_panel_remove(struct omap_dss_device *dssdev)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment