Skip to content

Commit

Permalink
[MIPS] Fix loads of section missmatches
Browse files Browse the repository at this point in the history
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Ralf Baechle committed Mar 12, 2008
1 parent 1af0eea commit 234fcd1
Show file tree
Hide file tree
Showing 30 changed files with 171 additions and 180 deletions.
4 changes: 2 additions & 2 deletions arch/mips/kernel/cpu-bugs64.c
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ static inline void check_mult_sh(void)
panic(bug64hit, !R4000_WAR ? r4kwar : nowar);
}

static volatile int daddi_ov __initdata = 0;
static volatile int daddi_ov __cpuinitdata = 0;

asmlinkage void __init do_daddi_ov(struct pt_regs *regs)
{
Expand Down Expand Up @@ -239,7 +239,7 @@ static inline void check_daddi(void)
panic(bug64hit, !DADDI_WAR ? daddiwar : nowar);
}

int daddiu_bug __initdata = -1;
int daddiu_bug __cpuinitdata = -1;

static inline void check_daddiu(void)
{
Expand Down
10 changes: 5 additions & 5 deletions arch/mips/kernel/cpu-probe.c
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,7 @@ static inline void cpu_probe_legacy(struct cpuinfo_mips *c)
}
}

static char unknown_isa[] __initdata = KERN_ERR \
static char unknown_isa[] __cpuinitdata = KERN_ERR \
"Unsupported ISA type, c0.config0: %d.";

static inline unsigned int decode_config0(struct cpuinfo_mips *c)
Expand Down Expand Up @@ -656,7 +656,7 @@ static inline unsigned int decode_config3(struct cpuinfo_mips *c)
return config3 & MIPS_CONF_M;
}

