view target-utils/libcommon/uartsel.c @ 445:9eeeef3ff7db

os_sem_fl.c: os_QuerySemaphore() done
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Mon, 23 Jun 2014 01:19:50 +0000
parents 40f607bb0a2c
children a7b0b426f9ca
line wrap: on
line source

/*
 * uart_select_init() figures out which UART was used to load us
 * through the boot ROM, and sets things up for us to use the same
 * UART for our communication.
 */

#include "types.h"
#include "romvars.h"
#include "ns16550.h"
#include "halt.h"

extern struct boot_rom_vars rom_vars;

struct ns16550_regs *uart_base;
char *uart_name;

uart_select_init()
{
	switch (rom_vars.uart_id) {
	case 0:
		uart_base = (struct ns16550_regs *) 0xFFFF5800;
		uart_name = "MODEM";
		break;
	case 1:
		uart_base = (struct ns16550_regs *) 0xFFFF5000;
		uart_name = "IrDA";
		break;
	default:
		_exit(HALTCODE_INVALIDUART);
	}
}