diff options
author | root <root@dyn-67.arm.linux.org.uk> | 2009-03-24 22:04:25 +0000 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2009-03-24 22:04:25 +0000 |
commit | 9a38e989b8ce04923f919fc2a8a24eb07fb484e2 (patch) | |
tree | 6b99638dc32b99420ada46ca8d1373ad7aa5a208 /arch/arm/mach-mmp/include/mach/devices.h | |
parent | 7d83f8fca517b123cf0136503a9e50974f65ec49 (diff) | |
parent | 5fa82eb8ff06cd3ac4d64c6875922ae1dfa003c5 (diff) |
Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel
Diffstat (limited to 'arch/arm/mach-mmp/include/mach/devices.h')
-rw-r--r-- | arch/arm/mach-mmp/include/mach/devices.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/arm/mach-mmp/include/mach/devices.h b/arch/arm/mach-mmp/include/mach/devices.h new file mode 100644 index 00000000000..24585397217 --- /dev/null +++ b/arch/arm/mach-mmp/include/mach/devices.h @@ -0,0 +1,37 @@ +#include <linux/types.h> + +#define MAX_RESOURCE_DMA 2 + +/* structure for describing the on-chip devices */ +struct pxa_device_desc { + const char *dev_name; + const char *drv_name; + int id; + int irq; + unsigned long start; + unsigned long size; + int dma[MAX_RESOURCE_DMA]; +}; + +#define PXA168_DEVICE(_name, _drv, _id, _irq, _start, _size, _dma...) \ +struct pxa_device_desc pxa168_device_##_name __initdata = { \ + .dev_name = "pxa168-" #_name, \ + .drv_name = _drv, \ + .id = _id, \ + .irq = IRQ_PXA168_##_irq, \ + .start = _start, \ + .size = _size, \ + .dma = { _dma }, \ +}; + +#define PXA910_DEVICE(_name, _drv, _id, _irq, _start, _size, _dma...) \ +struct pxa_device_desc pxa910_device_##_name __initdata = { \ + .dev_name = "pxa910-" #_name, \ + .drv_name = _drv, \ + .id = _id, \ + .irq = IRQ_PXA910_##_irq, \ + .start = _start, \ + .size = _size, \ + .dma = { _dma }, \ +}; +extern int pxa_register_device(struct pxa_device_desc *, void *, size_t); |