From eef77801b56b098cd7e1daf8a03854dd203a051c Mon Sep 17 00:00:00 2001 From: Ondrej Zary Date: Fri, 6 Feb 2015 23:11:57 +0100 Subject: [PATCH] aha1542: remove loop from aha1542_outb The loop in aha1542_outb with double-check is no longer needed, remove it. Signed-off-by: Ondrej Zary Reviewed-by: Christoph Hellwig Signed-off-by: James Bottomley --- drivers/scsi/aha1542.c | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/drivers/scsi/aha1542.c b/drivers/scsi/aha1542.c index af821f340a85..ec432763a29a 100644 --- a/drivers/scsi/aha1542.c +++ b/drivers/scsi/aha1542.c @@ -91,14 +91,11 @@ static inline bool wait_mask(u16 port, u8 mask, u8 allof, u8 noneof, int timeout static int aha1542_outb(unsigned int base, u8 val) { - while (1) { - if (!wait_mask(STATUS(base), CDF, 0, CDF, 0)) - return 1; - if (inb(STATUS(base)) & CDF) - continue; - outb(val, DATA(base)); - return 0; - } + if (!wait_mask(STATUS(base), CDF, 0, CDF, 0)) + return 1; + outb(val, DATA(base)); + + return 0; } static int aha1542_out(unsigned int base, u8 *buf, int len)