Hello Julien, I suppose there is no such documentation, at least I didn't find any. Bringing up XEN 4.10.0 on RK3399 is my pet-project. My current target board is Ibox3399 <https://www.aliexpress.com/item/RK3399-Development-Board-Ibox3399-2GB-DDR3-16GB-EMMC-Six-Core-A72-A53-Mali-T860-GPU-Android6/32816273232.html>
At the moment I got dom0 running on this board and some test guest domain (both 4.4 kernels). Actually no changes made to XEN (except earlyprintk) at the moment, Xen works from the box. Some boot logs attached. *BR,* *Ihor Matushchak* 2018-07-06 13:36 GMT+03:00 Julien Grall <julien.gr...@arm.com>: > Hello, > > On 04/07/18 21:55, ihor.matushc...@foobox.net wrote: > >> From: Ihor Matushchak <ihor.matushc...@foobox.net> >> >> This patch enables earlyprintk for Rockchip rk3399 based SoC. >> > Is there any missing pieces in Xen to boot on Rockchip? I would also quite > like to see some documentation how to boot Xen on that platform. > > Cheers, > > > >> Ihor Matushchak (1): >> xen:arm:earlyprintk configuration for rk3399 boards >> >> docs/misc/arm/early-printk.txt | 1 + >> xen/arch/arm/Rules.mk | 1 + >> 2 files changed, 2 insertions(+) >> >> > -- > Julien Grall >
???DDR Version 1.07 20161103 In Channel 0: DDR3, 666MHz Bus Width=32 Col=10 Bank=8 Row=15/15 CS=2 Die Bus-Width=16 Size=2048MB Channel 1: DDR3, 666MHz Bus Width=32 Col=10 Bank=8 Row=15/15 CS=2 Die Bus-Width=16 Size=2048MB 256B stride ch 0 ddrconfig = 0x101, ddrsize = 0x2020 ch 1 ddrconfig = 0x101, ddrsize = 0x2020 pmugrf_os_reg[2] = 0x3AA17AA1, stride = 0xD OUT Boot1: 2016-07-29, version: 1.05 CPUId = 0x0 ChipType = 10 1836 SdmmcInit=2 0 BootCapSize=100000 UserCapSize=14910MB FwPartOffset=2000 , 100000 SdmmcInit=0 0 BootCapSize=0 UserCapSize=15193MB FwPartOffset=0 , 0 StorageInit ok = 181498 LoadTrustBL No find bl30.bin No find bl32.bin theLoader 200000 202520 LoaderFlag2: 0x0 WARNING: plat_rockchip_comm_sram_init:code:ff8d9000, 67000, ef0 NOTICE: BL31: v1.2(debug):b995f80 NOTICE: BL31: Built : 16:53:56, Nov 7 2016 INFO: GICv3 with legacy support detected. ARM GICV3 driver initialized in EL3 INFO: boot cpu mask: 0 INFO: Vesion: 2016.0.01 INFO: plat_rockchip_pmu_init(1211): pd status 3e INFO: BL31: Initializing runtime services INFO: BL31: Preparing for EL3 exit to normal world INFO: Entry point address = 0x200000 INFO: SPSR = 0x3c9 U-Boot 2017.09-01503-g877f3f4 (May 13 2018 - 14:14:26 +0300) Model: Rockchip RK3399 Evaluation Board DRAM: 3.9 GiB Relocation Offset is: f7d16000 PMIC: RK0 MMC: dwmmc@fe320000: 1, sdhci@fe330000: 0 invalid parameter In: serial Out: serial Err: serial Model: Rockchip RK3399 Evaluation Board invalid parameter switch to partitions #0, OK mmc0(part 0) is current device invalid parameter get part misc fail -1 Net: eth0: ethernet@fe300000 Hit any key to stop autoboot: 0 invalid parameter reading rk3399-boot/xen4.10-uImage 885136 bytes read in 44 ms (19.2 MiB/s) reading rk3399-boot/x3399-dom0-development-board.dtb 72222 bytes read in 9 ms (7.7 MiB/s) reading rk3399-boot/dom0-Image 19195280 bytes read in 824 ms (22.2 MiB/s) ## Booting kernel from Legacy Image at 02000000 ... Image Name: Image Type: AArch64 Linux Kernel Image (uncompressed) Data Size: 885072 Bytes = 864.3 KiB Load Address: 02000000 Entry Point: 02000000 Verifying Checksum ... OK ## Flattened Device Tree blob at 01f00000 Booting using the fdt blob at 0x1f00000 Loading Kernel Image ... OK Loading Device Tree to 00000000f5eeb000, end 00000000f5effa1d ... OK Adding bank: start=0x00200000, size=0xf7e00000 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: 0000000000200000 - 00000000f7ffffff (XEN) (XEN) MODULE[0]: 00000000f5eeb000 - 00000000f5efd000 Device Tree (XEN) MODULE[1]: 0000000003f80000 - 0000000005f80000 Kernel (XEN) RESVD[0]: 00000000f5eeb000 - 00000000f5efd000 (XEN) (XEN) Command line: storagemedia=emmc androidboot.mode=emmc dom0_mem=512M console=dtuart dtuart=serial0 dom0_max_vcpus4 (XEN) parameter "storagemedia" unknown! (XEN) parameter "androidboot.mode" unknown! (XEN) parameter "flask_enforcing" unknown! (XEN) Placing Xen at 0x00000000f7e00000-0x00000000f8000000 (XEN) Update BOOTMOD_XEN from 0000000002000000-0000000002120d81 => 00000000f7e00000-00000000f7f20d81 (XEN) Domain heap initialised (XEN) Booting using Device Tree (XEN) Platform: Generic System (XEN) Looking for dtuart at "serial0", options "" Xen 4.10.0 (XEN) Xen version 4.10.0 (imatushchak@) (aarch64-linux-gnu-gcc (Linaro GCC 7.2-2017.11) 7.2.1 20171011) debug=y Sun J8 (XEN) Latest ChangeSet: Sun Jun 10 11:08:15 2018 +0300 git:786a524-dirty (XEN) Processor: 410fd034: "ARM Limited", variant: 0x0, part 0xd03, rev 0x4 (XEN) 64-bit Execution: (XEN) Processor Features: 0000000001002222 0000000000000000 (XEN) Exception Levels: EL3:64+32 EL2:64+32 EL1:64+32 EL0:64+32 (XEN) Extensions: FloatingPoint AdvancedSIMD GICv3-SysReg (XEN) Debug Features: 0000000010305106 0000000000000000 (XEN) Auxiliary Features: 0000000000000000 0000000000000000 (XEN) Memory Model Features: 0000000000001122 0000000000000000 (XEN) ISA Features: 0000000000011120 0000000000000000 (XEN) 32-bit Execution: (XEN) Processor Features: 00000131:10011011 (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 6 CPUs (XEN) Generic Timer IRQ: phys=30 hyp=26 virt=27 Freq: 24000 KHz (XEN) GICv3 initialization: (XEN) gic_dist_addr=0x000000fee00000 (XEN) gic_maintenance_irq=25 (XEN) gic_rdist_stride=0 (XEN) gic_rdist_regions=1 (XEN) redistributor regions: (XEN) - region 0: 0x000000fef00000 - 0x000000fefc0000 (XEN) GICv3 compatible with GICv2 cbase 0x000000fff00000 vbase 0x000000fff20000 (XEN) GICv3: 288 lines, (IID 0001143b). (XEN) GICv3: CPU0: Found redistributor in region 0 @000000004001c000 (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) GICv3: CPU1: Found redistributor in region 0 @000000004003c000 (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) GICv3: CPU2: Found redistributor in region 0 @000000004005c000 (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) GICv3: CPU3: Found redistributor in region 0 @000000004007c000 (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) GICv3: CPU4: Found redistributor in region 0 @000000004009c000 (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) GICv3: CPU5: Found redistributor in region 0 @00000000400bc000 (XEN) CPU 5 booted. (XEN) Brought up 6 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) build-id: 0cd81c60c5b442323fbc36a56edc23434956a1f5 (XEN) alternatives: Patching with alt table 000000004018ff30 -> 0000000040190404 (XEN) grant_table.c:1688:IDLEv0 Expanding d0 grant table from 0 to 1 frames (XEN) *** LOADING DOMAIN 0 *** (XEN) Loading kernel from boot module @ 0000000003f80000 (XEN) Allocating 1:1 mappings totalling 512MB for dom0: (XEN) BANK[0] 0x00000020000000-0x00000040000000 (512MB) (XEN) Grant table range: 0x000000f7e00000-0x000000f7e40000 (XEN) Loading zImage from 0000000003f80000 to 0000000020080000-0000000022080000 (XEN) Allocating PPI 16 for event channel interrupt (XEN) Loading dom0 DTB to 0x0000000028000000-0x0000000028010fbd (XEN) Initial low memory virq threshold set at 0x4000 pages. (XEN) Std. Loglevel: All (XEN) Guest Loglevel: All (XEN) *** Serial input -> DOM0 (type 'CTRL-a' three times to switch input to Xen) ... root@ibox3399:~# xl info host : ibox3399 release : 4.4.52+ version : #43 SMP PREEMPT Tue Jul 3 15:16:09 EEST 2018 machine : aarch64 nr_cpus : 6 max_cpu_id : 5 nr_nodes : 1 cores_per_socket : 1 threads_per_core : 1 cpu_mhz : 24 hw_caps : 00000000:00000000:00000000:00000000:00000000:00000000:00000000:00000000 virt_caps : total_memory : 3966 free_memory : 3388 sharing_freed_memory : 0 sharing_used_memory : 0 outstanding_claims : 0 free_cpus : 0 xen_major : 4 xen_minor : 10 xen_extra : .0 xen_version : 4.10.0 xen_caps : xen-3.0-aarch64 xen-3.0-armv7l xen_scheduler : credit xen_pagesize : 4096 platform_params : virt_start=0x200000 xen_changeset : Sun Jun 10 11:08:15 2018 +0300 git:786a524-dirty xen_commandline : storagemedia=emmc androidboot.mode=emmc dom0_mem=512M console=dtuart dtuart=serial0 dom0_max_4 cc_compiler : aarch64-linux-gnu-gcc (Linaro GCC 7.2-2017.11) 7.2.1 20171011 cc_compile_by : imatushchak cc_compile_domain : cc_compile_date : Sun Jun 24 20:59:21 EEST 2018 build_id : 0cd81c60c5b442323fbc36a56edc23434956a1f5 xend_config_format : 4
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel