diff options
| author | Steve French <sfrench@us.ibm.com> | 2005-10-31 08:36:11 -0800 | 
|---|---|---|
| committer | Steve French <sfrench@us.ibm.com> | 2005-10-31 08:36:11 -0800 | 
| commit | 53b2ec5518aa2623e8c0cb36f1c304a797988a46 (patch) | |
| tree | 465d8631ade6c2fcbd7576ff9813d00116c6a1e8 /drivers/base/firmware_class.c | |
| parent | 0753ca7bc2b876dd136e9db11a20f85cbe4e08b1 (diff) | |
| parent | 581c1b14394aee60aff46ea67d05483261ed6527 (diff) | |
Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git
Diffstat (limited to 'drivers/base/firmware_class.c')
| -rw-r--r-- | drivers/base/firmware_class.c | 69 | 
1 files changed, 41 insertions, 28 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c index 4acb2c5733c..98f6c02d679 100644 --- a/drivers/base/firmware_class.c +++ b/drivers/base/firmware_class.c @@ -62,14 +62,16 @@ firmware_timeout_show(struct class *class, char *buf)  }  /** - * firmware_timeout_store: - * Description: + * firmware_timeout_store - set number of seconds to wait for firmware + * @class: device class pointer + * @buf: buffer to scan for timeout value + * @count: number of bytes in @buf + *   *	Sets the number of seconds to wait for the firmware.  Once - *	this expires an error will be return to the driver and no + *	this expires an error will be returned to the driver and no   *	firmware will be provided.   * - *	Note: zero means 'wait for ever' - * + *	Note: zero means 'wait forever'.   **/  static ssize_t  firmware_timeout_store(struct class *class, const char *buf, size_t count) @@ -123,12 +125,15 @@ firmware_loading_show(struct class_device *class_dev, char *buf)  }  /** - * firmware_loading_store: - loading control file - * Description: + * firmware_loading_store - set value in the 'loading' control file + * @class_dev: class_device pointer + * @buf: buffer to scan for loading control value + * @count: number of bytes in @buf + *   *	The relevant values are:   *   *	 1: Start a load, discarding any previous partial load. - *	 0: Conclude the load and handle the data to the driver code. + *	 0: Conclude the load and hand the data to the driver code.   *	-1: Conclude the load with an error and discard any written data.   **/  static ssize_t @@ -201,6 +206,7 @@ out:  	up(&fw_lock);  	return ret_count;  } +  static int  fw_realloc_buffer(struct firmware_priv *fw_priv, int min_size)  { @@ -227,11 +233,13 @@ fw_realloc_buffer(struct firmware_priv *fw_priv, int min_size)  }  /** - * firmware_data_write: + * firmware_data_write - write method for firmware + * @kobj: kobject for the class_device + * @buffer: buffer being written + * @offset: buffer offset for write in total data store area + * @count: buffer size   * - * Description: - * - *	Data written to the 'data' attribute will be later handled to + *	Data written to the 'data' attribute will be later handed to   *	the driver as a firmware image.   **/  static ssize_t @@ -264,6 +272,7 @@ out:  	up(&fw_lock);  	return retval;  } +  static struct bin_attribute firmware_attr_data_tmpl = {  	.attr = {.name = "data", .mode = 0644, .owner = THIS_MODULE},  	.size = 0, @@ -448,13 +457,16 @@ out:  /**   * request_firmware: - request firmware to hotplug and wait for it - * Description: - *      @firmware will be used to return a firmware image by the name + * @firmware_p: pointer to firmware image + * @name: name of firmware file + * @device: device for which firmware is being loaded + * + *      @firmware_p will be used to return a firmware image by the name   *      of @name for device @device.   *   *      Should be called from user context where sleeping is allowed.   * - *      @name will be use as $FIRMWARE in the hotplug environment and + *      @name will be used as $FIRMWARE in the hotplug environment and   *      should be distinctive enough not to be confused with any other   *      firmware image for this or any other device.   **/ @@ -468,6 +480,7 @@ request_firmware(const struct firmware **firmware_p, const char *name,  /**   * release_firmware: - release the resource associated with a firmware image + * @fw: firmware resource to release   **/  void  release_firmware(const struct firmware *fw) @@ -480,8 +493,10 @@ release_firmware(const struct firmware *fw)  /**   * register_firmware: - provide a firmware image for later usage + * @name: name of firmware image file + * @data: buffer pointer for the firmware image + * @size: size of the data buffer area   * - * Description:   *	Make sure that @data will be available by requesting firmware @name.   *   *	Note: This will not be possible until some kind of persistence @@ -526,21 +541,19 @@ request_firmware_work_func(void *arg)  }  /** - * request_firmware_nowait: + * request_firmware_nowait: asynchronous version of request_firmware + * @module: module requesting the firmware + * @hotplug: invokes hotplug event to copy the firmware image if this flag + *	is non-zero else the firmware copy must be done manually. + * @name: name of firmware file + * @device: device for which firmware is being loaded + * @context: will be passed over to @cont, and + *	@fw may be %NULL if firmware request fails. + * @cont: function will be called asynchronously when the firmware + *	request is over.   * - * Description:   *	Asynchronous variant of request_firmware() for contexts where   *	it is not possible to sleep. - * - *      @hotplug invokes hotplug event to copy the firmware image if this flag - *      is non-zero else the firmware copy must be done manually. - * - *	@cont will be called asynchronously when the firmware request is over. - * - *	@context will be passed over to @cont. - * - *	@fw may be %NULL if firmware request fails. - *   **/  int  request_firmware_nowait(  | 
