diff options
author | Russell King <rmk@dyn-67.arm.linux.org.uk> | 2008-08-02 05:55:55 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2008-08-02 16:32:35 -0400 |
commit | 4baa9922430662431231ac637adedddbb0cfb2d7 (patch) | |
tree | e8fb765ce3e41c01f33de34a0bc9494f0ae19818 /arch/arm/include/asm/mach | |
parent | ff4db0a043a5dee7180bdffd178e61cd02812c68 (diff) |
[ARM] move include/asm-arm to arch/arm/include/asm
Move platform independent header files to arch/arm/include/asm, leaving
those in asm/arch* and asm/plat* alone.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/include/asm/mach')
-rw-r--r-- | arch/arm/include/asm/mach/arch.h | 60 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/dma.h | 57 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/flash.h | 39 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/irda.h | 20 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/irq.h | 54 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/map.h | 36 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/mmc.h | 15 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/pci.h | 72 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/serial_at91.h | 33 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/serial_sa1100.h | 31 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/sharpsl_param.h | 37 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/time.h | 57 | ||||
-rw-r--r-- | arch/arm/include/asm/mach/udc_pxa2xx.h | 29 |
13 files changed, 540 insertions, 0 deletions
diff --git a/arch/arm/include/asm/mach/arch.h b/arch/arm/include/asm/mach/arch.h new file mode 100644 index 000000000000..c59842dc7cb8 --- /dev/null +++ b/arch/arm/include/asm/mach/arch.h | |||
@@ -0,0 +1,60 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/arch.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Russell King | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | #ifndef __ASSEMBLY__ | ||
12 | |||
13 | struct tag; | ||
14 | struct meminfo; | ||
15 | struct sys_timer; | ||
16 | |||
17 | struct machine_desc { | ||
18 | /* | ||
19 | * Note! The first four elements are used | ||
20 | * by assembler code in head.S, head-common.S | ||
21 | */ | ||
22 | unsigned int nr; /* architecture number */ | ||
23 | unsigned int phys_io; /* start of physical io */ | ||
24 | unsigned int io_pg_offst; /* byte offset for io | ||
25 | * page tabe entry */ | ||
26 | |||
27 | const char *name; /* architecture name */ | ||
28 | unsigned long boot_params; /* tagged list */ | ||
29 | |||
30 | unsigned int video_start; /* start of video RAM */ | ||
31 | unsigned int video_end; /* end of video RAM */ | ||
32 | |||
33 | unsigned int reserve_lp0 :1; /* never has lp0 */ | ||
34 | unsigned int reserve_lp1 :1; /* never has lp1 */ | ||
35 | unsigned int reserve_lp2 :1; /* never has lp2 */ | ||
36 | unsigned int soft_reboot :1; /* soft reboot */ | ||
37 | void (*fixup)(struct machine_desc *, | ||
38 | struct tag *, char **, | ||
39 | struct meminfo *); | ||
40 | void (*map_io)(void);/* IO mapping function */ | ||
41 | void (*init_irq)(void); | ||
42 | struct sys_timer *timer; /* system tick timer */ | ||
43 | void (*init_machine)(void); | ||
44 | }; | ||
45 | |||
46 | /* | ||
47 | * Set of macros to define architecture features. This is built into | ||
48 | * a table by the linker. | ||
49 | */ | ||
50 | #define MACHINE_START(_type,_name) \ | ||
51 | static const struct machine_desc __mach_desc_##_type \ | ||
52 | __used \ | ||
53 | __attribute__((__section__(".arch.info.init"))) = { \ | ||
54 | .nr = MACH_TYPE_##_type, \ | ||
55 | .name = _name, | ||
56 | |||
57 | #define MACHINE_END \ | ||
58 | }; | ||
59 | |||
60 | #endif | ||
diff --git a/arch/arm/include/asm/mach/dma.h b/arch/arm/include/asm/mach/dma.h new file mode 100644 index 000000000000..fc7278ea7146 --- /dev/null +++ b/arch/arm/include/asm/mach/dma.h | |||
@@ -0,0 +1,57 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/dma.h | ||
3 | * | ||
4 | * Copyright (C) 1998-2000 Russell King | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * This header file describes the interface between the generic DMA handler | ||
11 | * (dma.c) and the architecture-specific DMA backends (dma-*.c) | ||
12 | */ | ||
13 | |||
14 | struct dma_struct; | ||
15 | typedef struct dma_struct dma_t; | ||
16 | |||
17 | struct dma_ops { | ||
18 | int (*request)(dmach_t, dma_t *); /* optional */ | ||
19 | void (*free)(dmach_t, dma_t *); /* optional */ | ||
20 | void (*enable)(dmach_t, dma_t *); /* mandatory */ | ||
21 | void (*disable)(dmach_t, dma_t *); /* mandatory */ | ||
22 | int (*residue)(dmach_t, dma_t *); /* optional */ | ||
23 | int (*setspeed)(dmach_t, dma_t *, int); /* optional */ | ||
24 | char *type; | ||
25 | }; | ||
26 | |||
27 | struct dma_struct { | ||
28 | void *addr; /* single DMA address */ | ||
29 | unsigned long count; /* single DMA size */ | ||
30 | struct scatterlist buf; /* single DMA */ | ||
31 | int sgcount; /* number of DMA SG */ | ||
32 | struct scatterlist *sg; /* DMA Scatter-Gather List */ | ||
33 | |||
34 | unsigned int active:1; /* Transfer active */ | ||
35 | unsigned int invalid:1; /* Address/Count changed */ | ||
36 | |||
37 | dmamode_t dma_mode; /* DMA mode */ | ||
38 | int speed; /* DMA speed */ | ||
39 | |||
40 | unsigned int lock; /* Device is allocated */ | ||
41 | const char *device_id; /* Device name */ | ||
42 | |||
43 | unsigned int dma_base; /* Controller base address */ | ||
44 | int dma_irq; /* Controller IRQ */ | ||
45 | struct scatterlist cur_sg; /* Current controller buffer */ | ||
46 | unsigned int state; | ||
47 | |||
48 | struct dma_ops *d_ops; | ||
49 | }; | ||
50 | |||
51 | /* Prototype: void arch_dma_init(dma) | ||
52 | * Purpose : Initialise architecture specific DMA | ||
53 | * Params : dma - pointer to array of DMA structures | ||
54 | */ | ||
55 | extern void arch_dma_init(dma_t *dma); | ||
56 | |||
57 | extern void isa_init_dma(dma_t *dma); | ||
diff --git a/arch/arm/include/asm/mach/flash.h b/arch/arm/include/asm/mach/flash.h new file mode 100644 index 000000000000..4ca69fe2c850 --- /dev/null +++ b/arch/arm/include/asm/mach/flash.h | |||
@@ -0,0 +1,39 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/flash.h | ||
3 | * | ||
4 | * Copyright (C) 2003 Russell King, All Rights Reserved. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #ifndef ASMARM_MACH_FLASH_H | ||
11 | #define ASMARM_MACH_FLASH_H | ||
12 | |||
13 | struct mtd_partition; | ||
14 | struct mtd_info; | ||
15 | |||
16 | /* | ||
17 | * map_name: the map probe function name | ||
18 | * name: flash device name (eg, as used with mtdparts=) | ||
19 | * width: width of mapped device | ||
20 | * init: method called at driver/device initialisation | ||
21 | * exit: method called at driver/device removal | ||
22 | * set_vpp: method called to enable or disable VPP | ||
23 | * mmcontrol: method called to enable or disable Sync. Burst Read in OneNAND | ||
24 | * parts: optional array of mtd_partitions for static partitioning | ||
25 | * nr_parts: number of mtd_partitions for static partitoning | ||
26 | */ | ||
27 | struct flash_platform_data { | ||
28 | const char *map_name; | ||
29 | const char *name; | ||
30 | unsigned int width; | ||
31 | int (*init)(void); | ||
32 | void (*exit)(void); | ||
33 | void (*set_vpp)(int on); | ||
34 | void (*mmcontrol)(struct mtd_info *mtd, int sync_read); | ||
35 | struct mtd_partition *parts; | ||
36 | unsigned int nr_parts; | ||
37 | }; | ||
38 | |||
39 | #endif | ||
diff --git a/arch/arm/include/asm/mach/irda.h b/arch/arm/include/asm/mach/irda.h new file mode 100644 index 000000000000..38f77b5e56cf --- /dev/null +++ b/arch/arm/include/asm/mach/irda.h | |||
@@ -0,0 +1,20 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/irda.h | ||
3 | * | ||
4 | * Copyright (C) 2004 Russell King. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #ifndef __ASM_ARM_MACH_IRDA_H | ||
11 | #define __ASM_ARM_MACH_IRDA_H | ||
12 | |||
13 | struct irda_platform_data { | ||
14 | int (*startup)(struct device *); | ||
15 | void (*shutdown)(struct device *); | ||
16 | int (*set_power)(struct device *, unsigned int state); | ||
17 | void (*set_speed)(struct device *, unsigned int speed); | ||
18 | }; | ||
19 | |||
20 | #endif | ||
diff --git a/arch/arm/include/asm/mach/irq.h b/arch/arm/include/asm/mach/irq.h new file mode 100644 index 000000000000..c57b52ce574a --- /dev/null +++ b/arch/arm/include/asm/mach/irq.h | |||
@@ -0,0 +1,54 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/irq.h | ||
3 | * | ||
4 | * Copyright (C) 1995-2000 Russell King. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #ifndef __ASM_ARM_MACH_IRQ_H | ||
11 | #define __ASM_ARM_MACH_IRQ_H | ||
12 | |||
13 | #include <linux/irq.h> | ||
14 | |||
15 | struct seq_file; | ||
16 | |||
17 | /* | ||
18 | * This is internal. Do not use it. | ||
19 | */ | ||
20 | extern void (*init_arch_irq)(void); | ||
21 | extern void init_FIQ(void); | ||
22 | extern int show_fiq_list(struct seq_file *, void *); | ||
23 | |||
24 | /* | ||
25 | * Obsolete inline function for calling irq descriptor handlers. | ||
26 | */ | ||
27 | static inline void desc_handle_irq(unsigned int irq, struct irq_desc *desc) | ||
28 | { | ||
29 | desc->handle_irq(irq, desc); | ||
30 | } | ||
31 | |||
32 | void set_irq_flags(unsigned int irq, unsigned int flags); | ||
33 | |||
34 | #define IRQF_VALID (1 << 0) | ||
35 | #define IRQF_PROBE (1 << 1) | ||
36 | #define IRQF_NOAUTOEN (1 << 2) | ||
37 | |||
38 | /* | ||
39 | * This is for easy migration, but should be changed in the source | ||
40 | */ | ||
41 | #define do_bad_IRQ(irq,desc) \ | ||
42 | do { \ | ||
43 | spin_lock(&desc->lock); \ | ||
44 | handle_bad_irq(irq, desc); \ | ||
45 | spin_unlock(&desc->lock); \ | ||
46 | } while(0) | ||
47 | |||
48 | extern unsigned long irq_err_count; | ||
49 | static inline void ack_bad_irq(int irq) | ||
50 | { | ||
51 | irq_err_count++; | ||
52 | } | ||
53 | |||
54 | #endif | ||
diff --git a/arch/arm/include/asm/mach/map.h b/arch/arm/include/asm/mach/map.h new file mode 100644 index 000000000000..06f583b13999 --- /dev/null +++ b/arch/arm/include/asm/mach/map.h | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/map.h | ||
3 | * | ||
4 | * Copyright (C) 1999-2000 Russell King | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | * | ||
10 | * Page table mapping constructs and function prototypes | ||
11 | */ | ||
12 | #include <asm/io.h> | ||
13 | |||
14 | struct map_desc { | ||
15 | unsigned long virtual; | ||
16 | unsigned long pfn; | ||
17 | unsigned long length; | ||
18 | unsigned int type; | ||
19 | }; | ||
20 | |||
21 | /* types 0-3 are defined in asm/io.h */ | ||
22 | #define MT_CACHECLEAN 4 | ||
23 | #define MT_MINICLEAN 5 | ||
24 | #define MT_LOW_VECTORS 6 | ||
25 | #define MT_HIGH_VECTORS 7 | ||
26 | #define MT_MEMORY 8 | ||
27 | #define MT_ROM 9 | ||
28 | |||
29 | #define MT_NONSHARED_DEVICE MT_DEVICE_NONSHARED | ||
30 | #define MT_IXP2000_DEVICE MT_DEVICE_IXP2000 | ||
31 | |||
32 | #ifdef CONFIG_MMU | ||
33 | extern void iotable_init(struct map_desc *, int); | ||
34 | #else | ||
35 | #define iotable_init(map,num) do { } while (0) | ||
36 | #endif | ||
diff --git a/arch/arm/include/asm/mach/mmc.h b/arch/arm/include/asm/mach/mmc.h new file mode 100644 index 000000000000..4da332b03144 --- /dev/null +++ b/arch/arm/include/asm/mach/mmc.h | |||
@@ -0,0 +1,15 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/mmc.h | ||
3 | */ | ||
4 | #ifndef ASMARM_MACH_MMC_H | ||
5 | #define ASMARM_MACH_MMC_H | ||
6 | |||
7 | #include <linux/mmc/host.h> | ||
8 | |||
9 | struct mmc_platform_data { | ||
10 | unsigned int ocr_mask; /* available voltages */ | ||
11 | u32 (*translate_vdd)(struct device *, unsigned int); | ||
12 | unsigned int (*status)(struct device *); | ||
13 | }; | ||
14 | |||
15 | #endif | ||
diff --git a/arch/arm/include/asm/mach/pci.h b/arch/arm/include/asm/mach/pci.h new file mode 100644 index 000000000000..32da1ae17e06 --- /dev/null +++ b/arch/arm/include/asm/mach/pci.h | |||
@@ -0,0 +1,72 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/pci.h | ||
3 | * | ||
4 | * Copyright (C) 2000 Russell King | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | |||
11 | struct pci_sys_data; | ||
12 | struct pci_bus; | ||
13 | |||
14 | struct hw_pci { | ||
15 | struct list_head buses; | ||
16 | int nr_controllers; | ||
17 | int (*setup)(int nr, struct pci_sys_data *); | ||
18 | struct pci_bus *(*scan)(int nr, struct pci_sys_data *); | ||
19 | void (*preinit)(void); | ||
20 | void (*postinit)(void); | ||
21 | u8 (*swizzle)(struct pci_dev *dev, u8 *pin); | ||
22 | int (*map_irq)(struct pci_dev *dev, u8 slot, u8 pin); | ||
23 | }; | ||
24 | |||
25 | /* | ||
26 | * Per-controller structure | ||
27 | */ | ||
28 | struct pci_sys_data { | ||
29 | struct list_head node; | ||
30 | int busnr; /* primary bus number */ | ||
31 | u64 mem_offset; /* bus->cpu memory mapping offset */ | ||
32 | unsigned long io_offset; /* bus->cpu IO mapping offset */ | ||
33 | struct pci_bus *bus; /* PCI bus */ | ||
34 | struct resource *resource[3]; /* Primary PCI bus resources */ | ||
35 | /* Bridge swizzling */ | ||
36 | u8 (*swizzle)(struct pci_dev *, u8 *); | ||
37 | /* IRQ mapping */ | ||
38 | int (*map_irq)(struct pci_dev *, u8, u8); | ||
39 | struct hw_pci *hw; | ||
40 | }; | ||
41 | |||
42 | /* | ||
43 | * This is the standard PCI-PCI bridge swizzling algorithm. | ||
44 | */ | ||
45 | u8 pci_std_swizzle(struct pci_dev *dev, u8 *pinp); | ||
46 | |||
47 | /* | ||
48 | * Call this with your hw_pci struct to initialise the PCI system. | ||
49 | */ | ||
50 | void pci_common_init(struct hw_pci *); | ||
51 | |||
52 | /* | ||
53 | * PCI controllers | ||
54 | */ | ||
55 | extern int iop3xx_pci_setup(int nr, struct pci_sys_data *); | ||
56 | extern struct pci_bus *iop3xx_pci_scan_bus(int nr, struct pci_sys_data *); | ||
57 | extern void iop3xx_pci_preinit(void); | ||
58 | extern void iop3xx_pci_preinit_cond(void); | ||
59 | |||
60 | extern int dc21285_setup(int nr, struct pci_sys_data *); | ||
61 | extern struct pci_bus *dc21285_scan_bus(int nr, struct pci_sys_data *); | ||
62 | extern void dc21285_preinit(void); | ||
63 | extern void dc21285_postinit(void); | ||
64 | |||
65 | extern int via82c505_setup(int nr, struct pci_sys_data *); | ||
66 | extern struct pci_bus *via82c505_scan_bus(int nr, struct pci_sys_data *); | ||
67 | extern void via82c505_init(void *sysdata); | ||
68 | |||
69 | extern int pci_v3_setup(int nr, struct pci_sys_data *); | ||
70 | extern struct pci_bus *pci_v3_scan_bus(int nr, struct pci_sys_data *); | ||
71 | extern void pci_v3_preinit(void); | ||
72 | extern void pci_v3_postinit(void); | ||
diff --git a/arch/arm/include/asm/mach/serial_at91.h b/arch/arm/include/asm/mach/serial_at91.h new file mode 100644 index 000000000000..ea6d063923b8 --- /dev/null +++ b/arch/arm/include/asm/mach/serial_at91.h | |||
@@ -0,0 +1,33 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/serial_at91.h | ||
3 | * | ||
4 | * Based on serial_sa1100.h by Nicolas Pitre | ||
5 | * | ||
6 | * Copyright (C) 2002 ATMEL Rousset | ||
7 | * | ||
8 | * Low level machine dependent UART functions. | ||
9 | */ | ||
10 | |||
11 | struct uart_port; | ||
12 | |||
13 | /* | ||
14 | * This is a temporary structure for registering these | ||
15 | * functions; it is intended to be discarded after boot. | ||
16 | */ | ||
17 | struct atmel_port_fns { | ||
18 | void (*set_mctrl)(struct uart_port *, u_int); | ||
19 | u_int (*get_mctrl)(struct uart_port *); | ||
20 | void (*enable_ms)(struct uart_port *); | ||
21 | void (*pm)(struct uart_port *, u_int, u_int); | ||
22 | int (*set_wake)(struct uart_port *, u_int); | ||
23 | int (*open)(struct uart_port *); | ||
24 | void (*close)(struct uart_port *); | ||
25 | }; | ||
26 | |||
27 | #if defined(CONFIG_SERIAL_ATMEL) | ||
28 | void atmel_register_uart_fns(struct atmel_port_fns *fns); | ||
29 | #else | ||
30 | #define atmel_register_uart_fns(fns) do { } while (0) | ||
31 | #endif | ||
32 | |||
33 | |||
diff --git a/arch/arm/include/asm/mach/serial_sa1100.h b/arch/arm/include/asm/mach/serial_sa1100.h new file mode 100644 index 000000000000..d09064bf95a0 --- /dev/null +++ b/arch/arm/include/asm/mach/serial_sa1100.h | |||
@@ -0,0 +1,31 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/serial_sa1100.h | ||
3 | * | ||
4 | * Author: Nicolas Pitre | ||
5 | * | ||
6 | * Moved and changed lots, Russell King | ||
7 | * | ||
8 | * Low level machine dependent UART functions. | ||
9 | */ | ||
10 | |||
11 | struct uart_port; | ||
12 | struct uart_info; | ||
13 | |||
14 | /* | ||
15 | * This is a temporary structure for registering these | ||
16 | * functions; it is intended to be discarded after boot. | ||
17 | */ | ||
18 | struct sa1100_port_fns { | ||
19 | void (*set_mctrl)(struct uart_port *, u_int); | ||
20 | u_int (*get_mctrl)(struct uart_port *); | ||
21 | void (*pm)(struct uart_port *, u_int, u_int); | ||
22 | int (*set_wake)(struct uart_port *, u_int); | ||
23 | }; | ||
24 | |||
25 | #ifdef CONFIG_SERIAL_SA1100 | ||
26 | void sa1100_register_uart_fns(struct sa1100_port_fns *fns); | ||
27 | void sa1100_register_uart(int idx, int port); | ||
28 | #else | ||
29 | #define sa1100_register_uart_fns(fns) do { } while (0) | ||
30 | #define sa1100_register_uart(idx,port) do { } while (0) | ||
31 | #endif | ||
diff --git a/arch/arm/include/asm/mach/sharpsl_param.h b/arch/arm/include/asm/mach/sharpsl_param.h new file mode 100644 index 000000000000..7a24ecf04220 --- /dev/null +++ b/arch/arm/include/asm/mach/sharpsl_param.h | |||
@@ -0,0 +1,37 @@ | |||
1 | /* | ||
2 | * Hardware parameter area specific to Sharp SL series devices | ||
3 | * | ||
4 | * Copyright (c) 2005 Richard Purdie | ||
5 | * | ||
6 | * Based on Sharp's 2.4 kernel patches | ||
7 | * | ||
8 | * This program is free software; you can redistribute it and/or modify | ||
9 | * it under the terms of the GNU General Public License version 2 as | ||
10 | * published by the Free Software Foundation. | ||
11 | * | ||
12 | */ | ||
13 | |||
14 | struct sharpsl_param_info { | ||
15 | unsigned int comadj_keyword; | ||
16 | unsigned int comadj; | ||
17 | |||
18 | unsigned int uuid_keyword; | ||
19 | unsigned char uuid[16]; | ||
20 | |||
21 | unsigned int touch_keyword; | ||
22 | unsigned int touch_xp; | ||
23 | unsigned int touch_yp; | ||
24 | unsigned int touch_xd; | ||
25 | unsigned int touch_yd; | ||
26 | |||
27 | unsigned int adadj_keyword; | ||
28 | unsigned int adadj; | ||
29 | |||
30 | unsigned int phad_keyword; | ||
31 | unsigned int phadadj; | ||
32 | } __attribute__((packed)); | ||
33 | |||
34 | |||
35 | extern struct sharpsl_param_info sharpsl_param; | ||
36 | extern void sharpsl_save_param(void); | ||
37 | |||
diff --git a/arch/arm/include/asm/mach/time.h b/arch/arm/include/asm/mach/time.h new file mode 100644 index 000000000000..b2cc1fcd0400 --- /dev/null +++ b/arch/arm/include/asm/mach/time.h | |||
@@ -0,0 +1,57 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/time.h | ||
3 | * | ||
4 | * Copyright (C) 2004 MontaVista Software, Inc. | ||
5 | * | ||
6 | * This program is free software; you can redistribute it and/or modify | ||
7 | * it under the terms of the GNU General Public License version 2 as | ||
8 | * published by the Free Software Foundation. | ||
9 | */ | ||
10 | #ifndef __ASM_ARM_MACH_TIME_H | ||
11 | #define __ASM_ARM_MACH_TIME_H | ||
12 | |||
13 | #include <linux/sysdev.h> | ||
14 | |||
15 | /* | ||
16 | * This is our kernel timer structure. | ||
17 | * | ||
18 | * - init | ||
19 | * Initialise the kernels jiffy timer source, claim interrupt | ||
20 | * using setup_irq. This is called early on during initialisation | ||
21 | * while interrupts are still disabled on the local CPU. | ||
22 | * - suspend | ||
23 | * Suspend the kernel jiffy timer source, if necessary. This | ||
24 | * is called with interrupts disabled, after all normal devices | ||
25 | * have been suspended. If no action is required, set this to | ||
26 | * NULL. | ||
27 | * - resume | ||
28 | * Resume the kernel jiffy timer source, if necessary. This | ||
29 | * is called with interrupts disabled before any normal devices | ||
30 | * are resumed. If no action is required, set this to NULL. | ||
31 | * - offset | ||
32 | * Return the timer offset in microseconds since the last timer | ||
33 | * interrupt. Note: this must take account of any unprocessed | ||
34 | * timer interrupt which may be pending. | ||
35 | */ | ||
36 | struct sys_timer { | ||
37 | struct sys_device dev; | ||
38 | void (*init)(void); | ||
39 | void (*suspend)(void); | ||
40 | void (*resume)(void); | ||
41 | #ifndef CONFIG_GENERIC_TIME | ||
42 | unsigned long (*offset)(void); | ||
43 | #endif | ||
44 | }; | ||
45 | |||
46 | extern struct sys_timer *system_timer; | ||
47 | extern void timer_tick(void); | ||
48 | |||
49 | /* | ||
50 | * Kernel time keeping support. | ||
51 | */ | ||
52 | struct timespec; | ||
53 | extern int (*set_rtc)(void); | ||
54 | extern void save_time_delta(struct timespec *delta, struct timespec *rtc); | ||
55 | extern void restore_time_delta(struct timespec *delta, struct timespec *rtc); | ||
56 | |||
57 | #endif | ||
diff --git a/arch/arm/include/asm/mach/udc_pxa2xx.h b/arch/arm/include/asm/mach/udc_pxa2xx.h new file mode 100644 index 000000000000..270902c353fd --- /dev/null +++ b/arch/arm/include/asm/mach/udc_pxa2xx.h | |||
@@ -0,0 +1,29 @@ | |||
1 | /* | ||
2 | * arch/arm/include/asm/mach/udc_pxa2xx.h | ||
3 | * | ||
4 | * This supports machine-specific differences in how the PXA2xx | ||
5 | * USB Device Controller (UDC) is wired. | ||
6 | * | ||
7 | * It is set in linux/arch/arm/mach-pxa/<machine>.c or in | ||
8 | * linux/arch/mach-ixp4xx/<machine>.c and used in | ||
9 | * the probe routine of linux/drivers/usb/gadget/pxa2xx_udc.c | ||
10 | */ | ||
11 | |||
12 | struct pxa2xx_udc_mach_info { | ||
13 | int (*udc_is_connected)(void); /* do we see host? */ | ||
14 | void (*udc_command)(int cmd); | ||
15 | #define PXA2XX_UDC_CMD_CONNECT 0 /* let host see us */ | ||
16 | #define PXA2XX_UDC_CMD_DISCONNECT 1 /* so host won't see us */ | ||
17 | |||
18 | /* Boards following the design guidelines in the developer's manual, | ||
19 | * with on-chip GPIOs not Lubbock's weird hardware, can have a sane | ||
20 | * VBUS IRQ and omit the methods above. Store the GPIO number | ||
21 | * here; for GPIO 0, also mask in one of the pxa_gpio_mode() bits. | ||
22 | * Note that sometimes the signals go through inverters... | ||
23 | */ | ||
24 | bool gpio_vbus_inverted; | ||
25 | u16 gpio_vbus; /* high == vbus present */ | ||
26 | bool gpio_pullup_inverted; | ||
27 | u16 gpio_pullup; /* high == pullup activated */ | ||
28 | }; | ||
29 | |||