Rebased on for-5.8/drivers branch. The following changes since commit 92decf118f1da4c866515f80387f9cf4d48611d6: nvme: define constants for identification values (2020-05-09 16:18:36 -0600) are available in the Git repository at: https://github.com/evdenis/linux-floppy tags/floppy-for-5.8 for you to fetch changes up to 0836275df4db20daf040fff5d9a1da89c4c08a85: floppy: suppress UBSAN warning in setup_rw_floppy() (2020-05-12 19:34:57 +0300) ---------------------------------------------------------------- Floppy patches for 5.8 Cleanups: - symbolic register names for x86,sparc64,sparc32,powerpc,parisc,m68k - split of local/global variables for drive,fdc - UBSAN warning suppress in setup_rw_floppy() Changes were compile tested on arm, sparc64, powerpc, m68k. Many patches introduce no binary changes by using defines instead of magic numbers. The patches were also tested with syzkaller and simple write/read/format tests on real hardware. Signed-off-by: Denis Efremov <efremov@xxxxxxxxx> ---------------------------------------------------------------- Denis Efremov (4): floppy: use print_hex_dump() in setup_DMA() floppy: add FD_AUTODETECT_SIZE define for struct floppy_drive_params floppy: add defines for sizes of cmd & reply buffers of floppy_raw_cmd floppy: suppress UBSAN warning in setup_rw_floppy() Willy Tarreau (27): floppy: split the base port from the register in I/O accesses floppy: add references to 82077's extra registers floppy: use symbolic register names in the m68k port floppy: use symbolic register names in the parisc port floppy: use symbolic register names in the powerpc port floppy: use symbolic register names in the sparc32 port floppy: use symbolic register names in the sparc64 port floppy: use symbolic register names in the x86 port floppy: cleanup: make twaddle() not rely on current_{fdc,drive} anymore floppy: cleanup: make reset_fdc_info() not rely on current_fdc anymore floppy: cleanup: make show_floppy() not rely on current_fdc anymore floppy: cleanup: make wait_til_ready() not rely on current_fdc anymore floppy: cleanup: make output_byte() not rely on current_fdc anymore floppy: cleanup: make result() not rely on current_fdc anymore floppy: cleanup: make need_more_output() not rely on current_fdc anymore floppy: cleanup: make perpendicular_mode() not rely on current_fdc anymore floppy: cleanup: make fdc_configure() not rely on current_fdc anymore floppy: cleanup: make fdc_specify() not rely on current_{fdc,drive} anymore floppy: cleanup: make check_wp() not rely on current_{fdc,drive} anymore floppy: cleanup: make next_valid_format() not rely on current_drive anymore floppy: cleanup: make get_fdc_version() not rely on current_fdc anymore floppy: cleanup: do not iterate on current_fdc in DMA grab/release functions floppy: cleanup: add a few comments about expectations in certain functions floppy: cleanup: do not iterate on current_fdc in do_floppy_init() floppy: make sure to reset all FDCs upon resume() floppy: cleanup: get rid of current_reqD in favor of current_drive floppy: cleanup: make set_fdc() always set current_drive and current_fd arch/alpha/include/asm/floppy.h | 4 +- arch/arm/include/asm/floppy.h | 8 +- arch/m68k/include/asm/floppy.h | 27 ++++--- arch/mips/include/asm/mach-generic/floppy.h | 8 +- arch/mips/include/asm/mach-jazz/floppy.h | 8 +- arch/parisc/include/asm/floppy.h | 19 ++--- arch/powerpc/include/asm/floppy.h | 19 ++--- arch/sparc/include/asm/floppy_32.h | 50 ++++++------ arch/sparc/include/asm/floppy_64.h | 59 +++++++------- arch/x86/include/asm/floppy.h | 19 ++--- drivers/block/floppy.c | 456 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------------------------------------------- include/uapi/linux/fd.h | 26 +++++- include/uapi/linux/fdreg.h | 16 +++- 13 files changed, 384 insertions(+), 335 deletions(-)