X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fppc%2Fboot%2Fsimple%2Fm8260_tty.c;h=c3e2c39425f8f96502fabc82a3c73672ff934aa6;hb=9bf4aaab3e101692164d49b7ca357651eb691cb6;hp=9d1d54a5e8f275b133ebae14605bb71186ac2b39;hpb=db216c3d5e4c040e557a50f8f5d35d5c415e8c1c;p=linux-2.6.git diff --git a/arch/ppc/boot/simple/m8260_tty.c b/arch/ppc/boot/simple/m8260_tty.c index 9d1d54a5e..c3e2c3942 100644 --- a/arch/ppc/boot/simple/m8260_tty.c +++ b/arch/ppc/boot/simple/m8260_tty.c @@ -3,7 +3,8 @@ */ #include #include -#include +#include +#include uint no_print; extern char *params[]; @@ -14,27 +15,30 @@ static int cons_hold_cnt; /* If defined, enables serial console. The value (1 through 4) * should designate which SCC is used, but this isn't complete. Only * SCC1 is known to work at this time. + * We're only linked if SERIAL_CPM_CONSOLE=y, so we only need to test + * SERIAL_CPM_SCC1. */ -#ifdef CONFIG_SCC_CONSOLE +#ifdef CONFIG_SERIAL_CPM_SCC1 #define SCC_CONSOLE 1 #endif unsigned long serial_init(int ignored, bd_t *bd) { - volatile smc_t *sp; - volatile smc_uart_t *up; #ifdef SCC_CONSOLE volatile scc_t *sccp; volatile scc_uart_t *sup; +#else + volatile smc_t *sp; + volatile smc_uart_t *up; #endif volatile cbd_t *tbdf, *rbdf; - volatile immap_t *ip; - volatile iop8260_t *io; - volatile cpm8260_t *cp; + volatile cpm2_map_t *ip; + volatile iop_cpm2_t *io; + volatile cpm_cpm2_t *cp; uint dpaddr, memaddr; - ip = (immap_t *)IMAP_ADDR; + ip = (cpm2_map_t *)CPM_MAP_ADDR; cp = &ip->im_cpm; io = &ip->im_ioport; @@ -221,12 +225,15 @@ serial_readbuf(u_char *cbuf) { volatile cbd_t *rbdf; volatile char *buf; - volatile smc_uart_t *up; +#ifdef SCC_CONSOLE volatile scc_uart_t *sup; - volatile immap_t *ip; +#else + volatile smc_uart_t *up; +#endif + volatile cpm2_map_t *ip; int i, nc; - ip = (immap_t *)IMAP_ADDR; + ip = (cpm2_map_t *)CPM_MAP_ADDR; #ifdef SCC_CONSOLE sup = (scc_uart_t *)&ip->im_dprambase[PROFF_SCC1 + ((SCC_CONSOLE-1) << 8)]; @@ -253,12 +260,14 @@ serial_putc(void *ignored, const char c) { volatile cbd_t *tbdf; volatile char *buf; - volatile smc_uart_t *up; +#ifdef SCC_CONSOLE volatile scc_uart_t *sup; - volatile immap_t *ip; - extern bd_t *board_info; +#else + volatile smc_uart_t *up; +#endif + volatile cpm2_map_t *ip; - ip = (immap_t *)IMAP_ADDR; + ip = (cpm2_map_t *)CPM_MAP_ADDR; #ifdef SCC_CONSOLE sup = (scc_uart_t *)&ip->im_dprambase[PROFF_SCC1 + ((SCC_CONSOLE-1) << 8)]; tbdf = (cbd_t *)&ip->im_dprambase[sup->scc_genscc.scc_tbase]; @@ -296,11 +305,14 @@ int serial_tstc(void *ignored) { volatile cbd_t *rbdf; - volatile smc_uart_t *up; +#ifdef SCC_CONSOLE volatile scc_uart_t *sup; - volatile immap_t *ip; +#else + volatile smc_uart_t *up; +#endif + volatile cpm2_map_t *ip; - ip = (immap_t *)IMAP_ADDR; + ip = (cpm2_map_t *)CPM_MAP_ADDR; #ifdef SCC_CONSOLE sup = (scc_uart_t *)&ip->im_dprambase[PROFF_SCC1 + ((SCC_CONSOLE-1) << 8)]; rbdf = (cbd_t *)&ip->im_dprambase[sup->scc_genscc.scc_rbase];