Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 7 Apr 1999 21:57:25 +0200 (CEST)
From:      Wilko Bulte <wilko@yedi.iaf.nl>
To:        ken@plutotech.com (Kenneth D. Merry)
Cc:        freebsd-scsi@FreeBSD.ORG
Subject:   Re: Getting Pioneer CD changer to work
Message-ID:  <199904071957.VAA01873@yedi.iaf.nl>
In-Reply-To: <199904062200.QAA31037@panzer.plutotech.com> from "Kenneth D. Merry" at "Apr 6, 1999  4: 0:23 pm"

next in thread | previous in thread | raw e-mail | index | archive | help
As Kenneth D. Merry wrote ...
> Wilko Bulte wrote...
> > 
> > I recently obtained a Pioneer 6 CD changer DRM604-X. Currently 
> > I'm playing with it to see if I can get it to work on 4.x-current.

[snip]

> > With the magazine in and CDs loaded I get CCB already dequeued messages,
> > timeout nccb blabla, CAM status 0x4b

Well, I got tired of the bus lockups, as the system disk was on the same
bus I could not capture messages easily. So, I dropped in an old Adaptec
1542A (note the A). 4.0 detects the aha ok, and spits out a warning 
like "1542A, trying to compensate" (or close to that; it sounded as
Startrek to me anyway ;-). And locks up, even when no devices are
attached to it. Time for more surgery: I freed up a PCI slot and 
connected the Pioneer cdchanger to a Qlogic 1040 card. 

This resulted in a much better 'debuggable' system.

> > My guess is I need some quirk entries to at least catch the vendor
> > unique ASCs. They probably mean something like "need to load a CD"
> > or something, but I don't have any docs unfortunately. Worse, I got it
> > as-is and I'm not sure if it works correctly.
> > 
> > Appreciate insight from people who used these beasts before.
> 
> Well, I've got a couple of ideas.  I think there are two things going on
> here:
> 
> 1.  Your drive responds with an odd ASC when there is no media present.
> 2.  The 20 second timeout for the initial read capacity in the CD driver
>     may be too short for your drive.
> 
> So, to address the first problem, try the attached diffs.  They'll
> basically make 0x0b an "acceptable" ASC for attachment purposes.

I did that and it helps quite a bit:

Apr  7 22:30:40 p100 last message repeated 2 times
Apr  7 22:30:40 p100 /kernel: (cd0:isp0:0:5:0): READ CD RECORDED CAPACITY.
CDB:
25 0 0 0 0 0 0 0 0 0 
Apr  7 22:30:40 p100 /kernel: (cd0:isp0:0:5:0): NOT READY asc:3a,0
Apr  7 22:30:40 p100 /kernel: (cd0:isp0:0:5:0): Medium not present
Apr  7 22:30:40 p100 /kernel: cd0 at isp0 bus 0 target 5 lun 0
Apr  7 22:30:40 p100 /kernel: cd0: <PIONEER CD-ROM DRM-600 2401> Removable
CD-RO
M SCSI-CCS device
Apr  7 22:30:40 p100 /kernel: cd0: Serial Number 6
Apr  7 22:30:40 p100 /kernel: cd0: 3.300MB/s transfers
Apr  7 22:30:40 p100 /kernel: cd0: Attempt to query device size failed: NOT
READ
Y, Medium not present
Apr  7 22:30:51 p100 /kernel: (cd1:isp0:0:5:1): READ CD RECORDED CAPACITY.
CDB:
25 20 0 0 0 0 0 0 0 0
Apr  7 22:30:51 p100 /kernel: (cd1:isp0:0:5:1): NOT READY asc:3a,0  
Apr  7 22:30:51 p100 /kernel: (cd1:isp0:0:5:1): Medium not present  
Apr  7 22:30:51 p100 /kernel: cd1 at isp0 bus 0 target 5 lun 1 
Apr  7 22:30:52 p100 /kernel: cd1: <PIONEER CD-ROM DRM-600 2401> Removable
CD-RO
M SCSI-CCS device

etc etc. This is with a full 6 cd magazine loaded.

> To address the second problem, go into cdstart() in sys/cam/scsi/scsi_cd.c
> and increase the timeout for the read capacity from 20 seconds to say 30 or
> 40 and see what happens.
> 
> If putting 0x0b in allows the drive to probe without media present, then

Yes it will, but only if you change 0b into b0 because that is what the
drive reports ;-) You got me scratchin my head with that one 8). Below is
what happens without a magazine loaded.

Apr  7 22:42:53 p100 /kernel: (cd2:isp0:0:5:2): READ CD RECORDED CAPACITY.
CDB: 
25 40 0 0 0 0 0 0 0 0
Apr  7 22:42:53 p100 /kernel: (cd2:isp0:0:5:2): NOT READY asc:b0,0
Apr  7 22:42:53 p100 /kernel: (cd2:isp0:0:5:2): Vendor Specific ASC
Apr  7 22:42:53 p100 /kernel: cd2 at isp0 bus 0 target 5 lun 2  
Apr  7 22:42:53 p100 /kernel: cd2: <PIONEER CD-ROM DRM-600 2401> Removable
CD-RO
M SCSI-CCS device 
Apr  7 22:42:53 p100 /kernel: cd2: Serial Number 6 
Apr  7 22:42:53 p100 /kernel: cd2: 3.300MB/s transfers
Apr  7 22:42:53 p100 /kernel: cd2: Attempt to query device size failed: NOT
READ
Y, Vendor Specific ASC  
Apr  7 22:42:53 p100 /kernel: ffs_mountfs: superblock updated for soft
updates
Apr  7 22:42:53 p100 /kernel: (cd3:isp0:0:5
Apr  7 22:42:53 p100 /kernel: :3): READ CD RECORDED CAPACITY. CDB: 25 60 0 0
0 0
 0 0 0 0

> that probably means that I need to come up with some generic tie-in to the
> error recovery code for acceptable errors on probe.  I need to make it
> generic because there are other devices (Joerg's and Matt Dodd's Sony MO
> drives) that give back weird errors when no media is present.
> 
> If it turns out that the read capacity timeout is too low, I can probably
> just bump the default.  I would like to get a rough idea of how long it
> takes your drive to return a read capcity command, so we can avoid making
> the timeout really long.

Now the nasty stuff: my drive has problems *reading*. Initially it whistled
like a bird while trying to do so. I assume this is the focussing voice
coil of the laser assembly. Cleaning the lens helped, it read (slightly
whistling, but much less than before) 2 out of 6 CDs. After a second
cleaning operation I made things worse: it now always reports "no medium
present" :-( Seems some more hardware surgery seems to be needed.

Anybody got a scrap Pioneer DRM604-X that I can get the laser assy from??

Groeten / Cheers,
Wilko
_     ______________________________________________________________________
 |   / o / /  _  				Arnhem, The Netherlands
 |/|/ / / /( (_) Bulte 				WWW  : http://www.tcja.nl
_______________________ Powered by FreeBSD ___  http://www.freebsd.org _____


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




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