Porting L4 on ARM Integrator/CP Platform
"Prem Mallappa" <[email protected]>
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
Hi Guys,
I am trying to port L4Ka::Pistachio on ARM Integrator/CP platform.
I have done the other changes, following is the change i am interested
to discuss.
kernel/src/platform/integrator/plat.cc
----------------------------
extern "C" void SECTION(".init") init_platform(void)
{
space_t *space = get_kernel_space();
space->add_mapping((addr_t)CONSOLE_VADDR, (addr_t)UART0_BASE,
pgent_t::size_1m, true, true, uncached);
}
/*
* Platform memory descriptors
*/
struct arm_bootdesc SECTION(".init.data") platform_memory[] = {
{ SDRAM_START, SDRAM_END, memdesc_t::conventional },
{ SDRAM_END, 0xFFFFFFFF, memdesc_t::dedicated },
// { PERIPHERAL_START, UART0_BASE-1, memdesc_t::dedicated},
// { UART0_BASE, 0x1000, memdesc_t::dedicated},
// { UART1_BASE, 0x1000, memdesc_t::dedicated},
/* IO Devices - Peripherals/LCD/Mem ctrl */
// { UART1_BASE + 0x1001, PERIPHERAL_END, memdesc_t::dedicated },
{ 0, 0, 0 }
};
--------------------------------------------------------------------------
I am CONSOLE_VADDR is IO_AREA0_VADDR
and UART0_BASE is 0x16000000
SDRAM_START is 0x0
SDRAM_END is SDRAM_START + 128M
I am unable to see anything on the UART console, it is unable to map
the UART to proper locations.
All i want to know is, is this a valid thing to do. I have changed
console.cc under ...../kdb/platform/integrator to initialize the UART
and implemented seiral_putc function to output the character.
I tested these changes just by compiling that code and calling
serial_putc with a string and it works on baremetal.
I am expecting the first kernel message to be printed after it remaps
the uart. but it is accessing physical location 0x000B11ff (or some
thing like that).
Can anybody help me here
/Prem