[okl4-developer] about elfweaver and ld

Gabi Voiculescu b304_a at yahoo.com
Thu Apr 3 08:24:06 EST 2008


Hello.

As I've said in the previous email, my board does not display anything at the serial port.

Beside the possibilities expressed in the previous email, I want to eliminate one more.


I might be missing the console due to a miss-addressing of CONSOLE_VADDR.


The physical addreses in my system are:
The SFR area starts at 0x1000.0000 in my chip.
The UART0 is at 0x1010.C000.

In my platform/board/pistachio/src/plat.cc I have therefore included:
#include <plat/offsets.h>
....
const struct arm_bootdesc SECTION(".roinit") platform_memory[] = {
        /* Logic Tile area */
        { 0x80000000,   0xffffffff,     memdesc_type_dedicated },
        /* Reserved Area */
        { 0x70000000,   0x7fffffff,     memdesc_type_reserved },
        /* pci Area */
        { 0x60000000,   0x6fffffff,     memdesc_type_dedicated },
        /* reserved Area */
        { 0x40040000,   0x5fffffff,     memdesc_type_reserved },
        /* NOR flash 1 Area */
        { 0x3c008000,   0x3fffffff,     memdesc_type_dedicated },
        /* Cellular RAM - SRAM -  Area */
        { 0x34000000,   0x37ffffff,     memdesc_type_dedicated },
        /* NOR Flash 2 Area */
        { 0x30000000,   0x33ffffff,     memdesc_type_dedicated },
        /* PISMO Area */
        { 0x20000000,   0x2fffffff,     memdesc_type_reserved },
        /* SFR Area */
        { 0x10000000,   0x1fffffff,     memdesc_type_dedicated },
        /* Area used by boot monitor? Mark it reserved or boot? */
        //{ 0x00000000,   0x00008000, memdesc_type_boot }, //is in ram...don't write it here
        { 0, 0, (memdesc_type_t)0 }
};

.....

extern "C" void SECTION(".init") init_platform(void)
{
......
    // 0x1010C000 / 0x1010d000 / 0x1010e000 / 0x1010f000 /0x10008000
    space->add_mapping((addr_t)CONSOLE_VADDR, (addr_t)UART_PHYS,
                    pgent_t::size_4k, space_t::read_write, true, uncached);
....

where I have defined in my include file (platform/board/pistachio/include/plat/offsets.h):

#define UART0_PHYS      0x1010C000
.....
#define UART_PHYS UART0_PHYS
.....
#define BOARD_UART0_OFFSET    0x0C000
#define        CONSOLE_VADDR        (IO_AREA1_VADDR | BOARD_UART0_OFFSET)

if I read this right, then I have configured everything properly, or did I miss anything?

Gabi







       
---------------------------------
You rock. That's why Blockbuster's offering you one month of Blockbuster Total Access, No Cost.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.okl4.org/pipermail/developer/attachments/20080402/5fbe03b3/attachment-0001.htm 


More information about the Developer mailing list