Hi Niklas,
On 19/02/2025 16:02, Niklas Cassel wrote:
On Wed, Feb 19, 2025 at 04:48:56PM +0100, Niklas Cassel wrote:
Perhaps your could try with something like:
(snip)
+ if (0) {
tf.protocol = ATAPI_PROT_DMA;
tf.feature |= ATAPI_PKT_DMA;
I tried the "little hammer". It works!
[ 4.274698] ata4.00: ATAPI: IOMEGA ZIP 100 ATAPI, 12.A, max
PIO3, CDB intr
[ 4.274825] ata4.00: applying bridge limits
[ 4.274880] ata4.00: direction 3 dmadir 0
[ 4.275166] ata4.00: direction 2 dmadir 0
[ 4.281768] ata4.00: configured for PIO3
[ 4.281874] ata4.00: About to do TEST UNIT READY
(snip cdb)
[ 4.282715] ata4.00: direction 3 dmadir 0
[ 4.283285] ata4.00: TEST UNIT READY err_mask=1 sense_key=6
(snip cdb)
[ 4.284181] ata4.00: direction 2 dmadir 0
[ 4.285265] ata4.00: REQUEST SENSE err_mask=0 sense_key=6
[ 4.285319] ata4.00: About to do TEST UNIT READY
(snip cdb)
[ 4.286214] ata4.00: direction 3 dmadir 0
[ 4.286841] ata4.00: TEST UNIT READY err_mask=1 sense_key=2
[ 4.291043] scsi 3:0:0:0: Direct-Access IOMEGA ZIP 100
12.A PQ: 0 ANSI: 5
(snip cdb)
[ 4.329969] ata4.00: direction 2 dmadir 0
And smartctl can talk to it:
root@localhost:~# smartctl -i /dev/sdb
smartctl 7.3 2022-02-28 r5338 [i686-linux-6.10.11] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Vendor: IOMEGA
Product: ZIP 100
Revision: 12.A
Compliance: SPC-3
Device type: disk
Local Time is: Wed Feb 19 19:47:42 2025 UTC
SMART support is: Unavailable - device lacks SMART capability.
I've been able to get a good read of a disk with ddrescue:
GNU ddrescue 1.27
Press Ctrl-C to interrupt
ipos: 100597 kB, non-trimmed: 0 B, current rate: 720 kB/s
opos: 100597 kB, non-scraped: 0 B, average rate: 1070 kB/s
non-tried: 0 B, bad-sector: 0 B, error rate: 0 B/s
rescued: 100663 kB, bad areas: 0, run time: 1m 33s
pct rescued: 100.00%, read errors: 0, remaining time: n/a
time since last successful read: n/a
Copying non-tried blocks... Pass 1 (forwards)
Finished
I'm pretty chuffed with the data rate, 1MB/sec is far more than the
externals manage.
I guess the question now is, how to fix this properly?
Thanks,
--
Phil.
philpem@xxxxxxxxxxxxx
https://www.philpem.me.uk/