1b177d29a7f0fdac7c2483431abb0ec92e3a2a2d
[safe/jmp/linux-2.6] / include / linux / serial_sci.h
1 #ifndef __LINUX_SERIAL_SCI_H
2 #define __LINUX_SERIAL_SCI_H
3
4 #include <linux/serial_core.h>
5 #include <asm/dmaengine.h>
6
7 /*
8  * Generic header for SuperH SCI(F) (used by sh/sh64/h8300 and related parts)
9  */
10
11 /* Offsets into the sci_port->irqs array */
12 enum {
13         SCIx_ERI_IRQ,
14         SCIx_RXI_IRQ,
15         SCIx_TXI_IRQ,
16         SCIx_BRI_IRQ,
17         SCIx_NR_IRQS,
18 };
19
20 struct device;
21
22 /*
23  * Platform device specific platform_data struct
24  */
25 struct plat_sci_port {
26         void __iomem    *membase;               /* io cookie */
27         unsigned long   mapbase;                /* resource base */
28         unsigned int    irqs[SCIx_NR_IRQS];     /* ERI, RXI, TXI, BRI */
29         unsigned int    type;                   /* SCI / SCIF / IRDA */
30         upf_t           flags;                  /* UPF_* flags */
31         char            *clk;                   /* clock string */
32         struct device   *dma_dev;
33         enum sh_dmae_slave_chan_id dma_slave_tx;
34         enum sh_dmae_slave_chan_id dma_slave_rx;
35 };
36
37 #endif /* __LINUX_SERIAL_SCI_H */