On 2006/11/27 at 03:04:55AM +0100, Moritz Kiese wrote:

> Greetings,
> 
> I just hooked up a rather old 6x CD-changer (Pioneer DRM-624X) to my 
> SUN Ultra 1 (fast SCSI provided by a combi SBUS card with additional esp, 
> le & cereal). The CD-changer usually presents its six cds at six different 
> devices appearing under six LUNs, however neither 4.0 GENERIC nor a custom 
> kernel with an additional
> 
> option SCSIFORCELUN_BUSES=0x0001
> 
> which I vaguely remember from an elderly discussion about multi-LUN 
> devices on misc@ seems to find more than the first cd (cd1) of the six 
> (which seems to be working fine).
> In case it helps: Under Lunix and (IIRC) Slowlaris this beast appeared 
> under six different LUNs, generating six cd-devices. All devices could be 
> mounted simultaneously, but only one at a time could be read of course. So 
> I wonder whether there is some way to force LUN probing on all devices?
> 
> Any hints highly appreciated,

        Look at sd(4) -- especially the synopsis:

 ======================================================================
     sd* at scsibus?
     #sd0 at scsibus0 target 3 lun 0 (fixed-configuration example)
 ======================================================================

        And at cd(4)

 ======================================================================
     cd* at scsibus?
     #cd0 at scsibus0 target 6 lun 0 (fixed-configuration example)
 ======================================================================

        Note that the first line is what you will find in your GENERIC
kernel configuration, and AFIK, it *only* selects "lun 0".

        You will need, instead, to change that line to multiple lines
(assuming that you have only one SCSI drive other than the CD-ROM
changer):

 ======================================================================
#       Your boot drive -- adjust SCSI ID as appropriate.  IIRC, the
#       Ultra-1 wants target 0 as the first internal drive.
#
#       Yes -- I just checked, and the internal drives are SCSI ID 0
#       and SCSI-ID 1, so let's allow for both, even if both are not
#       currently present.
#
sd0 at scsibus0 target 0 lun 0
sd1 at scsibus0 target 1 lun 0
#
#       Assume the CD-changer to be at the usual SCSI-ID 6 for
#       Suns -- change as necessary
#
cd2 at scsibus0 target 6 lun 0
cd3 at scsibus0 target 6 lun 1
cd4 at scsibus0 target 6 lun 2
cd5 at scsibus0 target 6 lun 3
cd6 at scsibus0 target 6 lun 4
cd7 at scsibus0 target 6 lun 5
 ======================================================================

        To be honest, I don't know what happens if some disks are hard
coded as above, and others are not -- but I do know that the hard-coding
of *disks* is needed for reliable behavior with the RAID system if you
boot with a missing or failed disk.

        So -- make the changes to a copy of 

        /usr/src/sys/arch/sparc64/conf/GENERIC

(Perhaps call it WITHCDS or something similar), compile it, and install
it as the current kernel (/bsd) -- saving a copy of the old one, of
course, as something like /bsd-GENERIC to make it easier to recover if
something went wrong with the kernel which you built.

        I hope that this helps,
                DoN.

-- 
 Email:   <[EMAIL PROTECTED]>   | Voice (all times): (703) 938-4564
        (too) near Washington D.C. | http://www.d-and-d.com/dnichols/DoN.html
           --- Black Holes are where God is dividing by zero ---

Reply via email to