Commit a90dcd4f authored by Marek Belisko's avatar Marek Belisko Committed by Greg Kroah-Hartman

staging: oplc_dcon: Fix compilation warning.

Fix compilation warning:
drivers/staging/olpc_dcon/olpc_dcon.c: In function ‘dcon_probe’:
drivers/staging/olpc_dcon/olpc_dcon.c:704:21: warning: ignoring
return value of ‘device_create_file’, declared with attribute warn_unused_result

and add cleaning of created files when creation of one failed.
Signed-off-by: default avatarMarek Belisko <marek.belisko@open-nandra.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent 3ad4e219
...@@ -674,7 +674,7 @@ static int dcon_detect(struct i2c_client *client, struct i2c_board_info *info) ...@@ -674,7 +674,7 @@ static int dcon_detect(struct i2c_client *client, struct i2c_board_info *info)
static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id) static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
{ {
int rc, i; int rc, i, j;
if (num_registered_fb >= 1) if (num_registered_fb >= 1)
fbinfo = registered_fb[0]; fbinfo = registered_fb[0];
...@@ -700,8 +700,14 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id) ...@@ -700,8 +700,14 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
goto edev; goto edev;
} }
for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++) for(i = 0; i < ARRAY_SIZE(dcon_device_files); i++) {
device_create_file(&dcon_device->dev, &dcon_device_files[i]); rc = device_create_file(&dcon_device->dev,
&dcon_device_files[i]);
if (rc) {
dev_err(&dcon_device->dev, "Cannot create sysfs file\n");
goto ecreate;
}
}
/* Add the backlight device for the DCON */ /* Add the backlight device for the DCON */
...@@ -728,6 +734,9 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id) ...@@ -728,6 +734,9 @@ static int dcon_probe(struct i2c_client *client, const struct i2c_device_id *id)
return 0; return 0;
ecreate:
for (j = 0; j < i; j++)
device_remove_file(&dcon_device->dev, &dcon_device_files[j]);
edev: edev:
platform_device_unregister(dcon_device); platform_device_unregister(dcon_device);
dcon_device = NULL; dcon_device = NULL;
......
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