Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus
* 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus: (28 commits) MIPS: Alchemy: fix xxs1500 build error MIPS: Invalidate old TLB mappings when updating huge page PTEs. MIPS: Hibernation: Fixes for PAGE_SIZE >= 64kb MIPS: JZ4740: Set one-shot feature flag for the clockevent MIPS: JZ4740: Export symbols to the watchdog driver module MIPS: JZ4740: Fix GCC 4.6.0 build error. MIPS: Audit: Fix success success argument pass to audit_syscall_exit MIPS: Fix calc_vmlinuz_load_addr build warnings. MIPS: Alchemy: Fix GCC 4.6.0 build error. MIPS: Document former use of timerfd(2) syscall number. MIPS: IP27: Fix GCC 4.6.0 build error. MIPS: IP27: Fix GCC 4.6.0 build error. MIPS: bcm63xx: Fix header_crc comment in bcm963xx_tag.h MIPS: Octeon: Guard the Kconfig body with CPU_CAVIUM_OCTEON MIPS: Octeon: Cleanup Kconfig IRQ_CPU* symbols. MIPS: Rename .data..mostly and properly handle it in linker script MIPS: MSP: Fix build error MIPS: MSP71xx: Fix typo in msp_per_irq_controller MIPS: Loongson: Fix GCC 2.6.0 build error. MIPS: Jazz: Fix GCC 4.6.0 build error ...
This commit is contained in:
commit
54b333529d
32 changed files with 80 additions and 97 deletions
|
@ -997,9 +997,6 @@ config IRQ_GT641XX
|
|||
config IRQ_GIC
|
||||
bool
|
||||
|
||||
config IRQ_CPU_OCTEON
|
||||
bool
|
||||
|
||||
config MIPS_BOARDS_GEN
|
||||
bool
|
||||
|
||||
|
@ -1359,8 +1356,6 @@ config CPU_SB1
|
|||
config CPU_CAVIUM_OCTEON
|
||||
bool "Cavium Octeon processor"
|
||||
depends on SYS_HAS_CPU_CAVIUM_OCTEON
|
||||
select IRQ_CPU
|
||||
select IRQ_CPU_OCTEON
|
||||
select CPU_HAS_PREFETCH
|
||||
select CPU_SUPPORTS_64BIT_KERNEL
|
||||
select SYS_SUPPORTS_SMP
|
||||
|
|
|
@ -127,13 +127,10 @@ const char *get_system_type(void)
|
|||
void __init board_setup(void)
|
||||
{
|
||||
unsigned long bcsr1, bcsr2;
|
||||
u32 pin_func;
|
||||
|
||||
bcsr1 = DB1000_BCSR_PHYS_ADDR;
|
||||
bcsr2 = DB1000_BCSR_PHYS_ADDR + DB1000_BCSR_HEXLED_OFS;
|
||||
|
||||
pin_func = 0;
|
||||
|
||||
#ifdef CONFIG_MIPS_DB1000
|
||||
printk(KERN_INFO "AMD Alchemy Au1000/Db1000 Board\n");
|
||||
#endif
|
||||
|
@ -164,12 +161,16 @@ void __init board_setup(void)
|
|||
/* Not valid for Au1550 */
|
||||
#if defined(CONFIG_IRDA) && \
|
||||
(defined(CONFIG_SOC_AU1000) || defined(CONFIG_SOC_AU1100))
|
||||
/* Set IRFIRSEL instead of GPIO15 */
|
||||
pin_func = au_readl(SYS_PINFUNC) | SYS_PF_IRF;
|
||||
au_writel(pin_func, SYS_PINFUNC);
|
||||
/* Power off until the driver is in use */
|
||||
bcsr_mod(BCSR_RESETS, BCSR_RESETS_IRDA_MODE_MASK,
|
||||
BCSR_RESETS_IRDA_MODE_OFF);
|
||||
{
|
||||
u32 pin_func;
|
||||
|
||||
/* Set IRFIRSEL instead of GPIO15 */
|
||||
pin_func = au_readl(SYS_PINFUNC) | SYS_PF_IRF;
|
||||
au_writel(pin_func, SYS_PINFUNC);
|
||||
/* Power off until the driver is in use */
|
||||
bcsr_mod(BCSR_RESETS, BCSR_RESETS_IRDA_MODE_MASK,
|
||||
BCSR_RESETS_IRDA_MODE_OFF);
|
||||
}
|
||||
#endif
|
||||
bcsr_write(BCSR_PCMCIA, 0); /* turn off PCMCIA power */
|
||||
|
||||
|
@ -177,31 +178,35 @@ void __init board_setup(void)
|
|||
alchemy_gpio1_input_enable();
|
||||
|
||||
#ifdef CONFIG_MIPS_MIRAGE
|
||||
/* GPIO[20] is output */
|
||||
alchemy_gpio_direction_output(20, 0);
|
||||
{
|
||||
u32 pin_func;
|
||||
|
||||
/* Set GPIO[210:208] instead of SSI_0 */
|
||||
pin_func = au_readl(SYS_PINFUNC) | SYS_PF_S0;
|
||||
/* GPIO[20] is output */
|
||||
alchemy_gpio_direction_output(20, 0);
|
||||
|
||||
/* Set GPIO[215:211] for LEDs */
|
||||
pin_func |= 5 << 2;
|
||||
/* Set GPIO[210:208] instead of SSI_0 */
|
||||
pin_func = au_readl(SYS_PINFUNC) | SYS_PF_S0;
|
||||
|
||||
/* Set GPIO[214:213] for more LEDs */
|
||||
pin_func |= 5 << 12;
|
||||
/* Set GPIO[215:211] for LEDs */
|
||||
pin_func |= 5 << 2;
|
||||
|
||||
/* Set GPIO[207:200] instead of PCMCIA/LCD */
|
||||
pin_func |= SYS_PF_LCD | SYS_PF_PC;
|
||||
au_writel(pin_func, SYS_PINFUNC);
|
||||
/* Set GPIO[214:213] for more LEDs */
|
||||
pin_func |= 5 << 12;
|
||||
|
||||
/*
|
||||
* Enable speaker amplifier. This should
|
||||
* be part of the audio driver.
|
||||
*/
|
||||
alchemy_gpio_direction_output(209, 1);
|
||||
/* Set GPIO[207:200] instead of PCMCIA/LCD */
|
||||
pin_func |= SYS_PF_LCD | SYS_PF_PC;
|
||||
au_writel(pin_func, SYS_PINFUNC);
|
||||
|
||||
pm_power_off = mirage_power_off;
|
||||
_machine_halt = mirage_power_off;
|
||||
_machine_restart = (void(*)(char *))mips_softreset;
|
||||
/*
|
||||
* Enable speaker amplifier. This should
|
||||
* be part of the audio driver.
|
||||
*/
|
||||
alchemy_gpio_direction_output(209, 1);
|
||||
|
||||
pm_power_off = mirage_power_off;
|
||||
_machine_halt = mirage_power_off;
|
||||
_machine_restart = (void(*)(char *))mips_softreset;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_MIPS_BOSPORUS
|
||||
|
|
|
@ -51,10 +51,9 @@ void __init prom_init(void)
|
|||
prom_init_cmdline();
|
||||
|
||||
memsize_str = prom_getenv("memsize");
|
||||
if (!memsize_str)
|
||||
if (!memsize_str || strict_strtoul(memsize_str, 0, &memsize))
|
||||
memsize = 0x04000000;
|
||||
else
|
||||
strict_strtoul(memsize_str, 0, &memsize);
|
||||
|
||||
add_memory_region(0, memsize, BOOT_MEM_RAM);
|
||||
}
|
||||
|
||||
|
|
|
@ -16,8 +16,8 @@
|
|||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
unsigned long long vmlinux_size, vmlinux_load_addr, vmlinuz_load_addr;
|
||||
struct stat sb;
|
||||
uint64_t vmlinux_size, vmlinux_load_addr, vmlinuz_load_addr;
|
||||
|
||||
if (argc != 3) {
|
||||
fprintf(stderr, "Usage: %s <pathname> <vmlinux_load_addr>\n",
|
||||
|
|
|
@ -1,11 +1,7 @@
|
|||
config CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
bool "Enable Octeon specific options"
|
||||
depends on CPU_CAVIUM_OCTEON
|
||||
default "y"
|
||||
if CPU_CAVIUM_OCTEON
|
||||
|
||||
config CAVIUM_CN63XXP1
|
||||
bool "Enable CN63XXP1 errata worarounds"
|
||||
depends on CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
default "n"
|
||||
help
|
||||
The CN63XXP1 chip requires build time workarounds to
|
||||
|
@ -16,7 +12,6 @@ config CAVIUM_CN63XXP1
|
|||
|
||||
config CAVIUM_OCTEON_2ND_KERNEL
|
||||
bool "Build the kernel to be used as a 2nd kernel on the same chip"
|
||||
depends on CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
default "n"
|
||||
help
|
||||
This option configures this kernel to be linked at a different
|
||||
|
@ -26,7 +21,6 @@ config CAVIUM_OCTEON_2ND_KERNEL
|
|||
|
||||
config CAVIUM_OCTEON_HW_FIX_UNALIGNED
|
||||
bool "Enable hardware fixups of unaligned loads and stores"
|
||||
depends on CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
default "y"
|
||||
help
|
||||
Configure the Octeon hardware to automatically fix unaligned loads
|
||||
|
@ -38,7 +32,6 @@ config CAVIUM_OCTEON_HW_FIX_UNALIGNED
|
|||
|
||||
config CAVIUM_OCTEON_CVMSEG_SIZE
|
||||
int "Number of L1 cache lines reserved for CVMSEG memory"
|
||||
depends on CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
range 0 54
|
||||
default 1
|
||||
help
|
||||
|
@ -50,7 +43,6 @@ config CAVIUM_OCTEON_CVMSEG_SIZE
|
|||
|
||||
config CAVIUM_OCTEON_LOCK_L2
|
||||
bool "Lock often used kernel code in the L2"
|
||||
depends on CAVIUM_OCTEON_SPECIFIC_OPTIONS
|
||||
default "y"
|
||||
help
|
||||
Enable locking parts of the kernel into the L2 cache.
|
||||
|
@ -93,7 +85,6 @@ config CAVIUM_OCTEON_LOCK_L2_MEMCPY
|
|||
config ARCH_SPARSEMEM_ENABLE
|
||||
def_bool y
|
||||
select SPARSEMEM_STATIC
|
||||
depends on CPU_CAVIUM_OCTEON
|
||||
|
||||
config CAVIUM_OCTEON_HELPER
|
||||
def_bool y
|
||||
|
@ -107,6 +98,8 @@ config NEED_SG_DMA_LENGTH
|
|||
|
||||
config SWIOTLB
|
||||
def_bool y
|
||||
depends on CPU_CAVIUM_OCTEON
|
||||
select IOMMU_HELPER
|
||||
select NEED_SG_DMA_LENGTH
|
||||
|
||||
|
||||
endif # CPU_CAVIUM_OCTEON
|
||||
|
|
|
@ -17,6 +17,6 @@
|
|||
#define SMP_CACHE_SHIFT L1_CACHE_SHIFT
|
||||
#define SMP_CACHE_BYTES L1_CACHE_BYTES
|
||||
|
||||
#define __read_mostly __attribute__((__section__(".data.read_mostly")))
|
||||
#define __read_mostly __attribute__((__section__(".data..read_mostly")))
|
||||
|
||||
#endif /* _ASM_CACHE_H */
|
||||
|
|
|
@ -14,6 +14,9 @@
|
|||
#ifndef __ASM_CEVT_R4K_H
|
||||
#define __ASM_CEVT_R4K_H
|
||||
|
||||
#include <linux/clockchips.h>
|
||||
#include <asm/time.h>
|
||||
|
||||
DECLARE_PER_CPU(struct clock_event_device, mips_clockevent_device);
|
||||
|
||||
void mips_event_handler(struct clock_event_device *dev);
|
||||
|
|
|
@ -70,6 +70,7 @@ static inline pte_t huge_ptep_get_and_clear(struct mm_struct *mm,
|
|||
static inline void huge_ptep_clear_flush(struct vm_area_struct *vma,
|
||||
unsigned long addr, pte_t *ptep)
|
||||
{
|
||||
flush_tlb_mm(vma->vm_mm);
|
||||
}
|
||||
|
||||
static inline int huge_pte_none(pte_t pte)
|
||||
|
|
|
@ -88,7 +88,7 @@ struct bcm_tag {
|
|||
char kernel_crc[CRC_LEN];
|
||||
/* 228-235: Unused at present */
|
||||
char reserved1[8];
|
||||
/* 236-239: CRC32 of header excluding tagVersion */
|
||||
/* 236-239: CRC32 of header excluding last 20 bytes */
|
||||
char header_crc[CRC_LEN];
|
||||
/* 240-255: Unused at present */
|
||||
char reserved2[16];
|
||||
|
|
|
@ -211,7 +211,7 @@ EXPORT_SYMBOL(vdma_free);
|
|||
*/
|
||||
int vdma_remap(unsigned long laddr, unsigned long paddr, unsigned long size)
|
||||
{
|
||||
int first, pages, npages;
|
||||
int first, pages;
|
||||
|
||||
if (laddr > 0xffffff) {
|
||||
if (vdma_debug)
|
||||
|
@ -228,8 +228,7 @@ int vdma_remap(unsigned long laddr, unsigned long paddr, unsigned long size)
|
|||
return -EINVAL; /* invalid physical address */
|
||||
}
|
||||
|
||||
npages = pages =
|
||||
(((paddr & (VDMA_PAGESIZE - 1)) + size) >> 12) + 1;
|
||||
pages = (((paddr & (VDMA_PAGESIZE - 1)) + size) >> 12) + 1;
|
||||
first = laddr >> 12;
|
||||
if (vdma_debug)
|
||||
printk("vdma_remap: first=%x, pages=%x\n", first, pages);
|
||||
|
|
|
@ -242,9 +242,7 @@ EXPORT_SYMBOL_GPL(jz4740_dma_get_residue);
|
|||
|
||||
static void jz4740_dma_chan_irq(struct jz4740_dma_chan *dma)
|
||||
{
|
||||
uint32_t status;
|
||||
|
||||
status = jz4740_dma_read(JZ_REG_DMA_STATUS_CTRL(dma->id));
|
||||
(void) jz4740_dma_read(JZ_REG_DMA_STATUS_CTRL(dma->id));
|
||||
|
||||
jz4740_dma_write_mask(JZ_REG_DMA_STATUS_CTRL(dma->id), 0,
|
||||
JZ_DMA_STATUS_CTRL_ENABLE | JZ_DMA_STATUS_CTRL_TRANSFER_DONE);
|
||||
|
|
|
@ -89,7 +89,7 @@ static int jz4740_clockevent_set_next(unsigned long evt,
|
|||
|
||||
static struct clock_event_device jz4740_clockevent = {
|
||||
.name = "jz4740-timer",
|
||||
.features = CLOCK_EVT_FEAT_PERIODIC,
|
||||
.features = CLOCK_EVT_FEAT_PERIODIC | CLOCK_EVT_FEAT_ONESHOT,
|
||||
.set_next_event = jz4740_clockevent_set_next,
|
||||
.set_mode = jz4740_clockevent_set_mode,
|
||||
.rating = 200,
|
||||
|
|
|
@ -27,11 +27,13 @@ void jz4740_timer_enable_watchdog(void)
|
|||
{
|
||||
writel(BIT(16), jz4740_timer_base + JZ_REG_TIMER_STOP_CLEAR);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(jz4740_timer_enable_watchdog);
|
||||
|
||||
void jz4740_timer_disable_watchdog(void)
|
||||
{
|
||||
writel(BIT(16), jz4740_timer_base + JZ_REG_TIMER_STOP_SET);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(jz4740_timer_disable_watchdog);
|
||||
|
||||
void __init jz4740_timer_init(void)
|
||||
{
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
#define JAL 0x0c000000 /* jump & link: ip --> ra, jump to target */
|
||||
#define ADDR_MASK 0x03ffffff /* op_code|addr : 31...26|25 ....0 */
|
||||
#define JUMP_RANGE_MASK ((1UL << 28) - 1)
|
||||
|
||||
#define INSN_NOP 0x00000000 /* nop */
|
||||
#define INSN_JAL(addr) \
|
||||
|
@ -44,12 +45,12 @@ static inline void ftrace_dyn_arch_init_insns(void)
|
|||
|
||||
/* jal (ftrace_caller + 8), jump over the first two instruction */
|
||||
buf = (u32 *)&insn_jal_ftrace_caller;
|
||||
uasm_i_jal(&buf, (FTRACE_ADDR + 8));
|
||||
uasm_i_jal(&buf, (FTRACE_ADDR + 8) & JUMP_RANGE_MASK);
|
||||
|
||||
#ifdef CONFIG_FUNCTION_GRAPH_TRACER
|
||||
/* j ftrace_graph_caller */
|
||||
buf = (u32 *)&insn_j_ftrace_graph_caller;
|
||||
uasm_i_j(&buf, (unsigned long)ftrace_graph_caller);
|
||||
uasm_i_j(&buf, (unsigned long)ftrace_graph_caller & JUMP_RANGE_MASK);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
@ -540,8 +540,8 @@ asmlinkage void do_syscall_trace(struct pt_regs *regs, int entryexit)
|
|||
secure_computing(regs->regs[2]);
|
||||
|
||||
if (unlikely(current->audit_context) && entryexit)
|
||||
audit_syscall_exit(AUDITSC_RESULT(regs->regs[2]),
|
||||
regs->regs[2]);
|
||||
audit_syscall_exit(AUDITSC_RESULT(regs->regs[7]),
|
||||
-regs->regs[2]);
|
||||
|
||||
if (!(current->ptrace & PT_PTRACED))
|
||||
goto out;
|
||||
|
|
|
@ -565,7 +565,7 @@ einval: li v0, -ENOSYS
|
|||
sys sys_ioprio_get 2 /* 4315 */
|
||||
sys sys_utimensat 4
|
||||
sys sys_signalfd 3
|
||||
sys sys_ni_syscall 0
|
||||
sys sys_ni_syscall 0 /* was timerfd */
|
||||
sys sys_eventfd 1
|
||||
sys sys_fallocate 6 /* 4320 */
|
||||
sys sys_timerfd_create 2
|
||||
|
|
|
@ -404,7 +404,7 @@ sys_call_table:
|
|||
PTR sys_ioprio_get
|
||||
PTR sys_utimensat /* 5275 */
|
||||
PTR sys_signalfd
|
||||
PTR sys_ni_syscall
|
||||
PTR sys_ni_syscall /* was timerfd */
|
||||
PTR sys_eventfd
|
||||
PTR sys_fallocate
|
||||
PTR sys_timerfd_create /* 5280 */
|
||||
|
|
|
@ -403,7 +403,7 @@ EXPORT(sysn32_call_table)
|
|||
PTR sys_ioprio_get
|
||||
PTR compat_sys_utimensat
|
||||
PTR compat_sys_signalfd /* 6280 */
|
||||
PTR sys_ni_syscall
|
||||
PTR sys_ni_syscall /* was timerfd */
|
||||
PTR sys_eventfd
|
||||
PTR sys_fallocate
|
||||
PTR sys_timerfd_create
|
||||
|
|
|
@ -522,7 +522,7 @@ sys_call_table:
|
|||
PTR sys_ioprio_get /* 4315 */
|
||||
PTR compat_sys_utimensat
|
||||
PTR compat_sys_signalfd
|
||||
PTR sys_ni_syscall
|
||||
PTR sys_ni_syscall /* was timerfd */
|
||||
PTR sys_eventfd
|
||||
PTR sys32_fallocate /* 4320 */
|
||||
PTR sys_timerfd_create
|
||||
|
|
|
@ -74,6 +74,7 @@ SECTIONS
|
|||
INIT_TASK_DATA(PAGE_SIZE)
|
||||
NOSAVE_DATA
|
||||
CACHELINE_ALIGNED_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
|
||||
READ_MOSTLY_DATA(1 << CONFIG_MIPS_L1_CACHE_SHIFT)
|
||||
DATA_DATA
|
||||
CONSTRUCTORS
|
||||
}
|
||||
|
|
|
@ -29,9 +29,10 @@ unsigned long memsize, highmemsize;
|
|||
|
||||
#define parse_even_earlier(res, option, p) \
|
||||
do { \
|
||||
int ret; \
|
||||
unsigned int tmp __maybe_unused; \
|
||||
\
|
||||
if (strncmp(option, (char *)p, strlen(option)) == 0) \
|
||||
ret = strict_strtol((char *)p + strlen(option"="), 10, &res); \
|
||||
tmp = strict_strtol((char *)p + strlen(option"="), 10, &res); \
|
||||
} while (0)
|
||||
|
||||
void __init prom_init_env(void)
|
||||
|
|
|
@ -1075,7 +1075,6 @@ static int __cpuinit probe_scache(void)
|
|||
unsigned long flags, addr, begin, end, pow2;
|
||||
unsigned int config = read_c0_config();
|
||||
struct cpuinfo_mips *c = ¤t_cpu_data;
|
||||
int tmp;
|
||||
|
||||
if (config & CONF_SC)
|
||||
return 0;
|
||||
|
@ -1108,7 +1107,6 @@ static int __cpuinit probe_scache(void)
|
|||
|
||||
/* Now search for the wrap around point. */
|
||||
pow2 = (128 * 1024);
|
||||
tmp = 0;
|
||||
for (addr = begin + (128 * 1024); addr < end; addr = begin + pow2) {
|
||||
cache_op(Index_Load_Tag_SD, addr);
|
||||
__asm__ __volatile__("nop; nop; nop; nop;"); /* hazard... */
|
||||
|
|
|
@ -1151,8 +1151,8 @@ static void __cpuinit build_r4000_tlb_refill_handler(void)
|
|||
struct uasm_reloc *r = relocs;
|
||||
u32 *f;
|
||||
unsigned int final_len;
|
||||
struct mips_huge_tlb_info htlb_info;
|
||||
enum vmalloc64_mode vmalloc_mode;
|
||||
struct mips_huge_tlb_info htlb_info __maybe_unused;
|
||||
enum vmalloc64_mode vmalloc_mode __maybe_unused;
|
||||
|
||||
memset(tlb_handler, 0, sizeof(tlb_handler));
|
||||
memset(labels, 0, sizeof(labels));
|
||||
|
|
|
@ -193,8 +193,6 @@ extern struct plat_smp_ops msmtc_smp_ops;
|
|||
|
||||
void __init prom_init(void)
|
||||
{
|
||||
int result;
|
||||
|
||||
prom_argc = fw_arg0;
|
||||
_prom_argv = (int *) fw_arg1;
|
||||
_prom_envp = (int *) fw_arg2;
|
||||
|
@ -360,20 +358,14 @@ void __init prom_init(void)
|
|||
#ifdef CONFIG_SERIAL_8250_CONSOLE
|
||||
console_config();
|
||||
#endif
|
||||
/* Early detection of CMP support */
|
||||
result = gcmp_probe(GCMP_BASE_ADDR, GCMP_ADDRSPACE_SZ);
|
||||
|
||||
#ifdef CONFIG_MIPS_CMP
|
||||
if (result)
|
||||
/* Early detection of CMP support */
|
||||
if (gcmp_probe(GCMP_BASE_ADDR, GCMP_ADDRSPACE_SZ))
|
||||
register_smp_ops(&cmp_smp_ops);
|
||||
else
|
||||
#endif
|
||||
#ifdef CONFIG_MIPS_MT_SMP
|
||||
#ifdef CONFIG_MIPS_CMP
|
||||
if (!result)
|
||||
register_smp_ops(&vsmp_smp_ops);
|
||||
#else
|
||||
register_smp_ops(&vsmp_smp_ops);
|
||||
#endif
|
||||
#endif
|
||||
#ifdef CONFIG_MIPS_MT_SMTC
|
||||
register_smp_ops(&msmtc_smp_ops);
|
||||
|
|
|
@ -56,7 +56,6 @@ static DEFINE_RAW_SPINLOCK(mips_irq_lock);
|
|||
static inline int mips_pcibios_iack(void)
|
||||
{
|
||||
int irq;
|
||||
u32 dummy;
|
||||
|
||||
/*
|
||||
* Determine highest priority pending interrupt by performing
|
||||
|
@ -83,7 +82,7 @@ static inline int mips_pcibios_iack(void)
|
|||
BONITO_PCIMAP_CFG = 0x20000;
|
||||
|
||||
/* Flush Bonito register block */
|
||||
dummy = BONITO_PCIMAP_CFG;
|
||||
(void) BONITO_PCIMAP_CFG;
|
||||
iob(); /* sync */
|
||||
|
||||
irq = __raw_readl((u32 *)_pcictrl_bonito_pcicfg);
|
||||
|
|
|
@ -97,7 +97,7 @@ static int msp_per_irq_set_affinity(struct irq_data *d,
|
|||
|
||||
static struct irq_chip msp_per_irq_controller = {
|
||||
.name = "MSP_PER",
|
||||
.irq_enable = unmask_per_irq.
|
||||
.irq_enable = unmask_per_irq,
|
||||
.irq_disable = mask_per_irq,
|
||||
.irq_ack = msp_per_irq_ack,
|
||||
#ifdef CONFIG_SMP
|
||||
|
|
|
@ -35,7 +35,7 @@ LEAF(swsusp_arch_resume)
|
|||
0:
|
||||
PTR_L t1, PBE_ADDRESS(t0) /* source */
|
||||
PTR_L t2, PBE_ORIG_ADDRESS(t0) /* destination */
|
||||
PTR_ADDIU t3, t1, PAGE_SIZE
|
||||
PTR_ADDU t3, t1, PAGE_SIZE
|
||||
1:
|
||||
REG_L t8, (t1)
|
||||
REG_S t8, (t2)
|
||||
|
|
|
@ -132,7 +132,7 @@ static struct platform_device eth1_device = {
|
|||
*/
|
||||
static int __init sgiseeq_devinit(void)
|
||||
{
|
||||
unsigned int tmp;
|
||||
unsigned int pbdma __maybe_unused;
|
||||
int res, i;
|
||||
|
||||
eth0_pd.hpc = hpc3c0;
|
||||
|
@ -151,7 +151,7 @@ static int __init sgiseeq_devinit(void)
|
|||
|
||||
/* Second HPC is missing? */
|
||||
if (ip22_is_fullhouse() ||
|
||||
get_dbe(tmp, (unsigned int *)&hpc3c1->pbdma[1]))
|
||||
get_dbe(pbdma, (unsigned int *)&hpc3c1->pbdma[1]))
|
||||
return 0;
|
||||
|
||||
sgimc->giopar |= SGIMC_GIOPAR_MASTEREXP1 | SGIMC_GIOPAR_EXP164 |
|
||||
|
|
|
@ -32,7 +32,7 @@
|
|||
static unsigned long dosample(void)
|
||||
{
|
||||
u32 ct0, ct1;
|
||||
u8 msb, lsb;
|
||||
u8 msb;
|
||||
|
||||
/* Start the counter. */
|
||||
sgint->tcword = (SGINT_TCWORD_CNT2 | SGINT_TCWORD_CALL |
|
||||
|
@ -46,7 +46,7 @@ static unsigned long dosample(void)
|
|||
/* Latch and spin until top byte of counter2 is zero */
|
||||
do {
|
||||
writeb(SGINT_TCWORD_CNT2 | SGINT_TCWORD_CLAT, &sgint->tcword);
|
||||
lsb = readb(&sgint->tcnt2);
|
||||
(void) readb(&sgint->tcnt2);
|
||||
msb = readb(&sgint->tcnt2);
|
||||
ct1 = read_c0_count();
|
||||
} while (msb);
|
||||
|
|
|
@ -29,7 +29,6 @@ unsigned long hub_pio_map(cnodeid_t cnode, xwidgetnum_t widget,
|
|||
unsigned long xtalk_addr, size_t size)
|
||||
{
|
||||
nasid_t nasid = COMPACT_TO_NASID_NODEID(cnode);
|
||||
volatile hubreg_t junk;
|
||||
unsigned i;
|
||||
|
||||
/* use small-window mapping if possible */
|
||||
|
@ -64,7 +63,7 @@ unsigned long hub_pio_map(cnodeid_t cnode, xwidgetnum_t widget,
|
|||
* after we write it.
|
||||
*/
|
||||
IIO_ITTE_PUT(nasid, i, HUB_PIO_MAP_TO_MEM, widget, xtalk_addr);
|
||||
junk = HUB_L(IIO_ITTE_GET(nasid, i));
|
||||
(void) HUB_L(IIO_ITTE_GET(nasid, i));
|
||||
|
||||
return NODE_BWIN_BASE(nasid, widget) + (xtalk_addr % BWIN_SIZE);
|
||||
}
|
||||
|
|
|
@ -54,11 +54,8 @@ void __init setup_replication_mask(void)
|
|||
|
||||
static __init void set_ktext_source(nasid_t client_nasid, nasid_t server_nasid)
|
||||
{
|
||||
cnodeid_t client_cnode;
|
||||
kern_vars_t *kvp;
|
||||
|
||||
client_cnode = NASID_TO_COMPACT_NODEID(client_nasid);
|
||||
|
||||
kvp = &hub_data(client_nasid)->kern_vars;
|
||||
|
||||
KERN_VARS_ADDR(client_nasid) = (unsigned long)kvp;
|
||||
|
|
|
@ -95,7 +95,7 @@ static void __init sni_a20r_timer_setup(void)
|
|||
static __init unsigned long dosample(void)
|
||||
{
|
||||
u32 ct0, ct1;
|
||||
volatile u8 msb, lsb;
|
||||
volatile u8 msb;
|
||||
|
||||
/* Start the counter. */
|
||||
outb_p(0x34, 0x43);
|
||||
|
@ -108,7 +108,7 @@ static __init unsigned long dosample(void)
|
|||
/* Latch and spin until top byte of counter0 is zero */
|
||||
do {
|
||||
outb(0x00, 0x43);
|
||||
lsb = inb(0x40);
|
||||
(void) inb(0x40);
|
||||
msb = inb(0x40);
|
||||
ct1 = read_c0_count();
|
||||
} while (msb);
|
||||
|
|
Loading…
Reference in a new issue