01 > ȸҰ

 
작성일 : 21-04-01 17:39
How can I access up to 16GB memory on PL memory under Petalinux?
 글쓴이 : 이로직…
조회 : 3,188  

How can I access up to 16GB memory on PL memory under Petalinux?

I'm doing memory test project on petalinux os using MPSOC Ultrascale+(xczu17eg-ffvb1517) . (vivado verion : 18.2 )

I want to access DDR4 Memory up to 16GB on PL Memory, but i only access up to 1GB using petalinux modules.
Here is the details of my project:
Diagram.png

and address editor information. ( Target memory range : 0x10_0000_0000 ~ 0x13_0000_0000 )
Address Editor.png
work sequence.
1) lanuch sdk
1-1) Adding FSBL / PMU .
2) Petalinx
2-1 ) petalinux -create --type project --name xxx --template zynqMP
2-2) petalinx-config --get-hw-description =../ ( default option )
2-3) petalinux-config -t modules --name modules --enable ( petalinux-config -c rootfs for check the module )
For access to PL memory :
reques_mem_region(0x1000000000,16GB,"modules")
pl_base_addr =ioremap(0x1000000000, TEST_SIZE).
2-4) petalinux-build
2-5) petalinux-package --boot --fsbl ../fsbl.elf --fpga ../wrappt.bit --pmufw ../pmu.elf --u-boot --force
2-6) cp ./image/linux/Boot.bin ./image/linux/image.ub ./image/linux/IMGAE /media/SD CARD

3) Petalinux OS
3-1) cd /lib/module/4.xx/extra
3-2) insmod module.ko
3-2-1)IF( TEST_SIZE == 1GB) --> Sucess to access on PL Memory
else if ( TEST_SIZE >= 1.5GB ) --> Can not access to memory.

How can I do for memory access up to 16GB ?
I have not changed any options of petalinux because I am a beginner. ( ex. pl.dtsi or zynqmp.dtsi)
Please let me know anything~!!
Thanks for any help!