Linux Target Image Builder (ltib) configuration problem

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View

I'm working on a custom board that requries a change to the memory map
as laid out for a supported board (mcf5485evb). I can see in the
sources and the configuration files where the memory locations are set
but the ltib menu does not give access to these settings. Changing
them in the configuration or source files just results in the ltib
over writing those changes prior to performing the build.

I want to do this correctly with the tool. REALLY FRUSTRATING.
DOCUMENTATION SUCKS EGGS!! I know there's a way to do this it's not
clear how. Any help much appreciated....


Re: Linux Target Image Builder (ltib) configuration problem
Quoted text here. Click to load it

LTIB will build your kernel image and create a root file system image,
but does not change any kernel code. You will have to modify the
supported board's code for your custom board.



Re: Linux Target Image Builder (ltib) configuration problem
Quoted text here. Click to load it


I figured out what I needed to do. The BSP I'm using has a menu
interface (like busybox) but you couldn't select the thing I needed to
change (SDRAM_BASE, FLASH_BASE). When I would change these in the code
LTIB would just change them back. I found that if I
changed these in the kConfig file of my platform the changes would be
passed into the code.

My biggest question is if I can remap the memory for Linux this way.
It seems to want SDRAM to start at 0x0 and Flash to start at a higher
address (0xF0000000 in this case). My board requires Flash to start at
0x0 and SDRAM at 0x30000000. I've changed the values but I
still don't have the thing booting (does nothing). That's my real
issue.




Re: Linux Target Image Builder (ltib) configuration problem
Quoted text here. Click to load it

I am not familiar with this board, but I will give some generic
pointers.
1. Are you using a bootloader / bios or are you starting up linux
kernel from boot vector ?
If you are loading a bootloader, you will have to check what the boot
loader does as well. If not see the next point.
2. You will have to dig up information on how the processor works when
it cold boots.  Some simple processors jump to a specific address and
off it goes.  Some high end processors (such as Freescale ones) have a
hardware controlled Reset Configuration Word setup (RCW).  What that
means is when the the CPU boots it looks up a few IO line values and
depending on those it will try to get its RCW words content from a
I2C, Local bus flash or Hard set defaults.  Next step of the boot
process would be defined by these RCWs and they will control what and
where in the memory map gets accessed and where the PC starts from.
It may take some home work to understand this procedure.
3. Some processors have their I/O and other registers mapped to
specific places in the memory map after boot.  When your code starts
executing, you can remap the register to different place in memory
map.  If this is the case you may be having a conflict at boot time
with where these registers are mapped to.
4. Is the Flash connected to the local bus or is it inbuilt to your
processor.  Depending on the answer to this, you may have to track
down whether you can change these purely by a software change to the
kernel or you will need some hardware changes as well. Eg: you may
have to change addressing and chip select lines on your local bus to
access the flash from a different memory location.
Cheers
  J


Site Timeline