Ejemplo n.º 1
0
errval_t serial_early_init(unsigned port)
{
    if (port < NUM_PORTS) {
	assert(ports[port].base == 0);
	pl011_uart_init(&ports[port], UART0_VBASE + port*UART_MAPPING_DIFF);
	return SYS_ERR_OK;
    } else {
	return SYS_ERR_SERIAL_PORT_INVALID;
    }
}
Ejemplo n.º 2
0
/*
 * Initialize a serial port 
 */
errval_t serial_init(unsigned port, bool hwinit)
{
    if (port < NUM_PORTS) {
        lvaddr_t base = paging_map_device(UART0_VBASE + port*UART_MAPPING_DIFF,
                                          UART_DEVICE_BYTES);
        if (hwinit) {
            pl011_uart_init(&ports[port], 
			     base + UART0_SECTION_OFFSET + port*UART_MAPPING_DIFF);
        }
        return SYS_ERR_OK;
    } else {
        return SYS_ERR_SERIAL_PORT_INVALID;
    }
}
Ejemplo n.º 3
0
static void raspberrypi_output_init(void)
{
#ifdef CONFIG_FB
	fb_properties_t prop;
	if (bcm2835_fb_init(&prop)) {
		outdev_t *fb_dev = fb_init(&prop);
		if (fb_dev)
			stdout_wire(fb_dev);
	}
#endif

#ifdef CONFIG_PL011_UART
	if (pl011_uart_init(&raspi.uart, BCM2835_UART_IRQ,
			    BCM2835_UART0_BASE_ADDRESS))
		stdout_wire(&raspi.uart.outdev);
#endif
}