Dear sir,

I wanted to know how to write my own config files about non-root cell. By the 
way, I tried to alter the 
rpi4-linux-demo.c and compiled it. Of course, it was successful in that way. 

1. But I don't understand why there are several memory regions definitions.
2. How to know the memory addresses.
3. How many memory regions should be defined. 

Whether should I reference the Raspberry Pi 4 model B's manual to resolve three 
questions.
Here is the part of rpi4-linux-demo.c about memory definitions.(I didn't why 
there are 5 memory regions, 2 RAM definitions).
 
.mem_regions = {
 /* IVSHMEM shared memory regions (demo) */
 {
 .phys_start = 0x3faf0000,
 .virt_start = 0x3faf0000,
 .size = 0x1000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_ROOTSHARED,
 },
 {
 .phys_start = 0x3faf1000,
 .virt_start = 0x3faf1000,
 .size = 0x9000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_ROOTSHARED,
 },
 {
 .phys_start = 0x3fafa000,
 .virt_start = 0x3fafa000,
 .size = 0x2000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_ROOTSHARED,
 },
 {
 .phys_start = 0x3fafc000,
 .virt_start = 0x3fafc000,
 .size = 0x2000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_ROOTSHARED,
 },
 {
 .phys_start = 0x3fafe000,
 .virt_start = 0x3fafe000,
 .size = 0x2000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_ROOTSHARED,
 },
 /* IVSHMEM shared memory region */
 JAILHOUSE_SHMEM_NET_REGIONS(0x3fb00000, 1),
 /* UART */ {
 .phys_start = 0xfe215040,
 .virt_start = 0xfe215040,
 .size = 0x40,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_IO | JAILHOUSE_MEM_IO_8 |
 JAILHOUSE_MEM_IO_32 | JAILHOUSE_MEM_ROOTSHARED,
 },
 /* RAM */ {
 .phys_start = 0x3f900000,
 .virt_start = 0,
 .size = 0x10000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_LOADABLE,
 },
 /* RAM */ {
 .phys_start = 0x30000000,
 .virt_start = 0x30000000,
 .size = 0x8000000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_EXECUTE | JAILHOUSE_MEM_DMA |
 JAILHOUSE_MEM_LOADABLE,
 },
 /* communication region */ {
 .virt_start = 0x80000000,
 .size = 0x00001000,
 .flags = JAILHOUSE_MEM_READ | JAILHOUSE_MEM_WRITE |
 JAILHOUSE_MEM_COMM_REGION,
 },
 }

By the way, what information should I obtained so that I can  write my own cell 
config.
If I can get your generous help, I will appreciate.
Thank you again !

Yours sincerely,
Hongpeng Cao.

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jailhouse-dev/321eddc.40ef8.1788d817ec9.Coremail.caohp19%40lzu.edu.cn.

Reply via email to