Exemplo n.º 1
0
void console_tx_byte(unsigned char byte)
{
    if (byte == '\n')
        console_tx_byte('\r');

#if CONFIG_CONSOLE_SERIAL8250MEM
    if (oxford_oxpcie_present) {
        uart8250_mem_tx_byte(
            CONFIG_OXFORD_OXPCIE_BASE_ADDRESS + 0x1000, byte);
    }
#endif
#if CONFIG_CONSOLE_SERIAL8250
    uart8250_tx_byte(CONFIG_TTYS0_BASE, byte);
#endif
#if CONFIG_USBDEBUG && (CONFIG_EARLY_CBMEM_INIT || !defined(__PRE_RAM__))
    usbdebug_tx_byte(dbgp_console_output(), byte);
#endif
#if CONFIG_CONSOLE_NE2K
    ne2k_append_data(&byte, 1, CONFIG_CONSOLE_NE2K_IO_PORT);
#endif
#if CONFIG_CONSOLE_CBMEM && (CONFIG_EARLY_CBMEM_INIT || !defined(__PRE_RAM__))
    cbmemc_tx_byte(byte);
#endif
#if CONFIG_SPKMODEM
    spkmodem_tx_byte(byte);
#endif
}
Exemplo n.º 2
0
void console_tx_nibble(unsigned nibble)
{
	unsigned char digit;
	digit = nibble + '0';
	if (digit > '9') {
		digit += 39;
	}
	console_tx_byte(digit);
}
Exemplo n.º 3
0
int lowlevel_init_subsystems(void)
{
//	uint32_t reset_status;
	int actions = 0;

// 	do_barriers();

	/* Setup cpu info which is needed to select correct register offsets */
	cpu_info_init();

#if 0
	reset_status = power_read_reset_status();

	switch (reset_status) {
	case S5P_CHECK_SLEEP:
		actions = DO_CLOCKS | DO_WAKEUP;
		break;
	case S5P_CHECK_DIDLE:
	case S5P_CHECK_LPA:
		actions = DO_WAKEUP;
	default:
		/* This is a normal boot (not a wake from sleep) */
		actions = DO_UART | DO_CLOCKS | DO_POWER;
	}
#endif

	actions = DO_UART | DO_CLOCKS | DO_POWER;
	if (actions & DO_POWER)
		power_init();
	if (actions & DO_CLOCKS)
		system_clock_init();
	if (actions & DO_UART) {

		/* Set up serial UART so we can printf() */
		/* FIXME(dhendrix): add a function for mapping
		   CONFIG_CONSOLE_SERIAL_UART_ADDRESS to PERIPH_ID_UARTn */
//		exynos_pinmux_config(EXYNOS_UART, PINMUX_FLAG_NONE);
		exynos_pinmux_config(PERIPH_ID_UART3, PINMUX_FLAG_NONE);

		console_init();
		while (1) {
			console_tx_byte('C');
		}
	}
	init_timer();	/* FIXME(dhendrix): was timer_init() */

#if 0
	if (actions & DO_CLOCKS) {
		mem_ctrl_init();
		tzpc_init();
	}
#endif

//	return actions & DO_WAKEUP;
	return 0;
}
Exemplo n.º 4
0
void console_tx_byte(unsigned char byte)
{
	if (byte == '\n')
		console_tx_byte('\r');

#if CONFIG_CONSOLE_SERIAL8250MEM
	if (serial8250mem_base_address)
		uart8250_mem_tx_byte(serial8250mem_base_address, byte);
#endif
#if CONFIG_CONSOLE_SERIAL8250
	uart8250_tx_byte(CONFIG_TTYS0_BASE, byte);
#endif
#if CONFIG_CONSOLE_NE2K
	ne2k_append_data(&byte, 1, CONFIG_CONSOLE_NE2K_IO_PORT);
#endif
}
Exemplo n.º 5
0
/* FIXME: need to make console driver more generic */
void console_tx_byte(unsigned char byte)
{
	if (byte == '\n')
		console_tx_byte('\r');

#if CONFIG_CONSOLE_SERIAL8250MEM
	if (oxford_oxpcie_present) {
		uart8250_mem_tx_byte(
			CONFIG_OXFORD_OXPCIE_BASE_ADDRESS + 0x1000, byte);
	}
#endif
#if CONFIG_CONSOLE_SERIAL8250
	uart8250_tx_byte(CONFIG_TTYS0_BASE, byte);
#endif
#if CONFIG_CONSOLE_SERIAL_UART
	uart_tx_byte(byte);
#endif
#if CONFIG_USBDEBUG
	usbdebug_tx_byte(0, byte);
#endif
#if CONFIG_CONSOLE_CBMEM && !defined(__BOOT_BLOCK__)
	cbmemc_tx_byte(byte);
#endif
}
Exemplo n.º 6
0
static void ABI_X86 send_to_console(unsigned char b)
{
	console_tx_byte(b);
}
Exemplo n.º 7
0
void do_putchar(unsigned char byte)
{
	if (byte == '\n')
		console_tx_byte('\r');
	console_tx_byte(byte);
}