HP C2502 SCSI card (NCR 53C400A based) not working
From: Ondrej Zary
Date: Sun Oct 31 2004 - 07:23:26 EST
Hello,
I have an old ISA SCSI card that came with HP ScanJet IIP scanner. It's
HP C2502 card based on NCR 53C400A chip. I was unable to get it working
with g_NCR5380 driver so I tried loading the official MINI400I.SYS
driver in DOSemu. I was surprised that the values sent to the ports are
not the same as in the g_NCR5380 driver.
The g_NCR5380 driver uses these "magic outbs" to configure the card
(this sequence disables the card):
outb(0x59, 0x779);
outb(0xb9, 0x379);
outb(0xc5, 0x379);
outb(0xae, 0x379);
outb(0xa6, 0x379);
outb(0x00, 0x379);
This is the output from DOSemu:
779 < f
379 < 22
379 < f0
379 < 20
379 < 80
379 < 00
The magic numbers are different - so I have a card that is not supported
by the driver. I've changed the numbers in the driver to match my card
but I'm still unable to get it working.
The g_NCR5380 driver uses this to check if the card is present at a
particular base address:
outb(0xc0, ports[i] + 9);
if (inb(ports[i] + 9) != 0x80)
continue;
The MINI400I.SYS uses something different:
(this is failed presence test at base address 0x280)
28e < 25
28f < a5
28f > ff
(this looks like a successful test at base address 0x350)
35e < 25
35f < a5
35f > a5
35f < 5a
35f > 5a
35e < 0
35f < 0
359 < 80
359 < 10
351 < 0
352 < 0
353 < 0
354 < 0
357 > ff
359 < 80
359 < 10
351 < 0
352 < 0
353 < 0
354 < 0
357 > ff
351 < 80
351 < 0
357 > ff
According to this, I think that my card has the 53C400A chip registers
mapped to different addresses (offsets) but I'm unable to determine what
the mapping is. I was also unable to find the 53C400A datasheet which
might help a bit.
--
Ondrej Zary
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/