I am having trouble getting my FujiFilm Finepix 3800 camera to work with the 2.6.5 kernel (under Fedora Core Development - AKA Red Hat Raw Hide). It worked fine under 2.4 (both in Fedora Core 1 and Red Hat Linux 9, I believe).
After a lot of messing up and some blind experimentations with unusual_devs.h I have been successful in making camera work, but _only_ when it is connected directly to the computer, not via a hub with other devices attached.
My setup (which used to work under 2.4) is a follows: I have an external hub connected to my laptop and I have a mouse, a printer and the camera is question connected to the hub.
I have tried the following:
------------ Attempt (0) --------------
Using it w/o any changes to the kernel - both via hub and connecting directly. It did not work:
usb 1-1: new full speed USB device using address 8 SCSI subsystem initialized Initializing USB Mass Storage driver... scsi0 : SCSI emulation for USB Mass Storage devices USB Mass Storage device found at 8 drivers/usb/core/usb.c: registered new driver usb-storage USB Mass Storage support registered.
and the usb_storage and scsi_mod modules get loaded. However, the camera does not seem to get "attached" to any specific /dev/xyz (or /udev/xyz for that matter) - e.g. when I try to access /dev/sda, I get "No such device or address".
% cat /proc/scsi/scsi Attached devices:
% cat /proc/scsi/usb-storage/0 Host scsi0: usb-storage Vendor: Unknown Product: USB Mass Storage Serial Number: Y-406^^^^^030528XFPX0007040092 Protocol: 8070i Transport: Control/Bulk/Interrupt Quirks:
% cat /proc/bus/usb/devices
T: Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2 B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0 D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1 P: Vendor=0000 ProdID=0000 Rev= 2.06 S: Manufacturer=Linux 2.6.5-1.319custom uhci_hcd S: Product=UHCI Host Controller S: SerialNumber=0000:00:1d.0 C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub E: Ad=81(I) Atr=03(Int.) MxPS= 2 Ivl=255ms
T: Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 8 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1 P: Vendor=04cb ProdID=011a Rev=10.00 S: Product=USB Mass Storage S: SerialNumber=Y-406^^^^^030528XFPX0007040092 C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 0mA I: If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=05 Prot=00 Driver=usb-storage E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=83(I) Atr=03(Int.) MxPS= 8 Ivl=1ms
------------- Attempt (1) ------------------
Next I have compiled the kernel with CONFIG_USB_STORAGE_DEBUG enabled. Now when I plugged the camera I saw the following:
usb 1-1.3: new full speed USB device using address 5
Initializing USB Mass Storage driver...
usb-storage: USB Mass Storage device detected
usb-storage: altsetting is 0, id_index is 112
usb-storage: -- associate_dev
usb-storage: Transport: Control/Bulk/Interrupt
usb-storage: Protocol: 8070i
usb-storage: Endpoints: In: 0xdfc3c2c0 Out: 0xdfc3c2d4 Int: 0xdfc3c2e8 (Period 1)
usb-storage: *** thread sleeping.
scsi0 : SCSI emulation for USB Mass Storage devices
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Command INQUIRY (6 bytes)
usb-storage: 12 00 00 00 24 00
usb-storage: usb_stor_ctrl_transfer: rq=00 rqtype=21 value=0000 index=00 len=12
usb-storage: Status code 0; transferred 12/12
usb-storage: -- transfer complete
usb-storage: Call to usb_stor_ctrl_transfer() returned 0
usb-storage: usb_stor_bulk_transfer_buf: xfer 36 bytes
usb-storage: Status code 0; transferred 36/36
usb-storage: -- transfer complete
usb-storage: CBI data stage result is 0x0
usb-storage: usb_stor_intr_transfer: xfer 2 bytes
usb-storage: Status code 0; transferred 2/2
usb-storage: -- transfer complete
usb-storage: Got interrupt data (0x29, 0x0)
usb-storage: CBI IRQ data showed reserved bType 0x29
usb-storage: usb_stor_control_msg: rq=01 rqtype=02 value=0000 index=81 len=0
usb-storage: usb_stor_clear_halt: result = 0
usb-storage: -- transport indicates command failure
usb-storage: Issuing auto-REQUEST_SENSE
usb-storage: usb_stor_ctrl_transfer: rq=00 rqtype=21 value=0000 index=00 len=12
usb-storage: Status code 0; transferred 12/12
usb-storage: -- transfer complete
usb-storage: Call to usb_stor_ctrl_transfer() returned 0
usb-storage: usb_stor_bulk_transfer_buf: xfer 18 bytes
usb-storage: Status code 0; transferred 18/18
usb-storage: -- transfer complete
usb-storage: CBI data stage result is 0x0
usb-storage: usb_stor_intr_transfer: xfer 2 bytes
usb-storage: Status code 0; transferred 2/2
usb-storage: -- transfer complete
usb-storage: Got interrupt data (0x0, 0x0)
usb-storage: -- Result from auto-sense is 0
usb-storage: -- code: 0x70, key: 0x6, ASC: 0x29, ASCQ: 0x0
usb-storage: Unit Attention: Power on, reset, or bus device reset occurred
usb-storage: scsi cmd done, result=0x2
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (1:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (2:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (3:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (4:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (5:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (6:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
usb-storage: queuecommand called
usb-storage: *** thread awakened.
usb-storage: Bad target number (7:0)
usb-storage: scsi cmd done, result=0x40000
usb-storage: *** thread sleeping.
USB Mass Storage device found at 5
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
------------ Attempt (2) ------------------- I added an entry to unusual_devs.h for the camera with the following:
US_SC_DEVICE, US_PR_CB, NULL, 0
and connecting the camera via the hub. After that the camera would be recognized fine, but once I have copied about 300KB of data off of it, the whole USB hub would go "crazy", the copying would get stuck, then it would think that _all_ the devices (mouse, etc) somehow disappeared, then it would start crashing.
------------- Attempt (3) -----------------
I tried using US_PR_BULK instead of US_PR_CB - as in (0), the device would not be recognized by SCSI (with somewhat different messages than in 0).
------------- Attempt (4) ----------------- I tried using
US_SC_DEVICE, US_PR_DEVICE, NULL, US_FL_FIX_INQUIRY
but still connecting via the hub. The results were pretty much the same as in case (2).
------------- Attempt (5) -----------------
I tried using the same line as in 3, but this time connecting the camera directly to the computer (and not plugging any other USB devices). This time it worked perfectly!
Still, this is only a partial success as it still does not work (see attampts (2) and (4) ) when plugged into a hub with other devices.
-------------------------------------------
P.S. Other USB devices (printer, mouse) work OK.
P.P.S. I also reported this to Red Hat - see http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=121105
-- Aleksey Nogin
Home Page: http://nogin.org/ E-Mail: [EMAIL PROTECTED] (office), [EMAIL PROTECTED] (personal) Office: Jorgensen 70, tel: (626) 395-2907
------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel