arch: mips: Update initrd_start and initrd_end
authorHoratiu Vultur <horatiu.vultur@microchip.com>
Wed, 24 Apr 2019 15:21:29 +0000 (17:21 +0200)
committerDaniel Schwierzeck <daniel.schwierzeck@gmail.com>
Fri, 3 May 2019 14:42:23 +0000 (16:42 +0200)
commit6943cc9732202b9c65990cff9f74cea6b8173e09
treecc1b2b268e4789d538d01f8746865230be7a4b4d
parentfeda3b44a999f25bcadaa8b345c740ea05c0bd22
arch: mips: Update initrd_start and initrd_end

Microsemi SoC defines CONFIG_SYS_SDRAM_BASE to be 0x80000000, which
represents the start of kseg0 and represents a virtual address. Meaning
that the initrd_start and initrd_end point somewhere kseg0.
When these parameters are passed to linux kernel through DT
they are pointing somewhere in kseg0 which is a virtual address but linux
kernel expects the addresses to be physical addresses(in kuseg) because
it is converting the physical address to a virtual one.

Therefore update the uboot to pass the physical address of initrd_start
and initrd_end by converting them using the function virt_to_phys before
setting up the DT.

Signed-off-by: Horatiu Vultur <horatiu.vultur@microchip.com>
Reviewed-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
arch/mips/lib/bootm.c