block/swim: Select appropriate drive on device open

The driver supports internal and external FDD units so the floppy_open
function must not hard-code the drive location.

Cc: Laurent Vivier <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: [email protected] # v4.14+
Tested-by: Stan Johnson <[email protected]>
Signed-off-by: Finn Thain <[email protected]>
Acked-by: Laurent Vivier <[email protected]>
Signed-off-by: Jens Axboe <[email protected]>
This commit is contained in:
Finn Thain 2018-04-11 20:50:14 -04:00 • committed by Jens Axboe
commit b3906535cc

View file

@ -648,7 +648,7 @@ static int floppy_open(struct block_device *bdev, fmode_t mode)
swim_write(base, setup, S_IBM_DRIVE | S_FCLK_DIV2);
udelay(10);
swim_drive(base, INTERNAL_DRIVE);
swim_drive(base, fs->location);
swim_motor(base, ON);
swim_action(base, SETMFM);
if (fs->ejected)