Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: [MIPS] Fix wrong checksum calculation on 64-bit MIPS [MIPS] VPE loader: Initialize lists before they're actually being used ... [MIPS] Fix reported amount of freed memory - it's in kB not bytes [MIPS] vr41xx: need one more nop with mtc0_tlbw_hazard() [MIPS] SMTC: Fix module build by exporting symbol [MIPS] SMTC: Fix TLB sizing bug for TLB of 64 >= entries [MIPS] Fix APM build [MIPS] There is no __GNUC_MAJOR__
This commit is contained in:
commit
a21b069626
8 changed files with 22 additions and 11 deletions
|
@ -623,7 +623,7 @@ LDFLAGS += -m $(ld-emul)
|
|||
|
||||
ifdef CONFIG_MIPS
|
||||
CHECKFLAGS += $(shell $(CC) $(CFLAGS) -dM -E -xc /dev/null | \
|
||||
egrep -vw '__GNUC_(MAJOR|MINOR|PATCHLEVEL)__' | \
|
||||
egrep -vw '__GNUC_(|MINOR_|PATCHLEVEL_)_' | \
|
||||
sed -e 's/^\#define /-D/' -e "s/ /='/" -e "s/$$/'/")
|
||||
ifdef CONFIG_64BIT
|
||||
CHECKFLAGS += -m64
|
||||
|
|
|
@ -122,7 +122,7 @@ unsigned long __init prom_free_prom_memory(void)
|
|||
addr += PAGE_SIZE;
|
||||
}
|
||||
|
||||
printk("Freeing unused PROM memory: %ldk freed\n",
|
||||
printk("Freeing unused PROM memory: %ldkb freed\n",
|
||||
(end - PAGE_SIZE) >> 10);
|
||||
|
||||
return end - PAGE_SIZE;
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include <linux/sched.h>
|
||||
#include <linux/cpumask.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/module.h>
|
||||
|
||||
#include <asm/cpu.h>
|
||||
#include <asm/processor.h>
|
||||
|
@ -270,9 +271,12 @@ void smtc_configure_tlb(void)
|
|||
* of their initialization in smtc_cpu_setup().
|
||||
*/
|
||||
|
||||
tlbsiz = tlbsiz & 0x3f; /* MIPS32 limits TLB indices to 64 */
|
||||
cpu_data[0].tlbsize = tlbsiz;
|
||||
/* MIPS32 limits TLB indices to 64 */
|
||||
if (tlbsiz > 64)
|
||||
tlbsiz = 64;
|
||||
cpu_data[0].tlbsize = current_cpu_data.tlbsize = tlbsiz;
|
||||
smtc_status |= SMTC_TLB_SHARED;
|
||||
local_flush_tlb_all();
|
||||
|
||||
printk("TLB of %d entry pairs shared by %d VPEs\n",
|
||||
tlbsiz, vpes);
|
||||
|
@ -1044,6 +1048,8 @@ void smtc_ipi_replay(void)
|
|||
}
|
||||
}
|
||||
|
||||
EXPORT_SYMBOL(smtc_ipi_replay);
|
||||
|
||||
void smtc_idle_loop_hook(void)
|
||||
{
|
||||
#ifdef SMTC_IDLE_HOOK_DEBUG
|
||||
|
|
|
@ -139,13 +139,16 @@ struct tc {
|
|||
struct list_head list;
|
||||
};
|
||||
|
||||
struct vpecontrol_ {
|
||||
struct {
|
||||
/* Virtual processing elements */
|
||||
struct list_head vpe_list;
|
||||
|
||||
/* Thread contexts */
|
||||
struct list_head tc_list;
|
||||
} vpecontrol;
|
||||
} vpecontrol = {
|
||||
.vpe_list = LIST_HEAD_INIT(vpecontrol.vpe_list),
|
||||
.tc_list = LIST_HEAD_INIT(vpecontrol.tc_list)
|
||||
};
|
||||
|
||||
static void release_progmem(void *ptr);
|
||||
/* static __attribute_used__ void dump_vpe(struct vpe * v); */
|
||||
|
@ -1388,8 +1391,6 @@ static int __init vpe_module_init(void)
|
|||
|
||||
/* dump_mtregs(); */
|
||||
|
||||
INIT_LIST_HEAD(&vpecontrol.vpe_list);
|
||||
INIT_LIST_HEAD(&vpecontrol.tc_list);
|
||||
|
||||
val = read_c0_mvpconf0();
|
||||
for (i = 0; i < ((val & MVPCONF0_PTC) + 1); i++) {
|
||||
|
|
|
@ -501,7 +501,8 @@ void free_initmem(void)
|
|||
|
||||
freed = prom_free_prom_memory();
|
||||
if (freed)
|
||||
printk(KERN_INFO "Freeing firmware memory: %ldk freed\n",freed);
|
||||
printk(KERN_INFO "Freeing firmware memory: %ldkb freed\n",
|
||||
freed >> 10);
|
||||
|
||||
free_init_pages("unused kernel memory",
|
||||
__pa_symbol(&__init_begin),
|
||||
|
|
|
@ -159,7 +159,8 @@ static inline __wsum csum_tcpudp_nofold(__be32 saddr,
|
|||
#endif
|
||||
" .set pop"
|
||||
: "=r" (sum)
|
||||
: "0" (daddr), "r"(saddr),
|
||||
: "0" ((__force unsigned long)daddr),
|
||||
"r" ((__force unsigned long)saddr),
|
||||
#ifdef __MIPSEL__
|
||||
"r" ((proto + len) << 8),
|
||||
#else
|
||||
|
|
|
@ -157,7 +157,7 @@ ASMMACRO(back_to_back_c0_hazard,
|
|||
* processors.
|
||||
*/
|
||||
ASMMACRO(mtc0_tlbw_hazard,
|
||||
nop
|
||||
nop; nop
|
||||
)
|
||||
ASMMACRO(tlbw_use_hazard,
|
||||
nop; nop; nop
|
||||
|
|
|
@ -118,6 +118,7 @@ register struct thread_info *__current_thread_info __asm__("$28");
|
|||
#define TIF_USEDFPU 16 /* FPU was used by this task this quantum (SMP) */
|
||||
#define TIF_POLLING_NRFLAG 17 /* true if poll_idle() is polling TIF_NEED_RESCHED */
|
||||
#define TIF_MEMDIE 18
|
||||
#define TIF_FREEZE 19
|
||||
#define TIF_SYSCALL_TRACE 31 /* syscall trace active */
|
||||
|
||||
#define _TIF_SYSCALL_TRACE (1<<TIF_SYSCALL_TRACE)
|
||||
|
@ -129,6 +130,7 @@ register struct thread_info *__current_thread_info __asm__("$28");
|
|||
#define _TIF_RESTORE_SIGMASK (1<<TIF_RESTORE_SIGMASK)
|
||||
#define _TIF_USEDFPU (1<<TIF_USEDFPU)
|
||||
#define _TIF_POLLING_NRFLAG (1<<TIF_POLLING_NRFLAG)
|
||||
#define _TIF_FREEZE (1<<TIF_FREEZE)
|
||||
|
||||
/* work to do on interrupt/exception return */
|
||||
#define _TIF_WORK_MASK (0x0000ffef & ~_TIF_SECCOMP)
|
||||
|
|
Loading…
Reference in a new issue