For example: Original code: This section will discuss the modifications required in u-boot to change the start address of the Linux kernel to leave DDR space at the beginning of DDR for the DSP. If the kernel start address is modified to be at 16MB then u-boot will overwrite itself when loading the Linux kernel and be unable to start kernel execution. DM357) the board/davinci/file contains two variables that must be set to change the start address of u-boot and the Linux kernel load address. To determine if you are using this version of u-boot you can do: The davinci.h file needs to be modified to change the address where the Linux boot parameters are stored.Optionally you can change the amount of memory that u-boot uses.Check the example patch for information on changing the amount of DDR used by u-boot.Original code: If you change the amount of memory in your system you will often need to update the CMEM memory region as well.For boards other than DM6446 please modify the corresponding board files.In the board-evm.c file you need to change the value of BOOT_PARAMS in the MACHINE_START section.
Example showing how to mount a file called initrd-2.4.21-40.Example showing how to mount a file called initrd.img-2.6.8-2-686 (from a default Debian Sarge kernel): # All work is done in a temporary directory mkdir /tmp/initrdmount # Mount the image file directly mount -o loop /boot/initrd.img-2.6.8-2-686 /tmp/initrdmount #Investigate its content, etc.cd /tmp/initrdmount #Once done un-mount it: umount /tmp/initrdmount Seen on: Debian Sarge, kernel 2.6.8 This is the same as above just that the file is compressed (with gzip).To show how this works we will consider the changes required to CMEM when moving from 256MB of DDR to 128MB.
Original Memory Map: You can change these values in the script that is part of the DVSDK demos so that you do not need to enter them after each boot.
To check if your kernel supports config time setting of the start address do: While still in xconfig you can change the SDRAM, ZRELADDR, PARAMS_PHYS, and INITRD_PHYS locations for you memory map. This section will cover what changes are required in the kernel.