diff --git a/MAINTAINERS b/MAINTAINERS
index 2c2fce72e694f6ccc2000974e9cba4f6fcafbf48..e1ff69fd5bb79036c5d983823f57a2bf665f9fef 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1183,7 +1183,7 @@ F:	Documentation/gpu/afbc.rst
 ARM MFM AND FLOPPY DRIVERS
 M:	Ian Molton <spyro@f2s.com>
 S:	Maintained
-F:	arch/arm/lib/floppydma.S
+F:	arch/arm/mach-rpc/floppydma.S
 F:	arch/arm/include/asm/floppy.h
 
 ARM PMU PROFILING AND DEBUGGING
diff --git a/arch/arm/lib/Makefile b/arch/arm/lib/Makefile
index 0bff0176db2c4f1bb31dd9cdaa3b0eceaa26dcd9..b25c54585048ccc07026ded3c520d0c994832b7b 100644
--- a/arch/arm/lib/Makefile
+++ b/arch/arm/lib/Makefile
@@ -31,7 +31,6 @@ else
 endif
 
 ifeq ($(CONFIG_ARCH_RPC),y)
-  lib-y				+= ecard.o io-acorn.o floppydma.o
   AFLAGS_delay-loop.o		+= -march=armv4
 endif
 
diff --git a/arch/arm/mach-rpc/Makefile b/arch/arm/mach-rpc/Makefile
index 2ebc6875aeb8f69dc4e27fd1bc3f636e8b2125f2..ab964a66ea2aaa0801b4274cb46cee98223f497e 100644
--- a/arch/arm/mach-rpc/Makefile
+++ b/arch/arm/mach-rpc/Makefile
@@ -4,4 +4,5 @@
 
 # Object file lists.
 
-obj-y			:= dma.o ecard.o fiq.o irq.o riscpc.o time.o
+obj-y	:=dma.o ecard.o ecard-loader.o fiq.o floppydma.o io-acorn.o irq.o \
+	  riscpc.o time.o
diff --git a/arch/arm/lib/ecard.S b/arch/arm/mach-rpc/ecard-loader.S
similarity index 100%
rename from arch/arm/lib/ecard.S
rename to arch/arm/mach-rpc/ecard-loader.S
diff --git a/arch/arm/lib/floppydma.S b/arch/arm/mach-rpc/floppydma.S
similarity index 100%
rename from arch/arm/lib/floppydma.S
rename to arch/arm/mach-rpc/floppydma.S
diff --git a/arch/arm/lib/io-acorn.S b/arch/arm/mach-rpc/io-acorn.S
similarity index 100%
rename from arch/arm/lib/io-acorn.S
rename to arch/arm/mach-rpc/io-acorn.S