* XEN on R-CAR H3
@ 2019-02-06 14:41 Amit Tomer
2019-02-06 15:03 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-06 14:41 UTC (permalink / raw)
To: xen-devel
HI,
Trying to boot XEN on R-CAR H3 starter Kit board.
Linux image based on 5.0.0-rc5 and XEN image is 4.12
tftp 0x48000000 xen;tftp 0x7a000000 Image; tftp 4a000000 r8a7795-h3ulcb.dtb
setenv xen_addr_r 0x48000000
setenv fdt_addr_r 4a000000
setenv kernel_addr_r 0x7a000000
fdt addr $fdt_addr_r
fdt resize
fdt set /chosen xen,xen-bootargs "console=dtuart dom0_mem=384M"
fdt set /chosen \#address-cells <1>
fdt set /chosen \#size-cells <1>
fdt mknod /chosen module@0
fdt resize
fdt set /chosen/module@0 compatible "xen,linux-zimage" "xen,multiboot-module"
fdt set /chosen/module@0 reg <$kernel_addr_r 0x1800000>
setenv bootargs "console=hvc0 ro root=/dev/mmcblk0p2 clk_ignore_unused
rootwait earlycon=xenboot"
But when It boot it, I see following crash:
booti 0x48000000 - 0x4a000000
## Flattened Device Tree blob at 4a000000
Booting using the fdt blob at 0x4a000000
reserving fdt memory region: addr=4a000000 size=10000
Using Device Tree in place at 000000004a000000, end
000000004a012fff
Starting kernel ...
UART enabled -
- CPU 00000000 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Zero BSS -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Checking for initrd in /chosen
(XEN) RAM: 0000000048000000 - 000000007fffffff
(XEN) RAM: 0000000500000000 - 000000053fffffff
(XEN) RAM: 0000000600000000 - 000000063fffffff
(XEN) RAM: 0000000700000000 - 000000073fffffff
(XEN) RAM: 0000000500000000 - 000000053fffffff
(XEN) RAM: 0000000600000000 - 000000063fffffff
(XEN) RAM: 0000000700000000 - 000000073fffffff
(XEN)
(XEN) MODULE[0]: 000000004a000000 - 000000004a010000 Device Tree
(XEN) MODULE[1]: 000000007a000000 - 000000007b800000 Kernel
(XEN) RESVD[0]: 000000004a000000 - 000000004a010000
(XEN)
(XEN)
(XEN) Command line: console=dtuart dtuart=serial0 dom0_mem=384M
(XEN) PFN compression on bits 19...19
(XEN) Xen BUG at page_alloc.c:274
(XEN) ----[ Xen-4.12.0-rc arm64 debug=y Not tainted ]----
(XEN) CPU: 0
(XEN) PC: 000000000028b30c page_alloc.c#bootmem_region_add+0x184/0x194
(XEN) LR: 000000000028b36c
(XEN) SP: 00000000002d7d00
(XEN) CPSR: 800003c9 MODE:64-bit EL2h (Hypervisor, handler)
(XEN) X0: 0000000000500000 X1: 0000000000000003 X2: 0000000000000006
(XEN) X3: 0000000000540000 X4: 0000800008121000 X5: 0000000000000028
(XEN) X6: 0000000000600000 X7: 0000000000000004 X8: 0000000000000001
(XEN) X9: 000000000000000a X10: 00000000002d7afa X11: 0000000000000031
(XEN) X12: 0000000000000002 X13: 000000000026e5e8 X14: 0000000000000020
(XEN) X15: 0000000000400000 X16: 0000000000000000 X17: 0000000000000000
(XEN) X18: 000000007d726e08 X19: 0000000000500000 X20: 0000000000540000
(XEN) X21: 0000000540000000 X22: 0000000500000000 X23: 0000000540000000
(XEN) X24: 000000000028b31c X25: 00000000002b8400 X26: 0000000048000000
(XEN) X27: 0000000740000000 X28: 0000000000000004 FP: 00000000002d7d00
(XEN)
(XEN) VTCR_EL2: 80000000
(XEN) VTTBR_EL2: 0000000000000000
(XEN)
(XEN) SCTLR_EL2: 30cd183d
(XEN) HCR_EL2: 0000000000000038
(XEN) TTBR0_EL2: 0000000048114000
(XEN)
(XEN) ESR_EL2: f2000001
(XEN) HPFAR_EL2: 0000000000000000
(XEN) FAR_EL2: 0000000000000000
(XEN)
(XEN) Xen stack trace from sp=00000000002d7d00:
(XEN) 00000000002d7d40 000000000028b36c 0000000000000001 0000000500000000
(XEN) 0000000540000000 0000000500000000 0000000540000000 00000000002d7d90
(XEN) 00000000002d7d90 000000000029c8f8 0000000000000001 0000000500000000
(XEN) 0000000540000000 0000000500000000 0000000540000000 0000000000000001
(XEN) 00000000002e0000 0000000500000000 00000000002d7de0 000000000029dac0
(XEN) 0000000540000000 0000000500000000 0000000540000000 00000000002b83c0
(XEN) ffffffffffffffff 00000000002b83d8 000000004a000000 000000004a010000
(XEN) 000000007d726a90 0000000000200608 0000000048000000 0000000047e00000
(XEN) 000000004a000000 0000000000000000 0000000000400000 0000000000000000
(XEN) 0000000000000001 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000010000 000000004a000000 0000000138000000
(XEN) 00000000002b83c0 000000000028b31c 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000300000000 ffffffff00000000 0000040000000040
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) 0000000000000000 0000000000000000 0000000000000000 0000000000000000
(XEN) Xen call trace:
(XEN) [<000000000028b30c>] page_alloc.c#bootmem_region_add+0x184/0x194 (PC)
(XEN) [<000000000028b36c>] init_boot_pages+0x50/0x17c (LR)
(XEN) [<000000000028b36c>] init_boot_pages+0x50/0x17c
(XEN) [<000000000029c8f8>] dt_unreserved_regions+0xc8/0xdc
(XEN) [<000000000029dac0>] start_xen+0xbe8/0xc58
(XEN) [<0000000000200608>] arm64/head.o#paging+0x60/0x98
(XEN)
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Xen BUG at page_alloc.c:274
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...
Is there something obvious , I am missing ?
Thanks,
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-06 14:41 XEN on R-CAR H3 Amit Tomer
@ 2019-02-06 15:03 ` Oleksandr
2019-02-06 15:18 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-06 15:03 UTC (permalink / raw)
To: Amit Tomer, xen-devel
On 06.02.19 16:41, Amit Tomer wrote:
> HI,
Hi
>
> Trying to boot XEN on R-CAR H3 starter Kit board.
>
> Linux image based on 5.0.0-rc5 and XEN image is 4.12
>
> tftp 0x48000000 xen;tftp 0x7a000000 Image; tftp 4a000000 r8a7795-h3ulcb.dtb
> setenv xen_addr_r 0x48000000
> setenv fdt_addr_r 4a000000
> setenv kernel_addr_r 0x7a000000
> fdt addr $fdt_addr_r
> fdt resize
> fdt set /chosen xen,xen-bootargs "console=dtuart dom0_mem=384M"
> fdt set /chosen \#address-cells <1>
> fdt set /chosen \#size-cells <1>
> fdt mknod /chosen module@0
> fdt resize
> fdt set /chosen/module@0 compatible "xen,linux-zimage" "xen,multiboot-module"
> fdt set /chosen/module@0 reg <$kernel_addr_r 0x1800000>
> setenv bootargs "console=hvc0 ro root=/dev/mmcblk0p2 clk_ignore_unused
> rootwait earlycon=xenboot"
>
> But when It boot it, I see following crash:
>
>
> booti 0x48000000 - 0x4a000000
> ## Flattened Device Tree blob at 4a000000
> Booting using the fdt blob at 0x4a000000
> reserving fdt memory region: addr=4a000000 size=10000
> Using Device Tree in place at 000000004a000000, end
> 000000004a012fff
>
> Starting kernel ...
> UART enabled -
> - CPU 00000000 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Zero BSS -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Checking for initrd in /chosen
> (XEN) RAM: 0000000048000000 - 000000007fffffff
> (XEN) RAM: 0000000500000000 - 000000053fffffff
> (XEN) RAM: 0000000600000000 - 000000063fffffff
> (XEN) RAM: 0000000700000000 - 000000073fffffff
> (XEN) RAM: 0000000500000000 - 000000053fffffff
> (XEN) RAM: 0000000600000000 - 000000063fffffff
> (XEN) RAM: 0000000700000000 - 000000073fffffff
Memory nodes got duplicated somehow. Likely U-Boot did something incorrect.
Try to use single memory node in your device-tree instead of separated
by each bank nodes:
memory@48000000 {
device_type = "memory";
/* first 128MB is reserved for secure area. */
reg = <0x0 0x48000000 0x0 0x38000000>,
<0x5 0x00000000 0x0 0x40000000>,
<0x6 0x00000000 0x0 0x40000000>,
<0x7 0x00000000 0x0 0x40000000>;
};
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-06 15:03 ` Oleksandr
@ 2019-02-06 15:18 ` Amit Tomer
2019-02-08 18:21 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-06 15:18 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel
Hi,Thanks for prompt reply.
> Memory nodes got duplicated somehow. Likely U-Boot did something incorrect.
>
> Try to use single memory node in your device-tree instead of separated
> by each bank nodes:
>
> memory@48000000 {
> device_type = "memory";
> /* first 128MB is reserved for secure area. */
> reg = <0x0 0x48000000 0x0 0x38000000>,
> <0x5 0x00000000 0x0 0x40000000>,
> <0x6 0x00000000 0x0 0x40000000>,
> <0x7 0x00000000 0x0 0x40000000>;
> };
>
> --
Sorry, I should have read the other thread completely where Andrii
Anisov has suggested the same.
Would try changes mentioned by you.
Thanks
-Amit
> Regards,
>
> Oleksandr Tyshchenko
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-06 15:18 ` Amit Tomer
@ 2019-02-08 18:21 ` Amit Tomer
2019-02-09 16:48 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-08 18:21 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel
Hi,
> Would try changes mentioned by you.
We managed to boot XEN with dom0 kernel on H3.
But we see following , when we try to domU guest:
# xl create -c config.xl
Parsing config from config.xl
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
/etc/xen/scripts/block add [2417] exited with error status 1
libxl: error: libxl_device.c:1286:device_hotplug_child_death_cb:
script: File /home/amit_new/guest_domU/rootfs.img is read-only, and so
I willt
mount it read-write in a guest domain.
libxl: error: libxl_create.c:1318:domcreate_launch_dm: Domain 1:unable
to add disk devices
libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
/etc/xen/scripts/block remove [2461] exited with error status 1
libxl: error: libxl_device.c:1286:device_hotplug_child_death_cb:
script: /etc/xen/scripts/block failed; error detected.
(XEN) mm.c:1401:d0v0 gnttab_mark_dirty not implemented yet
libxl: error: libxl_domain.c:1038:libxl__destroy_domid: Domain
1:Non-existant domain
libxl: error: libxl_domain.c:993:domain_destroy_callback: Domain
1:Unable to destroy guest
libxl: error: libxl_domain.c:920:domain_destroy_cb: Domain
1:Destruction of domain failed
where #cat config.xl
name = "guest-1"
kernel = "Image"
extra = "root=/dev/xvda rw xencons=tty console=hvc0"
memory = 256
vcpus = 1
disk = [ 'rootfs.img,raw,xvda,rw' ]
Any idea what is going wrong here ?
-Thanks,
Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-08 18:21 ` Amit Tomer
@ 2019-02-09 16:48 ` Oleksandr
2019-02-15 14:17 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-09 16:48 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel
On 08.02.19 20:21, Amit Tomer wrote:
> Hi,
Hi
>> Would try changes mentioned by you.
> We managed to boot XEN with dom0 kernel on H3.
That's great.
> But we see following , when we try to domU guest:
>
> # xl create -c config.xl
> Parsing config from config.xl
> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
> /etc/xen/scripts/block add [2417] exited with error status 1
> libxl: error: libxl_device.c:1286:device_hotplug_child_death_cb:
> script: File /home/amit_new/guest_domU/rootfs.img is read-only, and so
> I willt
> mount it read-write in a guest domain.
> libxl: error: libxl_create.c:1318:domcreate_launch_dm: Domain 1:unable
> to add disk devices
> libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus:
> /etc/xen/scripts/block remove [2461] exited with error status 1
> libxl: error: libxl_device.c:1286:device_hotplug_child_death_cb:
> script: /etc/xen/scripts/block failed; error detected.
> (XEN) mm.c:1401:d0v0 gnttab_mark_dirty not implemented yet
> libxl: error: libxl_domain.c:1038:libxl__destroy_domid: Domain
> 1:Non-existant domain
> libxl: error: libxl_domain.c:993:domain_destroy_callback: Domain
> 1:Unable to destroy guest
> libxl: error: libxl_domain.c:920:domain_destroy_cb: Domain
> 1:Destruction of domain failed
>
> where #cat config.xl
> name = "guest-1"
> kernel = "Image"
> extra = "root=/dev/xvda rw xencons=tty console=hvc0"
> memory = 256
> vcpus = 1
> disk = [ 'rootfs.img,raw,xvda,rw' ]
>
> Any idea what is going wrong here ?
Looks like, something incorrect with you block device settings.
Maybe, enabling verbose output will provide more informative output:
xl -v -v -v create -c config.xl
I assume, your have the following option enabled in your Linux defconfig:
CONFIG_XEN_BLKDEV_BACKEND=y
Personally I have never tried to run guest domain with such disk option:
disk = [ 'rootfs.img,raw,xvda,rw' ]
So, can't say anything about it.
Do you have any storage device in your Dom0 (SD, eMMC, etc)? If yes, you
can put rootfs for your guest domain on it.
And then add the following to guest config file, taking care of changing
it according to actual partitions:
disk = [ 'phy:/dev/sda1,xvda1' ]
or
disk = [ 'phy:/dev/mmcblk1p1,xvda1' ]
This everything works for me.
>
> -Thanks,
> Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-09 16:48 ` Oleksandr
@ 2019-02-15 14:17 ` Amit Tomer
2019-02-15 19:51 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-15 14:17 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel
Hi,
> disk = [ 'phy:/dev/mmcblk1p1,xvda1' ]
Thanks , this worked for us and we can now boot Linux guest in domU.
But now, while booting Android as domU guest , we don't get console
login for domU and it stuck
here:
[ 10.597394] usbcore: registered new interface driver cdc_acm
[ 10.597436] cdc_acm: USB Abstract Control Model driver for USB
modems and ISDN adapters
[ 10.599829] file system registered
[ 10.611942] kauditd_printk_skb: 6 callbacks suppressed
[ 10.611947] audit: type=1400 audit(1550239280.843:17): avc: denied
{ entrypoint } for pid=864 comm="init" path="/system/bin/adbd"
dev="xvda1" ino=889 scontext=u:r:adbd:s0
tcontext=u:object_r:unlabeled:s0 tclass=file permissive=1
[ 10.616842] audit: type=1400 audit(1550239280.847:18): avc: denied
{ map } for pid=864 comm="adbd" path="/system/bin/adbd" dev="xvda1"
ino=889 scontext=u:r:adbd:s0 tcontext=u:object_r:unlabeled:s0
tclass=file permissive=1
[ 10.617012] audit: type=1400 audit(1550239280.851:19): avc: denied
{ read execute } for pid=864 comm="adbd" path="/system/bin/adbd"
dev="xvda1" ino=889 scontext=u:r:adbd:s0
tcontext=u:object_r:unlabeled:s0 tclass=file permissive=1
[ 10.747628] random: adbd: uninitialized urandom read (40 bytes read)
Is there a special way to give hvc console login in Android , the way
we do it in Ubuntu is to create hvc0.conf file?
Thanks
- Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-15 14:17 ` Amit Tomer
@ 2019-02-15 19:51 ` Oleksandr
2019-02-18 12:53 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-15 19:51 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, andrii_chepurnyi
On 15.02.19 16:17, Amit Tomer wrote:
> Hi,
Hi
>
>> disk = [ 'phy:/dev/mmcblk1p1,xvda1' ]
> Thanks , this worked for us and we can now boot Linux guest in domU.
Sounds great
>
> But now, while booting Android as domU guest , we don't get console
> login for domU and it stuck
> here:
>
> [ 10.597394] usbcore: registered new interface driver cdc_acm
> [ 10.597436] cdc_acm: USB Abstract Control Model driver for USB
> modems and ISDN adapters
> [ 10.599829] file system registered
> [ 10.611942] kauditd_printk_skb: 6 callbacks suppressed
> [ 10.611947] audit: type=1400 audit(1550239280.843:17): avc: denied
> { entrypoint } for pid=864 comm="init" path="/system/bin/adbd"
> dev="xvda1" ino=889 scontext=u:r:adbd:s0
> tcontext=u:object_r:unlabeled:s0 tclass=file permissive=1
> [ 10.616842] audit: type=1400 audit(1550239280.847:18): avc: denied
> { map } for pid=864 comm="adbd" path="/system/bin/adbd" dev="xvda1"
> ino=889 scontext=u:r:adbd:s0 tcontext=u:object_r:unlabeled:s0
> tclass=file permissive=1
> [ 10.617012] audit: type=1400 audit(1550239280.851:19): avc: denied
> { read execute } for pid=864 comm="adbd" path="/system/bin/adbd"
> dev="xvda1" ino=889 scontext=u:r:adbd:s0
> tcontext=u:object_r:unlabeled:s0 tclass=file permissive=1
> [ 10.747628] random: adbd: uninitialized urandom read (40 bytes read)
>
> Is there a special way to give hvc console login in Android , the way
> we do it in Ubuntu is to create hvc0.conf file?
I am wondering what Android version you are using. What is your use-case?
I am not familiar with Android internals, but AFAIK we don't perform any
special actions to make Android happy using hvc, except the following:
1. Add "console=hvc0" to kernel command line
2. Set CONFIG_HVC_XEN=y, CONFIG_HVC_XEN_FRONTEND=y in kernel defconfig
This is our development product
https://github.com/xen-troops/meta-xt-prod-devel
which in addition to Linux guest contains Android P guest.
Here you can see how we implemented.
>
> Thanks
> - Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-15 19:51 ` Oleksandr
@ 2019-02-18 12:53 ` Amit Tomer
2019-02-18 20:00 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-18 12:53 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, andrii_chepurnyi
Hi,
> I am wondering what Android version you are using. What is your use-case?
We are trying with Android O 8.1 version.
> This is our development product
> https://github.com/xen-troops/meta-xt-prod-devel
> which in addition to Linux guest contains Android P guest.
>
After making some changes in domU bootargs, we can now see
console service trying to start but goes into loop with message:
[ 6.432864] init: starting service 'console'...
[ 6.433974] init: property_set("ro.boottime.console", "6432469848")
failed: property already set
[ 6.434580] init: setpgid failed for console: Operation not permitted
[ 6.434743] init: cannot setexeccon('u:r:shell:s0') for console:
Permission denied
[ 6.435434] init: Service 'console' (pid 781) killed by signal 6
[ 6.435483] init: Sending signal 9 to service 'console' (pid 781)
process group...
[ 6.435608] init: Successfully killed process cgroup uid 2000 pid 781 in 0ms
Also, one other query. In order to get graphics and audio up in dom0
kernel, do we
need to load special/proprietary graphics/audio driver with mainline kernel
and Ubuntu Debian rootfs on H3 platform?
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-18 12:53 ` Amit Tomer
@ 2019-02-18 20:00 ` Oleksandr
2019-02-19 16:46 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-18 20:00 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, andrii_chepurnyi
On 18.02.19 14:53, Amit Tomer wrote:
Hi
> Hi,
>> I am wondering what Android version you are using. What is your use-case?
> We are trying with Android O 8.1 version.
>
>> This is our development product
>> https://github.com/xen-troops/meta-xt-prod-devel
>> which in addition to Linux guest contains Android P guest.
>>
> After making some changes in domU bootargs, we can now see
> console service trying to start but goes into loop with message:
>
> [ 6.432864] init: starting service 'console'...
> [ 6.433974] init: property_set("ro.boottime.console", "6432469848")
> failed: property already set
> [ 6.434580] init: setpgid failed for console: Operation not permitted
> [ 6.434743] init: cannot setexeccon('u:r:shell:s0') for console:
> Permission denied
> [ 6.435434] init: Service 'console' (pid 781) killed by signal 6
> [ 6.435483] init: Sending signal 9 to service 'console' (pid 781)
> process group...
> [ 6.435608] init: Successfully killed process cgroup uid 2000 pid 781 in 0ms
Not completely sure, but looks like the SELinux issue.
> Also, one other query. In order to get graphics and audio up in dom0
> kernel, do we
> need to load special/proprietary graphics/audio driver with mainline kernel
> and Ubuntu Debian rootfs on H3 platform?
Unfortunately, I can't say regarding mainline kernel and Ubuntu Debian
rootfs.
We use Linux (as rootfs as well) from Renesas BSP [1] in our DomD. In
our development setup we have thin Dom0 (generic ARM V8 machine without
any devices assigned), and all devices (including audio/display/graphic)
are pass throughed to DomD (driver domain). So this DomD is entirely
based on Renesas BSP.
So, I think, if you base your Dom0 (I assume it is 1:1 mapped) on BSP
you will get audio/graphic functional out of the box. But for mainline
kernel usage, the out-tree graphics kernel driver should be modified to
use recent Linux API.
[1] https://elinux.org/R-Car/Boards/Yocto-Gen3
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-18 20:00 ` Oleksandr
@ 2019-02-19 16:46 ` Amit Tomer
2019-02-20 18:13 ` Oleksandr
2019-02-20 20:13 ` Julien Grall
0 siblings, 2 replies; 34+ messages in thread
From: Amit Tomer @ 2019-02-19 16:46 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, andrii_chepurnyi
Hi
> [1] https://elinux.org/R-Car/Boards/Yocto-Gen3
We tried BSP release v3.15.0 from above link but see following message:
[ 45.518865] => setenv xen_addr_r 0x48000000;setenv fdt_addr_r
0x4a000000;setenv kernel_addr_r 0x7a000000
[ 52.430467] => setenv fdt_high 0xffffffff;fdt addr $fdt_addr_r;fdt resize
[ 55.348938] => setenv xen_bootargs console=dtuart dom0_mem=512M
[ 57.661868] => setenv dom0_bootargs console=hvc0,115200n8
earlycon=xenboot debug clk_ignore_unused root=/dev/mmcblk1 rw rootwait
[ 59.813185] => fdt set /chosen xen,xen-bootargs \"$xen_bootargs\";
[ 62.037351] => fdt set /chosen xen,dom0-bootargs
\"$dom0_bootargs\";fdt mknode /chosen modules
[ 65.765571] => fdt set /chosen/modules '#address-cells' <1>;fdt set
/chosen/modules '#size-cells' <1>;fdt mknode /chosen/modules module@0
[ 68.086099] => fdt set /chosen/modules/module@0 compatible
"xen,linux-zimage" "xen,multiboot-module"
[ 70.205113] => fdt set /chosen/modules/module@0 reg <
$kernel_addr_r 0x1800000 >
[ 72.165412] => booti ${xen_addr_r} - ${fdt_addr_r}
[ 74.021004] ## Flattened Device Tree blob at 4a000000
[ 74.026244] Booting using the fdt blob at 0x4a000000
[ 74.031691] reserving fdt memory region: addr=48000000 size=40000
[ 74.038310] reserving fdt memory region: addr=4a000000 size=12000
[ 74.044936] Loading Device Tree to 000000007d710000, end
000000007d724fff ... OK
[ 74.054036]
[ 74.055489] Starting kernel ...
[ 74.058755]
- UART enabled -
- CPU 00000000 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Zero BSS -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Checking for initrd in /chosen
(XEN) RAM: 0000000048000000 - 000000007fffffff
(XEN) RAM: 0000000500000000 - 000000053fffffff
(XEN) RAM: 0000000600000000 - 000000063fffffff
(XEN) RAM: 0000000700000000 - 000000073fffffff
(XEN)
(XEN) MODULE[0]: 000000007d710000 - 000000007d722000 Device Tree
(XEN) MODULE[1]: 000000007a000000 - 000000007b800000 Kernel
(XEN) RESVD[0]: 0000000048000000 - 0000000048040000
(XEN) RESVD[1]: 000000004a000000 - 000000004a012000
(XEN) RESVD[2]: 000000007d710000 - 000000007d722000
(XEN)
(XEN)
(XEN) Command line: console=dtuart dom0_mem=512M
(XEN) PFN compression on bits 19...19
(XEN) Domain heap initialised
(XEN) Booting using Device Tree
(XEN) Platform: Generic System
(XEN) Taking dtuart configuration from /chosen/stdout-path
(XEN) Looking for dtuart at "serial0", options "115200n8"
(XEN) WARNING: UART configuration is not supported
Xen 4.12.0-rc
(XEN) Xen version 4.12.0-rc (amit@) (aarch64-linux-gnu-gcc (Linaro GCC
7.3-2018.05) 7.3.1 20180425 [linaro-7.3-2018.05 revision
d29120a424ecfbc167ef90065c0eeb7f91977701]) debug=y Wed Feb 6
16:23:25 I9
(XEN) Latest ChangeSet: Thu Jan 24 14:03:48 2019 +0000 git:755eb64
(XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
(XEN) 64-bit Execution:
(XEN) Processor Features: 0000000000002222 0000000000000000
(XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
(XEN) Extensions: FloatingPoint AdvancedSIMD
(XEN) Debug Features: 0000000010305106 0000000000000000
(XEN) Auxiliary Features: 0000000000000000 0000000000000000
(XEN) Memory Model Features: 0000000000001124 0000000000000000
(XEN) ISA Features: 0000000000011120 0000000000000000
(XEN) 32-bit Execution:
(XEN) Processor Features: 00000131:00011011
(XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
(XEN) Extensions: GenericTimer Security
(XEN) Debug Features: 03010066
(XEN) Auxiliary Features: 00000000
(XEN) Memory Model Features: 10201105 40000000 01260000 02102211
(XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
(XEN) Using SMC Calling Convention v1.1
(XEN) Using PSCI v1.0
(XEN) SMP: Allowing 8 CPUs
(XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
(XEN) GICv2 initialization:
(XEN) gic_dist_addr=00000000f1010000
(XEN) gic_cpu_addr=00000000f1020000
(XEN) gic_hyp_addr=00000000f1040000
(XEN) gic_vcpu_addr=00000000f1060000
(XEN) gic_maintenance_irq=25
(XEN) GICv2: Adjusting CPU interface base to 0xf102f000
(XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
(XEN) Using scheduler: SMP Credit Scheduler rev2 (credit2)
(XEN) Initializing Credit2 scheduler
(XEN) load_precision_shift: 18
(XEN) load_window_shift: 30
(XEN) underload_balance_tolerance: 0
(XEN) overload_balance_tolerance: -3
(XEN) runqueues arrangement: socket
(XEN) cap enforcement granularity: 10ms
(XEN) load tracking window length 1073741824 ns
(XEN) Adding cpu 0 to runqueue 0
(XEN) First cpu on runqueue, activating
(XEN) Allocated console ring of 64 KiB.
(XEN) Bringing up CPU1
- CPU 00000001 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Adding cpu 1 to runqueue 0
(XEN) CPU 1 booted.
(XEN) Bringing up CPU2
- CPU 00000002 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Adding cpu 2 to runqueue 0
(XEN) CPU 2 booted.
(XEN) Bringing up CPU3
- CPU 00000003 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Adding cpu 3 to runqueue 0
(XEN) CPU 3 booted.
(XEN) Bringing up CPU4
- CPU 00000100 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU4 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
(XEN) disable cpu (see big.LITTLE.txt under docs/).
(XEN) CPU4 never came online
(XEN) Failed to bring up CPU 4 (error -5)
(XEN) Bringing up CPU5
- CPU 00000101 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU5 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
(XEN) disable cpu (see big.LITTLE.txt under docs/).
(XEN) CPU5 never came online
(XEN) Failed to bring up CPU 5 (error -5)
(XEN) Bringing up CPU6
- CPU 00000102 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU6 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
(XEN) disable cpu (see big.LITTLE.txt under docs/).
(XEN) CPU6 never came online
(XEN) Failed to bring up CPU 6 (error -5)
(XEN) Bringing up CPU7
- CPU 00000103 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU7 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
(XEN) disable cpu (see big.LITTLE.txt under docs/).
(XEN) CPU7 never came online
(XEN) Failed to bring up CPU 7 (error -5)
(XEN) Brought up 4 CPUs
(XEN) P2M: 44-bit IPA with 44-bit PA and 8-bit VMID
(XEN) P2M: 4 levels with order-0 root, VTCR 0x80043594
(XEN) I/O virtualisation disabled
(XEN) build-id: 74f80103afa98953c029eea87d69696bcd5ef69d
(XEN) alternatives: Patching with alt table 00000000002abba8 -> 00000000002ac1f0
(XEN) CPU0 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
(XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
(XEN) CPU3 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
(XEN) CPU1 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Loading Domd0 kernel from boot module @ 000000007a000000
(XEN) Allocating 1:1 mappings totalling 512MB for dom0:
(XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
(XEN) Grant table range: 0x00000048000000-0x00000048040000
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
(XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a48
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Unable to copy the DTB to dom0 memory (left = 68168 bytes)
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...
But if we use mainline DTS with BSP release v3.15.0 based kernel , We
don't see above issue.
Any idea whats going wrong ?
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-19 16:46 ` Amit Tomer
@ 2019-02-20 18:13 ` Oleksandr
2019-02-20 18:31 ` Amit Tomer
2019-02-20 20:13 ` Julien Grall
1 sibling, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-20 18:13 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, andrii_chepurnyi
On 19.02.19 18:46, Amit Tomer wrote:
> Hi
Hi
>
>> [1] https://elinux.org/R-Car/Boards/Yocto-Gen3
> We tried BSP release v3.15.0 from above link but see following message:
>
> [ 45.518865] => setenv xen_addr_r 0x48000000;setenv fdt_addr_r
> 0x4a000000;setenv kernel_addr_r 0x7a000000
> [ 52.430467] => setenv fdt_high 0xffffffff;fdt addr $fdt_addr_r;fdt resize
> [ 55.348938] => setenv xen_bootargs console=dtuart dom0_mem=512M
> [ 57.661868] => setenv dom0_bootargs console=hvc0,115200n8
> earlycon=xenboot debug clk_ignore_unused root=/dev/mmcblk1 rw rootwait
> [ 59.813185] => fdt set /chosen xen,xen-bootargs \"$xen_bootargs\";
> [ 62.037351] => fdt set /chosen xen,dom0-bootargs
> \"$dom0_bootargs\";fdt mknode /chosen modules
> [ 65.765571] => fdt set /chosen/modules '#address-cells' <1>;fdt set
> /chosen/modules '#size-cells' <1>;fdt mknode /chosen/modules module@0
> [ 68.086099] => fdt set /chosen/modules/module@0 compatible
> "xen,linux-zimage" "xen,multiboot-module"
> [ 70.205113] => fdt set /chosen/modules/module@0 reg <
> $kernel_addr_r 0x1800000 >
> [ 72.165412] => booti ${xen_addr_r} - ${fdt_addr_r}
> [ 74.021004] ## Flattened Device Tree blob at 4a000000
> [ 74.026244] Booting using the fdt blob at 0x4a000000
> [ 74.031691] reserving fdt memory region: addr=48000000 size=40000
> [ 74.038310] reserving fdt memory region: addr=4a000000 size=12000
> [ 74.044936] Loading Device Tree to 000000007d710000, end
> 000000007d724fff ... OK
> [ 74.054036]
> [ 74.055489] Starting kernel ...
> [ 74.058755]
> - UART enabled -
> - CPU 00000000 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Zero BSS -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Checking for initrd in /chosen
> (XEN) RAM: 0000000048000000 - 000000007fffffff
> (XEN) RAM: 0000000500000000 - 000000053fffffff
> (XEN) RAM: 0000000600000000 - 000000063fffffff
> (XEN) RAM: 0000000700000000 - 000000073fffffff
> (XEN)
> (XEN) MODULE[0]: 000000007d710000 - 000000007d722000 Device Tree
> (XEN) MODULE[1]: 000000007a000000 - 000000007b800000 Kernel
> (XEN) RESVD[0]: 0000000048000000 - 0000000048040000
> (XEN) RESVD[1]: 000000004a000000 - 000000004a012000
> (XEN) RESVD[2]: 000000007d710000 - 000000007d722000
> (XEN)
> (XEN)
> (XEN) Command line: console=dtuart dom0_mem=512M
> (XEN) PFN compression on bits 19...19
> (XEN) Domain heap initialised
> (XEN) Booting using Device Tree
> (XEN) Platform: Generic System
> (XEN) Taking dtuart configuration from /chosen/stdout-path
> (XEN) Looking for dtuart at "serial0", options "115200n8"
> (XEN) WARNING: UART configuration is not supported
> Xen 4.12.0-rc
> (XEN) Xen version 4.12.0-rc (amit@) (aarch64-linux-gnu-gcc (Linaro GCC
> 7.3-2018.05) 7.3.1 20180425 [linaro-7.3-2018.05 revision
> d29120a424ecfbc167ef90065c0eeb7f91977701]) debug=y Wed Feb 6
> 16:23:25 I9
> (XEN) Latest ChangeSet: Thu Jan 24 14:03:48 2019 +0000 git:755eb64
> (XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
> (XEN) 64-bit Execution:
> (XEN) Processor Features: 0000000000002222 0000000000000000
> (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
> (XEN) Extensions: FloatingPoint AdvancedSIMD
> (XEN) Debug Features: 0000000010305106 0000000000000000
> (XEN) Auxiliary Features: 0000000000000000 0000000000000000
> (XEN) Memory Model Features: 0000000000001124 0000000000000000
> (XEN) ISA Features: 0000000000011120 0000000000000000
> (XEN) 32-bit Execution:
> (XEN) Processor Features: 00000131:00011011
> (XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
> (XEN) Extensions: GenericTimer Security
> (XEN) Debug Features: 03010066
> (XEN) Auxiliary Features: 00000000
> (XEN) Memory Model Features: 10201105 40000000 01260000 02102211
> (XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
> (XEN) Using SMC Calling Convention v1.1
> (XEN) Using PSCI v1.0
> (XEN) SMP: Allowing 8 CPUs
> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
> (XEN) GICv2 initialization:
> (XEN) gic_dist_addr=00000000f1010000
> (XEN) gic_cpu_addr=00000000f1020000
> (XEN) gic_hyp_addr=00000000f1040000
> (XEN) gic_vcpu_addr=00000000f1060000
> (XEN) gic_maintenance_irq=25
> (XEN) GICv2: Adjusting CPU interface base to 0xf102f000
> (XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
> (XEN) Using scheduler: SMP Credit Scheduler rev2 (credit2)
> (XEN) Initializing Credit2 scheduler
> (XEN) load_precision_shift: 18
> (XEN) load_window_shift: 30
> (XEN) underload_balance_tolerance: 0
> (XEN) overload_balance_tolerance: -3
> (XEN) runqueues arrangement: socket
> (XEN) cap enforcement granularity: 10ms
> (XEN) load tracking window length 1073741824 ns
> (XEN) Adding cpu 0 to runqueue 0
> (XEN) First cpu on runqueue, activating
> (XEN) Allocated console ring of 64 KiB.
> (XEN) Bringing up CPU1
> - CPU 00000001 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Adding cpu 1 to runqueue 0
> (XEN) CPU 1 booted.
> (XEN) Bringing up CPU2
> - CPU 00000002 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Adding cpu 2 to runqueue 0
> (XEN) CPU 2 booted.
> (XEN) Bringing up CPU3
> - CPU 00000003 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Adding cpu 3 to runqueue 0
> (XEN) CPU 3 booted.
> (XEN) Bringing up CPU4
> - CPU 00000100 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU4 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> (XEN) disable cpu (see big.LITTLE.txt under docs/).
> (XEN) CPU4 never came online
> (XEN) Failed to bring up CPU 4 (error -5)
> (XEN) Bringing up CPU5
> - CPU 00000101 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU5 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> (XEN) disable cpu (see big.LITTLE.txt under docs/).
> (XEN) CPU5 never came online
> (XEN) Failed to bring up CPU 5 (error -5)
> (XEN) Bringing up CPU6
> - CPU 00000102 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU6 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> (XEN) disable cpu (see big.LITTLE.txt under docs/).
> (XEN) CPU6 never came online
> (XEN) Failed to bring up CPU 6 (error -5)
> (XEN) Bringing up CPU7
> - CPU 00000103 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU7 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> (XEN) disable cpu (see big.LITTLE.txt under docs/).
> (XEN) CPU7 never came online
> (XEN) Failed to bring up CPU 7 (error -5)
> (XEN) Brought up 4 CPUs
> (XEN) P2M: 44-bit IPA with 44-bit PA and 8-bit VMID
> (XEN) P2M: 4 levels with order-0 root, VTCR 0x80043594
> (XEN) I/O virtualisation disabled
> (XEN) build-id: 74f80103afa98953c029eea87d69696bcd5ef69d
> (XEN) alternatives: Patching with alt table 00000000002abba8 -> 00000000002ac1f0
> (XEN) CPU0 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU3 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU1 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Loading Domd0 kernel from boot module @ 000000007a000000
> (XEN) Allocating 1:1 mappings totalling 512MB for dom0:
> (XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
> (XEN) Grant table range: 0x00000048000000-0x00000048040000
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
> (XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a48
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Unable to copy the DTB to dom0 memory (left = 68168 bytes)
> (XEN) ****************************************
> (XEN)
> (XEN) Reboot in five seconds...
>
> But if we use mainline DTS with BSP release v3.15.0 based kernel , We
> don't see above issue.
> Any idea whats going wrong ?
We use earlier BSP version and we didn't face the similar issue.
We have a plan to switch to recent BSP version (3.15). So, I will come
up with updates when we migrate.
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-20 18:13 ` Oleksandr
@ 2019-02-20 18:31 ` Amit Tomer
0 siblings, 0 replies; 34+ messages in thread
From: Amit Tomer @ 2019-02-20 18:31 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, andrii_chepurnyi
Hi,
> We use earlier BSP version and we didn't face the similar issue.
>
> We have a plan to switch to recent BSP version (3.15). So, I will come
> up with updates when we migrate.
Thanks for this information, we have now built it for 3.9 but yet to
test the images.
Also, it would be great if you can let us know the XEN version you use with BSP
images?
Thanks,
-Amit.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-19 16:46 ` Amit Tomer
2019-02-20 18:13 ` Oleksandr
@ 2019-02-20 20:13 ` Julien Grall
2019-02-20 21:28 ` Oleksandr Tyshchenko
2019-02-21 18:15 ` Amit Tomer
1 sibling, 2 replies; 34+ messages in thread
From: Julien Grall @ 2019-02-20 20:13 UTC (permalink / raw)
To: Amit Tomer, Oleksandr; +Cc: xen-devel, andrii_chepurnyi
Hi Amit,
Thank you for the report.
On 2/19/19 4:46 PM, Amit Tomer wrote:
> (XEN) CPU7 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> (XEN) disable cpu (see big.LITTLE.txt under docs/).
> (XEN) CPU7 never came online
> (XEN) Failed to bring up CPU 7 (error -5)
> (XEN) Brought up 4 CPUs
> (XEN) P2M: 44-bit IPA with 44-bit PA and 8-bit VMID
> (XEN) P2M: 4 levels with order-0 root, VTCR 0x80043594
> (XEN) I/O virtualisation disabled
> (XEN) build-id: 74f80103afa98953c029eea87d69696bcd5ef69d
> (XEN) alternatives: Patching with alt table 00000000002abba8 -> 00000000002ac1f0
> (XEN) CPU0 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU3 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) CPU1 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Loading Domd0 kernel from boot module @ 000000007a000000
> (XEN) Allocating 1:1 mappings totalling 512MB for dom0:
> (XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
> (XEN) Grant table range: 0x00000048000000-0x00000048040000
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
> (XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a48
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Unable to copy the DTB to dom0 memory (left = 68168 bytes)
> (XEN) ****************************************
This is a bit odd. The function copy_to_guest_phys_flush_dcache can
only fail when the P2M entry is invalid or it is not a RAM page.
From the log, it can't even copy the first page. However, this seems
to belong to the RAM (see BANK[0] message). Would you mind to apply the
following patch and send the log?
diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
index d9836779d1..08b9cd2c44 100644
--- a/xen/arch/arm/domain_build.c
+++ b/xen/arch/arm/domain_build.c
@@ -1805,6 +1805,8 @@ static void __init dtb_load(struct kernel_info *kinfo)
printk("Loading dom0 DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
kinfo->dtb_paddr, kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
+ dump_p2m_lookup(kinfo->d, kinfo->dtb_paddr);
+
left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
kinfo->fdt,
fdt_totalsize(kinfo->fdt));
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply related [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-20 20:13 ` Julien Grall
@ 2019-02-20 21:28 ` Oleksandr Tyshchenko
2019-02-21 10:11 ` Julien Grall
2019-02-21 18:20 ` Amit Tomer
2019-02-21 18:15 ` Amit Tomer
1 sibling, 2 replies; 34+ messages in thread
From: Oleksandr Tyshchenko @ 2019-02-20 21:28 UTC (permalink / raw)
To: Julien Grall; +Cc: xen-devel, andrii_chepurnyi, amittomer25
[-- Attachment #1.1: Type: text/plain, Size: 3621 bytes --]
ср, 20 февр. 2019 г., 22:14 Julien Grall <julien.grall@arm.com>:
> Hi Amit,
Hi, Julien, Amit.
Sorry for formatting, writing from my mobile.
If I am not mistaken, the diff between BSP's and mainline device trees is
in reserved memory area. BSP device tree (1) contains reserved memory
regions, but the mainline one (2) doesn't.
>From the log you provided, I see that Xen is trying to copy device-tree to
the address which is located in reserved area (0x58000000). FYI, we always
remove these reserved area nodes from the device-tree. Maybe that's why we
didn't face an issue. Julien, what do you think, can this be a reason?
(1)
https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git/tree/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts?h=v4.14.75-ltsi/rcar-3.9.3.rc1
(2)
https://elixir.bootlin.com/linux/v5.0-rc7/source/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
> Thank you for the report.
>
> On 2/19/19 4:46 PM, Amit Tomer wrote:
> > (XEN) CPU7 MIDR (0x410fd034) does not match boot CPU MIDR (0x411fd073),
> > (XEN) disable cpu (see big.LITTLE.txt under docs/).
> > (XEN) CPU7 never came online
> > (XEN) Failed to bring up CPU 7 (error -5)
> > (XEN) Brought up 4 CPUs
> > (XEN) P2M: 44-bit IPA with 44-bit PA and 8-bit VMID
> > (XEN) P2M: 4 levels with order-0 root, VTCR 0x80043594
> > (XEN) I/O virtualisation disabled
> > (XEN) build-id: 74f80103afa98953c029eea87d69696bcd5ef69d
> > (XEN) alternatives: Patching with alt table 00000000002abba8 ->
> 00000000002ac1f0
> > (XEN) CPU0 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> > (XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> > (XEN) CPU3 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> > (XEN) CPU1 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> > (XEN) *** LOADING DOMAIN 0 ***
> > (XEN) Loading Domd0 kernel from boot module @ 000000007a000000
> > (XEN) Allocating 1:1 mappings totalling 512MB for dom0:
> > (XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
> > (XEN) Grant table range: 0x00000048000000-0x00000048040000
> > (XEN) Allocating PPI 16 for event channel interrupt
> > (XEN) Loading zImage from 000000007a000000 to
> 0000000050080000-0000000051880000
> > (XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a48
> > (XEN)
> > (XEN) ****************************************
> > (XEN) Panic on CPU 0:
> > (XEN) Unable to copy the DTB to dom0 memory (left = 68168 bytes)
> > (XEN) ****************************************
>
> This is a bit odd. The function copy_to_guest_phys_flush_dcache can
> only fail when the P2M entry is invalid or it is not a RAM page.
>
> From the log, it can't even copy the first page. However, this seems
> to belong to the RAM (see BANK[0] message). Would you mind to apply the
> following patch and send the log?
>
>
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index d9836779d1..08b9cd2c44 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1805,6 +1805,8 @@ static void __init dtb_load(struct kernel_info
> *kinfo)
> printk("Loading dom0 DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> kinfo->dtb_paddr, kinfo->dtb_paddr +
> fdt_totalsize(kinfo->fdt));
>
> + dump_p2m_lookup(kinfo->d, kinfo->dtb_paddr);
> +
> left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
> kinfo->fdt,
> fdt_totalsize(kinfo->fdt));
>
> Cheers,
>
> --
> Julien Grall
>
[-- Attachment #1.2: Type: text/html, Size: 5061 bytes --]
[-- Attachment #2: Type: text/plain, Size: 157 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-20 21:28 ` Oleksandr Tyshchenko
@ 2019-02-21 10:11 ` Julien Grall
2019-02-21 19:28 ` Oleksandr
2019-02-21 18:20 ` Amit Tomer
1 sibling, 1 reply; 34+ messages in thread
From: Julien Grall @ 2019-02-21 10:11 UTC (permalink / raw)
To: Oleksandr Tyshchenko; +Cc: xen-devel, nd, andrii_chepurnyi, amittomer25
Hi Oleksandr,
On 20/02/2019 21:28, Oleksandr Tyshchenko wrote:
> ср, 20 февр. 2019 г., 22:14 Julien Grall <julien.grall@arm.com
> <mailto:julien.grall@arm.com>>:
> If I am not mistaken, the diff between BSP's and mainline device trees is in
> reserved memory area. BSP device tree (1) contains reserved memory regions, but
> the mainline one (2) doesn't.
> From the log you provided, I see that Xen is trying to copy device-tree to the
> address which is located in reserved area (0x58000000). FYI, we always remove
> these reserved area nodes from the device-tree. Maybe that's why we didn't face
> an issue. Julien, what do you think, can this be a reason?
While I know that Xen does not deal with reserved area yet, we should have been
able to write in that region. We don't even reach that state as we can't get the
associated page.
It might be possible that the p2m entry is overwritten when going through the DT
for mapping all the regions (see handle_device).
Printing the lookup would actually help to know what's going on.
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-20 20:13 ` Julien Grall
2019-02-20 21:28 ` Oleksandr Tyshchenko
@ 2019-02-21 18:15 ` Amit Tomer
2019-02-27 11:00 ` Julien Grall
1 sibling, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-21 18:15 UTC (permalink / raw)
To: Julien Grall; +Cc: Oleksandr, xen-devel, andrii_chepurnyi
Hi,
> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
> index d9836779d1..08b9cd2c44 100644
> --- a/xen/arch/arm/domain_build.c
> +++ b/xen/arch/arm/domain_build.c
> @@ -1805,6 +1805,8 @@ static void __init dtb_load(struct kernel_info *kinfo)
> printk("Loading dom0 DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
> kinfo->dtb_paddr, kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
>
> + dump_p2m_lookup(kinfo->d, kinfo->dtb_paddr);
> +
> left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
> kinfo->fdt,
> fdt_totalsize(kinfo->fdt));
>
Please find the logs after applying this patch:
(XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Loading Domd0 kernel from boot module @ 000000007a000000
(XEN) Allocating 1:1 mappings totalling 512MB for dom0:
(XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
(XEN) Grant table range: 0x00000048000000-0x00000048040000
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
(XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a44
(XEN) dom0 IPA 0x0000000058000000
(XEN) P2M @ 000000080c23dc90 mfn:0x73ff5e
(XEN) 0TH[0x0] = 0x008000073ff5c7ff
(XEN) 1ST[0x1] = 0x008000073ff3d7ff
(XEN) 2ND[0xc0] = 0x02c00000580006fd
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Unable to copy the DTB to dom0 memory (left = 68164 bytes)
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-20 21:28 ` Oleksandr Tyshchenko
2019-02-21 10:11 ` Julien Grall
@ 2019-02-21 18:20 ` Amit Tomer
2019-02-21 18:44 ` Oleksandr
1 sibling, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-21 18:20 UTC (permalink / raw)
To: Oleksandr Tyshchenko; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi,
> (1) https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git/tree/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts?h=v4.14.75-ltsi/rcar-3.9.3.rc1
>
> (2) https://elixir.bootlin.com/linux/v5.0-rc7/source/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
Yeah, this is what I thought initially but was not able to compile dts
file after removing the reserve node.
Will try it again, Thanks for pointing it out.
Thanks
-Amit.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-21 18:20 ` Amit Tomer
@ 2019-02-21 18:44 ` Oleksandr
2019-02-22 19:15 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-21 18:44 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
On 21.02.19 20:20, Amit Tomer wrote:
> Hi,
Hi
>
>> (1) https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git/tree/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts?h=v4.14.75-ltsi/rcar-3.9.3.rc1
>>
>> (2) https://elixir.bootlin.com/linux/v5.0-rc7/source/arch/arm64/boot/dts/renesas/r8a7795-h3ulcb.dts
> Yeah, this is what I thought initially but was not able to compile dts
> file after removing the reserve node.
Likely, it is because you left device nodes (mmngr,adsp,etc) which had
links to reserved-memory regions ...
>
> Will try it again, Thanks for pointing it out.
>
> Thanks
> -Amit.
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-21 10:11 ` Julien Grall
@ 2019-02-21 19:28 ` Oleksandr
2019-02-25 14:43 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-21 19:28 UTC (permalink / raw)
To: Julien Grall; +Cc: xen-devel, nd, andrii_chepurnyi, amittomer25
On 21.02.19 12:11, Julien Grall wrote:
> Hi Oleksandr,
Hi, Julien, Amit
>
> On 20/02/2019 21:28, Oleksandr Tyshchenko wrote:
>> ср, 20 февр. 2019 г., 22:14 Julien Grall <julien.grall@arm.com
>> <mailto:julien.grall@arm.com>>:
>> If I am not mistaken, the diff between BSP's and mainline device trees is in
>> reserved memory area. BSP device tree (1) contains reserved memory regions, but
>> the mainline one (2) doesn't.
>> From the log you provided, I see that Xen is trying to copy device-tree to the
>> address which is located in reserved area (0x58000000). FYI, we always remove
>> these reserved area nodes from the device-tree. Maybe that's why we didn't face
>> an issue. Julien, what do you think, can this be a reason?
> While I know that Xen does not deal with reserved area yet, we should have been
> able to write in that region. We don't even reach that state as we can't get the
> associated page.
>
> It might be possible that the p2m entry is overwritten when going through the DT
> for mapping all the regions (see handle_device).
Make sense.
I have just made an experiment. I returned reserved nodes back in my
setup and got an fault, similar to what Amit had faced.
(XEN) handle /memory@48000000
(XEN) Skip it (matched)
(XEN) handle /reserved-memory
(XEN) dt_irq_number: dev=/reserved-memory
(XEN) /reserved-memory passthrough = 1 nirq = 0 naddr = 0
(XEN) handle /reserved-memory/linux,lossy_decompress
(XEN) dt_irq_number: dev=/reserved-memory/linux,lossy_decompress
(XEN) /reserved-memory/linux,lossy_decompress passthrough = 1 nirq = 0
naddr = 1
(XEN) DT: ** translation for device
/reserved-memory/linux,lossy_decompress **
(XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
(XEN) DT: translating address:<3> 00000000<3> 54000000<3>
(XEN) DT: parent bus is default (na=2, ns=2) on /
(XEN) DT: empty ranges; 1:1 translation
(XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
(XEN) DT: with offset: 54000000
(XEN) DT: one level translation:<3> 00000000<3> 54000000<3>
(XEN) DT: reached root node
(XEN) - MMIO: 0054000000 - 0057000000 P2MType=5
(XEN) handle /reserved-memory/linux,adsp
(XEN) dt_irq_number: dev=/reserved-memory/linux,adsp
(XEN) /reserved-memory/linux,adsp passthrough = 1 nirq = 0 naddr = 1
(XEN) DT: ** translation for device /reserved-memory/linux,adsp **
(XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
(XEN) DT: translating address:<3> 00000000<3> 57000000<3>
(XEN) DT: parent bus is default (na=2, ns=2) on /
(XEN) DT: empty ranges; 1:1 translation
(XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
(XEN) DT: with offset: 57000000
(XEN) DT: one level translation:<3> 00000000<3> 57000000<3>
(XEN) DT: reached root node
(XEN) - MMIO: 0057000000 - 0058000000 P2MType=5
(XEN) handle /reserved-memory/linux,cma
(XEN) dt_irq_number: dev=/reserved-memory/linux,cma
(XEN) /reserved-memory/linux,cma passthrough = 1 nirq = 0 naddr = 1
(XEN) DT: ** translation for device /reserved-memory/linux,cma **
(XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
(XEN) DT: translating address:<3> 00000000<3> 58000000<3>
(XEN) DT: parent bus is default (na=2, ns=2) on /
(XEN) DT: empty ranges; 1:1 translation
(XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
(XEN) DT: with offset: 58000000
(XEN) DT: one level translation:<3> 00000000<3> 58000000<3>
(XEN) DT: reached root node
*(XEN) - MMIO: 0058000000 - 0070000000 P2MType=5*
(XEN) handle /reserved-memory/linux,multimedia
(XEN) dt_irq_number: dev=/reserved-memory/linux,multimedia
(XEN) /reserved-memory/linux,multimedia passthrough = 1 nirq = 0 naddr = 1
(XEN) DT: ** translation for device /reserved-memory/linux,multimedia **
(XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
(XEN) DT: translating address:<3> 00000000<3> 70000000<3>
(XEN) DT: parent bus is default (na=2, ns=2) on /
(XEN) DT: empty ranges; 1:1 translation
(XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
(XEN) DT: with offset: 70000000
(XEN) DT: one level translation:<3> 00000000<3> 70000000<3>
(XEN) DT: reached root node
(XEN) - MMIO: 0070000000 - 0080000000 P2MType=5
(XEN) handle /mmngr
(XEN) dt_irq_number: dev=/mmngr
(XEN) /mmngr passthrough = 1 nirq = 0 naddr = 0
(XEN) handle /mmngrbuf
(XEN) dt_irq_number: dev=/mmngrbuf
(XEN) /mmngrbuf passthrough = 1 nirq = 0 naddr = 0
(XEN) handle /vspm_if
(XEN) dt_irq_number: dev=/vspm_if
(XEN) /vspm_if passthrough = 1 nirq = 0 naddr = 0
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Create hypervisor node
(XEN) Create PSCI node
(XEN) Create cpus node
(XEN) Create cpu@0 (logical CPUID: 0) node
(XEN) Create cpu@1 (logical CPUID: 1) node
(XEN) Create cpu@2 (logical CPUID: 2) node
(XEN) Create cpu@3 (logical CPUID: 3) node
(XEN) Create memory node (reg size 4, nr cells 4)
(XEN) Bank 0: 0x60000000->0x70000000
*(XEN) Loading zImage from 000000007a000000 to
0000000060080000-0000000062080000*
(XEN)
(XEN) ****************************************
(XEN) Panic on CPU 0:
(XEN) Unable to copy the kernel in the hwdom memory
(XEN) ****************************************
(XEN)
(XEN) Reboot in five seconds...
>
> Printing the lookup would actually help to know what's going on.
>
> Cheers,
>
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-21 18:44 ` Oleksandr
@ 2019-02-22 19:15 ` Oleksandr
2019-02-22 20:08 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-22 19:15 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi Amit
> Likely, it is because you left device nodes (mmngr,adsp,etc) which had
> links to reserved-memory regions ...
>
Did removing reserved-memory regions together with users work out well
for you?
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-22 19:15 ` Oleksandr
@ 2019-02-22 20:08 ` Amit Tomer
2019-02-23 13:05 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-22 20:08 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hello,
> Did removing reserved-memory regions together with users work out well
> for you?
Sorry, didn't get chance to work on this today. I would test it and
let you know.
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-22 20:08 ` Amit Tomer
@ 2019-02-23 13:05 ` Amit Tomer
2019-02-25 13:12 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-02-23 13:05 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hello,
> > Did removing reserved-memory regions together with users work out well
> > for you?
Removing "reserved-memory" node along with "mmngr" worked well. Tested it
with v3.15 BSP release.
Also, just tried loading XEN from one of your branch[1] but it stuck with this:
[ 13.793305] host 10.105.2.27 is alive
[ 13.797050] => tftp 0x48000000 xen
[ 20.944681] ravb:0 is connected to ravb. Reconnecting to ravb
[ 20.952032] ravb Waiting for PHY auto negotiation to complete... done
[ 23.964201] ravb: 1000Base/Full
[ 23.972794] Using ravb device
[ 23.975792] TFTP from server 10.105.2.27; our IP address is 10.105.2.28
[ 23.982685] Filename 'xen'.
[ 23.985588] Load address: 0x48000000
[ 23.989307] Loading:
#################################################################
[ 29.073520]
#################################################################
[ 29.155589] ##################
[ 29.178818] 141.6 KiB/s
[ 29.181540] done
[ 29.183447] Bytes transferred = 754000 (b8150 hex)
[ 29.188789] => booti 0x48000000
[ 34.990295] Image lacks image_size field, assuming 16MiB
[ 34.995837]
[ 34.997362] Starting kernel ...
[ 35.000628]
Do we need to chose some other address where it should be loaded ?
[1]: https://github.com/otyshchenko1/xen/tree/ipmmu_v2
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-23 13:05 ` Amit Tomer
@ 2019-02-25 13:12 ` Oleksandr
2019-02-27 20:03 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-25 13:12 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
On 23.02.19 15:05, Amit Tomer wrote:
> Hello,
Hi
>
>>> Did removing reserved-memory regions together with users work out well
>>> for you?
> Removing "reserved-memory" node along with "mmngr" worked well. Tested it
> with v3.15 BSP release.
ok
>
> Also, just tried loading XEN from one of your branch[1] but it stuck with this:
>
> [ 13.793305] host 10.105.2.27 is alive
> [ 13.797050] => tftp 0x48000000 xen
> [ 20.944681] ravb:0 is connected to ravb. Reconnecting to ravb
> [ 20.952032] ravb Waiting for PHY auto negotiation to complete... done
> [ 23.964201] ravb: 1000Base/Full
> [ 23.972794] Using ravb device
> [ 23.975792] TFTP from server 10.105.2.27; our IP address is 10.105.2.28
> [ 23.982685] Filename 'xen'.
> [ 23.985588] Load address: 0x48000000
> [ 23.989307] Loading:
> #################################################################
> [ 29.073520]
> #################################################################
> [ 29.155589] ##################
> [ 29.178818] 141.6 KiB/s
> [ 29.181540] done
> [ 29.183447] Bytes transferred = 754000 (b8150 hex)
> [ 29.188789] => booti 0x48000000
> [ 34.990295] Image lacks image_size field, assuming 16MiB
> [ 34.995837]
> [ 34.997362] Starting kernel ...
> [ 35.000628]
>
> Do we need to chose some other address where it should be loaded ?
We usually load Xen to 0x48080000...
I think, it is up to you to what address to load images in U-Boot.
Just to be sure that you won't overwrite something else in memory
(stack, other images, etc)...
I would suggest you to build with early printk support enabled and see
what is wrong.
CONFIG_EARLY_PRINTK=scif,0xe6e88000
BTW, we use mkimage tool to create Xen image to be loaded:
mkimage -A arm64 -C none -T kernel -a 0x78080000 -e 0x78080000 -n "XEN"
xen/xen xen-uImage
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-21 19:28 ` Oleksandr
@ 2019-02-25 14:43 ` Oleksandr
2019-02-25 23:23 ` Julien Grall
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-25 14:43 UTC (permalink / raw)
To: Julien Grall; +Cc: xen-devel, nd, andrii_chepurnyi, amittomer25
Hi Julien
>> While I know that Xen does not deal with reserved area yet, we should
>> have been
>> able to write in that region. We don't even reach that state as we
>> can't get the
>> associated page.
>>
>> It might be possible that the p2m entry is overwritten when going
>> through the DT
>> for mapping all the regions (see handle_device).
>
> Make sense.
>
>
> I have just made an experiment. I returned reserved nodes back in my
> setup and got an fault, similar to what Amit had faced.
>
>
> (XEN) handle /memory@48000000
> (XEN) Skip it (matched)
> (XEN) handle /reserved-memory
> (XEN) dt_irq_number: dev=/reserved-memory
> (XEN) /reserved-memory passthrough = 1 nirq = 0 naddr = 0
> (XEN) handle /reserved-memory/linux,lossy_decompress
> (XEN) dt_irq_number: dev=/reserved-memory/linux,lossy_decompress
> (XEN) /reserved-memory/linux,lossy_decompress passthrough = 1 nirq = 0
> naddr = 1
> (XEN) DT: ** translation for device
> /reserved-memory/linux,lossy_decompress **
> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
> (XEN) DT: translating address:<3> 00000000<3> 54000000<3>
> (XEN) DT: parent bus is default (na=2, ns=2) on /
> (XEN) DT: empty ranges; 1:1 translation
> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
> (XEN) DT: with offset: 54000000
> (XEN) DT: one level translation:<3> 00000000<3> 54000000<3>
> (XEN) DT: reached root node
> (XEN) - MMIO: 0054000000 - 0057000000 P2MType=5
> (XEN) handle /reserved-memory/linux,adsp
> (XEN) dt_irq_number: dev=/reserved-memory/linux,adsp
> (XEN) /reserved-memory/linux,adsp passthrough = 1 nirq = 0 naddr = 1
> (XEN) DT: ** translation for device /reserved-memory/linux,adsp **
> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
> (XEN) DT: translating address:<3> 00000000<3> 57000000<3>
> (XEN) DT: parent bus is default (na=2, ns=2) on /
> (XEN) DT: empty ranges; 1:1 translation
> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
> (XEN) DT: with offset: 57000000
> (XEN) DT: one level translation:<3> 00000000<3> 57000000<3>
> (XEN) DT: reached root node
> (XEN) - MMIO: 0057000000 - 0058000000 P2MType=5
> (XEN) handle /reserved-memory/linux,cma
> (XEN) dt_irq_number: dev=/reserved-memory/linux,cma
> (XEN) /reserved-memory/linux,cma passthrough = 1 nirq = 0 naddr = 1
> (XEN) DT: ** translation for device /reserved-memory/linux,cma **
> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
> (XEN) DT: translating address:<3> 00000000<3> 58000000<3>
> (XEN) DT: parent bus is default (na=2, ns=2) on /
> (XEN) DT: empty ranges; 1:1 translation
> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
> (XEN) DT: with offset: 58000000
> (XEN) DT: one level translation:<3> 00000000<3> 58000000<3>
> (XEN) DT: reached root node
> *(XEN) - MMIO: 0058000000 - 0070000000 P2MType=5*
> (XEN) handle /reserved-memory/linux,multimedia
> (XEN) dt_irq_number: dev=/reserved-memory/linux,multimedia
> (XEN) /reserved-memory/linux,multimedia passthrough = 1 nirq = 0 naddr
> = 1
> (XEN) DT: ** translation for device /reserved-memory/linux,multimedia **
> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
> (XEN) DT: translating address:<3> 00000000<3> 70000000<3>
> (XEN) DT: parent bus is default (na=2, ns=2) on /
> (XEN) DT: empty ranges; 1:1 translation
> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
> (XEN) DT: with offset: 70000000
> (XEN) DT: one level translation:<3> 00000000<3> 70000000<3>
> (XEN) DT: reached root node
> (XEN) - MMIO: 0070000000 - 0080000000 P2MType=5
> (XEN) handle /mmngr
> (XEN) dt_irq_number: dev=/mmngr
> (XEN) /mmngr passthrough = 1 nirq = 0 naddr = 0
> (XEN) handle /mmngrbuf
> (XEN) dt_irq_number: dev=/mmngrbuf
> (XEN) /mmngrbuf passthrough = 1 nirq = 0 naddr = 0
> (XEN) handle /vspm_if
> (XEN) dt_irq_number: dev=/vspm_if
> (XEN) /vspm_if passthrough = 1 nirq = 0 naddr = 0
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Create hypervisor node
> (XEN) Create PSCI node
> (XEN) Create cpus node
> (XEN) Create cpu@0 (logical CPUID: 0) node
> (XEN) Create cpu@1 (logical CPUID: 1) node
> (XEN) Create cpu@2 (logical CPUID: 2) node
> (XEN) Create cpu@3 (logical CPUID: 3) node
> (XEN) Create memory node (reg size 4, nr cells 4)
> (XEN) Bank 0: 0x60000000->0x70000000
> *(XEN) Loading zImage from 000000007a000000 to
> 0000000060080000-0000000062080000*
> (XEN)
> (XEN) ****************************************
> (XEN) Panic on CPU 0:
> (XEN) Unable to copy the kernel in the hwdom memory
> (XEN) ****************************************
> (XEN)
> (XEN) Reboot in five seconds...
>
There is a question which worries me and likely other people as well.
Which is "reserved memory area support in Xen". Some SoCs except
application processors have some IPs (co-processors, dsps, codecs,
whatever) which rely on a specific predefined memory regions, or even
can work with these memory regions only...
Without this feature being supported, we won't be able to use IPs, whose
firmware requires a predefined memory region to talk to an application
processor, I am afraid.
One option comes to mind... I presume, the use of "iomem" property in
domain config could allow us to assign 1:1 mapped region to that guest
domain. Would it be a correct option?
What needs to be implementing it Xen, for example, to have a possibility
to assign a particular reserved memory region(s) to a particular guest
domain?
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-25 14:43 ` Oleksandr
@ 2019-02-25 23:23 ` Julien Grall
2019-02-26 18:09 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Julien Grall @ 2019-02-25 23:23 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, nd, andrii_chepurnyi, amittomer25
Hi Oleksandr,
On 2/25/19 2:43 PM, Oleksandr wrote:
>
> Hi Julien
>
>
>>> While I know that Xen does not deal with reserved area yet, we should
>>> have been
>>> able to write in that region. We don't even reach that state as we
>>> can't get the
>>> associated page.
>>>
>>> It might be possible that the p2m entry is overwritten when going
>>> through the DT
>>> for mapping all the regions (see handle_device).
>>
>> Make sense.
>>
>>
>> I have just made an experiment. I returned reserved nodes back in my
>> setup and got an fault, similar to what Amit had faced.
>>
>>
>> (XEN) handle /memory@48000000
>> (XEN) Skip it (matched)
>> (XEN) handle /reserved-memory
>> (XEN) dt_irq_number: dev=/reserved-memory
>> (XEN) /reserved-memory passthrough = 1 nirq = 0 naddr = 0
>> (XEN) handle /reserved-memory/linux,lossy_decompress
>> (XEN) dt_irq_number: dev=/reserved-memory/linux,lossy_decompress
>> (XEN) /reserved-memory/linux,lossy_decompress passthrough = 1 nirq = 0
>> naddr = 1
>> (XEN) DT: ** translation for device
>> /reserved-memory/linux,lossy_decompress **
>> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
>> (XEN) DT: translating address:<3> 00000000<3> 54000000<3>
>> (XEN) DT: parent bus is default (na=2, ns=2) on /
>> (XEN) DT: empty ranges; 1:1 translation
>> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
>> (XEN) DT: with offset: 54000000
>> (XEN) DT: one level translation:<3> 00000000<3> 54000000<3>
>> (XEN) DT: reached root node
>> (XEN) - MMIO: 0054000000 - 0057000000 P2MType=5
>> (XEN) handle /reserved-memory/linux,adsp
>> (XEN) dt_irq_number: dev=/reserved-memory/linux,adsp
>> (XEN) /reserved-memory/linux,adsp passthrough = 1 nirq = 0 naddr = 1
>> (XEN) DT: ** translation for device /reserved-memory/linux,adsp **
>> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
>> (XEN) DT: translating address:<3> 00000000<3> 57000000<3>
>> (XEN) DT: parent bus is default (na=2, ns=2) on /
>> (XEN) DT: empty ranges; 1:1 translation
>> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
>> (XEN) DT: with offset: 57000000
>> (XEN) DT: one level translation:<3> 00000000<3> 57000000<3>
>> (XEN) DT: reached root node
>> (XEN) - MMIO: 0057000000 - 0058000000 P2MType=5
>> (XEN) handle /reserved-memory/linux,cma
>> (XEN) dt_irq_number: dev=/reserved-memory/linux,cma
>> (XEN) /reserved-memory/linux,cma passthrough = 1 nirq = 0 naddr = 1
>> (XEN) DT: ** translation for device /reserved-memory/linux,cma **
>> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
>> (XEN) DT: translating address:<3> 00000000<3> 58000000<3>
>> (XEN) DT: parent bus is default (na=2, ns=2) on /
>> (XEN) DT: empty ranges; 1:1 translation
>> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
>> (XEN) DT: with offset: 58000000
>> (XEN) DT: one level translation:<3> 00000000<3> 58000000<3>
>> (XEN) DT: reached root node
>> *(XEN) - MMIO: 0058000000 - 0070000000 P2MType=5*
>> (XEN) handle /reserved-memory/linux,multimedia
>> (XEN) dt_irq_number: dev=/reserved-memory/linux,multimedia
>> (XEN) /reserved-memory/linux,multimedia passthrough = 1 nirq = 0 naddr
>> = 1
>> (XEN) DT: ** translation for device /reserved-memory/linux,multimedia **
>> (XEN) DT: bus is default (na=2, ns=2) on /reserved-memory
>> (XEN) DT: translating address:<3> 00000000<3> 70000000<3>
>> (XEN) DT: parent bus is default (na=2, ns=2) on /
>> (XEN) DT: empty ranges; 1:1 translation
>> (XEN) DT: parent translation for:<3> 00000000<3> 00000000<3>
>> (XEN) DT: with offset: 70000000
>> (XEN) DT: one level translation:<3> 00000000<3> 70000000<3>
>> (XEN) DT: reached root node
>> (XEN) - MMIO: 0070000000 - 0080000000 P2MType=5
>> (XEN) handle /mmngr
>> (XEN) dt_irq_number: dev=/mmngr
>> (XEN) /mmngr passthrough = 1 nirq = 0 naddr = 0
>> (XEN) handle /mmngrbuf
>> (XEN) dt_irq_number: dev=/mmngrbuf
>> (XEN) /mmngrbuf passthrough = 1 nirq = 0 naddr = 0
>> (XEN) handle /vspm_if
>> (XEN) dt_irq_number: dev=/vspm_if
>> (XEN) /vspm_if passthrough = 1 nirq = 0 naddr = 0
>> (XEN) Allocating PPI 16 for event channel interrupt
>> (XEN) Create hypervisor node
>> (XEN) Create PSCI node
>> (XEN) Create cpus node
>> (XEN) Create cpu@0 (logical CPUID: 0) node
>> (XEN) Create cpu@1 (logical CPUID: 1) node
>> (XEN) Create cpu@2 (logical CPUID: 2) node
>> (XEN) Create cpu@3 (logical CPUID: 3) node
>> (XEN) Create memory node (reg size 4, nr cells 4)
>> (XEN) Bank 0: 0x60000000->0x70000000
>> *(XEN) Loading zImage from 000000007a000000 to
>> 0000000060080000-0000000062080000*
>> (XEN)
>> (XEN) ****************************************
>> (XEN) Panic on CPU 0:
>> (XEN) Unable to copy the kernel in the hwdom memory
>> (XEN) ****************************************
>> (XEN)
>> (XEN) Reboot in five seconds...
>>
>
> There is a question which worries me and likely other people as well.
> Which is "reserved memory area support in Xen". Some SoCs except
> application processors have some IPs (co-processors, dsps, codecs,
> whatever) which rely on a specific predefined memory regions, or even
> can work with these memory regions only...
This discussion came-up time to time on the ML. I would love to see
patches we can discuss :)
>
> Without this feature being supported, we won't be able to use IPs, whose
> firmware requires a predefined memory region to talk to an application
> processor, I am afraid.
> One option comes to mind... I presume, the use of "iomem" property in
> domain config could allow us to assign 1:1 mapped region to that guest
> domain. Would it be a correct option?
> What needs to be implementing it Xen, for example, to have a possibility
> to assign a particular reserved memory region(s) to a particular guest
> domain?
Well, for a first you need to deal with Xen and Dom0. For instance, Xen
allocator should not be able to use that memory for a normal RAM page.
There was some discussions on the ML a long time ago with Andrii (see
[1]). Maybe he has some patches ready for it.
Cheers,
[1]
https://lists.xenproject.org/archives/html/xen-devel/2017-07/msg02674.html
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-25 23:23 ` Julien Grall
@ 2019-02-26 18:09 ` Oleksandr
0 siblings, 0 replies; 34+ messages in thread
From: Oleksandr @ 2019-02-26 18:09 UTC (permalink / raw)
To: Julien Grall; +Cc: xen-devel, nd, andrii_chepurnyi, amittomer25
> Hi Oleksandr,
Hi, Julien
>> There is a question which worries me and likely other people as well.
>> Which is "reserved memory area support in Xen". Some SoCs except
>> application processors have some IPs (co-processors, dsps, codecs,
>> whatever) which rely on a specific predefined memory regions, or even
>> can work with these memory regions only...
>
> This discussion came-up time to time on the ML. I would love to see
> patches we can discuss :)
>>
>> Without this feature being supported, we won't be able to use IPs,
>> whose firmware requires a predefined memory region to talk to an
>> application processor, I am afraid.
>> One option comes to mind... I presume, the use of "iomem" property in
>> domain config could allow us to assign 1:1 mapped region to that
>> guest domain. Would it be a correct option?
>> What needs to be implementing it Xen, for example, to have a
>> possibility to assign a particular reserved memory region(s) to a
>> particular guest domain?
>
> Well, for a first you need to deal with Xen and Dom0. For instance,
> Xen allocator should not be able to use that memory for a normal RAM
> page.
I understand.
>
> There was some discussions on the ML a long time ago with Andrii (see
> [1]). Maybe he has some patches ready for it.
>
> Cheers,
>
> [1]
> https://lists.xenproject.org/archives/html/xen-devel/2017-07/msg02674.html
Thank you for the pointer. I will read it.
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-21 18:15 ` Amit Tomer
@ 2019-02-27 11:00 ` Julien Grall
0 siblings, 0 replies; 34+ messages in thread
From: Julien Grall @ 2019-02-27 11:00 UTC (permalink / raw)
To: Amit Tomer; +Cc: Oleksandr, xen-devel, andrii_chepurnyi
Hi Amit,
On 2/21/19 6:15 PM, Amit Tomer wrote:
> Hi,
>
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index d9836779d1..08b9cd2c44 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -1805,6 +1805,8 @@ static void __init dtb_load(struct kernel_info *kinfo)
>> printk("Loading dom0 DTB to 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
>> kinfo->dtb_paddr, kinfo->dtb_paddr + fdt_totalsize(kinfo->fdt));
>>
>> + dump_p2m_lookup(kinfo->d, kinfo->dtb_paddr);
>> +
>> left = copy_to_guest_phys_flush_dcache(kinfo->d, kinfo->dtb_paddr,
>> kinfo->fdt,
>> fdt_totalsize(kinfo->fdt));
>>
> Please find the logs after applying this patch:
>
> (XEN) CPU2 will call ARM_SMCCC_ARCH_WORKAROUND_1 on exception entry
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Loading Domd0 kernel from boot module @ 000000007a000000
> (XEN) Allocating 1:1 mappings totalling 512MB for dom0:
> (XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
> (XEN) Grant table range: 0x00000048000000-0x00000048040000
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
> (XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010a44
> (XEN) dom0 IPA 0x0000000058000000
> (XEN) P2M @ 000000080c23dc90 mfn:0x73ff5e
> (XEN) 0TH[0x0] = 0x008000073ff5c7ff
> (XEN) 1ST[0x1] = 0x008000073ff3d7ff
> (XEN) 2ND[0xc0] = 0x02c00000580006fd
Thank you for giving a try! The p2m type for the entry is p2m_mmio_direct_c.
This confirms the finding on the other threads. I would suggest you to
remove the reserved-memory nodes until Xen gain knowledge of reserved
memory.
FIY, Stefano has posted a patch series yesterday aiming to solve this
issues.
Cheers,
--
Julien Grall
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-25 13:12 ` Oleksandr
@ 2019-02-27 20:03 ` Oleksandr
2019-03-05 16:50 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-02-27 20:03 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi, Amit
>
>
> BTW, we use mkimage tool to create Xen image to be loaded:
>
> mkimage -A arm64 -C none -T kernel -a 0x78080000 -e 0x78080000 -n
> "XEN" xen/xen xen-uImage
I am sorry, I had missed "-d" key before xen image.
The proper command is:
mkimage -A arm64 -C none -T kernel -a 0x78080000 -e 0x78080000 -n "XEN"
-d xen/xen xen-uImage
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-02-27 20:03 ` Oleksandr
@ 2019-03-05 16:50 ` Amit Tomer
2019-03-05 18:07 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-03-05 16:50 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi,
> The proper command is:
>
> mkimage -A arm64 -C none -T kernel -a 0x78080000 -e 0x78080000 -n "XEN"
> -d xen/xen xen-uImage
Yeah but it didn't boot it up :(
[ 16.991035] => setenv ipaddr 10.105.2.28;setenv serverip
10.105.2.27;ping 10.105.2.27
[ 18.791456] ravb Waiting for PHY auto negotiation to complete... done
[ 21.506184] ravb: 1000Base/Full
[ 21.514787] Using ravb device
[ 26.518321] host 10.105.2.27 is alive
[ 26.522064] => tftp 0x48080000 xen-uImage
[ 32.859274] ravb:0 is connected to ravb. Reconnecting to ravb
[ 32.866626] ravb Waiting for PHY auto negotiation to complete... done
[ 35.936229] ravb: 1000Base/Full
[ 35.944824] Using ravb device
[ 35.947840] TFTP from server 10.105.2.27; our IP address is 10.105.2.28
[ 35.954733] Filename 'xen-uImage'.
[ 35.958271] Load address: 0x48080000
[ 35.961990] Loading:
#################################################################
[ 41.049127]
#################################################################
[ 41.131627] ##################
[ 41.154635] 141.6 KiB/s
[ 41.157357] done
[ 41.159264] Bytes transferred = 754064 (b8190 hex)
[ 41.164605] => bootm 0x48080000
[ 48.511339] ## Booting kernel from Legacy Image at 48080000 ...
[ 48.517501] Image Name: XEN
[ 48.520855] Image Type: AArch64 Linux Kernel Image (uncompressed)
[ 48.527659] Data Size: 754000 Bytes = 736.3 KiB
[ 48.532921] Load Address: 48080000
[ 48.536731] Entry Point: 48080000
[ 48.540541] Verifying Checksum ... OK
[ 48.548190] Loading Kernel Image ... OK
[ 48.554182]
[ 48.555635] Starting kernel ...
[ 48.558901]
We even tried loading it to 0x78080000.
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-03-05 16:50 ` Amit Tomer
@ 2019-03-05 18:07 ` Oleksandr
2019-03-05 18:10 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-03-05 18:07 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
On 05.03.19 18:50, Amit Tomer wrote:
> Hi,
Hi, Amit
>
>> The proper command is:
>>
>> mkimage -A arm64 -C none -T kernel -a 0x78080000 -e 0x78080000 -n "XEN"
>> -d xen/xen xen-uImage
> Yeah but it didn't boot it up :(
Have you tried to enable early_prink?
AFAIR, I tested that branch (ipmmu_v2) before submitting RFC patch
series [1] and it was functional.
But, I don't quite remember what the BSP version (U-Boot/ARM-TF) I had
based on.
[1]
https://lists.xenproject.org/archives/html/xen-devel/2017-07/msg02679.html
>
> [ 16.991035] => setenv ipaddr 10.105.2.28;setenv serverip
> 10.105.2.27;ping 10.105.2.27
> [ 18.791456] ravb Waiting for PHY auto negotiation to complete... done
> [ 21.506184] ravb: 1000Base/Full
> [ 21.514787] Using ravb device
> [ 26.518321] host 10.105.2.27 is alive
> [ 26.522064] => tftp 0x48080000 xen-uImage
> [ 32.859274] ravb:0 is connected to ravb. Reconnecting to ravb
> [ 32.866626] ravb Waiting for PHY auto negotiation to complete... done
> [ 35.936229] ravb: 1000Base/Full
> [ 35.944824] Using ravb device
> [ 35.947840] TFTP from server 10.105.2.27; our IP address is 10.105.2.28
> [ 35.954733] Filename 'xen-uImage'.
> [ 35.958271] Load address: 0x48080000
> [ 35.961990] Loading:
> #################################################################
> [ 41.049127]
> #################################################################
> [ 41.131627] ##################
> [ 41.154635] 141.6 KiB/s
> [ 41.157357] done
> [ 41.159264] Bytes transferred = 754064 (b8190 hex)
> [ 41.164605] => bootm 0x48080000
> [ 48.511339] ## Booting kernel from Legacy Image at 48080000 ...
> [ 48.517501] Image Name: XEN
> [ 48.520855] Image Type: AArch64 Linux Kernel Image (uncompressed)
> [ 48.527659] Data Size: 754000 Bytes = 736.3 KiB
> [ 48.532921] Load Address: 48080000
> [ 48.536731] Entry Point: 48080000
> [ 48.540541] Verifying Checksum ... OK
> [ 48.548190] Loading Kernel Image ... OK
> [ 48.554182]
> [ 48.555635] Starting kernel ...
> [ 48.558901]
>
> We even tried loading it to 0x78080000.
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-03-05 18:07 ` Oleksandr
@ 2019-03-05 18:10 ` Amit Tomer
2019-03-05 19:40 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-03-05 18:10 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi,
> Have you tried to enable early_prink?
Yes, this is how we compiled it.
make dist-xen XEN_TARGET_ARCH=arm64 debug=y
CROSS_COMPILE=aarch64-linux-gnu-
CONFIG_EARLY_PRINTK_salvator=scif,0xe6e88000 -j16
> AFAIR, I tested that branch (ipmmu_v2) before submitting RFC patch
> series [1] and it was functional.
>
> But, I don't quite remember what the BSP version (U-Boot/ARM-TF) I had
> based on.
Ok.
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-03-05 18:10 ` Amit Tomer
@ 2019-03-05 19:40 ` Oleksandr
2019-03-13 12:41 ` Amit Tomer
0 siblings, 1 reply; 34+ messages in thread
From: Oleksandr @ 2019-03-05 19:40 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
On 05.03.19 20:10, Amit Tomer wrote:
> Hi,
>> Have you tried to enable early_prink?
> Yes, this is how we compiled it.
>
> make dist-xen XEN_TARGET_ARCH=arm64 debug=y
> CROSS_COMPILE=aarch64-linux-gnu-
> CONFIG_EARLY_PRINTK_salvator=scif,0xe6e88000 -j16
No, "CONFIG_EARLY_PRINTK_salvator=scif,0xe6e88000" is incorrect,
it should be "CONFIG_EARLY_PRINTK=scif,0xe6e88000". Probably, this is
why you didn't see anything in console.
I have just tried to build (with early_printk support) and run that old
Xen branch to see it booting.
-------------------------------------------------
Starting kernel ...
- UART enabled -
- CPU 00000000 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Zero BSS -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Checking for initrd in /chosen
(XEN) Initrd 0000000076000040-0000000077a230f7
(XEN) RAM: 0000000048000000 - 00000000bfffffff
(XEN) RAM: 0000000500000000 - 000000057fffffff
(XEN) RAM: 0000000600000000 - 000000067fffffff
(XEN) RAM: 0000000700000000 - 000000077fffffff
(XEN)
(XEN) MODULE[0]: 0000000048000000 - 0000000048014080 Device Tree
(XEN) MODULE[1]: 0000000076000040 - 0000000077a230f7 Ramdisk
(XEN) MODULE[2]: 000000007a000000 - 000000007c000000 Kernel
(XEN) MODULE[3]: 000000007c000000 - 000000007c010000 XSM
(XEN) RESVD[0]: 0000000048000000 - 0000000048014000
(XEN) RESVD[1]: 0000000076000040 - 0000000077a230f7
(XEN)
(XEN) Command line: dom0_mem=256M console=dtuart dtuart=serial0
dom0_max_vcpus=4 bootscrub=0 loglvl=all
(XEN) Placing Xen at 0x000000077fe00000-0x0000000780000000
(XEN) Update BOOTMOD_XEN from 0000000078080000-00000000781b2d81 =>
000000077fe00000-000000077ff32d81
(XEN) Domain heap initialised
(XEN) Booting using Device Tree
(XEN) Platform: Generic System
(XEN) Looking for dtuart at "serial0", options ""
(XEN) Unable to initialize dtuart: -9
(XEN) Bad console= option 'dtuart'
*Xen 4.9.1-pre*
(XEN) Xen version 4.9.1-pre (otyshchenko@) (aarch64-poky-linux-gcc (GCC)
7.3.0) debug=y Tue Mar 5 20:57:55 EET 2019
(XEN) Latest ChangeSet: Mon May 8 13:45:21 2017 +0300 git:a438317-dirty
(XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
(XEN) 64-bit Execution:
(XEN) Processor Features: 0000000000002222 0000000000000000
(XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
(XEN) Extensions: FloatingPoint AdvancedSIMD
(XEN) Debug Features: 0000000010305106 0000000000000000
(XEN) Auxiliary Features: 0000000000000000 0000000000000000
(XEN) Memory Model Features: 0000000000001124 0000000000000000
(XEN) ISA Features: 0000000000011120 0000000000000000
(XEN) 32-bit Execution:
(XEN) Processor Features: 00000131:00011011
(XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
(XEN) Extensions: GenericTimer Security
(XEN) Debug Features: 03010066
(XEN) Auxiliary Features: 00000000
(XEN) Memory Model Features: 10201105 40000000 01260000 02102211
(XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
(XEN) Using PSCI-1.0 for SMP bringup
(XEN) SMP: Allowing 8 CPUs
(XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
(XEN) GICv2 initialization:
(XEN) gic_dist_addr=00000000f1010000
(XEN) gic_cpu_addr=00000000f1020000
(XEN) gic_hyp_addr=00000000f1040000
(XEN) gic_vcpu_addr=00000000f1060000
(XEN) gic_maintenance_irq=25
(XEN) GICv2: Adjusting CPU interface base to 0xf102f000
(XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
(XEN) XSM Framework v1.0.0 initialized
(XEN) xsm: Policy len = 0x0000000000010000 start at 0x000000007c000000
(XEN) Flask: 128 avtab hash slots, 280 rules.
(XEN) Flask: 128 avtab hash slots, 280 rules.
(XEN) Flask: 4 users, 3 roles, 38 types, 2 bools
(XEN) Flask: 12 classes, 280 rules
(XEN) Flask: Starting in enforcing mode.
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Allocated console ring of 64 KiB.
(XEN) Bringing up CPU1
- CPU 00000001 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 1 booted.
(XEN) Bringing up CPU2
- CPU 00000002 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 2 booted.
(XEN) Bringing up CPU3
- CPU 00000003 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 3 booted.
(XEN) Bringing up CPU4
- CPU 00000100 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 4 booted.
(XEN) Bringing up CPU5
- CPU 00000101 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 5 booted.
(XEN) Bringing up CPU6
- CPU 00000102 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 6 booted.
(XEN) Bringing up CPU7
- CPU 00000103 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) CPU 7 booted.
(XEN) Brought up 8 CPUs
(XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
(XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
(XEN) ipmmu: /soc/mmu@e67b0000: registered root IPMMU
(XEN) ipmmu: /soc/mmu@e67b0000: disable sharing P2M table between the
CPU and IPMMU
(XEN) ipmmu: /soc/mmu@febd0000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef0000
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef1000
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef2000
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef3000
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea27000
(XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea2f000
(XEN) ipmmu: /soc/mmu@febe0000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef4000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef5000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef6000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef7000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/fcp@fea37000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@fead0000
(XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@feae0000
(XEN) ipmmu: /soc/mmu@fe990000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe960000
(XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe9a0000
(XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/fdpm@fe940000
(XEN) ipmmu: /soc/mmu@fe980000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe920000
(XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe9b0000
(XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/fdpm@fe944000
(XEN) ipmmu: /soc/mmu@fe6b0000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe880000
(XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe890000
(XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/vcp4@fe90f000
(XEN) ipmmu: /soc/mmu@fe6f0000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe860000
(XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe870000
(XEN) ipmmu: /soc/mmu@fd800000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domd
(XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domu
(XEN) ipmmu: /soc/mmu@fd950000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fd960000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@fd970000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@e6570000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee000000
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee020000
(XEN) ipmmu: /soc/mmu@e6570000: found master device
/soc/dma-controller@e65a0000
(XEN) ipmmu: /soc/mmu@e6570000: found master device
/soc/dma-controller@e65b0000
(XEN) ipmmu: /soc/mmu@e6570000: found master device
/soc/dma-controller@e6460000
(XEN) ipmmu: /soc/mmu@e6570000: found master device
/soc/dma-controller@e6470000
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080100
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0100
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0100
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0100
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080000
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0000
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0000
(XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0000
(XEN) ipmmu: /soc/mmu@ec670000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@ec670000: found master device
/soc/dma-controller@ec700000
(XEN) ipmmu: /soc/mmu@ec670000: found master device
/soc/dma-controller@ec720000
(XEN) ipmmu: /soc/mmu@e6740000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@e6740000: found master device
/soc/dma-controller@e6700000
(XEN) ipmmu: /soc/mmu@e6740000: found master device /soc/ethernet@e6800000
(XEN) ipmmu: /soc/mmu@e7740000: registered cache IPMMU
(XEN) ipmmu: /soc/mmu@e7740000: found master device
/soc/dma-controller@e7300000
(XEN) ipmmu: /soc/mmu@e7740000: found master device
/soc/dma-controller@e7310000
(XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee100000
(XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee140000
(XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee160000
(XEN) I/O virtualisation enabled
(XEN) - Dom0 mode: Relaxed
(XEN) Interrupt remapping enabled
(XEN) build-id: f7bd09bf8c9d60ec9bf6c5e138e4fa374b4e8419
(XEN) alternatives: Patching with alt table 0000000040111540 ->
0000000040111930
(XEN) ipmmu: /soc/mmu@e67b0000: d0: Set IPMMU context 0 (pgd 0x77fddf000)
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Loading kernel from boot module @ 000000007a000000
(XEN) Loading ramdisk from boot module @ 0000000076000040
(XEN) Allocating 1:1 mappings totalling 256MB for dom0:
(XEN) BANK[0] 0x00000050000000-0x00000060000000 (256MB)
(XEN) Grant table range: 0x0000077fe00000-0x0000077fe7a000
(XEN) Loading zImage from 000000007a000000 to
0000000050080000-0000000052080000
(XEN) Loading dom0 initrd from 0000000076000040 to
0x0000000058200000-0x0000000059c230b7
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Loading dom0 DTB to 0x0000000058000000-0x000000005801143d
(XEN) Std. Loglevel: All
(XEN) Guest Loglevel: All
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
input to Xen)
(XEN) Freed 292kB init memory.
-------------------------------------------------
As for build without early_printk support...
I should have mentioned about enabling CONFIG_HAS_SCIF option in a cover
letter (in order to have full UART support). Sorry for that.
Recent Xen already enables it by default [1]
[1] https://patchwork.kernel.org/patch/9848913/
>
>> AFAIR, I tested that branch (ipmmu_v2) before submitting RFC patch
>> series [1] and it was functional.
>>
>> But, I don't quite remember what the BSP version (U-Boot/ARM-TF) I had
>> based on.
> Ok.
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-03-05 19:40 ` Oleksandr
@ 2019-03-13 12:41 ` Amit Tomer
2019-03-15 18:50 ` Oleksandr
0 siblings, 1 reply; 34+ messages in thread
From: Amit Tomer @ 2019-03-13 12:41 UTC (permalink / raw)
To: Oleksandr; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
Hi,
>
> Starting kernel ...
>
> - UART enabled -
> - CPU 00000000 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Zero BSS -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Checking for initrd in /chosen
> (XEN) Initrd 0000000076000040-0000000077a230f7
> (XEN) RAM: 0000000048000000 - 00000000bfffffff
> (XEN) RAM: 0000000500000000 - 000000057fffffff
> (XEN) RAM: 0000000600000000 - 000000067fffffff
> (XEN) RAM: 0000000700000000 - 000000077fffffff
> (XEN)
> (XEN) MODULE[0]: 0000000048000000 - 0000000048014080 Device Tree
> (XEN) MODULE[1]: 0000000076000040 - 0000000077a230f7 Ramdisk
> (XEN) MODULE[2]: 000000007a000000 - 000000007c000000 Kernel
> (XEN) MODULE[3]: 000000007c000000 - 000000007c010000 XSM
> (XEN) RESVD[0]: 0000000048000000 - 0000000048014000
> (XEN) RESVD[1]: 0000000076000040 - 0000000077a230f7
> (XEN)
> (XEN) Command line: dom0_mem=256M console=dtuart dtuart=serial0
> dom0_max_vcpus=4 bootscrub=0 loglvl=all
> (XEN) Placing Xen at 0x000000077fe00000-0x0000000780000000
> (XEN) Update BOOTMOD_XEN from 0000000078080000-00000000781b2d81 =>
> 000000077fe00000-000000077ff32d81
> (XEN) Domain heap initialised
> (XEN) Booting using Device Tree
> (XEN) Platform: Generic System
> (XEN) Looking for dtuart at "serial0", options ""
> (XEN) Unable to initialize dtuart: -9
> (XEN) Bad console= option 'dtuart'
> *Xen 4.9.1-pre*
> (XEN) Xen version 4.9.1-pre (otyshchenko@) (aarch64-poky-linux-gcc (GCC)
> 7.3.0) debug=y Tue Mar 5 20:57:55 EET 2019
> (XEN) Latest ChangeSet: Mon May 8 13:45:21 2017 +0300 git:a438317-dirty
> (XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
> (XEN) 64-bit Execution:
> (XEN) Processor Features: 0000000000002222 0000000000000000
> (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
> (XEN) Extensions: FloatingPoint AdvancedSIMD
> (XEN) Debug Features: 0000000010305106 0000000000000000
> (XEN) Auxiliary Features: 0000000000000000 0000000000000000
> (XEN) Memory Model Features: 0000000000001124 0000000000000000
> (XEN) ISA Features: 0000000000011120 0000000000000000
> (XEN) 32-bit Execution:
> (XEN) Processor Features: 00000131:00011011
> (XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
> (XEN) Extensions: GenericTimer Security
> (XEN) Debug Features: 03010066
> (XEN) Auxiliary Features: 00000000
> (XEN) Memory Model Features: 10201105 40000000 01260000 02102211
> (XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
> (XEN) Using PSCI-1.0 for SMP bringup
> (XEN) SMP: Allowing 8 CPUs
> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
> (XEN) GICv2 initialization:
> (XEN) gic_dist_addr=00000000f1010000
> (XEN) gic_cpu_addr=00000000f1020000
> (XEN) gic_hyp_addr=00000000f1040000
> (XEN) gic_vcpu_addr=00000000f1060000
> (XEN) gic_maintenance_irq=25
> (XEN) GICv2: Adjusting CPU interface base to 0xf102f000
> (XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
> (XEN) XSM Framework v1.0.0 initialized
> (XEN) xsm: Policy len = 0x0000000000010000 start at 0x000000007c000000
> (XEN) Flask: 128 avtab hash slots, 280 rules.
> (XEN) Flask: 128 avtab hash slots, 280 rules.
> (XEN) Flask: 4 users, 3 roles, 38 types, 2 bools
> (XEN) Flask: 12 classes, 280 rules
> (XEN) Flask: Starting in enforcing mode.
> (XEN) Using scheduler: SMP Credit Scheduler (credit)
> (XEN) Allocated console ring of 64 KiB.
> (XEN) Bringing up CPU1
> - CPU 00000001 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 1 booted.
> (XEN) Bringing up CPU2
> - CPU 00000002 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 2 booted.
> (XEN) Bringing up CPU3
> - CPU 00000003 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 3 booted.
> (XEN) Bringing up CPU4
> - CPU 00000100 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 4 booted.
> (XEN) Bringing up CPU5
> - CPU 00000101 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 5 booted.
> (XEN) Bringing up CPU6
> - CPU 00000102 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 6 booted.
> (XEN) Bringing up CPU7
> - CPU 00000103 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) CPU 7 booted.
> (XEN) Brought up 8 CPUs
> (XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
> (XEN) ipmmu: /soc/mmu@e67b0000: registered root IPMMU
> (XEN) ipmmu: /soc/mmu@e67b0000: disable sharing P2M table between the
> CPU and IPMMU
> (XEN) ipmmu: /soc/mmu@febd0000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef0000
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef1000
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef2000
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef3000
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea27000
> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea2f000
> (XEN) ipmmu: /soc/mmu@febe0000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef4000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef5000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef6000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef7000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/fcp@fea37000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@fead0000
> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@feae0000
> (XEN) ipmmu: /soc/mmu@fe990000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe960000
> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe9a0000
> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/fdpm@fe940000
> (XEN) ipmmu: /soc/mmu@fe980000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe920000
> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe9b0000
> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/fdpm@fe944000
> (XEN) ipmmu: /soc/mmu@fe6b0000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe880000
> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe890000
> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/vcp4@fe90f000
> (XEN) ipmmu: /soc/mmu@fe6f0000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe860000
> (XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe870000
> (XEN) ipmmu: /soc/mmu@fd800000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domd
> (XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domu
> (XEN) ipmmu: /soc/mmu@fd950000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fd960000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@fd970000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@e6570000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee000000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee020000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device
> /soc/dma-controller@e65a0000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device
> /soc/dma-controller@e65b0000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device
> /soc/dma-controller@e6460000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device
> /soc/dma-controller@e6470000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080100
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0100
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0100
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0100
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0000
> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0000
> (XEN) ipmmu: /soc/mmu@ec670000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@ec670000: found master device
> /soc/dma-controller@ec700000
> (XEN) ipmmu: /soc/mmu@ec670000: found master device
> /soc/dma-controller@ec720000
> (XEN) ipmmu: /soc/mmu@e6740000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@e6740000: found master device
> /soc/dma-controller@e6700000
> (XEN) ipmmu: /soc/mmu@e6740000: found master device /soc/ethernet@e6800000
> (XEN) ipmmu: /soc/mmu@e7740000: registered cache IPMMU
> (XEN) ipmmu: /soc/mmu@e7740000: found master device
> /soc/dma-controller@e7300000
> (XEN) ipmmu: /soc/mmu@e7740000: found master device
> /soc/dma-controller@e7310000
> (XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee100000
> (XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee140000
We booted 4.9(non debug build) based on ipmmu_v2 but don't see ipmuu
related logs in
boot logs(is it because its non debug build):
[ 62.259664] Starting kernel ...
[ 62.262930]
- UART enabled -
- CPU 00000000 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Zero BSS -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Checking for initrd in /chosen
(XEN) RAM: 0000000048000000 - 000000007fffffff
(XEN) RAM: 0000000500000000 - 000000053fffffff
(XEN) RAM: 0000000600000000 - 000000063fffffff
(XEN) RAM: 0000000700000000 - 000000073fffffff
(XEN)
(XEN) MODULE[0]: 000000007d70f000 - 000000007d722000 Device Tree
(XEN) MODULE[1]: 000000007a000000 - 000000007b800000 Kernel
(XEN) RESVD[0]: 000000004a000000 - 000000004a013000
(XEN) RESVD[1]: 000000007d70f000 - 000000007d722000
(XEN)
(XEN) Command line: console=dtuart dom0_mem=512M
(XEN) Placing Xen at 0x000000073fe00000-0x0000000740000000
(XEN) Update BOOTMOD_XEN from 0000000048000000-0000000048108d81 =>
000000073fe00000-000000073ff08d81
(XEN) Domain heap initialised
(XEN) Booting using Device Tree
(XEN) Taking dtuart configuration from /chosen/stdout-path
(XEN) Looking for dtuart at "serial0", options "115200n8"
(XEN) WARNING: UART configuration is not supported
Xen 4.9.1-pre
(XEN) Xen version 4.9.1-pre (atomar@) (aarch64-linux-gnu-gcc (Linaro
GCC 7.3-2018.05) 7.3.1 20180425 [linaro-7.3-2018.05 revision
d29120a424ecfbc167ef90065c0eeb7f91977701]) debug=n Wed Mar 13
13:49:41 I9
(XEN) Latest ChangeSet: Mon May 8 13:45:21 2017 +0300 git:a438317-dirty
(XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
(XEN) 64-bit Execution:
(XEN) Processor Features: 0000000000002222 0000000000000000
(XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
(XEN) Extensions: FloatingPoint AdvancedSIMD
(XEN) Debug Features: 0000000010305106 0000000000000000
(XEN) Auxiliary Features: 0000000000000000 0000000000000000
(XEN) Memory Model Features: 0000000000001124 0000000000000000
(XEN) ISA Features: 0000000000011120 0000000000000000
(XEN) 32-bit Execution:
(XEN) Processor Features: 00000131:00011011
(XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
(XEN) Extensions: GenericTimer Security
(XEN) Debug Features: 03010066
(XEN) Auxiliary Features: 00000000
(XEN) Memory Model Features: 10201105 40000000 01260000 02102211
(XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
(XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
(XEN) GICv2 initialization:
(XEN) gic_dist_addr=00000000f1010000
(XEN) gic_cpu_addr=00000000f1020000
(XEN) gic_hyp_addr=00000000f1040000
(XEN) gic_vcpu_addr=00000000f1060000
(XEN) gic_maintenance_irq=25
(XEN) GICv2: Adjusting CPU interface base to 0xf102f000
(XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
(XEN) Using scheduler: SMP Credit Scheduler (credit)
(XEN) Allocated console ring of 16 KiB.
(XEN) Bringing up CPU1
- CPU 00000001 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU2
- CPU 00000002 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU3
- CPU 00000003 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU4
- CPU 00000100 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU5
- CPU 00000101 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU6
- CPU 00000102 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Bringing up CPU7
- CPU 00000103 booting -
- Current EL 00000008 -
- Xen starting at EL2 -
- Setting up control registers -
- Turning on paging -
- Ready -
(XEN) Brought up 8 CPUs
(XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
(XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
(XEN) I/O virtualisation disabled
(XEN) *** LOADING DOMAIN 0 ***
(XEN) Loading kernel from boot module @ 000000007a000000
(XEN) Allocating 1:1 mappings totalling 512MB for dom0:
(XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
(XEN) Grant table range: 0x0000073fe00000-0x0000073fe61000
(XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
(XEN) Allocating PPI 16 for event channel interrupt
(XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010aed
(XEN) Scrubbing Free RAM on 1 nodes using 8 CPUs
(XEN) ....done.
(XEN) Initial low memory virq threshold set at 0x4000 pages.
(XEN) Std. Loglevel: Errors and warnings
(XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings)
(XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
input to Xen)
(XEN) Freed 292kB init memory.
Also, this is what we try to get debug build:
#make dist-xen debug=y CONFIG_EARLY_PRINTK=scif,0xe6e88000
XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j16
make -C xen install
make[1]: Entering directory '/scratch/work/xen_work/xen_4.9/xen/xen'
make -f Rules.mk _install
make[2]: Entering directory '/scratch/work/xen_work/xen_4.9/xen/xen'
Rules.mk:11: "You must use 'make menuconfig' to enable/disable debug now."
/scratch/work/xen_work/xen_4.9/xen/xen/arch/arm/Rules.mk:85: ***
CONFIG_EARLY_PRINTK enabled for non-debug build. Stop.
make[2]: Leaving directory '/scratch/work/xen_work/xen_4.9/xen/xen'
Makefile:45: recipe for target 'install' failed
make[1]: *** [install] Error 2
make[1]: Leaving directory '/scratch/work/xen_work/xen_4.9/xen/xen'
Makefile:122: recipe for target 'install-xen' failed
make: *** [install-xen] Error 2
Thanks
-Amit
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
* Re: XEN on R-CAR H3
2019-03-13 12:41 ` Amit Tomer
@ 2019-03-15 18:50 ` Oleksandr
0 siblings, 0 replies; 34+ messages in thread
From: Oleksandr @ 2019-03-15 18:50 UTC (permalink / raw)
To: Amit Tomer; +Cc: xen-devel, Julien Grall, andrii_chepurnyi
On 13.03.19 14:41, Amit Tomer wrote:
> Hi,
Hi
>
>> Starting kernel ...
>>
>> - UART enabled -
>> - CPU 00000000 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Zero BSS -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) Checking for initrd in /chosen
>> (XEN) Initrd 0000000076000040-0000000077a230f7
>> (XEN) RAM: 0000000048000000 - 00000000bfffffff
>> (XEN) RAM: 0000000500000000 - 000000057fffffff
>> (XEN) RAM: 0000000600000000 - 000000067fffffff
>> (XEN) RAM: 0000000700000000 - 000000077fffffff
>> (XEN)
>> (XEN) MODULE[0]: 0000000048000000 - 0000000048014080 Device Tree
>> (XEN) MODULE[1]: 0000000076000040 - 0000000077a230f7 Ramdisk
>> (XEN) MODULE[2]: 000000007a000000 - 000000007c000000 Kernel
>> (XEN) MODULE[3]: 000000007c000000 - 000000007c010000 XSM
>> (XEN) RESVD[0]: 0000000048000000 - 0000000048014000
>> (XEN) RESVD[1]: 0000000076000040 - 0000000077a230f7
>> (XEN)
>> (XEN) Command line: dom0_mem=256M console=dtuart dtuart=serial0
>> dom0_max_vcpus=4 bootscrub=0 loglvl=all
>> (XEN) Placing Xen at 0x000000077fe00000-0x0000000780000000
>> (XEN) Update BOOTMOD_XEN from 0000000078080000-00000000781b2d81 =>
>> 000000077fe00000-000000077ff32d81
>> (XEN) Domain heap initialised
>> (XEN) Booting using Device Tree
>> (XEN) Platform: Generic System
>> (XEN) Looking for dtuart at "serial0", options ""
>> (XEN) Unable to initialize dtuart: -9
>> (XEN) Bad console= option 'dtuart'
>> *Xen 4.9.1-pre*
>> (XEN) Xen version 4.9.1-pre (otyshchenko@) (aarch64-poky-linux-gcc (GCC)
>> 7.3.0) debug=y Tue Mar 5 20:57:55 EET 2019
>> (XEN) Latest ChangeSet: Mon May 8 13:45:21 2017 +0300 git:a438317-dirty
>> (XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
>> (XEN) 64-bit Execution:
>> (XEN) Processor Features: 0000000000002222 0000000000000000
>> (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
>> (XEN) Extensions: FloatingPoint AdvancedSIMD
>> (XEN) Debug Features: 0000000010305106 0000000000000000
>> (XEN) Auxiliary Features: 0000000000000000 0000000000000000
>> (XEN) Memory Model Features: 0000000000001124 0000000000000000
>> (XEN) ISA Features: 0000000000011120 0000000000000000
>> (XEN) 32-bit Execution:
>> (XEN) Processor Features: 00000131:00011011
>> (XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
>> (XEN) Extensions: GenericTimer Security
>> (XEN) Debug Features: 03010066
>> (XEN) Auxiliary Features: 00000000
>> (XEN) Memory Model Features: 10201105 40000000 01260000 02102211
>> (XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
>> (XEN) Using PSCI-1.0 for SMP bringup
>> (XEN) SMP: Allowing 8 CPUs
>> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
>> (XEN) GICv2 initialization:
>> (XEN) gic_dist_addr=00000000f1010000
>> (XEN) gic_cpu_addr=00000000f1020000
>> (XEN) gic_hyp_addr=00000000f1040000
>> (XEN) gic_vcpu_addr=00000000f1060000
>> (XEN) gic_maintenance_irq=25
>> (XEN) GICv2: Adjusting CPU interface base to 0xf102f000
>> (XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
>> (XEN) XSM Framework v1.0.0 initialized
>> (XEN) xsm: Policy len = 0x0000000000010000 start at 0x000000007c000000
>> (XEN) Flask: 128 avtab hash slots, 280 rules.
>> (XEN) Flask: 128 avtab hash slots, 280 rules.
>> (XEN) Flask: 4 users, 3 roles, 38 types, 2 bools
>> (XEN) Flask: 12 classes, 280 rules
>> (XEN) Flask: Starting in enforcing mode.
>> (XEN) Using scheduler: SMP Credit Scheduler (credit)
>> (XEN) Allocated console ring of 64 KiB.
>> (XEN) Bringing up CPU1
>> - CPU 00000001 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 1 booted.
>> (XEN) Bringing up CPU2
>> - CPU 00000002 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 2 booted.
>> (XEN) Bringing up CPU3
>> - CPU 00000003 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 3 booted.
>> (XEN) Bringing up CPU4
>> - CPU 00000100 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 4 booted.
>> (XEN) Bringing up CPU5
>> - CPU 00000101 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 5 booted.
>> (XEN) Bringing up CPU6
>> - CPU 00000102 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 6 booted.
>> (XEN) Bringing up CPU7
>> - CPU 00000103 booting -
>> - Current EL 00000008 -
>> - Xen starting at EL2 -
>> - Setting up control registers -
>> - Turning on paging -
>> - Ready -
>> (XEN) CPU 7 booted.
>> (XEN) Brought up 8 CPUs
>> (XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
>> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
>> (XEN) ipmmu: /soc/mmu@e67b0000: registered root IPMMU
>> (XEN) ipmmu: /soc/mmu@e67b0000: disable sharing P2M table between the
>> CPU and IPMMU
>> (XEN) ipmmu: /soc/mmu@febd0000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef0000
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef1000
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef2000
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/video@e6ef3000
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea27000
>> (XEN) ipmmu: /soc/mmu@febd0000: found master device /soc/fcp@fea2f000
>> (XEN) ipmmu: /soc/mmu@febe0000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef4000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef5000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef6000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/video@e6ef7000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/fcp@fea37000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@fead0000
>> (XEN) ipmmu: /soc/mmu@febe0000: found master device /soc/hdmi@feae0000
>> (XEN) ipmmu: /soc/mmu@fe990000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe960000
>> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/vspm@fe9a0000
>> (XEN) ipmmu: /soc/mmu@fe990000: found master device /soc/fdpm@fe940000
>> (XEN) ipmmu: /soc/mmu@fe980000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe920000
>> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/vspm@fe9b0000
>> (XEN) ipmmu: /soc/mmu@fe980000: found master device /soc/fdpm@fe944000
>> (XEN) ipmmu: /soc/mmu@fe6b0000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe880000
>> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/imr-lx4@fe890000
>> (XEN) ipmmu: /soc/mmu@fe6b0000: found master device /soc/vcp4@fe90f000
>> (XEN) ipmmu: /soc/mmu@fe6f0000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe860000
>> (XEN) ipmmu: /soc/mmu@fe6f0000: found master device /soc/imr-lx4@fe870000
>> (XEN) ipmmu: /soc/mmu@fd800000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domd
>> (XEN) ipmmu: /soc/mmu@fd800000: found master device /soc/gsx_domu
>> (XEN) ipmmu: /soc/mmu@fd950000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fd960000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@fd970000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@e6570000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee000000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee020000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device
>> /soc/dma-controller@e65a0000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device
>> /soc/dma-controller@e65b0000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device
>> /soc/dma-controller@e6460000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device
>> /soc/dma-controller@e6470000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080100
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0100
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0100
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0100
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee080000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0a0000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0c0000
>> (XEN) ipmmu: /soc/mmu@e6570000: found master device /soc/usb@ee0e0000
>> (XEN) ipmmu: /soc/mmu@ec670000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@ec670000: found master device
>> /soc/dma-controller@ec700000
>> (XEN) ipmmu: /soc/mmu@ec670000: found master device
>> /soc/dma-controller@ec720000
>> (XEN) ipmmu: /soc/mmu@e6740000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@e6740000: found master device
>> /soc/dma-controller@e6700000
>> (XEN) ipmmu: /soc/mmu@e6740000: found master device /soc/ethernet@e6800000
>> (XEN) ipmmu: /soc/mmu@e7740000: registered cache IPMMU
>> (XEN) ipmmu: /soc/mmu@e7740000: found master device
>> /soc/dma-controller@e7300000
>> (XEN) ipmmu: /soc/mmu@e7740000: found master device
>> /soc/dma-controller@e7310000
>> (XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee100000
>> (XEN) ipmmu: /soc/mmu@e7740000: found master device /soc/sd@ee140000
> We booted 4.9(non debug build) based on ipmmu_v2 but don't see ipmuu
> related logs in
> boot logs(is it because its non debug build):
I have just tried "non debug" build, but with "loglvl=all" in bootargs.
With such configuration I see IPMMU related logs.
From the following string "(XEN) I/O virtualisation disabled" in your
log, I assume that IPMMU hasn't been registered.
Probably, you have IPMMU devices disabled/removed in your host
device-tree and Xen couldn't pick them up.
If this is a reason, then you need to enable them ("IPMMU root" device
and required "IPMMU cache(s)") and tie required bus masters (DMA
devices) to "IPMMU caches".
For example, H3 case:
/* root */
&ipmmu_mm {
status = "okay";
};
/* cache */
&ipmmu_ds0 {
status = "okay";
};
/* DMA device */
&avb {
iommus = <&ipmmu_ds0 16>;
};
>
> [ 62.259664] Starting kernel ...
> [ 62.262930]
> - UART enabled -
> - CPU 00000000 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Zero BSS -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Checking for initrd in /chosen
> (XEN) RAM: 0000000048000000 - 000000007fffffff
> (XEN) RAM: 0000000500000000 - 000000053fffffff
> (XEN) RAM: 0000000600000000 - 000000063fffffff
> (XEN) RAM: 0000000700000000 - 000000073fffffff
> (XEN)
> (XEN) MODULE[0]: 000000007d70f000 - 000000007d722000 Device Tree
> (XEN) MODULE[1]: 000000007a000000 - 000000007b800000 Kernel
> (XEN) RESVD[0]: 000000004a000000 - 000000004a013000
> (XEN) RESVD[1]: 000000007d70f000 - 000000007d722000
> (XEN)
> (XEN) Command line: console=dtuart dom0_mem=512M
> (XEN) Placing Xen at 0x000000073fe00000-0x0000000740000000
> (XEN) Update BOOTMOD_XEN from 0000000048000000-0000000048108d81 =>
> 000000073fe00000-000000073ff08d81
> (XEN) Domain heap initialised
> (XEN) Booting using Device Tree
> (XEN) Taking dtuart configuration from /chosen/stdout-path
> (XEN) Looking for dtuart at "serial0", options "115200n8"
> (XEN) WARNING: UART configuration is not supported
> Xen 4.9.1-pre
> (XEN) Xen version 4.9.1-pre (atomar@) (aarch64-linux-gnu-gcc (Linaro
> GCC 7.3-2018.05) 7.3.1 20180425 [linaro-7.3-2018.05 revision
> d29120a424ecfbc167ef90065c0eeb7f91977701]) debug=n Wed Mar 13
> 13:49:41 I9
> (XEN) Latest ChangeSet: Mon May 8 13:45:21 2017 +0300 git:a438317-dirty
> (XEN) Processor: 411fd073: "ARM Limited", variant: 0x1, part 0xd07, rev 0x3
> (XEN) 64-bit Execution:
> (XEN) Processor Features: 0000000000002222 0000000000000000
> (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32
> (XEN) Extensions: FloatingPoint AdvancedSIMD
> (XEN) Debug Features: 0000000010305106 0000000000000000
> (XEN) Auxiliary Features: 0000000000000000 0000000000000000
> (XEN) Memory Model Features: 0000000000001124 0000000000000000
> (XEN) ISA Features: 0000000000011120 0000000000000000
> (XEN) 32-bit Execution:
> (XEN) Processor Features: 00000131:00011011
> (XEN) Instruction Sets: AArch32 A32 Thumb Thumb-2 Jazelle
> (XEN) Extensions: GenericTimer Security
> (XEN) Debug Features: 03010066
> (XEN) Auxiliary Features: 00000000
> (XEN) Memory Model Features: 10201105 40000000 01260000 02102211
> (XEN) ISA Features: 02101110 13112111 21232042 01112131 00011142 00011121
> (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 8333 KHz
> (XEN) GICv2 initialization:
> (XEN) gic_dist_addr=00000000f1010000
> (XEN) gic_cpu_addr=00000000f1020000
> (XEN) gic_hyp_addr=00000000f1040000
> (XEN) gic_vcpu_addr=00000000f1060000
> (XEN) gic_maintenance_irq=25
> (XEN) GICv2: Adjusting CPU interface base to 0xf102f000
> (XEN) GICv2: 512 lines, 8 cpus, secure (IID 0200043b).
> (XEN) Using scheduler: SMP Credit Scheduler (credit)
> (XEN) Allocated console ring of 16 KiB.
> (XEN) Bringing up CPU1
> - CPU 00000001 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU2
> - CPU 00000002 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU3
> - CPU 00000003 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU4
> - CPU 00000100 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU5
> - CPU 00000101 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU6
> - CPU 00000102 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Bringing up CPU7
> - CPU 00000103 booting -
> - Current EL 00000008 -
> - Xen starting at EL2 -
> - Setting up control registers -
> - Turning on paging -
> - Ready -
> (XEN) Brought up 8 CPUs
> (XEN) P2M: 40-bit IPA with 40-bit PA and 8-bit VMID
> (XEN) P2M: 3 levels with order-1 root, VTCR 0x80023558
> (XEN) I/O virtualisation disabled
> (XEN) *** LOADING DOMAIN 0 ***
> (XEN) Loading kernel from boot module @ 000000007a000000
> (XEN) Allocating 1:1 mappings totalling 512MB for dom0:
> (XEN) BANK[0] 0x00000050000000-0x00000070000000 (512MB)
> (XEN) Grant table range: 0x0000073fe00000-0x0000073fe61000
> (XEN) Loading zImage from 000000007a000000 to 0000000050080000-0000000051880000
> (XEN) Allocating PPI 16 for event channel interrupt
> (XEN) Loading dom0 DTB to 0x0000000058000000-0x0000000058010aed
> (XEN) Scrubbing Free RAM on 1 nodes using 8 CPUs
> (XEN) ....done.
> (XEN) Initial low memory virq threshold set at 0x4000 pages.
> (XEN) Std. Loglevel: Errors and warnings
> (XEN) Guest Loglevel: Nothing (Rate-limited: Errors and warnings)
> (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch
> input to Xen)
> (XEN) Freed 292kB init memory.
>
>
> Also, this is what we try to get debug build:
>
> #make dist-xen debug=y CONFIG_EARLY_PRINTK=scif,0xe6e88000
> XEN_TARGET_ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- -j16
> make -C xen install
> make[1]: Entering directory '/scratch/work/xen_work/xen_4.9/xen/xen'
> make -f Rules.mk _install
> make[2]: Entering directory '/scratch/work/xen_work/xen_4.9/xen/xen'
> Rules.mk:11: "You must use 'make menuconfig' to enable/disable debug now."
> /scratch/work/xen_work/xen_4.9/xen/xen/arch/arm/Rules.mk:85: ***
> CONFIG_EARLY_PRINTK enabled for non-debug build. Stop.
> make[2]: Leaving directory '/scratch/work/xen_work/xen_4.9/xen/xen'
> Makefile:45: recipe for target 'install' failed
> make[1]: *** [install] Error 2
> make[1]: Leaving directory '/scratch/work/xen_work/xen_4.9/xen/xen'
> Makefile:122: recipe for target 'install-xen' failed
> make: *** [install-xen] Error 2
>
> Thanks
> -Amit
--
Regards,
Oleksandr Tyshchenko
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel
^ permalink raw reply [flat|nested] 34+ messages in thread
end of thread, other threads:[~2019-03-15 18:50 UTC | newest]
Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-06 14:41 XEN on R-CAR H3 Amit Tomer
2019-02-06 15:03 ` Oleksandr
2019-02-06 15:18 ` Amit Tomer
2019-02-08 18:21 ` Amit Tomer
2019-02-09 16:48 ` Oleksandr
2019-02-15 14:17 ` Amit Tomer
2019-02-15 19:51 ` Oleksandr
2019-02-18 12:53 ` Amit Tomer
2019-02-18 20:00 ` Oleksandr
2019-02-19 16:46 ` Amit Tomer
2019-02-20 18:13 ` Oleksandr
2019-02-20 18:31 ` Amit Tomer
2019-02-20 20:13 ` Julien Grall
2019-02-20 21:28 ` Oleksandr Tyshchenko
2019-02-21 10:11 ` Julien Grall
2019-02-21 19:28 ` Oleksandr
2019-02-25 14:43 ` Oleksandr
2019-02-25 23:23 ` Julien Grall
2019-02-26 18:09 ` Oleksandr
2019-02-21 18:20 ` Amit Tomer
2019-02-21 18:44 ` Oleksandr
2019-02-22 19:15 ` Oleksandr
2019-02-22 20:08 ` Amit Tomer
2019-02-23 13:05 ` Amit Tomer
2019-02-25 13:12 ` Oleksandr
2019-02-27 20:03 ` Oleksandr
2019-03-05 16:50 ` Amit Tomer
2019-03-05 18:07 ` Oleksandr
2019-03-05 18:10 ` Amit Tomer
2019-03-05 19:40 ` Oleksandr
2019-03-13 12:41 ` Amit Tomer
2019-03-15 18:50 ` Oleksandr
2019-02-21 18:15 ` Amit Tomer
2019-02-27 11:00 ` Julien Grall
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.