Commit 31a0865b authored by Alex Henrie's avatar Alex Henrie Committed by Martin K. Petersen
Browse files

scsi: ppa: Fix accidentally reversed conditions for 16-bit and 32-bit EPP



The conditions were correct in the ppa_in() function but not in the
ppa_out() function.

Fixes: 68a4f84a ("scsi: ppa: Add a module parameter for the transfer mode")
Signed-off-by: default avatarAlex Henrie <alexhenrie24@gmail.com>
Link: https://lore.kernel.org/r/20230831051945.515476-1-alexhenrie24@gmail.com


Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 0b0747d5
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -307,9 +307,9 @@ static int ppa_out(ppa_struct *dev, char *buffer, int len)
	case PPA_EPP_8:
		epp_reset(ppb);
		w_ctr(ppb, 0x4);
		if (dev->mode == PPA_EPP_32 && !(((long) buffer | len) & 0x01))
		if (dev->mode == PPA_EPP_32 && !(((long) buffer | len) & 0x03))
			outsl(ppb + 4, buffer, len >> 2);
		else if (dev->mode == PPA_EPP_16 && !(((long) buffer | len) & 0x03))
		else if (dev->mode == PPA_EPP_16 && !(((long) buffer | len) & 0x01))
			outsw(ppb + 4, buffer, len >> 1);
		else
			outsb(ppb + 4, buffer, len);