Date: Thu, 8 Apr 1999 23:52:57 +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: <199904082152.XAA04131@yedi.iaf.nl> In-Reply-To: <199904082026.OAA11726@panzer.plutotech.com> from "Kenneth D. Merry" at "Apr 8, 1999 2:26:42 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
As Kenneth D. Merry wrote ... > [ CCing this to -scsi since you seem to be sending things separately to me > and then the -scsi list ] Sorry, that was a mistake which I corrected with a seperate CC: copy to -scsi > Wilko Bulte wrote... > > As Kenneth D. Merry wrote ... > > > Wilko Bulte wrote... > > > > As Kenneth D. Merry wrote ... > > > > > Wilko Bulte wrote... > > > > > > As Kenneth D. Merry wrote ... > > > > > > > Wilko Bulte wrote... > > > FWIW, Justin and I have been talking about making the CD and DA drivers > > > attach to devices "no matter what", for the most part. (unless they say > > > something like "logical unit not supported") > > > > To be honest I never saw the point in doing a READ CAPACITY etc on a CD > > drive. If it responds to an inquiry OK, does not produce sense codes > > like hardware error I'd conclude we have a working drive on our hands. > > But that might be too simplistic. > > We have to do a read capacity if we're going to mount the CD at all. The > read capacity provides two critical pieces of information: the > sector/block size of the device, and the size of the device. Both are > needed for the disklabel and for mounting filesystems. OK, sounds like I need another beer ;-) I confused the READ CAPACITY with the READ TOC (see below) The only thing that could go I think is the warning/error that occurs when no CD is loaded in the drive during probe. > Now the read capacity may not be necessary on attach, but it must be done > before we can open the CD. I think it's generally worthwhile to do on > attach as well. It should not hurt. Maybe a 'silent' one in case of an empty drive? > > > That means that the probing should happen sequentially, not in parallel. > > > So your timeout should be the time it takes for one LUN to probe, not all > > > of them. > > > > OK. I just went back to the driver. I put the original driver in the tree > > again and just added the 0xb0 ASC the drive reports during probe when no > > magazine/cds are loaded. I left all the timeouts alone for now. > > > > Will test this later tonight when it has completed a complete magazine > > test cycle. In the meantime it has proven to work OK with the default timeouts, and only the 0xb0 line in. > > > You can put a quirk entry in the CD driver to make sure the CD driver sees > > > even LUN 0 as part of a changer, but I don't think it'll have any noticable > > > effect on the way things work. > > > > It has no problems detecting the 6 LUNs. > > The CD driver will detect all 6 LUNs with or without a quirk. The only > reason for a quirk entry is that the various LUNs of the changer will not > be seen/grouped as a changer until the CD driver sees a LUN greater than 1. > > Once a group of CD devices is recognized as a changer, I/O to any of those > devices goes through the changer scheduler in the CD driver. The changer > scheduler schedules I/O to each LUN in a changer, makes sure one LUN can't > hog the changer if there is outstanding I/O to another LUN, etc. > > I don't think it's really necessary to have a quirk entry, though, since > all the LUNs will be put in the changer scheduler before any I/O goes to > LUN 1 of the device. That is what I meant. It works with or without the quirk entry. I tried both. Interestingly enough there is a quirk entry for Pioneer already, but my drive has a slightly different inquiry string: { { T_CDROM, SIP_MEDIA_REMOVABLE, "PIONEER", "CD-ROM DRM-604X", "*"}, /* quirks */ CD_Q_CHANGER }, { { T_CDROM, SIP_MEDIA_REMOVABLE, "PIONEER", "CD-ROM DRM-600", "*"}, /* quirks */ CD_Q_CHANGER }, I'm not sure if it is worthwhile to put a quirk in the driver for this drive. Maybe if I can get info on why READ TOCs etc fail.. Just sent mail to Pioneer in Belgium to ask for a SCSI implementation manual for this drive. Lets be optimistic.. > > > > A mount of a plain iso9660 cd produced a new interesting message: > > > > > > > > Apr 8 00:52:46 p100 /kernel: (cd3:isp0:0:5:3): READ TOC/PMA/ATIP {MMC > > > > Proposed}. CDB: 43 60 0 0 0 0 0 0 4 0 > > > > Apr 8 00:52:46 p100 /kernel: (cd3:isp0:0:5:3): ILLEGAL REQUEST asc:20,0 > > > > Apr 8 00:52:46 p100 /kernel: (cd3:isp0:0:5:3): ILLEGAL REQUEST asc:20,0 > > > > Apr 8 00:52:46 p100 /kernel: (cd3:isp0:0:5:3): Invalid command operation > > > > code > > > > > > > > Makes me wonder, especially because the Pioneer firmware claims to be CCS > > > > only. There is a little dipswitch claiming to select SCSI-2 mode but it > > > > does not have any obvious effect. I guess this is a pre-SCSI-2 firmware rev > > > > and it does not have the standard SCSI cmds for optical devices. They were > > > > introduced in SCSI-2 IIRC. Really a funky piece of hardware ;-) > > > > > > Yeah, definitely makes me wonder. I wonder how you get the table of > > > contents off the thing, since that is the standard CDROM TOC command that > > > should work on most any CDROM.. > > > > 'Most any' appears to be the right term for it ;) I'll experiment a bit > > more. Just go a solid system lockup by running a 'dd if=/dev/rcd0a' and > > a 'mount /dev/cd1a ...' at the same time. Only ping still works. Hmm. > > More testing to do I guess > > Hmm, interesting. What happens if you just try the DD? Can you break into > the debugger when the machine locks up? I made a new kernel with the debugger in. I'll have it run overnight to see if it re-occurs. In the meantime there was also a spontaneous reboot. No panic as far as I can see. I'll try to reproduce.. Just the DD seems to work just fine. 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?199904082152.XAA04131>