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
This commit is contained in:
commit
9d21f09ca0
9 changed files with 32 additions and 9 deletions
|
@ -79,7 +79,12 @@ static void __init aaed2000_init(void)
|
|||
}
|
||||
|
||||
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)
|
||||
|
|
|
@ -20,7 +20,6 @@
|
|||
#include <linux/interrupt.h>
|
||||
#include <linux/timex.h>
|
||||
#include <linux/signal.h>
|
||||
#include <linux/amba/bus.h>
|
||||
|
||||
#include <asm/hardware.h>
|
||||
#include <asm/irq.h>
|
||||
|
@ -50,12 +49,12 @@
|
|||
static struct map_desc standard_io_desc[] __initdata = {
|
||||
{
|
||||
.virtual = VIO_APB_BASE,
|
||||
.physical = __phys_to_pfn(PIO_APB_BASE),
|
||||
.pfn = __phys_to_pfn(PIO_APB_BASE),
|
||||
.length = IO_APB_LENGTH,
|
||||
.type = MT_DEVICE
|
||||
}, {
|
||||
.virtual = VIO_AHB_BASE,
|
||||
.physical = __phys_to_pfn(PIO_AHB_BASE),
|
||||
.pfn = __phys_to_pfn(PIO_AHB_BASE),
|
||||
.length = IO_AHB_LENGTH,
|
||||
.type = MT_DEVICE
|
||||
}
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
*
|
||||
*/
|
||||
|
||||
#include <linux/amba/bus.h>
|
||||
#include <linux/amba/clcd.h>
|
||||
|
||||
struct sys_timer;
|
||||
|
|
|
@ -161,7 +161,7 @@ mx1ads_map_io(void)
|
|||
MACHINE_START(MX1ADS, "Motorola MX1ADS")
|
||||
/* Maintainer: Sascha Hauer, Pengutronix */
|
||||
.phys_io = 0x00200000,
|
||||
.io_pg_offst = ((0xe0200000) >> 18) & 0xfffc,
|
||||
.io_pg_offst = ((0xe0000000) >> 18) & 0xfffc,
|
||||
.boot_params = 0x08000100,
|
||||
.map_io = mx1ads_map_io,
|
||||
.init_irq = imx_init_irq,
|
||||
|
|
|
@ -199,10 +199,26 @@ static void sa1100_unmask_irq(unsigned int 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 = {
|
||||
.ack = sa1100_mask_irq,
|
||||
.mask = sa1100_mask_irq,
|
||||
.unmask = sa1100_unmask_irq,
|
||||
.set_wake = sa1100_set_wake,
|
||||
};
|
||||
|
||||
static struct resource irq_resource = {
|
||||
|
|
|
@ -178,9 +178,9 @@ static int sa1100_rtc_open(struct device *dev)
|
|||
return 0;
|
||||
|
||||
fail_pi:
|
||||
free_irq(IRQ_RTCAlrm, NULL);
|
||||
free_irq(IRQ_RTCAlrm, dev);
|
||||
fail_ai:
|
||||
free_irq(IRQ_RTC1Hz, NULL);
|
||||
free_irq(IRQ_RTC1Hz, dev);
|
||||
fail_ui:
|
||||
return ret;
|
||||
}
|
||||
|
@ -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)
|
||||
{
|
||||
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",
|
||||
(RTSR & RTSR_ALE) ? "yes" : "no" );
|
||||
seq_printf(seq, "update_IRQ\t: %s\n",
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include "hardware.h"
|
||||
.macro addruart,rx
|
||||
mrc p15, 0, \rx, c1, c0
|
||||
tst \rx, #1 @ MMU enabled?
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
* published by the Free Software Foundation.
|
||||
*
|
||||
*/
|
||||
#include <asm/arch/irqs.h>
|
||||
|
||||
.macro disable_fiq
|
||||
.endm
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
tst \rx, #1 @ MMU enabled?
|
||||
moveq \rx, #0x00000000 @ physical
|
||||
movne \rx, #0xe0000000 @ virtual
|
||||
orr \rx, \rx, #0x00200000
|
||||
orreq \rx, \rx, #0x00200000 @ physical
|
||||
orr \rx, \rx, #0x00006000 @ UART1 offset
|
||||
.endm
|
||||
|
||||
|
|
Loading…
Reference in a new issue