Exemple #1
0
static void main_fiq(void)
{
	uint32_t iar;

	DMSG("%s\n", __func__);

	iar = gic_read_iar();

	while (uart_have_rx_data(CONSOLE_UART_BASE))
		DMSG("got 0x%x\n", uart_getchar(CONSOLE_UART_BASE));

	gic_write_eoir(iar);

	DMSG("return from %s\n", __func__);
}
Exemple #2
0
void gic_it_handle(struct gic_data *gd)
{
	uint32_t iar;
	uint32_t id;

	iar = gic_read_iar(gd);
	id = iar & GICC_IAR_IT_ID_MASK;

	if (id == GIC_SPURIOUS_ID)
		DMSG("ignoring spurious interrupt");
	else
		itr_handle(id);

	gic_write_eoir(gd, iar);
}
Exemple #3
0
static void main_fiq(void)
{
	uint32_t iar;

	kprintf("%s\n", __func__);

	iar = gic_read_iar();

	while (uart_have_rx_data(UART1_BASE))
		kprintf("got 0x%x\n", uart_getchar(UART1_BASE));

	gic_write_eoir(iar);

	kprintf("return from %s\n", __func__);
}
Exemple #4
0
static void main_fiq(void)
{
	uint32_t iar;

	DMSG("enter");

	iar = gic_read_iar();

	while (pl011_have_rx_data(CONSOLE_UART_BASE)) {
		DMSG("cpu %zu: got 0x%x",
		     get_core_pos(), pl011_getchar(CONSOLE_UART_BASE));
	}

	gic_write_eoir(iar);

	DMSG("return");
}