Procházet zdrojové kódy

add simple prom emulator to 2.6.2{7,8} as well

SVN-Revision: 13653
Gabor Juhos před 17 roky
rodič
revize
f4ff833db4

+ 10 - 0
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.
+ 

+ 10 - 0
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.
+ 

+ 50 - 0
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

+ 50 - 0
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