Skip to content

Commit

Permalink
Merge branch 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm
Browse files Browse the repository at this point in the history
* 'fixes' of master.kernel.org:/home/rmk/linux-2.6-arm:
  ALSA: AACI: fix timeout duration
  ALSA: AACI: fix timeout condition checking
  ARM: 6636/1: ep93xx: default multiplexed gpio ports to gpio mode
  ARM: 6637/1: Make the argument to virt_to_phys() "const volatile"
  ARM: twd: ensure timer reload is reprogrammed on entry to periodic mode
  ARM: 6635/2: Configure reference clock for Versatile Express timers
  ARM: versatile: name configuration options after actual board names
  ARM: realview: name configuration options after actual board names
  ARM: realview,vexpress: fix section mismatch warning for pen_release
  ARM: 6632/3: mmci: stop using the blockend interrupts
  • Loading branch information
Linus Torvalds committed Jan 25, 2011
2 parents 3af0365 + 2f8e728 commit 6663050
Show file tree
Hide file tree
Showing 12 changed files with 107 additions and 138 deletions.
6 changes: 6 additions & 0 deletions arch/arm/include/asm/hardware/sp810.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,12 @@
#define SCPCELLID2 0xFF8
#define SCPCELLID3 0xFFC

#define SCCTRL_TIMEREN0SEL_REFCLK (0 << 15)
#define SCCTRL_TIMEREN0SEL_TIMCLK (1 << 15)

#define SCCTRL_TIMEREN1SEL_REFCLK (0 << 17)
#define SCCTRL_TIMEREN1SEL_TIMCLK (1 << 17)

