Changing user/kernel virtual memory split to 2GB/2GB

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Changing user/kernel virtual memory split to 2GB/2GB

1,259 Views
yoav_rubin2
Contributor I

I'm using the P4080DS SoC with 32bit 4.18 Linux kernel + RT Patch.

While using the Real Time Patch I can't work with HIGHMEM regions (CONFIG_HIGHMEM is disabled by default)

so I've changed the virtual memory address space user/kernel split from 3gb/1gb to 2gb/2gb in order to be able to work with more than 1GB RAM Size. (changed the CONFIG_PAGE_OFFSET , CONFIG_TASK_SIZE and others to 0x80000000)

The problem is that following the relocation of the KERNELBASE from 0xC0000000 to 0x80000000 the kernel tries to read the spin table (using SMP) but can't and gets sig 11.

Before the change everyting worked fine and the kernel searched for spin table in addresses starting with 0xa...

Now it search in addresses starting with 0x6 (because of the kernel relocation).

I changed the source code so the kernel continue reading addresses starting with 0xa.. and it worked but now is says that the first cpu isn't spinning and: RAMDISK: Couldn't find valid RAM disk image starting at 0.

Maybe someone knows what are the proper changes I have to make in order everything will work fine with the split and kernel relocation changes?

thanks!

Labels (1)
0 Kudos
2 Replies

1,058 Views
yoav_rubin2
Contributor I

problem solved after changing the user/kernel virtual address space split

0 Kudos

1,058 Views
yipingwang
NXP TechSupport
NXP TechSupport

Please modify CONFIG_KERNEL_START and CONFIG_PHYSICAL_START

0 Kudos