diff --git a/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c b/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
index c4516fbc3e8ec3bcd2a65ee7664a5bb23d8baf56..95760ae44afeb04fec08661e0eac62a755752736 100644
--- a/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
+++ b/target/linux/brcm63xx/files/arch/mips/bcm63xx/setup.c
@@ -119,4 +119,4 @@ int __init bcm63xx_register_devices(void)
 	return board_register_devices();
 }
 
-device_initcall(bcm63xx_register_devices);
+arch_initcall(bcm63xx_register_devices);