static inline void sysctl_soft_reset(void __iomem *base)
{
/* writing any value to SCSYSSTAT reg will reset system */
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/include/asm/memory.h
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@
* translation for translating DMA addresses. Use the driver
* DMA support - see dma-mapping.h.
*/
static inline unsigned long virt_to_phys(void *x)
static inline unsigned long virt_to_phys(const volatile void *x)
{
return __virt_to_phys((unsigned long)(x));
}
Expand Down
7 changes: 2 additions & 5 deletions arch/arm/kernel/smp_twd.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@ static void twd_set_mode(enum clock_event_mode mode,
/* timer load already set up */
ctrl = TWD_TIMER_CONTROL_ENABLE | TWD_TIMER_CONTROL_IT_ENABLE
| TWD_TIMER_CONTROL_PERIODIC;
__raw_writel(twd_timer_rate / HZ, twd_base + TWD_TIMER_LOAD);
break;
case CLOCK_EVT_MODE_ONESHOT:
/* period set, and timer enabled in 'next_event' hook */
Expand Down Expand Up @@ -81,7 +82,7 @@ int twd_timer_ack(void)

static void __cpuinit twd_calibrate_rate(void)
{
unsigned long load, count;
unsigned long count;
u64 waitjiffies;

/*
Expand Down Expand Up @@ -116,10 +117,6 @@ static void __cpuinit twd_calibrate_rate(void)
printk("%lu.%02luMHz.\n", twd_timer_rate / 1000000,
(twd_timer_rate / 1000000) % 100);
}

load = twd_timer_rate / HZ;

__raw_writel(load, twd_base + TWD_TIMER_LOAD);
}

/*
Expand Down
7 changes: 7 additions & 0 deletions arch/arm/mach-ep93xx/gpio.c
Original file line number Diff line number Diff line change
Expand Up @@ -427,6 +427,13 @@ void __init ep93xx_gpio_init(void)
{
int i;

/* Set Ports C, D, E, G, and H for GPIO use */
ep93xx_devcfg_set_bits(EP93XX_SYSCON_DEVCFG_KEYS |
EP93XX_SYSCON_DEVCFG_GONK |
EP93XX_SYSCON_DEVCFG_EONIDE |
EP93XX_SYSCON_DEVCFG_GONIDE |
EP93XX_SYSCON_DEVCFG_HONIDE);

for (i = 0; i < ARRAY_SIZE(ep93xx_gpio_banks); i++)
gpiochip_add(&ep93xx_gpio_banks[i].chip);
}
49 changes: 27 additions & 22 deletions arch/arm/mach-realview/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,52 +2,56 @@ menu "RealView platform type"
depends on ARCH_REALVIEW

config MACH_REALVIEW_EB
bool "Support RealView/EB platform"
bool "Support RealView(R) Emulation Baseboard"
select ARM_GIC
help
Include support for the ARM(R) RealView Emulation Baseboard platform.
Include support for the ARM(R) RealView(R) Emulation Baseboard
platform.

config REALVIEW_EB_A9MP
bool "Support Multicore Cortex-A9"
bool "Support Multicore Cortex-A9 Tile"
depends on MACH_REALVIEW_EB
select CPU_V7
help
Enable support for the Cortex-A9MPCore tile on the Realview platform.
Enable support for the Cortex-A9MPCore tile fitted to the
Realview(R) Emulation Baseboard platform.

config REALVIEW_EB_ARM11MP
bool "Support ARM11MPCore tile"
bool "Support ARM11MPCore Tile"
depends on MACH_REALVIEW_EB
select CPU_V6
select ARCH_HAS_BARRIERS if SMP
help
Enable support for the ARM11MPCore tile on the Realview platform.
Enable support for the ARM11MPCore tile fitted to the Realview(R)
Emulation Baseboard platform.

config REALVIEW_EB_ARM11MP_REVB
bool "Support ARM11MPCore RevB tile"
bool "Support ARM11MPCore RevB Tile"
depends on REALVIEW_EB_ARM11MP
help
Enable support for the ARM11MPCore RevB tile on the Realview
platform. Since there are device address differences, a
kernel built with this option enabled is not compatible with
other revisions of the ARM11MPCore tile.
Enable support for the ARM11MPCore Revision B tile on the
Realview(R) Emulation Baseboard platform. Since there are device
address differences, a kernel built with this option enabled is
not compatible with other revisions of the ARM11MPCore tile.

config MACH_REALVIEW_PB11MP
bool "Support RealView/PB11MPCore platform"
bool "Support RealView(R) Platform Baseboard for ARM11MPCore"
select CPU_V6
select ARM_GIC
select HAVE_PATA_PLATFORM
select ARCH_HAS_BARRIERS if SMP
help
Include support for the ARM(R) RealView MPCore Platform Baseboard.
PB11MPCore is a platform with an on-board ARM11MPCore and has
Include support for the ARM(R) RealView(R) Platform Baseboard for
the ARM11MPCore. This platform has an on-board ARM11MPCore and has
support for PCI-E and Compact Flash.

config MACH_REALVIEW_PB1176
bool "Support RealView/PB1176 platform"
bool "Support RealView(R) Platform Baseboard for ARM1176JZF-S"
select CPU_V6
select ARM_GIC
help
Include support for the ARM(R) RealView ARM1176 Platform Baseboard.
Include support for the ARM(R) RealView(R) Platform Baseboard for
ARM1176JZF-S.

config REALVIEW_PB1176_SECURE_FLASH
bool "Allow access to the secure flash memory block"
Expand All @@ -59,23 +63,24 @@ config REALVIEW_PB1176_SECURE_FLASH
block (64MB @ 0x3c000000) is required.

config MACH_REALVIEW_PBA8
bool "Support RealView/PB-A8 platform"
bool "Support RealView(R) Platform Baseboard for Cortex(tm)-A8 platform"
select CPU_V7
select ARM_GIC
select HAVE_PATA_PLATFORM
help
Include support for the ARM(R) RealView Cortex-A8 Platform Baseboard.
PB-A8 is a platform with an on-board Cortex-A8 and has support for
PCI-E and Compact Flash.
Include support for the ARM(R) RealView Platform Baseboard for
Cortex(tm)-A8. This platform has an on-board Cortex-A8 and has
support for PCI-E and Compact Flash.

config MACH_REALVIEW_PBX
bool "Support RealView/PBX platform"
bool "Support RealView(R) Platform Baseboard Explore"
select ARM_GIC
select HAVE_PATA_PLATFORM
select ARCH_SPARSEMEM_ENABLE if CPU_V7 && !REALVIEW_HIGH_PHYS_OFFSET
select ZONE_DMA if SPARSEMEM
help
Include support for the ARM(R) RealView PBX platform.
Include support for the ARM(R) RealView(R) Platform Baseboard
Explore.

config REALVIEW_HIGH_PHYS_OFFSET
bool "High physical base address for the RealView platform"
Expand Down
2 changes: 1 addition & 1 deletion arch/arm/mach-realview/platsmp.c
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ volatile int __cpuinitdata pen_release = -1;
* observers, irrespective of whether they're taking part in coherency
* or not. This is necessary for the hotplug code to work reliably.
*/
static void write_pen_release(int val)
static void __cpuinit write_pen_release(int val)
{
pen_release = val;
smp_wmb();
Expand Down
10 changes: 6 additions & 4 deletions arch/arm/mach-versatile/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,19 @@ menu "Versatile platform type"
depends on ARCH_VERSATILE

config ARCH_VERSATILE_PB
bool "Support Versatile/PB platform"
bool "Support Versatile Platform Baseboard for ARM926EJ-S"
select CPU_ARM926T
select MIGHT_HAVE_PCI
default y
help
Include support for the ARM(R) Versatile/PB platform.
Include support for the ARM(R) Versatile Platform Baseboard
for the ARM926EJ-S.

config MACH_VERSATILE_AB
bool "Support Versatile/AB platform"
bool "Support Versatile Application Baseboard for ARM926EJ-S"
select CPU_ARM926T
help
Include support for the ARM(R) Versatile/AP platform.
Include support for the ARM(R) Versatile Application Baseboard
for the ARM926EJ-S.

endmenu
2 changes: 1 addition & 1 deletion arch/arm/mach-vexpress/platsmp.c
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ volatile int __cpuinitdata pen_release = -1;
* observers, irrespective of whether they're taking part in coherency
* or not. This is necessary for the hotplug code to work reliably.
*/
static void write_pen_release(int val)
static void __cpuinit write_pen_release(int val)
{
pen_release = val;
smp_wmb();
Expand Down
9 changes: 9 additions & 0 deletions arch/arm/mach-vexpress/v2m.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <asm/mach/time.h>
#include <asm/hardware/arm_timer.h>
#include <asm/hardware/timer-sp.h>
#include <asm/hardware/sp810.h>

#include <mach/motherboard.h>

Expand Down Expand Up @@ -50,8 +51,16 @@ void __init v2m_map_io(struct map_desc *tile, size_t num)

static void __init v2m_timer_init(void)
{
u32 scctrl;

versatile_sched_clock_init(MMIO_P2V(V2M_SYS_24MHZ), 24000000);

/* Select 1MHz TIMCLK as the reference clock for SP804 timers */
scctrl = readl(MMIO_P2V(V2M_SYSCTL + SCCTRL));
scctrl |= SCCTRL_TIMEREN0SEL_TIMCLK;
scctrl |= SCCTRL_TIMEREN1SEL_TIMCLK;
writel(scctrl, MMIO_P2V(V2M_SYSCTL + SCCTRL));

writel(0, MMIO_P2V(V2M_TIMER0) + TIMER_CTRL);
writel(0, MMIO_P2V(V2M_TIMER1) + TIMER_CTRL);

Expand Down
Loading

0 comments on commit 6663050

Please sign in to comment.