static void __init decode_configs(struct cpuinfo_mips *c)
static void __cpuinit decode_configs(struct cpuinfo_mips *c)
{
/* MIPS32 or MIPS64 compliant CPU. */
c->options = MIPS_CPU_4KEX | MIPS_CPU_4K_CACHE | MIPS_CPU_COUNTER |
Expand Down Expand Up @@ -814,7 +814,7 @@ const char *__cpu_name[NR_CPUS];
/*
* Name a CPU
*/
static __init const char *cpu_to_name(struct cpuinfo_mips *c)
static __cpuinit const char *cpu_to_name(struct cpuinfo_mips *c)
{
const char *name = NULL;

Expand Down Expand Up @@ -896,7 +896,7 @@ static __init const char *cpu_to_name(struct cpuinfo_mips *c)
return name;
}

__init void cpu_probe(void)
__cpuinit void cpu_probe(void)
{
struct cpuinfo_mips *c = &current_cpu_data;
unsigned int cpu = smp_processor_id();
Expand Down Expand Up @@ -959,7 +959,7 @@ __init void cpu_probe(void)
c->srsets = 1;
}

__init void cpu_report(void)
__cpuinit void cpu_report(void)
{
struct cpuinfo_mips *c = &current_cpu_data;

Expand Down
2 changes: 1 addition & 1 deletion arch/mips/kernel/head.S
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ NESTED(kernel_entry, 16, sp) # kernel entry point
j start_kernel
END(kernel_entry)

__INIT
__CPUINIT

#ifdef CONFIG_SMP
/*
Expand Down
7 changes: 4 additions & 3 deletions arch/mips/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -1306,7 +1306,7 @@ int cp0_compare_irq;
int cp0_perfcount_irq;
EXPORT_SYMBOL_GPL(cp0_perfcount_irq);

void __init per_cpu_trap_init(void)
void __cpuinit per_cpu_trap_init(void)
{
unsigned int cpu = smp_processor_id();
unsigned int status_set = ST0_CU0;
Expand Down Expand Up @@ -1423,11 +1423,12 @@ void __init set_handler(unsigned long offset, void *addr, unsigned long size)
flush_icache_range(ebase + offset, ebase + offset + size);
}

static char panic_null_cerr[] __initdata =
static char panic_null_cerr[] __cpuinitdata =
"Trying to set NULL cache error exception handler";

/* Install uncached CPU exception handler */
void __init set_uncached_handler(unsigned long offset, void *addr, unsigned long size)
void __cpuinit set_uncached_handler(unsigned long offset, void *addr,
unsigned long size)
{
#ifdef CONFIG_32BIT
unsigned long uncached_ebase = KSEG1ADDR(ebase);
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/lib/uncached.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
* values, so we can avoid sharing the same stack area between a cached
* and the uncached mode.
*/
unsigned long __init run_uncached(void *func)
unsigned long __cpuinit run_uncached(void *func)
{
register long sp __asm__("$sp");
register long ret __asm__("$2");
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mips-boards/generic/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ void __init plat_perf_setup(void)
}
}

unsigned int __init get_c0_compare_int(void)
unsigned int __cpuinit get_c0_compare_int(void)
{
#ifdef MSC01E_INT_BASE
if (cpu_has_veic) {
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mipssim/sim_time.c
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ static void mips_timer_dispatch(void)
}


unsigned __init get_c0_compare_int(void)
unsigned __cpuinit get_c0_compare_int(void)
{
#ifdef MSC01E_INT_BASE
if (cpu_has_veic) {
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mm/c-r3k.c
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,7 @@ static void r3k_dma_cache_wback_inv(unsigned long start, unsigned long size)
r3k_flush_dcache_range(start, start + size);
}

void __init r3k_cache_init(void)
void __cpuinit r3k_cache_init(void)
{
extern void build_clear_page(void);
extern void build_copy_page(void);
Expand Down
30 changes: 15 additions & 15 deletions arch/mips/mm/c-r4k.c
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ static inline void r4k_blast_dcache_page_dc32(unsigned long addr)
blast_dcache32_page(addr);
}

static void __init r4k_blast_dcache_page_setup(void)
static void __cpuinit r4k_blast_dcache_page_setup(void)
{
unsigned long dc_lsize = cpu_dcache_line_size();

Expand All @@ -107,7 +107,7 @@ static void __init r4k_blast_dcache_page_setup(void)

static void (* r4k_blast_dcache_page_indexed)(unsigned long addr);

static void __init r4k_blast_dcache_page_indexed_setup(void)
static void __cpuinit r4k_blast_dcache_page_indexed_setup(void)
{
unsigned long dc_lsize = cpu_dcache_line_size();

Expand All @@ -121,7 +121,7 @@ static void __init r4k_blast_dcache_page_indexed_setup(void)

static void (* r4k_blast_dcache)(void);

static void __init r4k_blast_dcache_setup(void)
static void __cpuinit r4k_blast_dcache_setup(void)
{
unsigned long dc_lsize = cpu_dcache_line_size();

Expand Down Expand Up @@ -206,7 +206,7 @@ static inline void tx49_blast_icache32_page_indexed(unsigned long page)

static void (* r4k_blast_icache_page)(unsigned long addr);

static void __init r4k_blast_icache_page_setup(void)
static void __cpuinit r4k_blast_icache_page_setup(void)
{
unsigned long ic_lsize = cpu_icache_line_size();

Expand All @@ -223,7 +223,7 @@ static void __init r4k_blast_icache_page_setup(void)

static void (* r4k_blast_icache_page_indexed)(unsigned long addr);

static void __init r4k_blast_icache_page_indexed_setup(void)
static void __cpuinit r4k_blast_icache_page_indexed_setup(void)
{
unsigned long ic_lsize = cpu_icache_line_size();

Expand All @@ -247,7 +247,7 @@ static void __init r4k_blast_icache_page_indexed_setup(void)

static void (* r4k_blast_icache)(void);

static void __init r4k_blast_icache_setup(void)
static void __cpuinit r4k_blast_icache_setup(void)
{
unsigned long ic_lsize = cpu_icache_line_size();

Expand All @@ -268,7 +268,7 @@ static void __init r4k_blast_icache_setup(void)

static void (* r4k_blast_scache_page)(unsigned long addr);

static void __init r4k_blast_scache_page_setup(void)
static void __cpuinit r4k_blast_scache_page_setup(void)
{
unsigned long sc_lsize = cpu_scache_line_size();

Expand All @@ -286,7 +286,7 @@ static void __init r4k_blast_scache_page_setup(void)

static void (* r4k_blast_scache_page_indexed)(unsigned long addr);

static void __init r4k_blast_scache_page_indexed_setup(void)
static void __cpuinit r4k_blast_scache_page_indexed_setup(void)
{
unsigned long sc_lsize = cpu_scache_line_size();

Expand All @@ -304,7 +304,7 @@ static void __init r4k_blast_scache_page_indexed_setup(void)

static void (* r4k_blast_scache)(void);

static void __init r4k_blast_scache_setup(void)
static void __cpuinit r4k_blast_scache_setup(void)
{
unsigned long sc_lsize = cpu_scache_line_size();

Expand Down Expand Up @@ -691,11 +691,11 @@ static inline void rm7k_erratum31(void)
}
}

static char *way_string[] __initdata = { NULL, "direct mapped", "2-way",
static char *way_string[] __cpuinitdata = { NULL, "direct mapped", "2-way",
"3-way", "4-way", "5-way", "6-way", "7-way", "8-way"
};

static void __init probe_pcache(void)
static void __cpuinit probe_pcache(void)
{
struct cpuinfo_mips *c = &current_cpu_data;
unsigned int config = read_c0_config();
Expand Down Expand Up @@ -1016,7 +1016,7 @@ static void __init probe_pcache(void)
* executes in KSEG1 space or else you will crash and burn badly. You have
* been warned.
*/
static int __init probe_scache(void)
static int __cpuinit probe_scache(void)
{
unsigned long flags, addr, begin, end, pow2;
unsigned int config = read_c0_config();
Expand Down Expand Up @@ -1095,7 +1095,7 @@ extern int r5k_sc_init(void);
extern int rm7k_sc_init(void);
extern int mips_sc_init(void);

static void __init setup_scache(void)
static void __cpuinit setup_scache(void)
{
struct cpuinfo_mips *c = &current_cpu_data;
unsigned int config = read_c0_config();
Expand Down Expand Up @@ -1206,7 +1206,7 @@ void au1x00_fixup_config_od(void)
}
}

static void __init coherency_setup(void)
static void __cpuinit coherency_setup(void)
{
change_c0_config(CONF_CM_CMASK, CONF_CM_DEFAULT);

Expand Down Expand Up @@ -1238,7 +1238,7 @@ static void __init coherency_setup(void)
}
}

void __init r4k_cache_init(void)
void __cpuinit r4k_cache_init(void)
{
extern void build_clear_page(void);
extern void build_copy_page(void);
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mm/c-tx39.c
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,7 @@ static __init void tx39_probe_cache(void)
}
}

void __init tx39_cache_init(void)
void __cpuinit tx39_cache_init(void)
{
extern void build_clear_page(void);
extern void build_copy_page(void);
Expand Down
5 changes: 3 additions & 2 deletions arch/mips/mm/cache.c
Original file line number Diff line number Diff line change
Expand Up @@ -127,9 +127,10 @@ void __update_cache(struct vm_area_struct *vma, unsigned long address,
}
}

static char cache_panic[] __initdata = "Yeee, unsupported cache architecture.";
static char cache_panic[] __cpuinitdata =
"Yeee, unsupported cache architecture.";

void __init cpu_cache_init(void)
void __devinit cpu_cache_init(void)
{
if (cpu_has_3k_cache) {
extern void __weak r3k_cache_init(void);
Expand Down
4 changes: 2 additions & 2 deletions arch/mips/mm/cex-sb1.S
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,6 @@
* is changed.
*/

__INIT

.set mips64
.set noreorder
.set noat
Expand All @@ -51,6 +49,8 @@
* (0x170-0x17f) are used to preserve k0, k1, and ra.
*/

__CPUINIT

LEAF(except_vec2_sb1)
/*
* If this error is recoverable, we need to exit the handler
Expand Down
22 changes: 11 additions & 11 deletions arch/mips/mm/pg-r4k.c
Original file line number Diff line number Diff line change
Expand Up @@ -66,21 +66,21 @@ EXPORT_SYMBOL(copy_page);
* with 64-bit kernels. The prefetch offsets have been experimentally tuned
* an Origin 200.
*/
static int pref_offset_clear __initdata = 512;
static int pref_offset_copy __initdata = 256;
static int pref_offset_clear __cpuinitdata = 512;
static int pref_offset_copy __cpuinitdata = 256;

static unsigned int pref_src_mode __initdata;
static unsigned int pref_dst_mode __initdata;
static unsigned int pref_src_mode __cpuinitdata;
static unsigned int pref_dst_mode __cpuinitdata;

static int load_offset __initdata;
static int store_offset __initdata;
static int load_offset __cpuinitdata;
static int store_offset __cpuinitdata;

static unsigned int __initdata *dest, *epc;
static unsigned int __cpuinitdata *dest, *epc;

static unsigned int instruction_pending;
static union mips_instruction delayed_mi;

static void __init emit_instruction(union mips_instruction mi)
static void __cpuinit emit_instruction(union mips_instruction mi)
{
if (instruction_pending)
*epc++ = delayed_mi.word;
Expand Down Expand Up @@ -222,7 +222,7 @@ static inline void build_cdex_p(void)
emit_instruction(mi);
}

static void __init __build_store_reg(int reg)
static void __cpuinit __build_store_reg(int reg)
{
union mips_instruction mi;
unsigned int width;
Expand Down Expand Up @@ -339,7 +339,7 @@ static inline void build_jr_ra(void)
flush_delay_slot_or_nop();
}

void __init build_clear_page(void)
void __cpuinit build_clear_page(void)
{
unsigned int loop_start;
unsigned long off;
Expand Down Expand Up @@ -442,7 +442,7 @@ dest = label();
pr_debug("\t.set pop\n");
}

void __init build_copy_page(void)
void __cpuinit build_copy_page(void)
{
unsigned int loop_start;
unsigned long off;
Expand Down
4 changes: 2 additions & 2 deletions arch/mips/mm/pg-sb1.c
Original file line number Diff line number Diff line change
Expand Up @@ -293,10 +293,10 @@ void copy_page(void *to, void *from)
EXPORT_SYMBOL(clear_page);
EXPORT_SYMBOL(copy_page);

void __init build_clear_page(void)
void __cpuinit build_clear_page(void)
{
}

void __init build_copy_page(void)
void __cpuinit build_copy_page(void)
{
}
2 changes: 1 addition & 1 deletion arch/mips/mm/sc-ip22.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ struct bcache_ops indy_sc_ops = {
.bc_inv = indy_sc_wback_invalidate
};

void __init indy_sc_init(void)
void __cpuinit indy_sc_init(void)
{
if (indy_sc_probe()) {
indy_sc_enable();
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/mm/sc-mips.c
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ static inline int __init mips_sc_probe(void)
return 1;
}

int __init mips_sc_init(void)
int __cpuinit mips_sc_init(void)
{
int found = mips_sc_probe();
if (found) {
Expand All @@ -109,4 +109,3 @@ int __init mips_sc_init(void)
}
return found;
}

Loading

0 comments on commit 234fcd1

Please sign in to comment.