Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 26 Mar 2002 01:46:04 +0000
From:      "Chad Kline" <i18rabbit@hotmail.com>
To:        iedowse@maths.tcd.ie
Cc:        questions@freebsd.org
Subject:   Re: olympus c-1 (d-150)
Message-ID:  <F204ANH2cv0aGltFBNl000009e7@hotmail.com>

next in thread | raw e-mail | index | archive | help

    FBSD 4.5

>>i see in /usr/src/sys/dev/usb/umass.c
>>that support for the Olympus C-1 has been added.
>>usbdevs detects my Olympus D-150 (US model #)
>>as an Olympus C-1 (Japanese model #).

>have also a look to /usr/src/sys/cam/scsi/scsi_da.c
>your camera has been added threre already.

    {
        /*
         * Olympus digital cameras (C-3040ZOOM, C-2040ZOOM, C-1)
         */
        {T_DIRECT, SIP_MEDIA_REMOVABLE, "OLYMPUS", "C-*", "*"},
        /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE
    },

yes - the camera is in this file.

>have you

>device          scbus                   #base SCSI code
>device          da                      #SCSI direct access devices (aka 
>disks)
>device          pass                    #CAM passthrough driver
>device          umass                   # USB Iomega Zip 100 Drive 
>(Requires scbus and da)
>in your kernel-config?

yes i do.  and i have no other SCSI devices.
i gather i do not need usb/uhci/ohci?
i have had them - are they unnecessary?

MYKERN ...
--
#
# MACHINE
#
machine     "i386"
cpu         "I586_CPU"
cpu         "I686_CPU"
ident       MYKERN
maxusers    32
#
# STANDARD
#
options     FFS
options     FFS_ROOT
options     SOFTUPDATES
options     ATA_STATIC_ID
options     INET
options     SYSVSHM
options     SYSVMSG
options     SYSVSEM
options     MAXCONS=9
options     COMPAT_43
options     P1003_1B        # SO & CDRW
options    _KPOSIX_PRIORITY_SCHEDULING
options    _KPOSIX_VERSION=199309L
options    UMASS_DEBUG
#
# MOTHERBUS
#
device     isa
device     pci
#
# STANDARD
#
device      sc0     at isa?
device      atkbdc0 at isa?     port IO_KBD
device      atkbd0  at atkbdc?                          irq  1
device      sio1    at isa?     port 0x02f8             irq  3
device      sio0    at isa?     port 0x03f8             irq  4
#device     sio2    at isa?     port 0x03e8             irq  5
#device     sio3    at isa?     port 0x02e8             irq  9
#device     ex
device      miibus
#device     ed1     at isa?     port 0x0320             irq  5  iomem 
0x00000
device      ed0     at isa?     port 0x0340             irq  9  iomem 
0x00000
device      fdc0    at isa?     port IO_FD1             irq  6  drq 2
device      fd0     at fdc0     drive 0
#device     fd1     at fdc0     drive 1
#device     cy0     at isa?                             irq 10  iomem 
0xd4000 iosiz 0x2000
#device     cy1     at isa?                             irq 11  iomem 
0xd6000 iosiz 0x2000
#device     psm0    at atkbdc?                          irq 12
device      npx0    at nexus?   port IO_NPX flags 0x0   irq 13
device      vga0    at isa?
#
# ATAPI
#
device      ata
device      atadisk
device      atapicd
device      ata0    at isa?     port IO_WD1             irq 14
#device     ata1    at isa?     port IO_WD2             irq 15
#
# ZIP (zip needs scbus & da)
#
device      ppc0    at isa?                             irq  7
device      ppbus
device      plip
device      lpt
device      ppi
#device     vpo
#
# SCSI
#
device      scbus
#device     ahc0
device      da
#device     cd
device      pass
#
# USB-SUPPORT
#
device     uhci         # Universal Host Controller Interface
device     ohci         # Open      Host Controller Interface
device     usb          # Universal Serial Bus      (Required)
device     umass        # Usb Mass Storage device   (requires scbus/da/pass)
#
#
# SB
#
#device     pcm         # PnP/PCI sound cards
#device     sbc         # SoundBlaster PnP/non-PnP
#
# ETCETERA
#
pseudo-device   pty
pseudo-device   bpf 3
pseudo-device   snp 3
pseudo-device   tun 3
pseudo-device   loop
pseudo-device   ether
pseudo-device   splash
--

>>i can't mount /dev/da0a or /dev/da0s1 or any combination thereof.
>>i can't find anything in log files or on the WWW or maillists.
>>ideas/suggestions appreciated.

>I think it's an msdos filesystem, so try
>mount -t msdos /dev/da0s1 /somewhere

yes - this is what i do.  mount -t msdos /dev/da0s1 /mnt

>>Mar 23 23:24:29 en26 /kernel: umass0: OLYMPUS C-1Z,D-150Z, rev 1.10/10.15,
>>Mar 23 23:24:30 en26 /kernel: umass0: BBB reset failed, TIMEOUT

>Could you post the output of `usbdevs -v' when the camera is plugged
>in? The "BBB reset failed" error message is exactly what I saw
>before C1 support was added to umass.c, so I suspect your camera
>has a different product ID, but needs the same workaround.

>For a quick solution, try editing umass.c ...

yes - i edited it so it is as follows:

        if (UGETW(dd->>idVendor) == USB_VENDOR_OLYMPUS) { /* && */
        /*  UGETW(dd->>idProduct) == USB_PRODUCT_OLYMPUS_C1) { */
            /*
             * The Olympus C-1 camera uses a different command-status
             * signature.
             */
            sc->>quirks |= WRONG_CSWSIG;
        }

>If that fixes the errors, the `usbdevs -v' output will be enough
>to get the driver updated to work properly with this camera in
>future.

no - this did not change anything as far as i can tell.

# camcontrol rescan 0

still produces umass0 timeouts as well as having the camera
plugged in at boot time:

Mar 25 16:10:32 en26 /kernel: umass0: BBB reset failed, TIMEOUT
Mar 25 16:10:37 en26 /kernel: umass0: BBB bulk-in clear stall failed, 
TIMEOUT
Mar 25 16:10:42 en26 /kernel: umass0: BBB bulk-out clear stall failed, 
TIMEOUT
Mar 25 16:10:52 en26 /kernel: umass0: BBB reset failed, TIMEOUT

>>>Could you post the output of `usbdevs -v' when the camera is plugged
>>>in? The "BBB reset failed" error message is exactly what I saw

>>addr 2: self powered, config 1, C-1 Digital Camera(0x0102),
>>         Olympus(0x07b4), rev 0x1015 port 2 powered

>Hmm, that does have the right product ID, so it should work. I
>presume you do have the version of umass.c that mentions
>USB_PRODUCT_OLYMPUS_C1?

>The next thing you can do is add `options UMASS_DEBUG' to your
>kernel config and recompile it. Then plug in the camera and post
>the debug output from dmesg.

/etc/usbd.conf:

device "SmartMedia"
	devname "/dev/da0s1"
	attach "/sbin/mount -t msdos /dev/da0s1 /mnt"

dmesg output with UMASS_DEBUG and camera plugged into USB port:
(kernel has umass.c modification that was suggested)

Copyright (c) 1992-2002 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
	The Regents of the University of California. All rights reserved.
FreeBSD 4.5-RELEASE #5: Mon Mar 25 16:33:16 AKST 2002
    root@en26.groggy.anc.acsalaska.net:/usr/src/sys/compile/MYKERN
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 167045919 Hz
CPU: Pentium/P54C (167.05-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x52c  Stepping = 12
  Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
real memory  = 33554432 (32768K bytes)
avail memory = 30072832 (29368K bytes)
Preloaded elf kernel "kernel" at 0xc02b6000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc02b609c.
Intel Pentium detected, installing workaround for F00F bug
Using $PIR table, 5 entries at 0xc00fdc70
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <Host to PCI bridge> on motherboard
pci0: <PCI bus> on pcib0
isab0: <Intel 82371FB PCI to ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX ATA controller> port 0xf000-0xf00f at device 7.1 on 
pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
pci0: <Cirrus Logic GD5446 SVGA controller> at 17.0
ohci0: <OPTi 82C861 (FireLink) USB controller> mem 0xe1000000-0xe1000fff irq 
10 at device 19.0 on pci0
usb0: OHCI version 1.0, legacy support
usb0: <OPTi 82C861 (FireLink) USB controller> on ohci0
usb0: USB revision 1.0
uhub0: OPTi OHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
umass0: OLYMPUS C-1Z,D-150Z, rev 1.10/10.15, addr 2, SCSI over Bulk-Only
umass0: Max Lun is 0
umass-sim:0:-1:-1:XPT_PATH_INQ:.
umass0:0:0:-1: Attached to scbus0 as device 0
umass0: Attach finished
orm0: <Option ROM> at iomem 0xc0000-0xc7fff on isa0
sc0: <System console> on isa0
sc0: VGA <9 virtual consoles, flags=0x200>
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
sio0 at port 0x3f8-0x3ff irq 4 on isa0
sio0: type 16550A
ed0 at port 0x340-0x35f irq 9 on isa0
ed0: address 00:00:1b:35:06:76, type NE2000 (16 bit)
fdc0: <NEC 765 or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: Generic chipset (NIBBLE-only) in COMPATIBLE mode
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
ad0: 4112MB <WDC AC14300R> [8912/15/63] at ata0-master WDMA2
acd0: CDROM <FX3400S> at ata0-slave using PIO4
umass-sim:0:-1:-1:XPT_PATH_INQ:.
umass-sim:0:-1:-1:XPT_PATH_INQ:.
umass-sim:0:-1:-1:XPT_PATH_INQ:.
umass0:0:0:0:XPT_PATH_INQ:.
umass0:0:0:0:XPT_PATH_INQ:.
umass-sim:0:1:0:func_code 0x0004: Invalid target (no wildcard)
umass-sim:0:2:0:func_code 0x0004: Invalid target (no wildcard)
umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b sense
umass0: CBW 1: cmd = 6b (0x120000002400), data = 36 bytes, dir = in
umass0: Handling BBB state 1 (BBB CBW), xfer=0xc07f1300, TIMEOUT
umass0: failed to send CBW
umass0: Bulk Reset
umass0: Handling BBB state 7 (BBB Reset), xfer=0xc07f7d80, TIMEOUT
umass0: BBB reset failed, TIMEOUT
umass0: Clear endpoint 0x82 stall
umass0: Handling BBB state 8 (BBB bulk-in clear stall), xfer=0xc07f7d00, 
TIMEOUT
umass0: BBB bulk-in clear stall failed, TIMEOUT
umass0: Clear endpoint 0x01 stall
umass0: Handling BBB state 9 (BBB bulk-out clear stall), xfer=0xc07f7c80, 
TIMEOUT
umass0: BBB bulk-out clear stall failed, TIMEOUT
umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b sense
umass0: CBW 2: cmd = 6b (0x120000002400), data = 36 bytes, dir = in
umass0: Handling BBB state 1 (BBB CBW), xfer=0xc07f1300, TIMEOUT
umass0: failed to send CBW
umass0: Bulk Reset
umass0: Handling BBB state 7 (BBB Reset), xfer=0xc07f7d80, TIMEOUT
umass0: BBB reset failed, TIMEOUT
umass0: Clear endpoint 0x82 stall
umass0: Handling BBB state 8 (BBB bulk-in clear stall), xfer=0xc07f7d00, 
TIMEOUT
umass0: BBB bulk-in clear stall failed, TIMEOUT
umass0: Clear endpoint 0x01 stall
umass0: Handling BBB state 9 (BBB bulk-out clear stall), xfer=0xc07f7c80, 
TIMEOUT
umass0: BBB bulk-out clear stall failed, TIMEOUT
umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b sense
umass0: CBW 3: cmd = 6b (0x120000002400), data = 36 bytes, dir = in
umass0: Handling BBB state 1 (BBB CBW), xfer=0xc07f1300, TIMEOUT
umass0: failed to send CBW
umass0: Bulk Reset
umass0: Handling BBB state 7 (BBB Reset), xfer=0xc07f7d80, TIMEOUT
umass0: BBB reset failed, TIMEOUT
umass0: Clear endpoint 0x82 stall
umass0: Handling BBB state 8 (BBB bulk-in clear stall), xfer=0xc07f7d00, 
TIMEOUT
umass0: BBB bulk-in clear stall failed, TIMEOUT
umass0: Clear endpoint 0x01 stall
umass0: Handling BBB state 9 (BBB bulk-out clear stall), xfer=0xc07f7c80, 
TIMEOUT
umass0: BBB bulk-out clear stall failed, TIMEOUT
umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b sense
umass0: CBW 4: cmd = 6b (0x120000002400), data = 36 bytes, dir = in
umass0: Handling BBB state 1 (BBB CBW), xfer=0xc07f1300, TIMEOUT
umass0: failed to send CBW
umass0: Bulk Reset
umass0: Handling BBB state 7 (BBB Reset), xfer=0xc07f7d80, TIMEOUT
umass0: BBB reset failed, TIMEOUT
umass0: Clear endpoint 0x82 stall
umass0: Handling BBB state 8 (BBB bulk-in clear stall), xfer=0xc07f7d00, 
TIMEOUT
umass0: BBB bulk-in clear stall failed, TIMEOUT
umass0: Clear endpoint 0x01 stall
umass0: Handling BBB state 9 (BBB bulk-out clear stall), xfer=0xc07f7c80, 
TIMEOUT
umass0: BBB bulk-out clear stall failed, TIMEOUT
umass0:0:0:0:XPT_SCSI_IO: cmd: 0x12, flags: 0x40, 6b cmd/36b data/18b sense
umass0: CBW 5: cmd = 6b (0x120000002400), data = 36 bytes, dir = in
umass0: Handling BBB state 1 (BBB CBW), xfer=0xc07f1300, TIMEOUT
umass0: failed to send CBW
umass0: Bulk Reset
umass0: Handling BBB state 7 (BBB Reset), xfer=0xc07f7d80, TIMEOUT
umass0: BBB reset failed, TIMEOUT
umass0: Clear endpoint 0x82 stall
umass0: Handling BBB state 8 (BBB bulk-in clear stall), xfer=0xc07f7d00, 
TIMEOUT
umass0: BBB bulk-in clear stall failed, TIMEOUT
umass0: Clear endpoint 0x01 stall
umass0: Handling BBB state 9 (BBB bulk-out clear stall), xfer=0xc07f7c80, 
TIMEOUT
umass0: BBB bulk-out clear stall failed, TIMEOUT
Mounting root from ufs:/dev/ad0a


_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp.


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?F204ANH2cv0aGltFBNl000009e7>