1/* 2 * PQ2ADS platform support 3 * 4 * Author: Kumar Gala <galak@kernel.crashing.org> 5 * Derived from: est8260_setup.c by Allen Curtis 6 * 7 * Copyright 2004 Freescale Semiconductor, Inc. 8 * 9 * This program is free software; you can redistribute it and/or modify it 10 * under the terms of the GNU General Public License as published by the 11 * Free Software Foundation; either version 2 of the License, or (at your 12 * option) any later version. 13 */ 14 15#include <linux/init.h> 16 17#include <asm/io.h> 18#include <asm/mpc8260.h> 19#include <asm/cpm2.h> 20#include <asm/immap_cpm2.h> 21 22void __init 23m82xx_board_setup(void) 24{ 25 cpm2_map_t* immap = ioremap(CPM_MAP_ADDR, sizeof(cpm2_map_t)); 26 u32 *bcsr = ioremap(BCSR_ADDR+4, sizeof(u32)); 27 28 /* Enable the 2nd UART port */ 29 clrbits32(bcsr, BCSR1_RS232_EN2); 30 31#ifdef CONFIG_SERIAL_CPM_SCC1 32 clrbits32((u32*)&immap->im_scc[0].scc_sccm, UART_SCCM_TX | UART_SCCM_RX); 33 clrbits32((u32*)&immap->im_scc[0].scc_gsmrl, SCC_GSMRL_ENR | SCC_GSMRL_ENT); 34#endif 35 36#ifdef CONFIG_SERIAL_CPM_SCC2 37 clrbits32((u32*)&immap->im_scc[1].scc_sccm, UART_SCCM_TX | UART_SCCM_RX); 38 clrbits32((u32*)&immap->im_scc[1].scc_gsmrl, SCC_GSMRL_ENR | SCC_GSMRL_ENT); 39#endif 40 41#ifdef CONFIG_SERIAL_CPM_SCC3 42 clrbits32((u32*)&immap->im_scc[2].scc_sccm, UART_SCCM_TX | UART_SCCM_RX); 43 clrbits32((u32*)&immap->im_scc[2].scc_gsmrl, SCC_GSMRL_ENR | SCC_GSMRL_ENT); 44#endif 45 46#ifdef CONFIG_SERIAL_CPM_SCC4 47 clrbits32((u32*)&immap->im_scc[3].scc_sccm, UART_SCCM_TX | UART_SCCM_RX); 48 clrbits32((u32*)&immap->im_scc[3].scc_gsmrl, SCC_GSMRL_ENR | SCC_GSMRL_ENT); 49#endif 50 51 iounmap(bcsr); 52 iounmap(immap); 53} 54