diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2008-12-14 20:17:20 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2008-12-14 20:17:20 +0000 |
commit | ee6f794099041720241b6d70c73466152d98504e (patch) | |
tree | 2058a75b6baa736e4b7a2ecc11836cf9540b6f97 /target | |
parent | 8e23f40be7b6f479e64da7c1c111b1249dfa427c (diff) | |
download | upstream-ee6f794099041720241b6d70c73466152d98504e.tar.gz upstream-ee6f794099041720241b6d70c73466152d98504e.tar.bz2 upstream-ee6f794099041720241b6d70c73466152d98504e.zip |
[kernel] add simple prom emulator for MIPS
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@13632 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/generic-2.6/patches-2.6.26/021-mips_simple_prom_emulator.patch | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/target/linux/generic-2.6/patches-2.6.26/021-mips_simple_prom_emulator.patch b/target/linux/generic-2.6/patches-2.6.26/021-mips_simple_prom_emulator.patch new file mode 100644 index 0000000000..2c0ffb8ae3 --- /dev/null +++ b/target/linux/generic-2.6/patches-2.6.26/021-mips_simple_prom_emulator.patch @@ -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 |