mirror of
https://github.com/openwrt/openwrt.git
synced 2025-02-01 08:48:08 +00:00
refresh patches
SVN-Revision: 17268
This commit is contained in:
parent
b1ae2c2c20
commit
e59c6a8af2
@ -8,7 +8,7 @@
|
|||||||
select PCI_GT64XXX_PCI0
|
select PCI_GT64XXX_PCI0
|
||||||
select MIPS_MSC
|
select MIPS_MSC
|
||||||
select SWAP_IO_SPACE
|
select SWAP_IO_SPACE
|
||||||
@@ -1461,13 +1460,6 @@ config IP22_CPU_SCACHE
|
@@ -1472,13 +1471,6 @@ config IP22_CPU_SCACHE
|
||||||
bool
|
bool
|
||||||
select BOARD_SCACHE
|
select BOARD_SCACHE
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
--- a/arch/mips/include/asm/r4kcache.h 2008-12-03 14:06:48.000000000 +0100
|
--- a/arch/mips/include/asm/r4kcache.h
|
||||||
+++ b/arch/mips/include/asm/r4kcache.h 2008-12-05 08:16:03.000000000 +0100
|
+++ b/arch/mips/include/asm/r4kcache.h
|
||||||
@@ -20,10 +20,25 @@
|
@@ -20,10 +20,25 @@
|
||||||
#ifdef CONFIG_BCM47XX
|
#ifdef CONFIG_BCM47XX
|
||||||
#include <asm/paccess.h>
|
#include <asm/paccess.h>
|
||||||
@ -29,9 +29,9 @@
|
|||||||
#else
|
#else
|
||||||
#define BCM4710_DUMMY_RREG()
|
#define BCM4710_DUMMY_RREG()
|
||||||
|
|
||||||
--- a/arch/mips/mm/tlbex.c 2008-12-03 17:39:32.000000000 +0100
|
--- a/arch/mips/mm/tlbex.c
|
||||||
+++ b/arch/mips/mm/tlbex.c 2008-12-03 17:11:43.000000000 +0100
|
+++ b/arch/mips/mm/tlbex.c
|
||||||
@@ -547,6 +547,9 @@
|
@@ -544,6 +544,9 @@ build_get_pgde32(u32 **p, unsigned int t
|
||||||
#endif
|
#endif
|
||||||
uasm_i_addu(p, ptr, tmp, ptr);
|
uasm_i_addu(p, ptr, tmp, ptr);
|
||||||
#else
|
#else
|
||||||
@ -41,7 +41,7 @@
|
|||||||
UASM_i_LA_mostly(p, ptr, pgdc);
|
UASM_i_LA_mostly(p, ptr, pgdc);
|
||||||
#endif
|
#endif
|
||||||
uasm_i_mfc0(p, tmp, C0_BADVADDR); /* get faulting address */
|
uasm_i_mfc0(p, tmp, C0_BADVADDR); /* get faulting address */
|
||||||
@@ -677,12 +680,12 @@
|
@@ -674,12 +677,12 @@ static void __cpuinit build_r4000_tlb_re
|
||||||
/* No need for uasm_i_nop */
|
/* No need for uasm_i_nop */
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -57,7 +57,7 @@
|
|||||||
build_get_pgde32(&p, K0, K1); /* get pgd in K1 */
|
build_get_pgde32(&p, K0, K1); /* get pgd in K1 */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -690,6 +693,9 @@
|
@@ -687,6 +690,9 @@ static void __cpuinit build_r4000_tlb_re
|
||||||
build_update_entries(&p, K0, K1);
|
build_update_entries(&p, K0, K1);
|
||||||
build_tlb_write_entry(&p, &l, &r, tlb_random);
|
build_tlb_write_entry(&p, &l, &r, tlb_random);
|
||||||
uasm_l_leave(&l, p);
|
uasm_l_leave(&l, p);
|
||||||
@ -67,7 +67,7 @@
|
|||||||
uasm_i_eret(&p); /* return from trap */
|
uasm_i_eret(&p); /* return from trap */
|
||||||
|
|
||||||
#ifdef CONFIG_64BIT
|
#ifdef CONFIG_64BIT
|
||||||
@@ -1087,12 +1093,12 @@
|
@@ -1084,12 +1090,12 @@ build_r4000_tlbchange_handler_head(u32 *
|
||||||
struct uasm_reloc **r, unsigned int pte,
|
struct uasm_reloc **r, unsigned int pte,
|
||||||
unsigned int ptr)
|
unsigned int ptr)
|
||||||
{
|
{
|
||||||
@ -83,7 +83,7 @@
|
|||||||
build_get_pgde32(p, pte, ptr); /* get pgd in ptr */
|
build_get_pgde32(p, pte, ptr); /* get pgd in ptr */
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -1120,6 +1126,9 @@
|
@@ -1117,6 +1123,9 @@ build_r4000_tlbchange_handler_tail(u32 *
|
||||||
build_update_entries(p, tmp, ptr);
|
build_update_entries(p, tmp, ptr);
|
||||||
build_tlb_write_entry(p, l, r, tlb_indexed);
|
build_tlb_write_entry(p, l, r, tlb_indexed);
|
||||||
uasm_l_leave(l, *p);
|
uasm_l_leave(l, *p);
|
||||||
@ -93,11 +93,11 @@
|
|||||||
uasm_i_eret(p); /* return from trap */
|
uasm_i_eret(p); /* return from trap */
|
||||||
|
|
||||||
#ifdef CONFIG_64BIT
|
#ifdef CONFIG_64BIT
|
||||||
--- a/arch/mips/kernel/genex.S 2008-11-16 15:33:32.000000000 +0100
|
--- a/arch/mips/kernel/genex.S
|
||||||
+++ b/arch/mips/kernel/genex.S 2008-12-05 07:14:52.000000000 +0100
|
+++ b/arch/mips/kernel/genex.S
|
||||||
@@ -21,6 +21,19 @@
|
@@ -22,6 +22,19 @@
|
||||||
#include <asm/war.h>
|
|
||||||
#include <asm/page.h>
|
#include <asm/page.h>
|
||||||
|
#include <asm/thread_info.h>
|
||||||
|
|
||||||
+#ifdef CONFIG_BCM47XX
|
+#ifdef CONFIG_BCM47XX
|
||||||
+# ifdef eret
|
+# ifdef eret
|
||||||
@ -115,7 +115,7 @@
|
|||||||
#define PANIC_PIC(msg) \
|
#define PANIC_PIC(msg) \
|
||||||
.set push; \
|
.set push; \
|
||||||
.set reorder; \
|
.set reorder; \
|
||||||
@@ -53,7 +66,6 @@
|
@@ -54,7 +67,6 @@ NESTED(except_vec3_generic, 0, sp)
|
||||||
.set noat
|
.set noat
|
||||||
#ifdef CONFIG_BCM47XX
|
#ifdef CONFIG_BCM47XX
|
||||||
nop
|
nop
|
||||||
@ -123,7 +123,7 @@
|
|||||||
#endif
|
#endif
|
||||||
#if R5432_CP0_INTERRUPT_WAR
|
#if R5432_CP0_INTERRUPT_WAR
|
||||||
mfc0 k0, CP0_INDEX
|
mfc0 k0, CP0_INDEX
|
||||||
@@ -78,6 +90,9 @@
|
@@ -79,6 +91,9 @@ NESTED(except_vec3_r4000, 0, sp)
|
||||||
.set push
|
.set push
|
||||||
.set mips3
|
.set mips3
|
||||||
.set noat
|
.set noat
|
||||||
|
@ -1,8 +1,6 @@
|
|||||||
Index: linux-2.6.30.4/arch/mips/Makefile
|
--- a/arch/mips/Makefile
|
||||||
===================================================================
|
+++ b/arch/mips/Makefile
|
||||||
--- linux-2.6.30.4.orig/arch/mips/Makefile 2009-08-06 16:02:25.000000000 +0200
|
@@ -83,7 +83,7 @@ all-$(CONFIG_BOOT_ELF64) := $(vmlinux-64
|
||||||
+++ linux-2.6.30.4/arch/mips/Makefile 2009-08-06 16:02:37.000000000 +0200
|
|
||||||
@@ -83,7 +83,7 @@
|
|
||||||
cflags-y += -G 0 -mno-abicalls -fno-pic -pipe
|
cflags-y += -G 0 -mno-abicalls -fno-pic -pipe
|
||||||
cflags-y += -msoft-float
|
cflags-y += -msoft-float
|
||||||
LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
|
LDFLAGS_vmlinux += -G 0 -static -n -nostdlib
|
||||||
@ -11,11 +9,9 @@ Index: linux-2.6.30.4/arch/mips/Makefile
|
|||||||
|
|
||||||
cflags-y += -ffreestanding
|
cflags-y += -ffreestanding
|
||||||
|
|
||||||
Index: linux-2.6.30.4/arch/mips/include/asm/module.h
|
--- a/arch/mips/include/asm/module.h
|
||||||
===================================================================
|
+++ b/arch/mips/include/asm/module.h
|
||||||
--- linux-2.6.30.4.orig/arch/mips/include/asm/module.h 2009-08-06 16:02:25.000000000 +0200
|
@@ -9,6 +9,11 @@ struct mod_arch_specific {
|
||||||
+++ linux-2.6.30.4/arch/mips/include/asm/module.h 2009-08-06 16:02:37.000000000 +0200
|
|
||||||
@@ -9,6 +9,11 @@
|
|
||||||
struct list_head dbe_list;
|
struct list_head dbe_list;
|
||||||
const struct exception_table_entry *dbe_start;
|
const struct exception_table_entry *dbe_start;
|
||||||
const struct exception_table_entry *dbe_end;
|
const struct exception_table_entry *dbe_end;
|
||||||
@ -27,11 +23,9 @@ Index: linux-2.6.30.4/arch/mips/include/asm/module.h
|
|||||||
};
|
};
|
||||||
|
|
||||||
typedef uint8_t Elf64_Byte; /* Type for a 8-bit quantity. */
|
typedef uint8_t Elf64_Byte; /* Type for a 8-bit quantity. */
|
||||||
Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
--- a/arch/mips/kernel/module.c
|
||||||
===================================================================
|
+++ b/arch/mips/kernel/module.c
|
||||||
--- linux-2.6.30.4.orig/arch/mips/kernel/module.c 2009-08-06 16:02:36.000000000 +0200
|
@@ -43,6 +43,116 @@ static struct mips_hi16 *mips_hi16_list;
|
||||||
+++ linux-2.6.30.4/arch/mips/kernel/module.c 2009-08-06 16:03:15.000000000 +0200
|
|
||||||
@@ -43,6 +43,116 @@
|
|
||||||
static LIST_HEAD(dbe_list);
|
static LIST_HEAD(dbe_list);
|
||||||
static DEFINE_SPINLOCK(dbe_lock);
|
static DEFINE_SPINLOCK(dbe_lock);
|
||||||
|
|
||||||
@ -148,7 +142,7 @@ Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
|||||||
void *module_alloc(unsigned long size)
|
void *module_alloc(unsigned long size)
|
||||||
{
|
{
|
||||||
#ifdef MODULE_START
|
#ifdef MODULE_START
|
||||||
@@ -58,16 +168,45 @@
|
@@ -58,16 +168,45 @@ void *module_alloc(unsigned long size)
|
||||||
|
|
||||||
return __vmalloc_area(area, GFP_KERNEL, PAGE_KERNEL);
|
return __vmalloc_area(area, GFP_KERNEL, PAGE_KERNEL);
|
||||||
#else
|
#else
|
||||||
@ -196,7 +190,7 @@ Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
|||||||
/* FIXME: If module_region == mod->init_region, trim exception
|
/* FIXME: If module_region == mod->init_region, trim exception
|
||||||
table entries. */
|
table entries. */
|
||||||
}
|
}
|
||||||
@@ -75,6 +214,24 @@
|
@@ -75,6 +214,24 @@ void module_free(struct module *mod, voi
|
||||||
int module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs,
|
int module_frob_arch_sections(Elf_Ehdr *hdr, Elf_Shdr *sechdrs,
|
||||||
char *secstrings, struct module *mod)
|
char *secstrings, struct module *mod)
|
||||||
{
|
{
|
||||||
@ -221,7 +215,7 @@ Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -97,27 +254,41 @@
|
@@ -97,27 +254,41 @@ static int apply_r_mips_32_rela(struct m
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -277,7 +271,7 @@ Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
|||||||
{
|
{
|
||||||
if (v % 4) {
|
if (v % 4) {
|
||||||
printk(KERN_ERR "module %s: dangerous relocation\n", me->name);
|
printk(KERN_ERR "module %s: dangerous relocation\n", me->name);
|
||||||
@@ -125,17 +296,31 @@
|
@@ -125,17 +296,31 @@ static int apply_r_mips_26_rela(struct m
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((v & 0xf0000000) != (((unsigned long)location + 4) & 0xf0000000)) {
|
if ((v & 0xf0000000) != (((unsigned long)location + 4) & 0xf0000000)) {
|
||||||
@ -312,7 +306,7 @@ Index: linux-2.6.30.4/arch/mips/kernel/module.c
|
|||||||
static int apply_r_mips_hi16_rel(struct module *me, u32 *location, Elf_Addr v)
|
static int apply_r_mips_hi16_rel(struct module *me, u32 *location, Elf_Addr v)
|
||||||
{
|
{
|
||||||
struct mips_hi16 *n;
|
struct mips_hi16 *n;
|
||||||
@@ -400,11 +585,23 @@
|
@@ -400,11 +585,23 @@ int module_finalize(const Elf_Ehdr *hdr,
|
||||||
list_add(&me->arch.dbe_list, &dbe_list);
|
list_add(&me->arch.dbe_list, &dbe_list);
|
||||||
spin_unlock_irq(&dbe_lock);
|
spin_unlock_irq(&dbe_lock);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user