summaryrefslogtreecommitdiff
path: root/drivers/block/floppy.c
diff options
context:
space:
mode:
authorWilly Tarreau <w@1wt.eu>2020-03-31 12:40:48 +0300
committerDenis Efremov <efremov@linux.com>2020-05-12 19:34:55 +0300
commitd5da6fa2b892fff23ffd1cb8a04bf618b6072807 (patch)
treec2d036075482c89fc18f19e407354184059ec5c3 /drivers/block/floppy.c
parent197c7ffdb8165854e9e2f11a699d2fcca5adbd5a (diff)
downloadlinux-d5da6fa2b892fff23ffd1cb8a04bf618b6072807.tar.xz
floppy: cleanup: make fdc_configure() not rely on current_fdc anymore
Now the fdc is passed in argument so that the function does not use current_fdc anymore. Link: https://lore.kernel.org/r/20200331094054.24441-18-w@1wt.eu Signed-off-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Denis Efremov <efremov@linux.com>
Diffstat (limited to 'drivers/block/floppy.c')
-rw-r--r--drivers/block/floppy.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/drivers/block/floppy.c b/drivers/block/floppy.c
index fcccbb4c143e..c1338c4bb941 100644
--- a/drivers/block/floppy.c
+++ b/drivers/block/floppy.c
@@ -1240,16 +1240,15 @@ static void perpendicular_mode(int fdc)
static int fifo_depth = 0xa;
static int no_fifo;
-static int fdc_configure(void)
+static int fdc_configure(int fdc)
{
/* Turn on FIFO */
- output_byte(current_fdc, FD_CONFIGURE);
- if (need_more_output(current_fdc) != MORE_OUTPUT)
+ output_byte(fdc, FD_CONFIGURE);
+ if (need_more_output(fdc) != MORE_OUTPUT)
return 0;
- output_byte(current_fdc, 0);
- output_byte(current_fdc, 0x10 | (no_fifo & 0x20) | (fifo_depth & 0xf));
- output_byte(current_fdc, 0); /* pre-compensation from track
- 0 upwards */
+ output_byte(fdc, 0);
+ output_byte(fdc, 0x10 | (no_fifo & 0x20) | (fifo_depth & 0xf));
+ output_byte(fdc, 0); /* pre-compensation from track 0 upwards */
return 1;
}
@@ -1288,7 +1287,7 @@ static void fdc_specify(void)
if (fdc_state[current_fdc].need_configure &&
fdc_state[current_fdc].version >= FDC_82072A) {
- fdc_configure();
+ fdc_configure(current_fdc);
fdc_state[current_fdc].need_configure = 0;
}
@@ -4318,7 +4317,7 @@ static char __init get_fdc_version(void)
return FDC_UNKNOWN;
}
- if (!fdc_configure()) {
+ if (!fdc_configure(current_fdc)) {
pr_info("FDC %d is an 82072\n", current_fdc);
return FDC_82072; /* 82072 doesn't know CONFIGURE */
}