aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--target/linux/ar71xx/patches-2.6.27/301-enable_prom_emulator.patch10
-rw-r--r--target/linux/ar71xx/patches-2.6.28/301-enable_prom_emulator.patch10
-rw-r--r--target/linux/generic-2.6/patches-2.6.27/021-mips_simple_prom_emulator.patch50
-rw-r--r--target/linux/generic-2.6/patches-2.6.28/021-mips_simple_prom_emulator.patch50
4 files changed, 120 insertions, 0 deletions
diff --git a/target/linux/ar71xx/patches-2.6.27/301-enable_prom_emulator.patch b/target/linux/ar71xx/patches-2.6.27/301-enable_prom_emulator.patch
new file mode 100644
index 0000000000..5ed804666c
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.27/301-enable_prom_emulator.patch
@@ -0,0 +1,10 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -36,6 +36,7 @@ config ATHEROS_AR71XX
+ select SYS_SUPPORTS_BIG_ENDIAN
+ select SYS_HAS_EARLY_PRINTK
+ select MIPS_MACHINE
++ select PROM_EMU
+ help
+ Support for Atheros AR71xx based boards.
+
diff --git a/target/linux/ar71xx/patches-2.6.28/301-enable_prom_emulator.patch b/target/linux/ar71xx/patches-2.6.28/301-enable_prom_emulator.patch
new file mode 100644
index 0000000000..5ed804666c
--- /dev/null
+++ b/target/linux/ar71xx/patches-2.6.28/301-enable_prom_emulator.patch
@@ -0,0 +1,10 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -36,6 +36,7 @@ config ATHEROS_AR71XX
+ select SYS_SUPPORTS_BIG_ENDIAN
+ select SYS_HAS_EARLY_PRINTK
+ select MIPS_MACHINE
++ select PROM_EMU
+ help
+ Support for Atheros AR71xx based boards.
+
diff --git a/target/linux/generic-2.6/patches-2.6.27/021-mips_simple_prom_emulator.patch b/target/linux/generic-2.6/patches-2.6.27/021-mips_simple_prom_emulator.patch
new file mode 100644
index 0000000000..305e3fd8dd
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.27/021-mips_simple_prom_emulator.patch
@@ -0,0 +1,50 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -770,6 +770,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
+@@ -143,6 +143,15 @@ FEXPORT(__kernel_entry)
+ j kernel_entry
+ #endif
+
++#ifdef CONFIG_PROM_EMU
++EXPORT(prom_emu_argv)
++ .word 0
++ .word prom_emu_cmdline
++ .ascii "CMDLINE:"
++EXPORT(prom_emu_cmdline)
++ .fill 0x400
++#endif
++
+ __REF
+
+ NESTED(kernel_entry, 16, sp) # kernel entry point
+@@ -183,6 +192,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
diff --git a/target/linux/generic-2.6/patches-2.6.28/021-mips_simple_prom_emulator.patch b/target/linux/generic-2.6/patches-2.6.28/021-mips_simple_prom_emulator.patch
new file mode 100644
index 0000000000..f473b65509
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.28/021-mips_simple_prom_emulator.patch
@@ -0,0 +1,50 @@
+--- a/arch/mips/Kconfig
++++ b/arch/mips/Kconfig
+@@ -765,6 +765,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
+@@ -143,6 +143,15 @@ FEXPORT(__kernel_entry)
+ j kernel_entry
+ #endif
+
++#ifdef CONFIG_PROM_EMU
++EXPORT(prom_emu_argv)
++ .word 0
++ .word prom_emu_cmdline
++ .ascii "CMDLINE:"
++EXPORT(prom_emu_cmdline)
++ .fill 0x400
++#endif
++
+ __REF
+
+ NESTED(kernel_entry, 16, sp) # kernel entry point
+@@ -183,6 +192,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