diff options
author | Alex Henrie <alexhenrie24@gmail.com> | 2023-08-07 18:52:58 +0300 |
---|---|---|
committer | Martin K. Petersen <martin.petersen@oracle.com> | 2023-08-21 23:32:40 +0300 |
commit | 68a4f84a17c1d83daf8c07446ca32f7958f49c04 (patch) | |
tree | 233511448f06c254e1b49a83418ce62e3976b86d /drivers/scsi/ppa.h | |
parent | b68442ebda9c8aca1e1802c169354c8fb31686f1 (diff) | |
download | linux-68a4f84a17c1d83daf8c07446ca32f7958f49c04.tar.xz |
scsi: ppa: Add a module parameter for the transfer mode
I have an Iomega Z100P2 zip drive, but it does not work with my StarTech
PEX1P2 AX99100 PCIe parallel port, which evidently does not support 16-bit
or 32-bit EPP. Currently the only way to tell the PPA driver to use 8-bit
EPP is to write 'mode=3' to /proc/scsi/ppa/*, but the driver doesn't
actually distinguish between the three EPP modes and still tries to use
16-bit or 32-bit EPP. And even if writing to that file did make the driver
use 8-bit EPP, it still wouldn't do me any good because by the time that
file exists, the drive has already failed to initialize.
Add a new parameter /sys/module/ppa/mode to set the transfer mode before
initializing the drive. This parameter replaces the use of
CONFIG_SCSI_IZIP_EPP16 in the PPA driver.
At the same time, default to 8-bit EPP. 16-bit and 32-bit EPP are not
necessary for the drive to function, nor are they part of the IEEE 1284
standard, so the driver should not assume that they are available.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Link: https://lore.kernel.org/r/20230807155856.362864-2-alexhenrie24@gmail.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/ppa.h')
-rw-r--r-- | drivers/scsi/ppa.h | 4 |
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/scsi/ppa.h b/drivers/scsi/ppa.h index 6a1f8a2d70eb..098bcf7b9eb4 100644 --- a/drivers/scsi/ppa.h +++ b/drivers/scsi/ppa.h @@ -107,11 +107,7 @@ static char *PPA_MODE_STRING[] = "PS/2", "EPP 8 bit", "EPP 16 bit", -#ifdef CONFIG_SCSI_IZIP_EPP16 - "EPP 16 bit", -#else "EPP 32 bit", -#endif "Unknown"}; /* other options */ |