RE: [patch 2.6.12-rc3] dell_rbu: Resubmitting patch for new DellBIOS update driver

From: Abhay_Salunke
Date: Fri Jun 03 2005 - 14:59:03 EST


> > At what point I should be calling request_firmware?
>
> Never, you should call request_firmware_nowait() instead. And do it
> from your module init function.
>
> > As my driver does
> > not have any entry points. In this driver it is called when the user
is
> > ready to download the firmware image (when it echoes the firmware
image
> > name). Also the driver needs to be resident for handling multiple
such
> > requests; that's why cannot do this at driver init time.
>
> That's what request_firmware_nowait() is for.
>
But isn't request_firmware_nowait a one time deal. It creates a kernel
thread which will call the cont function once and end it. In that case I
will have to unload and reload the driver every time before doing an
update.
Also driver's unload has to free the allocated memory; this will not
serve the purpose of this driver.
> > When ever the user echoes the file name, it gets passed on to
> > request_firmware and the $FIRMWARE env gets populated with the file
> > name. thus making the hotplug code to automatically load the image
which
> > is passed back as fw->data and fw->size.
>
> It's easier for the user to just copy the firmware to the sysfs file
> whenever they want to. No messing with hotplug events or filenames.
>
I must be missing some things here. Can copying the data to the sysfs
file with normal attributes work? Don't we need to have a sysfs file
with bin attribute? Could you please elaborate on this...I am quoting
you from one of your earlier response "I can understand having the data
use the sysfs binary attribute, but do not do this for the size files.
Please just use a normal attribute for them, the binary ones are _only_
for blobs of data that are not interpreted by the kernel"

Thanks,
Abhay

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/