> Here is a first draft of a userland program for loading
>EZUSB "firmware" automatically through the hotplugging system.
>This should not only fix the copyright problems, but will also
>make the kernel a bit smaller and make it easier to but EZUSB device
>devlopment.
I need to do the same thing from within a usb-storage unusual_device[]
init() function.
The device I have, doesn't ReEnumerate upon new firmware, it just starts
working.
-> can't wait for userland programm to come along with firmware sometime
(since device interaction has to work within, or at least just after the
usb-storage probe has completed).
Since I'm still talking with the vendor of these devices (driver
release/NDA issues), I could imagine that the same (C) arguments would help.
Suggestion:
module ezusb-fw {
// store firmwares here
list firmwares;
// connect this to userspace
int register_firmware(char *Name,int devid,int
vendid,INTEL_HEX_RECORD *fw,int count);
// called by other modules
int send_firmware(usb_dev *dev);
}
Somehow make register_firmware accessible from user-land (cat firmware >
/dev/ezusb-firmware ?).
Then, when this module is pulled in, make sure it loads the firmwares
(alias / module params ?)
I don't know if there are actually EzUSB's around that have 'External RAM'
(8051 addresses above 0x1B3F).
If yes, there are at least 2 methods of sending firmware to this area:
1) Send down 'loader-firmware' that implements 0xA3 ANCHOR_LOAD_EXTERNAL
command (the way Cypress/AnchorChips does it)
2) Send down 'loader-firmware' that takes complete 22 byte
INTEL_HEX_RECORDS via some Bulk endpipe.
Well, even if this turnes out to be a problem, just add some sort of
PINTEL_HEX_RECORD give_firmware(usb_dev *dev,int *count);
and let the driver do the download himself.
Anybody seen how this works for a EzUSB-FX ?
AFAIK there are at least 7 ! different firmwares (each ~9k) for different
version/configurations of the usb-storage device....
- sda
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-devel