----- Original Message ----- From: "David Brownell" <[EMAIL PROTECTED]> To: "Ken Hahn" <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
> > In addition, the firmware loading aspect of the linux-hotplug is not > > solid yet (they have a program (fxload) but not a defined method > > ( a directory that gets scanned ?). > > The defined method involves providing a script in /etc/hotplug/usb/... > invoking "fxload" with the right firmware for the particular device IDs. > http://linux-hotplug.sourceforge.net/?selected=usb describes it > (at the end of the page). > I did that. Added to usb.handmap the lines: bpide6 0x0003 0x0ac9 0x1003 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 bpckusb 0x0003 0x0ac9 0x0000 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 bpatapi5 0x0003 0x0ac9 0x1000 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 bpatapi6 0x0003 0x0ac9 0x1001 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 bpide5 0x0003 0x0ac9 0x1002 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000 In the dir /etc/hotplug/usb I created the files: bpatapi5 bpatapi6 bpckusb bpide5 bpide6 And a dir, "bpckusbfw", where I put the appropriate hex files Each script consists of something like this (this is bpatapi6): #!/bin/sh # fxload -I /etc/hotplug/usb/bpckusbfw/BPATAPI6.HEX When I plug in the drive I get the log: Dec 19 11:15:00 marvin kernel: hub.c: USB new device connect on bus1/1, assigned device number 5 Dec 19 11:15:00 marvin kernel: usb.c: USB device 5 (vend/prod 0xac9/0x0) is not claimed by any active driver. Dec 19 11:15:02 marvin /etc/hotplug/usb.agent: Modprobe and setup 0x00 bpckusb for USB product ac9/0/0 Dec 19 11:15:02 marvin modprobe: modprobe: Can't locate module 0x00 Dec 19 11:15:02 marvin /etc/hotplug/usb.agent: ... can't load module 0x00 Dec 19 11:15:02 marvin modprobe: modprobe: Can't locate module bpckusb I think the error has to do with the lines in hotplug.functions: elif find $MODULE_DIR -name $MODULE.o >/dev/null 2>&1 && ! $MODPROBE $MODULE >/dev/null 2>&1 ; then mesg "... can't load module $MODULE" elif [ -x /etc/hotplug/$TYPE/$MODULE ]; then debug_mesg Module setup $MODULE for $DESCRIPTION /etc/hotplug/$TYPE/$MODULE Find dosen't have a status code that signifies anything about finding the module. (look at the man page) This results in the script never being called. How has the jphoto script been working? What dumb thing am I missing? I assumed my fix was wrong because of the jphoto script supposedly working. Am I missing something? I kludged this to allow loading, so I've had it work here, but this still dosen't resolve Olivers issue with firmware reloading with power management. In addition, there is no central package of firmware, so do I make our own firmware RPM/deb? No good answer on the linux-hotplug list. (IMHO scripts for loading firmware should have a separate mechanism from notifying/launching applications to use a device) > > > The BACKPACK USB adapter simply needs a EZ-USB firmware > > loaded (actually it has one that is loaded to scan until a drive is > > connected, then the appropriate firmware is loaded when the > > scan discovers the drive type). > > So the kernel gets some kind of notification from the drive (interrupt > transfer?) saying "I found a drive with this info, give me its firmware"? Actually we do what you say below. > The simplest way to do that with EZ-USB would be for that first > chunk of firmware to force re-enumeration using another device > ID, which then causes different firmware to load. But you didn't > say how that works, so it's hard to suggest any particular option. Yep, this is exactally how we did it. So where do I go from here? Send the fix in to the linux-hotplug list? Make a module so I can handle suspend? Thanks for responces so far, -Ken Hahn _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
