Commit 9d21f09c authored by Linus Torvalds's avatar Linus Torvalds

Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 3507/1: Replace map_desc.physical with map_desc.pfn: aaed2000
  [ARM] 3506/1: aaec2000: debug-macro.S needs hardware.h
  [ARM] 3505/1: aaec2000: entry-macro.S needs asm/arch/irqs.h
  [ARM] 3504/1: Fix clcd includes for aaec2000
  [ARM] 3503/1: Fix map_desc structure for aaec2000
  [ARM] 3501/1: i.MX: fix lowlevel debug macros
  [ARM] rtc-sa1100: fix compiler warnings and error cleanup
  [ARM] Allow SA1100 RTC alarm to be configured for wakeup
parents f5b40e36 74fae122
...@@ -79,7 +79,12 @@ static void __init aaed2000_init(void) ...@@ -79,7 +79,12 @@ static void __init aaed2000_init(void)
} }
static struct map_desc aaed2000_io_desc[] __initdata = { static struct map_desc aaed2000_io_desc[] __initdata = {
{ EXT_GPIO_VBASE, EXT_GPIO_PBASE, EXT_GPIO_LENGTH, MT_DEVICE }, /* Ext GPIO */ {
.virtual = EXT_GPIO_VBASE,
.pfn = __phys_to_pfn(EXT_GPIO_PBASE),
.length = EXT_GPIO_LENGTH,
.type = MT_DEVICE
},
}; };
static void __init aaed2000_map_io(void) static void __init aaed2000_map_io(void)
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
#include <linux/interrupt.h> #include <linux/interrupt.h>
#include <linux/timex.h> #include <linux/timex.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/amba/bus.h>
#include <asm/hardware.h> #include <asm/hardware.h>
#include <asm/irq.h> #include <asm/irq.h>
...@@ -50,12 +49,12 @@ ...@@ -50,12 +49,12 @@
static struct map_desc standard_io_desc[] __initdata = { static struct map_desc standard_io_desc[] __initdata = {
{ {
.virtual = VIO_APB_BASE, .virtual = VIO_APB_BASE,
.physical = __phys_to_pfn(PIO_APB_BASE), .pfn = __phys_to_pfn(PIO_APB_BASE),
.length = IO_APB_LENGTH, .length = IO_APB_LENGTH,
.type = MT_DEVICE .type = MT_DEVICE
}, { }, {
.virtual = VIO_AHB_BASE, .virtual = VIO_AHB_BASE,
.physical = __phys_to_pfn(PIO_AHB_BASE), .pfn = __phys_to_pfn(PIO_AHB_BASE),
.length = IO_AHB_LENGTH, .length = IO_AHB_LENGTH,
.type = MT_DEVICE .type = MT_DEVICE
} }
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
* *
*/ */
#include <linux/amba/bus.h>
#include <linux/amba/clcd.h> #include <linux/amba/clcd.h>
struct sys_timer; struct sys_timer;
......
...@@ -161,7 +161,7 @@ mx1ads_map_io(void) ...@@ -161,7 +161,7 @@ mx1ads_map_io(void)
MACHINE_START(MX1ADS, "Motorola MX1ADS") MACHINE_START(MX1ADS, "Motorola MX1ADS")
/* Maintainer: Sascha Hauer, Pengutronix */ /* Maintainer: Sascha Hauer, Pengutronix */
.phys_io = 0x00200000, .phys_io = 0x00200000,
.io_pg_offst = ((0xe0200000) >> 18) & 0xfffc, .io_pg_offst = ((0xe0000000) >> 18) & 0xfffc,
.boot_params = 0x08000100, .boot_params = 0x08000100,
.map_io = mx1ads_map_io, .map_io = mx1ads_map_io,
.init_irq = imx_init_irq, .init_irq = imx_init_irq,
......
...@@ -199,10 +199,26 @@ static void sa1100_unmask_irq(unsigned int irq) ...@@ -199,10 +199,26 @@ static void sa1100_unmask_irq(unsigned int irq)
ICMR |= (1 << irq); ICMR |= (1 << irq);
} }
/*
* Apart form GPIOs, only the RTC alarm can be a wakeup event.
*/
static int sa1100_set_wake(unsigned int irq, unsigned int on)
{
if (irq == IRQ_RTCAlrm) {
if (on)
PWER |= PWER_RTC;
else
PWER &= ~PWER_RTC;
return 0;
}
return -EINVAL;
}
static struct irqchip sa1100_normal_chip = { static struct irqchip sa1100_normal_chip = {
.ack = sa1100_mask_irq, .ack = sa1100_mask_irq,
.mask = sa1100_mask_irq, .mask = sa1100_mask_irq,
.unmask = sa1100_unmask_irq, .unmask = sa1100_unmask_irq,
.set_wake = sa1100_set_wake,
}; };
static struct resource irq_resource = { static struct resource irq_resource = {
......
...@@ -178,9 +178,9 @@ static int sa1100_rtc_open(struct device *dev) ...@@ -178,9 +178,9 @@ static int sa1100_rtc_open(struct device *dev)
return 0; return 0;
fail_pi: fail_pi:
free_irq(IRQ_RTCAlrm, NULL); free_irq(IRQ_RTCAlrm, dev);
fail_ai: fail_ai:
free_irq(IRQ_RTC1Hz, NULL); free_irq(IRQ_RTC1Hz, dev);
fail_ui: fail_ui:
return ret; return ret;
} }
...@@ -295,7 +295,7 @@ static int sa1100_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm) ...@@ -295,7 +295,7 @@ static int sa1100_rtc_set_alarm(struct device *dev, struct rtc_wkalrm *alrm)
static int sa1100_rtc_proc(struct device *dev, struct seq_file *seq) static int sa1100_rtc_proc(struct device *dev, struct seq_file *seq)
{ {
seq_printf(seq, "trim/divider\t: 0x%08x\n", RTTR); seq_printf(seq, "trim/divider\t: 0x%08lx\n", RTTR);
seq_printf(seq, "alarm_IRQ\t: %s\n", seq_printf(seq, "alarm_IRQ\t: %s\n",
(RTSR & RTSR_ALE) ? "yes" : "no" ); (RTSR & RTSR_ALE) ? "yes" : "no" );
seq_printf(seq, "update_IRQ\t: %s\n", seq_printf(seq, "update_IRQ\t: %s\n",
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#include "hardware.h"
.macro addruart,rx .macro addruart,rx
mrc p15, 0, \rx, c1, c0 mrc p15, 0, \rx, c1, c0
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
* *
*/ */
#include <asm/arch/irqs.h>
.macro disable_fiq .macro disable_fiq
.endm .endm
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
tst \rx, #1 @ MMU enabled? tst \rx, #1 @ MMU enabled?
moveq \rx, #0x00000000 @ physical moveq \rx, #0x00000000 @ physical
movne \rx, #0xe0000000 @ virtual movne \rx, #0xe0000000 @ virtual
orr \rx, \rx, #0x00200000 orreq \rx, \rx, #0x00200000 @ physical
orr \rx, \rx, #0x00006000 @ UART1 offset orr \rx, \rx, #0x00006000 @ UART1 offset
.endm .endm
......
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