[kernel] add simple prom emulator for MIPS
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13632 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
8e23f40be7
commit
ee6f794099
|
@ -0,0 +1,50 @@
|
|||
--- a/arch/mips/Kconfig
|
||||
+++ b/arch/mips/Kconfig
|
||||
@@ -860,6 +860,9 @@ config SYNC_R4K
|
||||
|
||||
config MIPS_MACHINE
|
||||
def_bool n
|
||||
+
|
||||
+config PROM_EMU
|
||||
+ def_bool n
|
||||
|
||||
config NO_IOPORT
|
||||
def_bool n
|
||||
--- a/arch/mips/kernel/head.S
|
||||
+++ b/arch/mips/kernel/head.S
|
||||
@@ -142,6 +142,15 @@ FEXPORT(__kernel_entry)
|
||||
j kernel_entry
|
||||
#endif
|
||||
|
||||
+#ifdef CONFIG_PROM_EMU
|
||||
+EXPORT(prom_emu_argv)
|
||||
+ .dw 0
|
||||
+ .dw prom_emu_cmdline
|
||||
+ .ascii "CMDLINE:"
|
||||
+EXPORT(prom_emu_cmdline)
|
||||
+ .fill 0x400
|
||||
+#endif
|
||||
+
|
||||
__REF
|
||||
|
||||
NESTED(kernel_entry, 16, sp) # kernel entry point
|
||||
@@ -182,6 +191,19 @@ NESTED(kernel_entry, 16, sp) # kernel
|
||||
LONG_S zero, (t0)
|
||||
bne t0, t1, 1b
|
||||
|
||||
+#ifdef CONFIG_PROM_EMU
|
||||
+ PTR_LA t0, prom_emu_cmdline
|
||||
+ LONG_L t1, 0(t0)
|
||||
+ beqz t1, 1f
|
||||
+
|
||||
+ li a0, 2
|
||||
+ PTR_LA a1, prom_emu_argv
|
||||
+ move a2, zero
|
||||
+ move a3, zero
|
||||
+
|
||||
+1:
|
||||
+#endif /* CONFIG_PROM_EMU */
|
||||
+
|
||||
LONG_S a0, fw_arg0 # firmware arguments
|
||||
LONG_S a1, fw_arg1
|
||||
LONG_S a2, fw_arg2
|
Loading…
Reference in New Issue