Date: Mon, 9 Jun 2003 15:00:49 +0200 (CEST) From: Richard Nyberg <rnyberg@it.su.se> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/53094: QUIRK: Creative Nomad Muvo USB mp3 player Message-ID: <200306091300.h59D0n02011225@murmeldjur.it.su.se> Resent-Message-ID: <200306091310.h59DAG16044761@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 53094 >Category: kern >Synopsis: QUIRK: Creative Nomad Muvo USB mp3 player >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Jun 09 06:10:16 PDT 2003 >Closed-Date: >Last-Modified: >Originator: Richard Nyberg <rnyberg@it.su.se> >Release: FreeBSD 5.1-BETA i386 >Organization: none >Environment: System: FreeBSD bsd.local 5.1-BETA FreeBSD 5.1-BETA #12: Mon Jun 9 14:14:47 CEST 2003 rnyberg@bsd.local:/usr/obj/usr/src/sys/BSD i386 >Description: Quirks needed for creative nomad muvo mp3 player. The device doesn't like the PREVENT ALLOW command and also needs the quirks DA_Q_NO_SYNC_CACHE and DA_Q_NO_6_BYTE to work correctly. ----------------camcontrol inquiry da0 pass0: <CREATIVE NOMAD_MUVO 0001> Removable Direct Access SCSI-4 device pass0: Serial Number pass0: 1.000MB/s transfers ---------------- ---------------- usbdevs -v Controller /dev/usb0: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), VIA(0x0000), rev 1.00 port 1 addr 2: low speed, power 100 mA, config 1, USB Mouse(0xc00b), Logitech(0x046d), rev 6.10 port 2 addr 3: low speed, power 20 mA, config 1, SideWinder Precision 2 Joystick(0x0038), Microsoft(0x045e), rev 1.08 Controller /dev/usb1: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), VIA(0x0000), rev 1.00 port 1 powered port 2 powered Controller /dev/usb2: addr 1: full speed, self powered, config 1, UHCI root hub(0x0000), VIA(0x0000), rev 1.00 port 1 powered port 2 addr 2: full speed, self powered, config 1, product 0x4106(0x4106), Creative(0x041e), rev 0.01 ---------------- ---------------- failed dmesg Copyright (c) 1992-2003 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 5.1-BETA #10: Mon Jun 9 13:53:55 CEST 2003 rnyberg@bsd.local:/usr/obj/usr/src/sys/BSD Preloaded elf kernel "/boot/kernel.broken/kernel" at 0xc04d7000. Preloaded elf module "/boot/kernel.broken/acpi.ko" at 0xc04d71fc. Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 1470006336 Hz CPU: AMD Athlon(tm) XP 1700+ (1470.01-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x662 Stepping = 2 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> AMD Features=0xc0480000<MP,AMIE,DSP,3DNow!> real memory = 536805376 (511 MB) avail memory = 516100096 (492 MB) Pentium Pro MTRR support enabled npx0: <math processor> on motherboard npx0: INT 16 interface acpi0: <VIA694 AWRDACPI> on motherboard pcibios: BIOS version 2.10 Using $PIR table, 8 entries at 0xc00fdee0 acpi0: power button is handled as a fixed feature programming model. Timecounter "ACPI-fast" frequency 3579545 Hz acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0 acpi_cpu0: <CPU> port 0x530-0x537 on acpi0 acpi_tz0: <thermal zone> port 0x530-0x537 on acpi0 acpi_button0: <Power Button> on acpi0 acpi_button1: <Sleep Button> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0x5000-0x500f,0x4080-0x40ff,0x4000-0x407f,0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <PCI-PCI bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 pci1: <display, VGA> at device 0.0 (no driver attached) pcm0: <Creative EMU10K1> port 0xd000-0xd01f irq 11 at device 9.0 on pci0 pcm0: <TriTech TR28602 AC97 Codec> vr0: <VIA VT6102 Rhine II 10/100BaseTX> port 0xd800-0xd8ff mem 0xe3000000-0xe30000ff irq 10 at device 12.0 on pci0 vr0: Ethernet address: 00:50:ba:1c:81:29 miibus0: <MII bus> on vr0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto isab0: <PCI-ISA bridge> at device 17.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 8233 UDMA100 controller> port 0xdc00-0xdc0f at device 17.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <VIA 83C572 USB controller> port 0xe000-0xe01f irq 10 at device 17.2 on pci0 usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered ums0: Logitech USB Mouse, rev 1.10/6.10, addr 2, iclass 3/1 ums0: 4 buttons and Z dir. ugen0: Microsoft SideWinder Precision 2 Joystick, rev 1.10/1.08, addr 3 uhci1: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 17.3 on pci0 usb1: <VIA 83C572 USB controller> on uhci1 usb1: USB revision 1.0 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhci2: <VIA 83C572 USB controller> port 0xe800-0xe81f irq 10 at device 17.4 on pci0 usb2: <VIA 83C572 USB controller> on uhci2 usb2: USB revision 1.0 uhub2: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x3f2-0x3f5 irq 6 drq 2 on acpi0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A sio1 port 0x2f8-0x2ff irq 3 on acpi0 sio1: type 16550A atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 orm0: <Option ROM> at iomem 0xcc000-0xd3fff on isa0 pmtimer0 on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 10.000 msec ad0: 57241MB <ST360021A> [116301/16/63] at ata0-master UDMA100 acd0: DVD-ROM <SAMSUNG DVD-ROM SD-616F> at ata1-master PIO4 acd1: CD-RW <12X8X32> at ata1-slave PIO4 Mounting root from ufs:/dev/ad0s2a umass0: Creative Tech NOMAD MuVo, rev 1.10/0.01, addr 2 umass0: Get Max Lun not supported (IOERROR) da0 at umass-sim0 bus 0 target 0 lun 0 da0: <CREATIVE NOMAD_MUVO 0001> Removable Direct Access SCSI-4 device da0: 1.000MB/s transfers da0: 125MB (256001 512 byte sectors: 64H 32S/T 125C) umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0 umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR umass0: BBB reset failed, IOERROR umass0: BBB bulk-in clear stall failed, IOERROR umass0: BBB bulk-out clear stall failed, IOERROR Opened disk da0 -> 5 ---------------- ---------------- working dmesg Copyright (c) 1992-2003 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 5.1-BETA #12: Mon Jun 9 14:14:47 CEST 2003 rnyberg@bsd.local:/usr/obj/usr/src/sys/BSD Preloaded elf kernel "/boot/kernel/kernel" at 0xc0619000. Preloaded elf module "/boot/kernel/linux.ko" at 0xc06191f4. Preloaded elf module "/boot/kernel/nvidia.ko" at 0xc06192a0. Preloaded elf module "/boot/kernel/acpi.ko" at 0xc061934c. Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 1470009174 Hz CPU: AMD Athlon(tm) XP 1700+ (1470.01-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x662 Stepping = 2 Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE> AMD Features=0xc0480000<MP,AMIE,DSP,3DNow!> real memory = 536805376 (511 MB) avail memory = 514772992 (490 MB) Pentium Pro MTRR support enabled npx0: <math processor> on motherboard npx0: INT 16 interface acpi0: <VIA694 AWRDACPI> on motherboard pcibios: BIOS version 2.10 Using $PIR table, 8 entries at 0xc00fdee0 acpi0: power button is handled as a fixed feature programming model. Timecounter "ACPI-fast" frequency 3579545 Hz acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0 acpi_cpu0: <CPU> port 0x530-0x537 on acpi0 acpi_tz0: <thermal zone> port 0x530-0x537 on acpi0 acpi_button0: <Power Button> on acpi0 acpi_button1: <Sleep Button> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0x5000-0x500f,0x4080-0x40ff,0x4000-0x407f,0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <PCI-PCI bridge> at device 1.0 on pci0 pci1: <PCI bus> on pcib1 nvidia0: <GeForce3 Ti 200> mem 0xdc000000-0xdc07ffff,0xd8000000-0xdbffffff,0xe0000000-0xe0ffffff irq 11 at device 0.0 on pci1 pcm0: <Creative EMU10K1> port 0xd000-0xd01f irq 11 at device 9.0 on pci0 pcm0: <TriTech TR28602 AC97 Codec> vr0: <VIA VT6102 Rhine II 10/100BaseTX> port 0xd800-0xd8ff mem 0xe3000000-0xe30000ff irq 10 at device 12.0 on pci0 vr0: Ethernet address: 00:50:ba:1c:81:29 miibus0: <MII bus> on vr0 ukphy0: <Generic IEEE 802.3u media interface> on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto isab0: <PCI-ISA bridge> at device 17.0 on pci0 isa0: <ISA bus> on isab0 atapci0: <VIA 8233 UDMA100 controller> port 0xdc00-0xdc0f at device 17.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: <VIA 83C572 USB controller> port 0xe000-0xe01f irq 10 at device 17.2 on pci0 usb0: <VIA 83C572 USB controller> on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered ums0: Logitech USB Mouse, rev 1.10/6.10, addr 2, iclass 3/1 ums0: 4 buttons and Z dir. ugen0: Microsoft SideWinder Precision 2 Joystick, rev 1.10/1.08, addr 3 uhci1: <VIA 83C572 USB controller> port 0xe400-0xe41f irq 10 at device 17.3 on pci0 usb1: <VIA 83C572 USB controller> on uhci1 usb1: USB revision 1.0 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhci2: <VIA 83C572 USB controller> port 0xe800-0xe81f irq 10 at device 17.4 on pci0 usb2: <VIA 83C572 USB controller> on uhci2 usb2: USB revision 1.0 uhub2: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub2: 2 ports with 2 removable, self powered fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> port 0x3f7,0x3f2-0x3f5 irq 6 drq 2 on acpi0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A sio1 port 0x2f8-0x2ff irq 3 on acpi0 sio1: type 16550A atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0 atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0 kbd0 at atkbd0 orm0: <Option ROM> at iomem 0xcc000-0xd3fff on isa0 pmtimer0 on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x300> vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 10.000 msec ad0: 57241MB <ST360021A> [116301/16/63] at ata0-master UDMA100 acd0: DVD-ROM <SAMSUNG DVD-ROM SD-616F> at ata1-master PIO4 acd1: CD-RW <12X8X32> at ata1-slave PIO4 Mounting root from ufs:/dev/ad0s2a umass0: Creative Tech NOMAD MuVo, rev 1.10/0.01, addr 2 umass0: Get Max Lun not supported (IOERROR) da0 at umass-sim0 bus 0 target 0 lun 0 da0: <CREATIVE NOMAD_MUVO 0001> Removable Direct Access SCSI-4 device da0: 1.000MB/s transfers da0: 125MB (256001 512 byte sectors: 64H 32S/T 125C) ---------------- >How-To-Repeat: Connect the mp3 player to a usb port. >Fix: -----------Diff against scsi_da.c --- sys/cam/scsi/orig-scsi_da.c Sun Jun 8 22:41:42 2003 +++ sys/cam/scsi/scsi_da.c Mon Jun 9 14:14:29 2003 @@ -92,7 +92,8 @@ typedef enum { DA_Q_NONE = 0x00, DA_Q_NO_SYNC_CACHE = 0x01, - DA_Q_NO_6_BYTE = 0x02 + DA_Q_NO_6_BYTE = 0x02, + DA_Q_NO_PREVENT = 0x04 } da_quirks; typedef enum { @@ -476,6 +477,10 @@ /*quirks*/ DA_Q_NO_6_BYTE }, { + {T_DIRECT, SIP_MEDIA_REMOVABLE, "CREATIVE", "NOMAD_MUVO", "*"}, + /*quirks*/ DA_Q_NO_6_BYTE|DA_Q_NO_SYNC_CACHE|DA_Q_NO_PREVENT + }, + { /* * SanDisk ImageMate (I, II, ...) compact flash * PR: kern/47877 @@ -627,7 +632,8 @@ } if (error == 0) { - if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0) + if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0 + && (softc->quirks & DA_Q_NO_PREVENT) == 0) daprevent(periph, PR_PREVENT); } else { softc->flags &= ~DA_FLAG_OPEN; @@ -705,7 +711,8 @@ } if ((softc->flags & DA_FLAG_PACK_REMOVABLE) != 0) { - daprevent(periph, PR_ALLOW); + if ((softc->quirks & DA_Q_NO_PREVENT) == 0) + daprevent(periph, PR_ALLOW); /* * If we've got removeable media, mark the blocksize as * unavailable, since it could change when new media is --------- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200306091300.h59D0n02011225>