diff options
author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-03 05:35:15 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-04-03 05:35:15 -0700 |
commit | e44f4fdbfd425af573a8b2230ca8a0dc5028860a (patch) | |
tree | 6a486ae1b4d2bab5c48714d255d680ce3a16f37e | |
parent | 7e5c20f55fb68ec55423d2b1dc396dc2fc503818 (diff) | |
parent | 78b40ce3a76a8f484818bd98adf7a8030e93bcb6 (diff) | |
download | history-e44f4fdbfd425af573a8b2230ca8a0dc5028860a.tar.gz |
Merge bk://bk.arm.linux.org.uk/linux-2.6-rmk
into ppc970.osdl.org:/home/torvalds/v2.6/linux
27 files changed, 149 insertions, 139 deletions
diff --git a/arch/arm/common/Kconfig b/arch/arm/common/Kconfig index 7f5df795881dff..692af6b5e8ff25 100644 --- a/arch/arm/common/Kconfig +++ b/arch/arm/common/Kconfig @@ -17,5 +17,8 @@ config TIMER_ACORN config SHARP_LOCOMO bool +config SHARP_PARAM + bool + config SHARP_SCOOP bool diff --git a/arch/arm/common/Makefile b/arch/arm/common/Makefile index ba4a9d3957ccee..11f20a43ee3aa8 100644 --- a/arch/arm/common/Makefile +++ b/arch/arm/common/Makefile @@ -11,4 +11,5 @@ obj-$(CONFIG_PCI_HOST_VIA82C505) += via82c505.o obj-$(CONFIG_DMABOUNCE) += dmabounce.o obj-$(CONFIG_TIMER_ACORN) += time-acorn.o obj-$(CONFIG_SHARP_LOCOMO) += locomo.o +obj-$(CONFIG_SHARP_PARAM) += sharpsl_param.o obj-$(CONFIG_SHARP_SCOOP) += scoop.o diff --git a/arch/arm/common/sa1111.c b/arch/arm/common/sa1111.c index 37a39f229236d8..21fce3414ed1e2 100644 --- a/arch/arm/common/sa1111.c +++ b/arch/arm/common/sa1111.c @@ -800,7 +800,7 @@ struct sa1111_save_data { #ifdef CONFIG_PM -static int sa1111_suspend(struct device *dev, u32 state, u32 level) +static int sa1111_suspend(struct device *dev, pm_message_t state, u32 level) { struct sa1111 *sachip = dev_get_drvdata(dev); struct sa1111_save_data *save; diff --git a/arch/arm/common/sharpsl_param.c b/arch/arm/common/sharpsl_param.c new file mode 100644 index 00000000000000..c2c557a224c2af --- /dev/null +++ b/arch/arm/common/sharpsl_param.c @@ -0,0 +1,60 @@ +/* + * Hardware parameter area specific to Sharp SL series devices + * + * Copyright (c) 2005 Richard Purdie + * + * Based on Sharp's 2.4 kernel patches + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + */ + +#include <linux/kernel.h> +#include <linux/string.h> +#include <asm/mach/sharpsl_param.h> + +/* + * Certain hardware parameters determined at the time of device manufacture, + * typically including LCD parameters are loaded by the bootloader at the + * address PARAM_BASE. As the kernel will overwrite them, we need to store + * them early in the boot process, then pass them to the appropriate drivers. + * Not all devices use all paramaters but the format is common to all. + */ +#ifdef ARCH_SA1100 +#define PARAM_BASE 0xe8ffc000 +#else +#define PARAM_BASE 0xa0000a00 +#endif +#define MAGIC_CHG(a,b,c,d) ( ( d << 24 ) | ( c << 16 ) | ( b << 8 ) | a ) + +#define COMADJ_MAGIC MAGIC_CHG('C','M','A','D') +#define UUID_MAGIC MAGIC_CHG('U','U','I','D') +#define TOUCH_MAGIC MAGIC_CHG('T','U','C','H') +#define AD_MAGIC MAGIC_CHG('B','V','A','D') +#define PHAD_MAGIC MAGIC_CHG('P','H','A','D') + +struct sharpsl_param_info sharpsl_param; + +void sharpsl_save_param(void) +{ + memcpy(&sharpsl_param, (void *)PARAM_BASE, sizeof(struct sharpsl_param_info)); + + if (sharpsl_param.comadj_keyword != COMADJ_MAGIC) + sharpsl_param.comadj=-1; + + if (sharpsl_param.phad_keyword != PHAD_MAGIC) + sharpsl_param.phadadj=-1; + + if (sharpsl_param.uuid_keyword != UUID_MAGIC) + sharpsl_param.uuid[0]=-1; + + if (sharpsl_param.touch_keyword != TOUCH_MAGIC) + sharpsl_param.touch_xp=-1; + + if (sharpsl_param.adadj_keyword != AD_MAGIC) + sharpsl_param.adadj=-1; +} + + diff --git a/arch/arm/kernel/time.c b/arch/arm/kernel/time.c index 3c62021fc838c3..c232f24f4a6004 100644 --- a/arch/arm/kernel/time.c +++ b/arch/arm/kernel/time.c @@ -178,7 +178,7 @@ static ssize_t leds_store(struct sys_device *dev, const char *buf, size_t size) static SYSDEV_ATTR(event, 0200, NULL, leds_store); -static int leds_suspend(struct sys_device *dev, u32 state) +static int leds_suspend(struct sys_device *dev, pm_message_t state) { leds_event(led_stop); return 0; @@ -351,7 +351,7 @@ void timer_tick(struct pt_regs *regs) } #ifdef CONFIG_PM -static int timer_suspend(struct sys_device *dev, u32 state) +static int timer_suspend(struct sys_device *dev, pm_message_t state) { struct sys_timer *timer = container_of(dev, struct sys_timer, dev); diff --git a/arch/arm/mach-integrator/integrator_ap.c b/arch/arm/mach-integrator/integrator_ap.c index 219ae5080a3079..91ba9fd79c87c7 100644 --- a/arch/arm/mach-integrator/integrator_ap.c +++ b/arch/arm/mach-integrator/integrator_ap.c @@ -137,7 +137,7 @@ static void __init ap_init_irq(void) #ifdef CONFIG_PM static unsigned long ic_irq_enable; -static int irq_suspend(struct sys_device *dev, u32 state) +static int irq_suspend(struct sys_device *dev, pm_message_t state) { ic_irq_enable = readl(VA_IC_BASE + IRQ_ENABLE); return 0; diff --git a/arch/arm/mach-integrator/time.c b/arch/arm/mach-integrator/time.c index 249581f88f5ecf..20729de2af285d 100644 --- a/arch/arm/mach-integrator/time.c +++ b/arch/arm/mach-integrator/time.c @@ -158,7 +158,7 @@ static int rtc_remove(struct amba_device *dev) static struct timespec rtc_delta; -static int rtc_suspend(struct amba_device *dev, u32 state) +static int rtc_suspend(struct amba_device *dev, pm_message_t state) { struct timespec rtc; diff --git a/arch/arm/mach-pxa/Kconfig b/arch/arm/mach-pxa/Kconfig index c437660bf92f82..405a55f2287cc8 100644 --- a/arch/arm/mach-pxa/Kconfig +++ b/arch/arm/mach-pxa/Kconfig @@ -23,6 +23,7 @@ config PXA_SHARPSL bool "SHARP SL-5600 and SL-C7xx Models" select PXA25x select SHARP_SCOOP + select SHARP_PARAM help Say Y here if you intend to run this kernel on a Sharp SL-5600 (Poodle), Sharp SL-C700 (Corgi), diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c index 94841068a688e5..f691cf77d3908a 100644 --- a/arch/arm/mach-pxa/corgi.c +++ b/arch/arm/mach-pxa/corgi.c @@ -37,6 +37,7 @@ #include <asm/arch/udc.h> #include <asm/arch/corgi.h> +#include <asm/mach/sharpsl_param.h> #include <asm/hardware/scoop.h> #include <video/w100fb.h> @@ -231,28 +232,10 @@ static struct platform_device *devices[] __initdata = { &corgibl_device, }; -static struct sharpsl_flash_param_info sharpsl_flash_param; - -static void corgi_get_param(void) -{ - sharpsl_flash_param.comadj_keyword = readl(FLASH_MEM_BASE + FLASH_COMADJ_MAGIC_ADR); - sharpsl_flash_param.comadj = readl(FLASH_MEM_BASE + FLASH_COMADJ_DATA_ADR); - - sharpsl_flash_param.phad_keyword = readl(FLASH_MEM_BASE + FLASH_PHAD_MAGIC_ADR); - sharpsl_flash_param.phadadj = readl(FLASH_MEM_BASE + FLASH_PHAD_DATA_ADR); -} - static void __init corgi_init(void) { - if (sharpsl_flash_param.comadj_keyword == FLASH_COMADJ_MAJIC) - corgi_fb_info.comadj=sharpsl_flash_param.comadj; - else - corgi_fb_info.comadj=-1; - - if (sharpsl_flash_param.phad_keyword == FLASH_PHAD_MAJIC) - corgi_fb_info.phadadj=sharpsl_flash_param.phadadj; - else - corgi_fb_info.phadadj=-1; + corgi_fb_info.comadj=sharpsl_param.comadj; + corgi_fb_info.phadadj=sharpsl_param.phadadj; pxa_gpio_mode(CORGI_GPIO_USB_PULLUP | GPIO_OUT); pxa_set_udc_info(&udc_info); @@ -264,7 +247,7 @@ static void __init corgi_init(void) static void __init fixup_corgi(struct machine_desc *desc, struct tag *tags, char **cmdline, struct meminfo *mi) { - corgi_get_param(); + sharpsl_save_param(); mi->nr_banks=1; mi->bank[0].start = 0xa0000000; mi->bank[0].node = 0; diff --git a/arch/arm/mach-pxa/corgi_ssp.c b/arch/arm/mach-pxa/corgi_ssp.c index 9e01883025d6aa..8ccffba0018fa5 100644 --- a/arch/arm/mach-pxa/corgi_ssp.c +++ b/arch/arm/mach-pxa/corgi_ssp.c @@ -210,7 +210,7 @@ static int corgi_ssp_remove(struct device *dev) return 0; } -static int corgi_ssp_suspend(struct device *dev, u32 state, u32 level) +static int corgi_ssp_suspend(struct device *dev, pm_message_t state, u32 level) { if (level == SUSPEND_POWER_DOWN) { ssp_flush(&corgi_ssp_dev); diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c index 5ee67808224a9f..b6c746ea38305b 100644 --- a/arch/arm/mach-pxa/poodle.c +++ b/arch/arm/mach-pxa/poodle.c @@ -35,6 +35,7 @@ #include <asm/hardware/scoop.h> #include <asm/hardware/locomo.h> +#include <asm/mach/sharpsl_param.h> #include "generic.h" @@ -152,6 +153,12 @@ static void __init poodle_init(void) } } +static void __init fixup_poodle(struct machine_desc *desc, + struct tag *tags, char **cmdline, struct meminfo *mi) +{ + sharpsl_save_param(); +} + static struct map_desc poodle_io_desc[] __initdata = { /* virtual physical length */ { 0xef800000, 0x00000000, 0x00800000, MT_DEVICE }, /* Boot Flash */ @@ -174,6 +181,7 @@ static void __init poodle_map_io(void) MACHINE_START(POODLE, "SHARP Poodle") BOOT_MEM(0xa0000000, 0x40000000, io_p2v(0x40000000)) + FIXUP(fixup_poodle) MAPIO(poodle_map_io) INITIRQ(pxa_init_irq) .timer = &pxa_timer, diff --git a/arch/arm/mach-s3c2410/dma.c b/arch/arm/mach-s3c2410/dma.c index 5ecfa583711601..bc229fab86d446 100644 --- a/arch/arm/mach-s3c2410/dma.c +++ b/arch/arm/mach-s3c2410/dma.c @@ -1092,7 +1092,7 @@ EXPORT_SYMBOL(s3c2410_dma_getposition); #ifdef CONFIG_PM -static int s3c2410_dma_suspend(struct sys_device *dev, u32 state) +static int s3c2410_dma_suspend(struct sys_device *dev, pm_message_t state) { s3c2410_dma_chan_t *cp = container_of(dev, s3c2410_dma_chan_t, dev); diff --git a/arch/arm/mach-s3c2410/mach-rx3715.c b/arch/arm/mach-s3c2410/mach-rx3715.c index 26e2d86cdd03c4..f8d3a9784e711b 100644 --- a/arch/arm/mach-s3c2410/mach-rx3715.c +++ b/arch/arm/mach-s3c2410/mach-rx3715.c @@ -54,6 +54,16 @@ static struct map_desc rx3715_iodesc[] __initdata = { { (u32)S3C24XX_VA_ISA_BYTE, S3C2410_CS3, SZ_16M, MT_DEVICE }, }; + +static struct s3c24xx_uart_clksrc rx3715_serial_clocks[] = { + [0] = { + .name = "fclk", + .divisor = 0, + .min_baud = 0, + .max_baud = 0, + } +}; + static struct s3c2410_uartcfg rx3715_uartcfgs[] = { [0] = { .hwport = 0, @@ -61,6 +71,8 @@ static struct s3c2410_uartcfg rx3715_uartcfgs[] = { .ucon = 0x3c5, .ulcon = 0x03, .ufcon = 0x51, + .clocks = rx3715_serial_clocks, + .clocks_size = ARRAY_SIZE(rx3715_serial_clocks), }, [1] = { .hwport = 1, @@ -68,6 +80,8 @@ static struct s3c2410_uartcfg rx3715_uartcfgs[] = { .ucon = 0x3c5, .ulcon = 0x03, .ufcon = 0x00, + .clocks = rx3715_serial_clocks, + .clocks_size = ARRAY_SIZE(rx3715_serial_clocks), }, /* IR port */ [2] = { @@ -76,6 +90,8 @@ static struct s3c2410_uartcfg rx3715_uartcfgs[] = { .ucon = 0x3c5, .ulcon = 0x43, .ufcon = 0x51, + .clocks = rx3715_serial_clocks, + .clocks_size = ARRAY_SIZE(rx3715_serial_clocks), } }; diff --git a/arch/arm/mach-s3c2410/s3c2440.c b/arch/arm/mach-s3c2410/s3c2440.c index 7799d81494615c..9a8cc5ae225566 100644 --- a/arch/arm/mach-s3c2410/s3c2440.c +++ b/arch/arm/mach-s3c2410/s3c2440.c @@ -159,7 +159,7 @@ struct sleep_save s3c2440_sleep[] = { SAVE_ITEM(S3C2440_GPJUP) }; -static int s3c2440_suspend(struct sys_device *dev, u32 state) +static int s3c2440_suspend(struct sys_device *dev, pm_message_t state) { s3c2410_pm_do_save(s3c2440_sleep, ARRAY_SIZE(s3c2440_sleep)); return 0; diff --git a/arch/arm/mach-sa1100/Kconfig b/arch/arm/mach-sa1100/Kconfig index 5178cde08ab969..50cde576dadfc9 100644 --- a/arch/arm/mach-sa1100/Kconfig +++ b/arch/arm/mach-sa1100/Kconfig @@ -47,6 +47,7 @@ config SA1100_COLLIE bool "Sharp Zaurus SL5500" select SHARP_LOCOMO select SHARP_SCOOP + select SHARP_PARAM help Say Y here to support the Sharp Zaurus SL5500 PDAs. diff --git a/arch/arm/mach-sa1100/collie.c b/arch/arm/mach-sa1100/collie.c index da9412c5d385ee..99287890d3964e 100644 --- a/arch/arm/mach-sa1100/collie.c +++ b/arch/arm/mach-sa1100/collie.c @@ -38,6 +38,7 @@ #include <asm/mach/serial_sa1100.h> #include <asm/hardware/scoop.h> +#include <asm/mach/sharpsl_param.h> #include <asm/hardware/locomo.h> #include "generic.h" @@ -166,6 +167,8 @@ static void __init collie_init(void) sa11x0_set_flash_data(&collie_flash_data, collie_flash_resources, ARRAY_SIZE(collie_flash_resources)); + + sharpsl_save_param(); } static struct map_desc collie_io_desc[] __initdata = { diff --git a/arch/arm/mach-sa1100/irq.c b/arch/arm/mach-sa1100/irq.c index 64dd21cfba4311..66a929cb7bc5ba 100644 --- a/arch/arm/mach-sa1100/irq.c +++ b/arch/arm/mach-sa1100/irq.c @@ -218,7 +218,7 @@ static struct sa1100irq_state { unsigned int iccr; } sa1100irq_state; -static int sa1100irq_suspend(struct sys_device *dev, u32 state) +static int sa1100irq_suspend(struct sys_device *dev, pm_message_t state) { struct sa1100irq_state *st = &sa1100irq_state; diff --git a/arch/arm/mach-sa1100/neponset.c b/arch/arm/mach-sa1100/neponset.c index 6ffa50151a8c31..1405383463ea75 100644 --- a/arch/arm/mach-sa1100/neponset.c +++ b/arch/arm/mach-sa1100/neponset.c @@ -178,7 +178,7 @@ static int neponset_probe(struct device *dev) /* * LDM power management. */ -static int neponset_suspend(struct device *dev, u32 state, u32 level) +static int neponset_suspend(struct device *dev, pm_message_t state, u32 level) { /* * Save state. diff --git a/arch/arm/oprofile/common.c b/arch/arm/oprofile/common.c index 615a3ccfea5cbe..e57dde88289813 100644 --- a/arch/arm/oprofile/common.c +++ b/arch/arm/oprofile/common.c @@ -26,7 +26,7 @@ static void pmu_stop(void); static int pmu_create_files(struct super_block *, struct dentry *); #ifdef CONFIG_PM -static int pmu_suspend(struct sys_device *dev, u32 state) +static int pmu_suspend(struct sys_device *dev, pm_message_t state) { if (pmu_enabled) pmu_stop(); diff --git a/include/asm-arm/arch-integrator/lm.h b/include/asm-arm/arch-integrator/lm.h index d792b112974cda..28186b6f2c0962 100644 --- a/include/asm-arm/arch-integrator/lm.h +++ b/include/asm-arm/arch-integrator/lm.h @@ -10,7 +10,7 @@ struct lm_driver { struct device_driver drv; int (*probe)(struct lm_device *); void (*remove)(struct lm_device *); - int (*suspend)(struct lm_device *, u32); + int (*suspend)(struct lm_device *, pm_message_t); int (*resume)(struct lm_device *); }; diff --git a/include/asm-arm/arch-pxa/corgi.h b/include/asm-arm/arch-pxa/corgi.h index 4f69467327d1e2..324db06b5dd4b2 100644 --- a/include/asm-arm/arch-pxa/corgi.h +++ b/include/asm-arm/arch-pxa/corgi.h @@ -100,40 +100,6 @@ /* - * Corgi Parameter Area Definitions - */ -#define FLASH_MEM_BASE 0xa0000a00 -#define FLASH_MAGIC_CHG(a,b,c,d) ( ( d << 24 ) | ( c << 16 ) | ( b << 8 ) | a ) - -#define FLASH_COMADJ_MAJIC FLASH_MAGIC_CHG('C','M','A','D') -#define FLASH_COMADJ_MAGIC_ADR 0x00 -#define FLASH_COMADJ_DATA_ADR 0x04 - -#define FLASH_PHAD_MAJIC FLASH_MAGIC_CHG('P','H','A','D') -#define FLASH_PHAD_MAGIC_ADR 0x38 -#define FLASH_PHAD_DATA_ADR 0x3C - -struct sharpsl_flash_param_info { - unsigned int comadj_keyword; - unsigned int comadj; - - unsigned int uuid_keyword; - unsigned char uuid[16]; - - unsigned int touch_keyword; - unsigned int touch1; - unsigned int touch2; - unsigned int touch3; - unsigned int touch4; - - unsigned int adadj_keyword; - unsigned int adadj; - - unsigned int phad_keyword; - unsigned int phadadj; -}; - -/* * Shared data structures */ extern struct platform_device corgiscoop_device; diff --git a/include/asm-arm/arch-pxa/poodle.h b/include/asm-arm/arch-pxa/poodle.h index 027573d38ee477..58bda9d571a5ae 100644 --- a/include/asm-arm/arch-pxa/poodle.h +++ b/include/asm-arm/arch-pxa/poodle.h @@ -67,45 +67,4 @@ #define POODLE_SCOOP_IO_DIR ( POODLE_SCOOP_VPEN | POODLE_SCOOP_HS_OUT ) #define POODLE_SCOOP_IO_OUT ( 0 ) -/* - * Flash Memory mappings - * - * We have the following mapping: - * phys virt - * boot ROM 00000000 ef800000 - */ -#define FLASH_MEM_BASE 0xa0000a00 -#define FLASH_DATA(adr) (*(volatile unsigned int*)(FLASH_MEM_BASE+(adr))) -#define FLASH_DATA_F(adr) (*(volatile float32 *)(FLASH_MEM_BASE+(adr))) -#define FLASH_MAGIC_CHG(a,b,c,d) ( ( d << 24 ) | ( c << 16 ) | ( b << 8 ) | a ) - -/* COMADJ */ -#define FLASH_COMADJ_MAJIC FLASH_MAGIC_CHG('C','M','A','D') -#define FLASH_COMADJ_MAGIC_ADR 0x00 -#define FLASH_COMADJ_DATA_ADR 0x04 - -/* UUID */ -#define FLASH_UUID_MAJIC FLASH_MAGIC_CHG('U','U','I','D') -#define FLASH_UUID_MAGIC_ADR 0x08 -#define FLASH_UUID_DATA_ADR 0x0C - -/* TOUCH PANEL */ -#define FLASH_TOUCH_MAJIC FLASH_MAGIC_CHG('T','U','C','H') -#define FLASH_TOUCH_MAGIC_ADR 0x1C -#define FLASH_TOUCH_XP_DATA_ADR 0x20 -#define FLASH_TOUCH_YP_DATA_ADR 0x24 -#define FLASH_TOUCH_XD_DATA_ADR 0x28 -#define FLASH_TOUCH_YD_DATA_ADR 0x2C - -/* AD */ -#define FLASH_AD_MAJIC FLASH_MAGIC_CHG('B','V','A','D') -#define FLASH_AD_MAGIC_ADR 0x30 -#define FLASH_AD_DATA_ADR 0x34 - -/* PHAD */ -#define FLASH_PHAD_MAJIC FLASH_MAGIC_CHG('P','H','A','D') -#define FLASH_PHAD_MAGIC_ADR 0x38 -#define FLASH_PHAD_DATA_ADR 0x3C - - #endif /* __ASM_ARCH_POODLE_H */ diff --git a/include/asm-arm/arch-sa1100/collie.h b/include/asm-arm/arch-sa1100/collie.h index 01e60d7c30f687..d49e5ff63ca433 100644 --- a/include/asm-arm/arch-sa1100/collie.h +++ b/include/asm-arm/arch-sa1100/collie.h @@ -66,34 +66,6 @@ #define COLLIE_LCM_IRQ_GPIO_nSD_DETECT IRQ_LOCOMO_GPIO13 #define COLLIE_LCM_IRQ_GPIO_nSD_WP IRQ_LOCOMO_GPIO14 -/* - * Flash Memory mappings - * - */ - -#define FLASH_MEM_BASE 0xe8ffc000 -#define FLASH_DATA(adr) (*(volatile unsigned int*)(FLASH_MEM_BASE+(adr))) -#define FLASH_DATA_F(adr) (*(volatile float32 *)(FLASH_MEM_BASE+(adr))) -#define FLASH_MAGIC_CHG(a,b,c,d) ( ( d << 24 ) | ( c << 16 ) | ( b << 8 ) | a ) - -// COMADJ -#define FLASH_COMADJ_MAJIC FLASH_MAGIC_CHG('C','M','A','D') -#define FLASH_COMADJ_MAGIC_ADR 0x00 -#define FLASH_COMADJ_DATA_ADR 0x04 - -// TOUCH PANEL -#define FLASH_TOUCH_MAJIC FLASH_MAGIC_CHG('T','U','C','H') -#define FLASH_TOUCH_MAGIC_ADR 0x1C -#define FLASH_TOUCH_XP_DATA_ADR 0x20 -#define FLASH_TOUCH_YP_DATA_ADR 0x24 -#define FLASH_TOUCH_XD_DATA_ADR 0x28 -#define FLASH_TOUCH_YD_DATA_ADR 0x2C - -// AD -#define FLASH_AD_MAJIC FLASH_MAGIC_CHG('B','V','A','D') -#define FLASH_AD_MAGIC_ADR 0x30 -#define FLASH_AD_DATA_ADR 0x34 - /* GPIO's on the TC35143AF (Toshiba Analog Frontend) */ #define COLLIE_TC35143_GPIO_VERSION0 UCB_IO_0 /* GPIO0=Version */ #define COLLIE_TC35143_GPIO_TBL_CHK UCB_IO_1 /* GPIO1=TBL_CHK */ diff --git a/include/asm-arm/hardware/amba.h b/include/asm-arm/hardware/amba.h index 0cc74f7f7e0e0e..51e6e54b2aa15a 100644 --- a/include/asm-arm/hardware/amba.h +++ b/include/asm-arm/hardware/amba.h @@ -31,7 +31,7 @@ struct amba_driver { int (*probe)(struct amba_device *, void *); int (*remove)(struct amba_device *); void (*shutdown)(struct amba_device *); - int (*suspend)(struct amba_device *, u32); + int (*suspend)(struct amba_device *, pm_message_t); int (*resume)(struct amba_device *); struct amba_id *id_table; }; diff --git a/include/asm-arm/hardware/locomo.h b/include/asm-arm/hardware/locomo.h index 5f9218c1514296..5f10048ec54e7c 100644 --- a/include/asm-arm/hardware/locomo.h +++ b/include/asm-arm/hardware/locomo.h @@ -181,7 +181,7 @@ struct locomo_driver { unsigned int devid; int (*probe)(struct locomo_dev *); int (*remove)(struct locomo_dev *); - int (*suspend)(struct locomo_dev *, u32); + int (*suspend)(struct locomo_dev *, pm_message_t); int (*resume)(struct locomo_dev *); }; diff --git a/include/asm-arm/hardware/sa1111.h b/include/asm-arm/hardware/sa1111.h index 8fd4f528c38df1..319aea064c367e 100644 --- a/include/asm-arm/hardware/sa1111.h +++ b/include/asm-arm/hardware/sa1111.h @@ -567,7 +567,7 @@ struct sa1111_driver { unsigned int devid; int (*probe)(struct sa1111_dev *); int (*remove)(struct sa1111_dev *); - int (*suspend)(struct sa1111_dev *, u32); + int (*suspend)(struct sa1111_dev *, pm_message_t); int (*resume)(struct sa1111_dev *); }; diff --git a/include/asm-arm/mach/sharpsl_param.h b/include/asm-arm/mach/sharpsl_param.h new file mode 100644 index 00000000000000..7a24ecf0422000 --- /dev/null +++ b/include/asm-arm/mach/sharpsl_param.h @@ -0,0 +1,37 @@ +/* + * Hardware parameter area specific to Sharp SL series devices + * + * Copyright (c) 2005 Richard Purdie + * + * Based on Sharp's 2.4 kernel patches + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + */ + +struct sharpsl_param_info { + unsigned int comadj_keyword; + unsigned int comadj; + + unsigned int uuid_keyword; + unsigned char uuid[16]; + + unsigned int touch_keyword; + unsigned int touch_xp; + unsigned int touch_yp; + unsigned int touch_xd; + unsigned int touch_yd; + + unsigned int adadj_keyword; + unsigned int adadj; + + unsigned int phad_keyword; + unsigned int phadadj; +} __attribute__((packed)); + + +extern struct sharpsl_param_info sharpsl_param; +extern void sharpsl_save_param(void); + |