void arch_post_smp_init(void) { /* Currently the only supported platform for ia32 is 'pc'. */ static const char *platform = "pc"; sysinfo_set_item_data("platform", NULL, (void *) platform, str_size(platform)); #ifdef CONFIG_PC_KBD /* * Initialize the i8042 controller. Then initialize the keyboard * module and connect it to i8042. Enable keyboard interrupts. */ i8042_instance_t *i8042_instance = i8042_init((i8042_t *) I8042_BASE, IRQ_KBD); if (i8042_instance) { kbrd_instance_t *kbrd_instance = kbrd_init(); if (kbrd_instance) { indev_t *sink = stdin_wire(); indev_t *kbrd = kbrd_wire(kbrd_instance, sink); i8042_wire(i8042_instance, kbrd); trap_virtual_enable_irqs(1 << IRQ_KBD); trap_virtual_enable_irqs(1 << IRQ_MOUSE); } } #endif if (irqs_info != NULL) sysinfo_set_item_val(irqs_info, NULL, true); }
static void raspberrypi_input_init(void) { srln_instance_t *srln_instance = srln_init(); if (srln_instance) { indev_t *sink = stdin_wire(); indev_t *srln = srln_wire(srln_instance, sink); pl011_uart_input_wire(&raspi.uart, srln); bcm2835_irc_enable(raspi.irc, BCM2835_UART_IRQ); } }
void malta_input_init(void) { (void) stdin_wire(); }