summaryrefslogtreecommitdiff
path: root/drivers/base
diff options
context:
space:
mode:
authorMarcel Holtmann <marcel@holtmann.org>2004-11-07 04:10:32 -0800
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-11-07 04:10:32 -0800
commit27ec38fdf20de7a9210cc07cfda91d47948aed44 (patch)
treee8b266130d56e95053e33dde00a9674a59734b49 /drivers/base
parent5b62f4042372118f6fd1b501daccbded4d19a20b (diff)
[PATCH] Use add_hotplug_env_var() in firmware loader
The add_hotplug_env_var() function is available and so use it in the firmware class code. Signed-off-by: Marcel Holtmann <marcel@holtmann.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/base')
-rw-r--r--drivers/base/firmware_class.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index d07a346048f2..9804402805f3 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -94,19 +94,17 @@ firmware_class_hotplug(struct class_device *class_dev, char **envp,
int num_envp, char *buffer, int buffer_size)
{
struct firmware_priv *fw_priv = class_get_devdata(class_dev);
- int i = 0;
- char *scratch = buffer;
+ int i = 0, len = 0;
if (!test_bit(FW_STATUS_READY, &fw_priv->status))
return -ENODEV;
- if (buffer_size < (FIRMWARE_NAME_MAX + 10))
- return -ENOMEM;
- if (num_envp < 1)
+ if (add_hotplug_env_var(envp, num_envp, &i, buffer, buffer_size, &len,
+ "FIRMWARE=%s", fw_priv->fw_id))
return -ENOMEM;
- envp[i++] = scratch;
- scratch += sprintf(scratch, "FIRMWARE=%s", fw_priv->fw_id) + 1;
+ envp[i++] = NULL;
+
return 0;
}