diff --git a/arch/mips/loongson64/init.c b/arch/mips/loongson64/init.c
index d5a1eddb820248ebed6ac3324c784d44536ab07a..76e0a9636a0edce77d6e35daf357c23961cddc2a 100644
--- a/arch/mips/loongson64/init.c
+++ b/arch/mips/loongson64/init.c
@@ -141,7 +141,7 @@ static int __init add_legacy_isa_io(struct fwnode_handle *fwnode, resource_size_
 		return -ENOMEM;
 
 	range->fwnode = fwnode;
-	range->size = size;
+	range->size = size = round_up(size, PAGE_SIZE);
 	range->hw_start = hw_start;
 	range->flags = LOGIC_PIO_CPU_MMIO;