3 // On ARM the MMIO for the uart is accessible before the MMU is fully up
4 EXTENSION class Kernel_uart { enum { Bsp_init_mode = Init_before_mmu }; };
6 IMPLEMENTATION [arm && imx21 && serial]:
8 #include "mem_layout.h"
11 bool Kernel_uart::startup(unsigned port, int /*irq*/)
13 if(port!=3) return false;
14 return Uart::startup(Mem_layout::Uart_base, 20);
17 IMPLEMENTATION [arm && imx35 && serial]:
19 #include "mem_layout.h"
22 bool Kernel_uart::startup(unsigned port, int /*irq*/)
24 if(port!=3) return false;
28 return Uart::startup(Mem_layout::Uart_base, 45);
31 IMPLEMENTATION [arm && imx51 && serial]:
33 #include "mem_layout.h"
36 bool Kernel_uart::startup(unsigned port, int /*irq*/)
38 if(port!=3) return false;
39 return Uart::startup(Mem_layout::Uart_base, 31);