Re: CD changers.

James MacKinnon (jmack@phys.ualberta.ca)
Wed, 14 Feb 1996 23:19:30 -0700 (MST)


On Wed, 14 Feb 1996, Andreas Kostyrka wrote:

> I just wanted to ask, if Linux supports SCSI-II CD-changers? (Is the only
> thing I have to change CONFIG_SCSI_MULTI_LUN?)
>

Your mileage may vary, depending on scsi controller and multi-lun device,
but I have had no trouble with a PCI adaptec 2940 controller and a NEC
multispin 4xc 7 cd changer (device proms say 'NCR' but should be 'NEC').
The NEC changer works very well and was cheap ($399US a few months back).

CONFIG_SCSI_MULTI_LUN=y

[laddie]:/proc>cat version
Linux version 1.3.62 (root@laddie) (gcc version 2.5.8) #5 Sun Feb 11
12:33:32 MST 1996

[laddie]:/proc/scsi>cat scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: FUJITSU Model: M1606S-512 Rev: 6234
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 01
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 02
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 03
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 04
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 05
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 06
Vendor: NRC Model: MBR-7.4 Rev: 101
Type: CD-ROM ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 02 Lun: 00
Vendor: QUANTUM Model: LIGHTNING 730S Rev: 241E
Type: Direct-Access ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 05 Lun: 00
Vendor: HP Model: C2520A Rev: 3503
Type: Processor ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 06 Lun: 00
Vendor: IOMEGA Model: ZIP 100 Rev: R.41
Type: Direct-Access ANSI SCSI revision: 02

[laddie]:/proc/scsi>cat aic7xxx/0
Adaptec AIC7xxx driver version: 2.15/2.2/2.3

Compile Options:
AIC7XXX_RESET_DELAY : 15
AIC7XXX_TWIN_SUPPORT : Enabled
AIC7XXX_TAGGED_QUEUEING: Disabled
AIC7XXX_SHARE_IRQS : Enabled
AIC7XXX_PROC_STATS : Disabled

Adapter Configuration:
SCSI Adapter: AHA-2940
Host Bus: Single
Base IO: 0xd800
IRQ: 10
SCB: 2 (16)
Interrupts: 23396
Serial EEPROM: True
Pause/Unpause: 0x0e/0x0a
Extended Translation: Enabled
SCSI Bus Reset: Disabled
Ultra SCSI: Disabled

You may need to create the extra /dev/ entries if they are not there
already (major = 11):

[laddie]:/proc>ls -l /dev/scd*
brw-rw-r-- 1 root disk 11, 0 Jul 18 1994 /dev/scd0
brw-rw-r-- 1 root disk 11, 1 Jul 18 1994 /dev/scd1
brw-rw-r-- 1 root disk 11, 2 Nov 19 02:58 /dev/scd2
brw-rw-r-- 1 root disk 11, 3 Nov 19 02:58 /dev/scd3
brw-rw-r-- 1 root disk 11, 4 Nov 19 02:58 /dev/scd4
brw-rw-r-- 1 root disk 11, 5 Nov 19 02:58 /dev/scd5
brw-rw-r-- 1 root disk 11, 6 Nov 19 02:58 /dev/scd6

convenient /etc/fstab entries for the above devices:

/dev/scd0 /multi/cd0 iso9660 user,noauto,ro,exec,suid
/dev/scd1 /multi/cd1 iso9660 user,noauto,ro,exec,suid
/dev/scd2 /multi/cd2 iso9660 user,noauto,ro,exec,suid
/dev/scd3 /multi/cd3 iso9660 user,noauto,ro,exec,suid
/dev/scd4 /multi/cd4 iso9660 user,noauto,ro,exec,suid
/dev/scd5 /multi/cd5 iso9660 user,noauto,ro,exec,suid
/dev/scd6 /multi/cd6 iso9660 user,noauto,ro,exec,suid

ordinary user can thus mount similar to a floppy mount:

[laddie]:/> mount /multi/cd0
[laddie]:/> mount /multi/cd1
[laddie]:/> mount /multi/cd2
[laddie]:/> mount /multi/cd3
[laddie]:/> mount /multi/cd4
[laddie]:/> mount /multi/cd5
[laddie]:/> mount /multi/cd6

[laddie]:/> df /dev/scd*
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/scd0 681452 681452 0 100% /multi/cd0
/dev/scd1 679276 679276 0 100% /multi/cd1
/dev/scd2 677578 677578 0 100% /multi/cd2
/dev/scd3 673110 673110 0 100% /multi/cd3
/dev/scd4 472902 472902 0 100% /multi/cd4
/dev/scd5 576134 576134 0 100% /multi/cd5
/dev/scd6 659610 659610 0 100% /multi/cd6

[laddie]:/>ls /multi/cd0
./ catalog.txt ls_lr slakinst/
../ docs/ order.frm slaktest/
HOWTO/ dos_util/ readme.1st slakware/
SlackELF/ help/ redhat.rme usr/
Slackware_Source/ lininst/ rr_moved/

[laddie]:/>ls /multi/cd1
./ LDP/ X11/ libs/
../ MIRRORS apps/ ls_lr_2
ALPHA/ MIRRORS.html devel/ search/
INDEX NEW distributions/ system/
INDEX.html NEW.html games/ utils/
INDEX.short.html README how.to.submit welcome.html

etc...

There will be delays to offload/onload from the trays, and it is
best if only a single user accesses the platters (a lot of thrashing
will occur if several different processes are attempting to access
concurently on more than 1 platter :-)

Cheers,

--
James S. MacKinnon           Office: P-139 Avahd-Bhatia Physics Lab
Department of Physics        Voice : (403) 492-8226
University of Alberta        email : Jim.MacKinnon@Phys.UAlberta.CA
Edmonton, Canada T6G 2N5
        WWW:   http://www.phys.ualberta.ca/~jmack/jmack.html