switch-coreboot/arch/x86/serial.c
Uwe Hermann ff7df4f7ad Add cross compilation support and simplify the far to complex serial
code (This goes hand in hand, as some parts of serial were hardcoded
to one architecture until now)

* include/uart8250.h: add TTYSx defines that are used in
  multiple places. formerly part of arch/x86/serial.c.
  Drop init_uart8250 (unused)
* lib/uart8250.c: drop arch/x86/config.h usage
  Drop init_uart8250 (unused)
* arch/powerpc/Kconfig, arch/x86/Kconfig: add CONFIG_ARCH to
  contain the directory name under LinuxBIOSv3/arch/
* arch/x86/console.c: drop some dead code. Drop hardcoded config.h values.
  use generic uart8250.h header
* arch/x86/cachemain.c: Drop hardcoded config.h values. Still use hardcoded
  ROM size for now. (To be changed later)
* arch/x86/config.h: dropped, no longer needed
* arch/x86/serial.c: factor out generically used defines to uart8250.h
* Makefile: use mainboard architecture instead of target architecture to choose
  include path.
  Read .xcompile if available (configure replacement).
  Create build.h with compile time and version.
* util/xcompile/xcompile: new file. Search for supported cross compilers
  linkers, assemblers (and potentially supported compiler flags etc)
  This is a very slick configure replacement.
* util/dtc/Makefile: fix Makefile for cross compilation

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>
Signed-off-by: Uwe Hermann <uwe@hermann-uwe.de>
Acked-by: Ronald G. Minnich <rminnich@gmail.com>



git-svn-id: svn://coreboot.org/repository/LinuxBIOSv3@190 f3766cd6-281f-0410-b1cd-43a5c92072e9
2007-03-05 21:14:21 +00:00

41 lines
1.3 KiB
C

/*
* serial.c -- uart init function
*
* Copyright (C) 2007 coresystems GmbH
* Written by Stefan Reinauer <stepan@coresystems.de> for coresystems GmbH.
*
* Copyright (C) 2007 Ronald G. Minnich <rminnich@gmail.com>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 of the License.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA, 02110-1301 USA
*/
#include <arch/io.h>
#include <uart8250.h>
void uart_init(void)
{
unsigned ttysx_div;
#if 0
unsigned ttysx_index;
static const unsigned char divisor[] = { 1, 2, 3, 6, 12, 24, 48, 96 };
// read CMOS settings?
ttysx_index = read_option(CMOS_VSTART_baud_rate, CMOS_VLEN_baud_rate, 0);
ttysx_index &= 7;
ttysx_div = divisor[ttysx_index];
#else
ttysx_div = TTYSx_DIV;
#endif
uart8250_init(TTYSx_BASE, ttysx_div, UART_LCS);
}