]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blob - drivers/serial/cpm_uart/cpm_uart_cpm2.h
a48b56e748415371d0b44c4b9829ab07c7c09017
[linux-2.6-omap-h63xx.git] / drivers / serial / cpm_uart / cpm_uart_cpm2.h
1 /*
2  * linux/drivers/serial/cpm_uart/cpm_uart_cpm2.h
3  *
4  * Driver for CPM (SCC/SMC) serial ports
5  *
6  * definitions for cpm2
7  *
8  */
9
10 #ifndef CPM_UART_CPM2_H
11 #define CPM_UART_CPM2_H
12
13 #include <asm/cpm2.h>
14
15 /* defines for IRQs */
16 #ifndef CONFIG_PPC_CPM_NEW_BINDING
17 #define SMC1_IRQ        SIU_INT_SMC1
18 #define SMC2_IRQ        SIU_INT_SMC2
19 #define SCC1_IRQ        SIU_INT_SCC1
20 #define SCC2_IRQ        SIU_INT_SCC2
21 #define SCC3_IRQ        SIU_INT_SCC3
22 #define SCC4_IRQ        SIU_INT_SCC4
23 #endif
24
25 static inline void cpm_set_brg(int brg, int baud)
26 {
27         cpm_setbrg(brg, baud);
28 }
29
30 static inline void cpm_set_scc_fcr(scc_uart_t __iomem *sup)
31 {
32         out_8(&sup->scc_genscc.scc_rfcr, CPMFCR_GBL | CPMFCR_EB);
33         out_8(&sup->scc_genscc.scc_tfcr, CPMFCR_GBL | CPMFCR_EB);
34 }
35
36 static inline void cpm_set_smc_fcr(smc_uart_t __iomem *up)
37 {
38         out_8(&up->smc_rfcr, CPMFCR_GBL | CPMFCR_EB);
39         out_8(&up->smc_tfcr, CPMFCR_GBL | CPMFCR_EB);
40 }
41
42 #define DPRAM_BASE      ((u8 __iomem __force *)cpm_dpram_addr(0))
43
44 #endif