Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / arch / arm / mach-mmp / devices.h
blob4df596c5c201acd21c09f5cd24d71c41a97426c9
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __MACH_DEVICE_H
3 #define __MACH_DEVICE_H
5 #include <linux/types.h>
7 #define MAX_RESOURCE_DMA 2
9 /* structure for describing the on-chip devices */
10 struct pxa_device_desc {
11 const char *dev_name;
12 const char *drv_name;
13 int id;
14 int irq;
15 unsigned long start;
16 unsigned long size;
17 int dma[MAX_RESOURCE_DMA];
20 #define PXA168_DEVICE(_name, _drv, _id, _irq, _start, _size, _dma...) \
21 struct pxa_device_desc pxa168_device_##_name __initdata = { \
22 .dev_name = "pxa168-" #_name, \
23 .drv_name = _drv, \
24 .id = _id, \
25 .irq = IRQ_PXA168_##_irq, \
26 .start = _start, \
27 .size = _size, \
28 .dma = { _dma }, \
31 #define PXA910_DEVICE(_name, _drv, _id, _irq, _start, _size, _dma...) \
32 struct pxa_device_desc pxa910_device_##_name __initdata = { \
33 .dev_name = "pxa910-" #_name, \
34 .drv_name = _drv, \
35 .id = _id, \
36 .irq = IRQ_PXA910_##_irq, \
37 .start = _start, \
38 .size = _size, \
39 .dma = { _dma }, \
42 #define MMP2_DEVICE(_name, _drv, _id, _irq, _start, _size, _dma...) \
43 struct pxa_device_desc mmp2_device_##_name __initdata = { \
44 .dev_name = "mmp2-" #_name, \
45 .drv_name = _drv, \
46 .id = _id, \
47 .irq = IRQ_MMP2_##_irq, \
48 .start = _start, \
49 .size = _size, \
50 .dma = { _dma }, \
53 extern int pxa_register_device(struct pxa_device_desc *, void *, size_t);
54 extern int pxa_usb_phy_init(void __iomem *phy_reg);
55 extern void pxa_usb_phy_deinit(void __iomem *phy_reg);
57 #endif /* __MACH_DEVICE_H */