Commit 4d854194 authored by Ralf Baechle's avatar Ralf Baechle

Merge branch '3.11-fixes' into mips-for-linux-next

parents 12d14e0e f7c1285f
...@@ -132,7 +132,6 @@ config BCM63XX ...@@ -132,7 +132,6 @@ config BCM63XX
select IRQ_CPU select IRQ_CPU
select SYS_HAS_CPU_MIPS32_R1 select SYS_HAS_CPU_MIPS32_R1
select SYS_HAS_CPU_BMIPS4350 if !BCM63XX_CPU_6338 && !BCM63XX_CPU_6345 && !BCM63XX_CPU_6348 select SYS_HAS_CPU_BMIPS4350 if !BCM63XX_CPU_6338 && !BCM63XX_CPU_6345 && !BCM63XX_CPU_6348
select NR_CPUS_DEFAULT_2
select SYS_SUPPORTS_32BIT_KERNEL select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_BIG_ENDIAN select SYS_SUPPORTS_BIG_ENDIAN
select SYS_HAS_EARLY_PRINTK select SYS_HAS_EARLY_PRINTK
...@@ -612,7 +611,6 @@ config SIBYTE_SWARM ...@@ -612,7 +611,6 @@ config SIBYTE_SWARM
select BOOT_ELF32 select BOOT_ELF32
select DMA_COHERENT select DMA_COHERENT
select HAVE_PATA_PLATFORM select HAVE_PATA_PLATFORM
select NR_CPUS_DEFAULT_2
select SIBYTE_SB1250 select SIBYTE_SB1250
select SWAP_IO_SPACE select SWAP_IO_SPACE
select SYS_HAS_CPU_SB1 select SYS_HAS_CPU_SB1
...@@ -626,7 +624,6 @@ config SIBYTE_LITTLESUR ...@@ -626,7 +624,6 @@ config SIBYTE_LITTLESUR
select BOOT_ELF32 select BOOT_ELF32
select DMA_COHERENT select DMA_COHERENT
select HAVE_PATA_PLATFORM select HAVE_PATA_PLATFORM
select NR_CPUS_DEFAULT_2
select SIBYTE_SB1250 select SIBYTE_SB1250
select SWAP_IO_SPACE select SWAP_IO_SPACE
select SYS_HAS_CPU_SB1 select SYS_HAS_CPU_SB1
...@@ -638,7 +635,6 @@ config SIBYTE_SENTOSA ...@@ -638,7 +635,6 @@ config SIBYTE_SENTOSA
bool "Sibyte BCM91250E-Sentosa" bool "Sibyte BCM91250E-Sentosa"
select BOOT_ELF32 select BOOT_ELF32
select DMA_COHERENT select DMA_COHERENT
select NR_CPUS_DEFAULT_2
select SIBYTE_SB1250 select SIBYTE_SB1250
select SWAP_IO_SPACE select SWAP_IO_SPACE
select SYS_HAS_CPU_SB1 select SYS_HAS_CPU_SB1
...@@ -1866,7 +1862,6 @@ config MIPS_MT_SMP ...@@ -1866,7 +1862,6 @@ config MIPS_MT_SMP
select CPU_MIPSR2_IRQ_VI select CPU_MIPSR2_IRQ_VI
select CPU_MIPSR2_IRQ_EI select CPU_MIPSR2_IRQ_EI
select MIPS_MT select MIPS_MT
select NR_CPUS_DEFAULT_2
select SMP select SMP
select SYS_SUPPORTS_SCHED_SMT if SMP select SYS_SUPPORTS_SCHED_SMT if SMP
select SYS_SUPPORTS_SMP select SYS_SUPPORTS_SMP
...@@ -2177,12 +2172,6 @@ config SYS_SUPPORTS_MIPS_CMP ...@@ -2177,12 +2172,6 @@ config SYS_SUPPORTS_MIPS_CMP
config SYS_SUPPORTS_SMP config SYS_SUPPORTS_SMP
bool bool
config NR_CPUS_DEFAULT_1
bool
config NR_CPUS_DEFAULT_2
bool
config NR_CPUS_DEFAULT_4 config NR_CPUS_DEFAULT_4
bool bool
...@@ -2200,10 +2189,8 @@ config NR_CPUS_DEFAULT_64 ...@@ -2200,10 +2189,8 @@ config NR_CPUS_DEFAULT_64
config NR_CPUS config NR_CPUS
int "Maximum number of CPUs (2-64)" int "Maximum number of CPUs (2-64)"
range 1 64 if NR_CPUS_DEFAULT_1 range 2 64
depends on SMP depends on SMP
default "1" if NR_CPUS_DEFAULT_1
default "2" if NR_CPUS_DEFAULT_2
default "4" if NR_CPUS_DEFAULT_4 default "4" if NR_CPUS_DEFAULT_4
default "8" if NR_CPUS_DEFAULT_8 default "8" if NR_CPUS_DEFAULT_8
default "16" if NR_CPUS_DEFAULT_16 default "16" if NR_CPUS_DEFAULT_16
......
...@@ -83,7 +83,7 @@ _mcount: ...@@ -83,7 +83,7 @@ _mcount:
PTR_S MCOUNT_RA_ADDRESS_REG, PT_R12(sp) PTR_S MCOUNT_RA_ADDRESS_REG, PT_R12(sp)
#endif #endif
move a0, ra /* arg1: self return address */ PTR_SUBU a0, ra, 8 /* arg1: self address */
.globl ftrace_call .globl ftrace_call
ftrace_call: ftrace_call:
nop /* a placeholder for the call to a real tracing function */ nop /* a placeholder for the call to a real tracing function */
......
...@@ -121,6 +121,14 @@ void __init time_init(void) ...@@ -121,6 +121,14 @@ void __init time_init(void)
{ {
plat_time_init(); plat_time_init();
if (!mips_clockevent_init() || !cpu_has_mfc0_count_bug()) /*
* The use of the R4k timer as a clock event takes precedence;
* if reading the Count register might interfere with the timer
* interrupt, then we don't use the timer as a clock source.
* We may still use the timer as a clock source though if the
* timer interrupt isn't reliable; the interference doesn't
* matter then, because we don't use the interrupt.
*/
if (mips_clockevent_init() != 0 || !cpu_has_mfc0_count_bug())
init_mips_clocksource(); init_mips_clocksource();
} }
...@@ -3,8 +3,9 @@ ...@@ -3,8 +3,9 @@
# #
obj-y += setup.o init.o cmdline.o env.o time.o reset.o irq.o \ obj-y += setup.o init.o cmdline.o env.o time.o reset.o irq.o \
pci.o bonito-irq.o mem.o machtype.o platform.o bonito-irq.o mem.o machtype.o platform.o
obj-$(CONFIG_GPIOLIB) += gpio.o obj-$(CONFIG_GPIOLIB) += gpio.o
obj-$(CONFIG_PCI) += pci.o
# #
# Serial port support # Serial port support
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/swap.h> #include <linux/swap.h>
#include <linux/hugetlb.h> #include <linux/hugetlb.h>
#include <asm/cpu-features.h>
#include <asm/pgtable.h> #include <asm/pgtable.h>
static inline pte_t gup_get_pte(pte_t *ptep) static inline pte_t gup_get_pte(pte_t *ptep)
...@@ -273,7 +274,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write, ...@@ -273,7 +274,7 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,
len = (unsigned long) nr_pages << PAGE_SHIFT; len = (unsigned long) nr_pages << PAGE_SHIFT;
end = start + len; end = start + len;
if (end < start) if (end < start || cpu_has_dc_aliases)
goto slow_irqon; goto slow_irqon;
/* XXX: batch / limit 'nr' */ /* XXX: batch / limit 'nr' */
......
config BOOTLOADER_DRIVER
bool "PowerTV Bootloader Driver Support"
default n
depends on POWERTV
help
Use this option if you want to load bootloader driver.
config BOOTLOADER_FAMILY config BOOTLOADER_FAMILY
string "POWERTV Bootloader Family string" string "POWERTV Bootloader Family string"
default "85" default "85"
depends on POWERTV && !BOOTLOADER_DRIVER depends on POWERTV
help help
This value should be specified when the bootloader driver is disabled This value should be specified when the bootloader driver is disabled
and must be exactly two characters long. Families supported are: and must be exactly two characters long. Families supported are:
......
...@@ -147,20 +147,10 @@ static __init noinline void platform_set_family(void) ...@@ -147,20 +147,10 @@ static __init noinline void platform_set_family(void)
if (check_forcefamily(forced_family) == 0) if (check_forcefamily(forced_family) == 0)
bootldr_family = BOOTLDRFAMILY(forced_family[0], bootldr_family = BOOTLDRFAMILY(forced_family[0],
forced_family[1]); forced_family[1]);
else { else
#ifdef CONFIG_BOOTLOADER_DRIVER
bootldr_family = (unsigned short) kbldr_GetSWFamily();
#else
#if defined(CONFIG_BOOTLOADER_FAMILY)
bootldr_family = (unsigned short) BOOTLDRFAMILY( bootldr_family = (unsigned short) BOOTLDRFAMILY(
CONFIG_BOOTLOADER_FAMILY[0], CONFIG_BOOTLOADER_FAMILY[0],
CONFIG_BOOTLOADER_FAMILY[1]); CONFIG_BOOTLOADER_FAMILY[1]);
#else
#error "Unknown Bootloader Family"
#endif
#endif
}
pr_info("Bootloader Family = 0x%04X\n", bootldr_family); pr_info("Bootloader Family = 0x%04X\n", bootldr_family);
......
...@@ -87,8 +87,4 @@ void __init prom_init(void) ...@@ -87,8 +87,4 @@ void __init prom_init(void)
configure_platform(); configure_platform();
prom_meminit(); prom_meminit();
#ifndef CONFIG_BOOTLOADER_DRIVER
pr_info("\nBootloader driver isn't loaded...\n");
#endif
} }
...@@ -21,24 +21,12 @@ ...@@ -21,24 +21,12 @@
#include <linux/io.h> #include <linux/io.h>
#include <asm/reboot.h> /* Not included by linux/reboot.h */ #include <asm/reboot.h> /* Not included by linux/reboot.h */
#ifdef CONFIG_BOOTLOADER_DRIVER
#include <asm/mach-powertv/kbldr.h>
#endif
#include <asm/mach-powertv/asic_regs.h> #include <asm/mach-powertv/asic_regs.h>
#include "reset.h" #include "reset.h"
static void mips_machine_restart(char *command) static void mips_machine_restart(char *command)
{ {
#ifdef CONFIG_BOOTLOADER_DRIVER
/*
* Call the bootloader's reset function to ensure
* that persistent data is flushed before hard reset
*/
kbldr_SetCauseAndReset();
#else
writel(0x1, asic_reg_addr(watchdog)); writel(0x1, asic_reg_addr(watchdog));
#endif
} }
void mips_reboot_setup(void) void mips_reboot_setup(void)
......
...@@ -350,7 +350,7 @@ static void __init select_board(void) ...@@ -350,7 +350,7 @@ static void __init select_board(void)
} }
/* select "default" board */ /* select "default" board */
#ifdef CONFIG_CPU_TX39XX #ifdef CONFIG_TOSHIBA_JMR3927
txx9_board_vec = &jmr3927_vec; txx9_board_vec = &jmr3927_vec;
#endif #endif
#ifdef CONFIG_CPU_TX49XX #ifdef CONFIG_CPU_TX49XX
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment