pxa3xx.c (2290c0d06d82faee87b1ab2d9d4f7bf81ef64379) pxa3xx.c (157d2644cb0c1e71a18baaffca56d2b1d0ebf10f)
1/*
2 * linux/arch/arm/mach-pxa/pxa3xx.c
3 *
4 * code specific to pxa3xx aka Monahans
5 *
6 * Copyright (C) 2006 Marvell International Ltd.
7 *
8 * 2007-09-02: eric miao <eric.miao@marvell.com>

--- 11 unchanged lines hidden (view full) ---

20#include <linux/irq.h>
21#include <linux/io.h>
22#include <linux/syscore_ops.h>
23#include <linux/i2c/pxa-i2c.h>
24
25#include <asm/mach/map.h>
26#include <asm/suspend.h>
27#include <mach/hardware.h>
1/*
2 * linux/arch/arm/mach-pxa/pxa3xx.c
3 *
4 * code specific to pxa3xx aka Monahans
5 *
6 * Copyright (C) 2006 Marvell International Ltd.
7 *
8 * 2007-09-02: eric miao <eric.miao@marvell.com>

--- 11 unchanged lines hidden (view full) ---

20#include <linux/irq.h>
21#include <linux/io.h>
22#include <linux/syscore_ops.h>
23#include <linux/i2c/pxa-i2c.h>
24
25#include <asm/mach/map.h>
26#include <asm/suspend.h>
27#include <mach/hardware.h>
28#include <mach/gpio-pxa.h>
29#include <mach/pxa3xx-regs.h>
30#include <mach/reset.h>
31#include <mach/ohci.h>
32#include <mach/pm.h>
33#include <mach/dma.h>
34#include <mach/smemc.h>
35
36#include "generic.h"

--- 323 unchanged lines hidden (view full) ---

360static struct irq_chip pxa_ext_wakeup_chip = {
361 .name = "WAKEUP",
362 .irq_ack = pxa_ack_ext_wakeup,
363 .irq_mask = pxa_mask_ext_wakeup,
364 .irq_unmask = pxa_unmask_ext_wakeup,
365 .irq_set_type = pxa_set_ext_wakeup_type,
366};
367
28#include <mach/pxa3xx-regs.h>
29#include <mach/reset.h>
30#include <mach/ohci.h>
31#include <mach/pm.h>
32#include <mach/dma.h>
33#include <mach/smemc.h>
34
35#include "generic.h"

--- 323 unchanged lines hidden (view full) ---

359static struct irq_chip pxa_ext_wakeup_chip = {
360 .name = "WAKEUP",
361 .irq_ack = pxa_ack_ext_wakeup,
362 .irq_mask = pxa_mask_ext_wakeup,
363 .irq_unmask = pxa_unmask_ext_wakeup,
364 .irq_set_type = pxa_set_ext_wakeup_type,
365};
366
368static void __init pxa_init_ext_wakeup_irq(set_wake_t fn)
367static void __init pxa_init_ext_wakeup_irq(int (*fn)(struct irq_data *,
368 unsigned int))
369{
370 int irq;
371
372 for (irq = IRQ_WAKEUP0; irq <= IRQ_WAKEUP1; irq++) {
373 irq_set_chip_and_handler(irq, &pxa_ext_wakeup_chip,
374 handle_edge_irq);
375 set_irq_flags(irq, IRQF_VALID);
376 }

--- 6 unchanged lines hidden (view full) ---

383 /* enable CP6 access */
384 u32 value;
385 __asm__ __volatile__("mrc p15, 0, %0, c15, c1, 0\n": "=r"(value));
386 value |= (1 << 6);
387 __asm__ __volatile__("mcr p15, 0, %0, c15, c1, 0\n": :"r"(value));
388
389 pxa_init_irq(56, pxa3xx_set_wake);
390 pxa_init_ext_wakeup_irq(pxa3xx_set_wake);
369{
370 int irq;
371
372 for (irq = IRQ_WAKEUP0; irq <= IRQ_WAKEUP1; irq++) {
373 irq_set_chip_and_handler(irq, &pxa_ext_wakeup_chip,
374 handle_edge_irq);
375 set_irq_flags(irq, IRQF_VALID);
376 }

--- 6 unchanged lines hidden (view full) ---

383 /* enable CP6 access */
384 u32 value;
385 __asm__ __volatile__("mrc p15, 0, %0, c15, c1, 0\n": "=r"(value));
386 value |= (1 << 6);
387 __asm__ __volatile__("mcr p15, 0, %0, c15, c1, 0\n": :"r"(value));
388
389 pxa_init_irq(56, pxa3xx_set_wake);
390 pxa_init_ext_wakeup_irq(pxa3xx_set_wake);
391 pxa_init_gpio(IRQ_GPIO_2_x, 2, 127, NULL);
392}
393
394static struct map_desc pxa3xx_io_desc[] __initdata = {
395 { /* Mem Ctl */
396 .virtual = (unsigned long)SMEMC_VIRT,
397 .pfn = __phys_to_pfn(PXA3XX_SMEMC_BASE),
398 .length = 0x00200000,
399 .type = MT_DEVICE

--- 12 unchanged lines hidden (view full) ---

412 */
413
414void __init pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info)
415{
416 pxa_register_device(&pxa3xx_device_i2c_power, info);
417}
418
419static struct platform_device *devices[] __initdata = {
391}
392
393static struct map_desc pxa3xx_io_desc[] __initdata = {
394 { /* Mem Ctl */
395 .virtual = (unsigned long)SMEMC_VIRT,
396 .pfn = __phys_to_pfn(PXA3XX_SMEMC_BASE),
397 .length = 0x00200000,
398 .type = MT_DEVICE

--- 12 unchanged lines hidden (view full) ---

411 */
412
413void __init pxa3xx_set_i2c_power_info(struct i2c_pxa_platform_data *info)
414{
415 pxa_register_device(&pxa3xx_device_i2c_power, info);
416}
417
418static struct platform_device *devices[] __initdata = {
419 &pxa_device_gpio,
420 &pxa27x_device_udc,
421 &pxa_device_pmu,
422 &pxa_device_i2s,
423 &pxa_device_asoc_ssp1,
424 &pxa_device_asoc_ssp2,
425 &pxa_device_asoc_ssp3,
426 &pxa_device_asoc_ssp4,
427 &pxa_device_asoc_platform,

--- 45 unchanged lines hidden ---
420 &pxa27x_device_udc,
421 &pxa_device_pmu,
422 &pxa_device_i2s,
423 &pxa_device_asoc_ssp1,
424 &pxa_device_asoc_ssp2,
425 &pxa_device_asoc_ssp3,
426 &pxa_device_asoc_ssp4,
427 &pxa_device_asoc_platform,

--- 45 unchanged lines hidden ---