I just purchased an IOMega multidisk with the IOMega PC1616 SCSI
controller. They work just fine under DOS.
The first problem is that the PC1616 can be configured as I/O port
0x230 or 0x330. The Linux aha_152x driver isn't set up for either of
When I booted Linux, it identified the PC1616 as an Adaptec 1522, at
the correct IRQ, but at the incorrect I/O port. After the message
scsi: 1 host(s)
I got a bunch of SCSI debugging spewage, and the bootup stopped (but
the system didn't halt, since I could still reboot). This happened
whether I had the SCSI card's BIOS enabled or disabled.
Next thing I did was to go fiddling with the driver source code to
support the PC1616's weird I/O addresses. Diving in with a machete, I
modified ~linux/drivers/scsi/Makefile so that the line beginning with
AHA_152X included -D_PORTBASE=0x330 instead of -D_PORTBASE=0x340.
Then I modified ~linux/drivers/scsi/aha_152x.c, changing the 0x340 to
0x330, in the declaration of the array that specifies the possible I/O
addresses. Those are the only instances I could find in that
directory by grepping for 0x340.
After a kernel recompile, it autedetected the card at the correct IRQ
and I/O Port, but still the SCSI debugging spewage after the line
scsi: 1 host(s)
This also happened regardless of whether the BIOS was enabled, or
whether there was a disk in the drive.
Has anyone else had this problem, or have any idea of how to solve it?
I'm going to send email to IOMega to confirm that the PC1616 is trying
to be Adaptec-1522 compatible.
The older controller that they shipped with the Multidisk 150 DID work
with my system, (but it didn't autodetect).