【Xilinx】基于MPSoC的OpenAMP实现(一)

【Xilinx】基于MPSoC的OpenAMP实现(一)

  • 一、开发环境
    • 1、开发思路
    • 2、下载官方bsp包
  • 二、编译Linux
    • 1、配置petalinux环境变量
    • 2、创建工程
    • 3、进入目录
    • 4、设置缓存目录(重点:可离线编译,加快编译速度)
    • 5、配置u-boot
    • 6、配置内核
      • 6.1 增加内核选项(重点:没有正确选择会导致运行时各种奇怪的报错)
      • 6.2 修改设备树(重点:参考官方wiki里的OpenAMP Base Hardware Configurations章节)
    • 7、配置rootfs(重点:只有选中了下面的选项,rootfs里面才会有默认的测试程序)
      • 7.1 选择以下内容以确保包含 OpenAMP 应用程序和 RPMsg 模块
      • 7.2 选择下面以包含默认演示测试固件文件
    • 8、编译
    • 9、打包生成BOOT.BIN
    • 10、输出到指定目录
  • 三、测试
    • 1、启动u-boot
    • 2、手动加载系统
    • 3、执行测试命令
  • 附录:参考资料

一、开发环境

本文基于Petalinux2020.2,硬件平台是ZCU106开发板,其他版本和硬件平台方法类似。

1、开发思路

基本的开发思路

  1. 官方开发板+官方镜像+官方demo:开发基线,如果这个测试不成功,就不用往下走了。验证这步非常简单,官方bsp已经提供了预编译的镜像和demo,只需要复制到SD卡运行即可。

  2. 官方开发板+自己修改后的镜像+官方demo:验证内核编译环境和打包流程是否ok。我们这篇文章主要讲解第2步,如何自定义镜像。

  3. 官方开发板+自己修改后的镜像+自己的demo:验证demo环境。下一篇文章会讲解第3步,如何手动编译和修改demo,OpenAMP应用程序的主要框架和流程。

  4. 自己的硬件+自己修改后的镜像+自己的demo:正式的产品验证

2、下载官方bsp包

从官网下载xilinx-zcu106-v2020.2-final.bsp文件(需要注册账号才能下载)。这个文件有1.7G,主要是因为里面包含了预编译的镜像用于直接测试,这个目录比较大。另外还包含的Vivado工程文件。跟软件开发相关的主要是project-spec目录下的文件,因此我把预编译和Vivado工程删除,重新打了一个包,大概为17M。
https://download.csdn.net/download/aatu/88354560

官网链接下载方式:按红色箭头找到zcu106对应的压缩包
https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools/archive.html
【Xilinx】基于MPSoC的OpenAMP实现(一)_第1张图片
【Xilinx】基于MPSoC的OpenAMP实现(一)_第2张图片

二、编译Linux

详细步骤参考这个链接,以下是我的命令记录
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/2423488521/OpenAMP+Project+Build+Process

1、配置petalinux环境变量

source /opt/xilinx/p202/settings.sh

2、创建工程

petalinux-create -t project -s xilinx-zcu106-v2020.2-final.bsp 

3、进入目录

cd xilinx-zcu106-2020.2/

4、设置缓存目录(重点:可离线编译,加快编译速度)

gedit project-spec/meta-user/conf/petalinuxbsp.conf
DL_DIR = "/opt/xilinx/p202/downloads"
SSTATE_DIR = "/opt/xilinx/p202/sstate/aarch64"
RM_WORK_EXCLUDE += "linux-xlnx"
RM_WORK_EXCLUDE += "u-boot-xlnx"

5、配置u-boot

petalinux-config -c u-boot

6、配置内核

petalinux-config -c kernel

6.1 增加内核选项(重点:没有正确选择会导致运行时各种奇怪的报错)

gedit project-spec/meta-user/recipes-kernel/linux/linux-xlnx/bsp.cfg
CONFIG_UIO_PDRV_GENIRQ=m
CONFIG_RPMSG_CHAR=m
CONFIG_RPMSG_VIRTIO=m
CONFIG_RPMSG=m
CONFIG_VIRTIO=m
CONFIG_REMOTEPROC=y
CONFIG_ZYNQMP_R5_REMOTEPROC=m
CONFIG_SPARSEMEM_VMEMMAP=y

6.2 修改设备树(重点:参考官方wiki里的OpenAMP Base Hardware Configurations章节)

在以下路径包含了一个openamp的设备树例子,用这个文件覆盖默认的system-user.dtsi
/project-spec/meta-user/recipes-bsp/device-tree/files/openamp.dtsi

cd project-spec/meta-user/recipes-bsp/device-tree/files/
cp openamp.dtsi system-user.dtsi
cd ../../../../../

openamp.dtsi的完整内容如下

/ {
	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;
		rpu0vdev0vring0: rpu0vdev0vring0@3ed40000 {
			no-map;
			reg = <0x0 0x3ed40000 0x0 0x4000>;
		};
		rpu0vdev0vring1: rpu0vdev0vring1@3ed44000 {
			no-map;
			reg = <0x0 0x3ed44000 0x0 0x4000>;
		};
		rpu0vdev0buffer: rpu0vdev0buffer@3ed48000 {
			no-map;
			reg = <0x0 0x3ed48000 0x0 0x100000>;
		};
		rproc_0_reserved: rproc@3ed00000 {
			no-map;
			reg = <0x0 0x3ed00000 0x0 0x40000>;
		};
	};

	zynqmp-rpu {
		compatible = "xlnx,zynqmp-r5-remoteproc-1.0";
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;
		core_conf = "split";
		reg = <0x0 0xFF9A0000 0x0 0x10000>;
		r5_0: r5@0 {
			#address-cells = <2>;
			#size-cells = <2>;
			ranges;
			memory-region = <&rproc_0_reserved>, <&rpu0vdev0buffer>, <&rpu0vdev0vring0>, <&rpu0vdev0vring1>;
			pnode-id = <0x7>;
			mboxes = <&ipi_mailbox_rpu0 0>, <&ipi_mailbox_rpu0 1>;
			mbox-names = "tx", "rx";
			tcm_0_a: tcm_0@0 {
				reg = <0x0 0xFFE00000 0x0 0x10000>;
				pnode-id = <0xf>;
			};
			tcm_0_b: tcm_0@1 {
				reg = <0x0 0xFFE20000 0x0 0x10000>;
				pnode-id = <0x10>;
			};
		};
	};


	zynqmp_ipi1 {
		compatible = "xlnx,zynqmp-ipi-mailbox";
		interrupt-parent = <&gic>;
		interrupts = <0 29 4>;
		xlnx,ipi-id = <7>;
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		/* APU<->RPU0 IPI mailbox controller */
		ipi_mailbox_rpu0: mailbox@ff990600 {
			reg = <0xff990600 0x20>,
			      <0xff990620 0x20>,
			      <0xff9900c0 0x20>,
			      <0xff9900e0 0x20>;
			reg-names = "local_request_region",
				    "local_response_region",
				    "remote_request_region",
				    "remote_response_region";
			#mbox-cells = <1>;
			xlnx,ipi-id = <1>;
		};
	};
};

7、配置rootfs(重点:只有选中了下面的选项,rootfs里面才会有默认的测试程序)

petalinux-config -c rootfs

7.1 选择以下内容以确保包含 OpenAMP 应用程序和 RPMsg 模块

Petalinux Package Groups
  -> packagegroup-petalinux-openamp

7.2 选择下面以包含默认演示测试固件文件

Filesystem Packages --->
  misc --->
    openamp-fw-echo-testd --->
      [*] openamp-fw-echo-testd
    openamp-fw-mat-muld --->
      [*] openamp-fw-mat-muld
    openamp-fw-rpc-demo --->
      [*] openamp-fw-rpc-demo

8、编译

time petalinux-build

前面加time是用来统计编译时间

9、打包生成BOOT.BIN

cd images/linux/
petalinux-package --boot --fsbl zynqmp_fsbl.elf --u-boot u-boot.elf --pmufw pmufw.elf --fpga system.bit --force
cd ../../

10、输出到指定目录

把文件复制到sd卡

cd images/linux/
cp BOOT.BIN /media/sf_xilinx_share/
cp image.ub /media/sf_xilinx_share/
cp system.dtb /media/sf_xilinx_share/
cd ../../

三、测试

1、启动u-boot

插入SD卡,打开电源,按任意键打断启动,进入u-boot

Xilinx Zynq MP First Stage Boot Loader 
Release 2020.2   Sep 18 2023  -  05:49:48
NOTICE:  ATF running on XCZU7EG/EV/silicon v4/RTL5.1 at 0xfffea000
NOTICE:  BL31: v2.2(release):xilinx_rebase_v2.2_2020.1-10-ge6eea88b1
NOTICE:  BL31: Built : 05:35:06, Sep 18 2023


U-Boot 2020.01 (Sep 18 2023 - 05:37:52 +0000)

Model: ZynqMP ZCU106 RevA
Board: Xilinx ZynqMP
DRAM:  4 GiB
PMUFW:  v1.1
EL Level:       EL2
Chip ID:        zu7e
NAND:  0 MiB
MMC:   mmc@ff170000: 0
In:    serial@ff000000
Out:   serial@ff000000
Err:   serial@ff000000
Bootmode: LVL_SHFT_SD_MODE1
Reset reason:   EXTERNAL 
Net:   
ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id

Warning: ethernet@ff0e0000 using MAC address from ROM
eth0: ethernet@ff0e0000
Hit any key to stop autoboot:  0 
ZynqMP> 

2、手动加载系统

以下两种方式任选其一
方式一:image.ub包含了dtb和rootfs

fatload mmc 0 0x10000000 image.ub
bootm 0x10000000

方式二:单独指定每一个文件的加载

fatload mmc 0 0x10000000 Image &&&& fatload mmc 0 0x2000000 system.dtb &&&& fatload mmc 0 0x2A00000  rootfs.cpio.gz.u-boot
booti 0x10000000 0x2A00000 0x2000000

然后就进入Linux启动过程,输入用户名root,密码root进入Linux控制台

ZynqMP> fatload mmc 0 0x10000000 image.ub
86051240 bytes read in 5649 ms (14.5 MiB/s)
ZynqMP> bootm 0x10000000
## Loading kernel from FIT Image at 10000000 ...
   Using '[email protected]' configuration
   Trying 'kernel@1' kernel subimage
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  gzip compressed
     Data Start:   0x100000e8
     Data Size:    8453743 Bytes = 8.1 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: 0x00080000
     Entry Point:  0x00080000
     Hash algo:    sha256
     Hash value:   ba05b9e9882d244e61bc3769d8aee205cb61304073025b6e95eefa1f4ada21b6
   Verifying Hash Integrity ... sha256+ OK
## Loading ramdisk from FIT Image at 10000000 ...
   Using '[email protected]' configuration
   Trying 'ramdisk@1' ramdisk subimage
     Description:  petalinux-image-minimal
     Type:         RAMDisk Image
     Compression:  uncompressed
     Data Start:   0x1081d710
     Data Size:    77540640 Bytes = 73.9 MiB
     Architecture: AArch64
     OS:           Linux
     Load Address: unavailable
     Entry Point:  unavailable
     Hash algo:    sha256
     Hash value:   ccfd8efa35240cb60bd2084162920ff95980dd55db47b3f38e99847ca4b8480d
   Verifying Hash Integrity ... sha256+ OK
## Loading fdt from FIT Image at 10000000 ...
   Using '[email protected]' configuration
   Trying '[email protected]' fdt subimage
     Description:  Flattened Device Tree blob
     Type:         Flat Device Tree
     Compression:  uncompressed
     Data Start:   0x10810068
     Data Size:    54744 Bytes = 53.5 KiB
     Architecture: AArch64
     Hash algo:    sha256
     Hash value:   84e7520e602a17eab2a18e988e8f28dd3b7eca74a4acaa562f9341a1438cbceb
   Verifying Hash Integrity ... sha256+ OK
   Booting using the fdt blob at 0x10810068
   Uncompressing Kernel Image
   Loading Ramdisk to 7460d000, end 78fffd20 ... OK
   Loading Device Tree to 000000000ffef000, end 000000000ffff5d7 ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.4.0-xilinx-v2020.2 (oe-user@oe-host) (gcc version 9.2.0 (GCC)) #1 SMP Mon Sep 18 05:34:06 UTC 2023
[    0.000000] Machine model: ZynqMP ZCU106 RevA
[    0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
[    0.000000] printk: bootconsole [cdns0] enabled
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 256 MiB at 0x0000000064400000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] percpu: Embedded 22 pages/cpu s49880 r8192 d32040 u90112
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] Speculative Store Bypass Disable mitigation not required
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1031617
[    0.000000] Kernel command line: earlycon clk_ignore_unused
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: mapped [mem 0x7bf00000-0x7ff00000] (64MB)
[    0.000000] Memory: 3689608K/4191968K available (12092K kernel code, 740K rwdata, 3764K rodata, 768K init, 562K bss, 240216K reserved, 262144K cma-reserved)
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: Adjusting CPU interface base to 0x00000000f902f000
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] random: get_random_bytes called from start_kernel+0x2a8/0x42c with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 99.99MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x170f8de2d3, max_idle_ns: 440795206112 ns
[    0.000003] sched_clock: 56 bits at 99MHz, resolution 10ns, wraps every 4398046511101ns
[    0.008347] Console: colour dummy device 80x25
[    0.012376] printk: console [tty0] enabled
[    0.016439] printk: bootconsole [cdns0] disabled
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.4.0-xilinx-v2020.2 (oe-user@oe-host) (gcc version 9.2.0 (GCC)) #1 SMP Mon Sep 18 05:34:06 UTC 2023
[    0.000000] Machine model: ZynqMP ZCU106 RevA
[    0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8')
[    0.000000] printk: bootconsole [cdns0] enabled
[    0.000000] efi: Getting EFI parameters from FDT:
[    0.000000] efi: UEFI not found.
[    0.000000] cma: Reserved 256 MiB at 0x0000000064400000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.1
[    0.000000] percpu: Embedded 22 pages/cpu s49880 r8192 d32040 u90112
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] Speculative Store Bypass Disable mitigation not required
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1031617
[    0.000000] Kernel command line: earlycon clk_ignore_unused
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: mapped [mem 0x7bf00000-0x7ff00000] (64MB)
[    0.000000] Memory: 3689608K/4191968K available (12092K kernel code, 740K rwdata, 3764K rodata, 768K init, 562K bss, 240216K reserved, 262144K cma-reserved)
[    0.000000] rcu: Hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GIC: Adjusting CPU interface base to 0x00000000f902f000
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] random: get_random_bytes called from start_kernel+0x2a8/0x42c with crng_init=0
[    0.000000] arch_timer: cp15 timer(s) running at 99.99MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x170f8de2d3, max_idle_ns: 440795206112 ns
[    0.000003] sched_clock: 56 bits at 99MHz, resolution 10ns, wraps every 4398046511101ns
[    0.008347] Console: colour dummy device 80x25
[    0.012376] printk: console [tty0] enabled
[    0.016439] printk: bootconsole [cdns0] disabled
[    0.021040] Calibrating delay loop (skipped), value calculated using timer frequency.. 199.98 BogoMIPS (lpj=399960)
[    0.021053] pid_max: default: 32768 minimum: 301
[    0.021204] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.021225] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.022207] ASID allocator initialised with 32768 entries
[    0.022266] rcu: Hierarchical SRCU implementation.
[    0.022612] EFI services will not be available.
[    0.022744] smp: Bringing up secondary CPUs ...
[    0.023083] Detected VIPT I-cache on CPU1
[    0.023113] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.023473] Detected VIPT I-cache on CPU2
[    0.023492] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.023821] Detected VIPT I-cache on CPU3
[    0.023840] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.023887] smp: Brought up 1 node, 4 CPUs
[    0.023919] SMP: Total of 4 processors activated.
[    0.023927] CPU features: detected: 32-bit EL0 Support
[    0.023934] CPU features: detected: CRC32 instructions
[    0.023967] CPU: All CPU(s) started at EL2
[    0.023983] alternatives: patching kernel code
[    0.024815] devtmpfs: initialized
[    0.030766] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.030790] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.036382] xor: measuring software checksum speed
[    0.073126]    8regs     :  2375.000 MB/sec
[    0.113152]    32regs    :  2724.000 MB/sec
[    0.153182]    arm64_neon:  2365.000 MB/sec
[    0.153191] xor: using function: 32regs (2724.000 MB/sec)
[    0.153240] pinctrl core: initialized pinctrl subsystem
[    0.153620] DMI not present or invalid.
[    0.153872] NET: Registered protocol family 16
[    0.154753] DMA: preallocated 256 KiB pool for atomic allocations
[    0.154782] audit: initializing netlink subsys (disabled)
[    0.154909] audit: type=2000 audit(0.148:1): state=initialized audit_enabled=0 res=1
[    0.155278] cpuidle: using governor menu
[    0.155359] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.155503] Serial: AMBA PL011 UART driver
[    0.169120] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[    0.169137] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[    0.169147] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[    0.169156] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    1.231968] cryptd: max_cpu_qlen set to 1000
[    1.254745] DRBG: Continuing without Jitter RNG
[    1.329990] raid6: neonx8   gen()  1564 MB/s
[    1.398029] raid6: neonx8   xor()  1450 MB/s
[    1.466097] raid6: neonx4   gen()  1488 MB/s
[    1.534117] raid6: neonx4   xor()  1406 MB/s
[    1.602201] raid6: neonx2   gen()  1115 MB/s
[    1.670222] raid6: neonx2   xor()  1119 MB/s
[    1.738319] raid6: neonx1   gen()   733 MB/s
[    1.806319] raid6: neonx1   xor()   743 MB/s
[    1.874378] raid6: int64x8  gen()  1165 MB/s
[    1.942447] raid6: int64x8  xor()   758 MB/s
[    2.010488] raid6: int64x4  gen()   966 MB/s
[    2.078545] raid6: int64x4  xor()   710 MB/s
[    2.146648] raid6: int64x2  gen()   666 MB/s
[    2.214636] raid6: int64x2  xor()   532 MB/s
[    2.282672] raid6: int64x1  gen()   438 MB/s
[    2.350791] raid6: int64x1  xor()   363 MB/s
[    2.350799] raid6: using algorithm neonx8 gen() 1564 MB/s
[    2.350807] raid6: .... xor() 1450 MB/s, rmw enabled
[    2.350814] raid6: using neon recovery algorithm
[    2.351217] iommu: Default domain type: Translated 
[    2.351435] SCSI subsystem initialized
[    2.351583] usbcore: registered new interface driver usbfs
[    2.351620] usbcore: registered new interface driver hub
[    2.351651] usbcore: registered new device driver usb
[    2.351688] mc: Linux media interface: v0.10
[    2.351712] videodev: Linux video capture interface: v2.00
[    2.351735] pps_core: LinuxPPS API ver. 1 registered
[    2.351743] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
[    2.351760] PTP clock support registered
[    2.351784] EDAC MC: Ver: 3.0.0
[    2.352181] zynqmp-ipi-mbox mailbox@ff990400: Registered ZynqMP IPI mbox with TX/RX channels.
[    2.352405] zynqmp-ipi-mbox mailbox@ff990600: Registered ZynqMP IPI mbox with TX/RX channels.
[    2.352509] FPGA manager framework
[    2.352664] Advanced Linux Sound Architecture Driver Initialized.
[    2.352928] Bluetooth: Core ver 2.22
[    2.352955] NET: Registered protocol family 31
[    2.352963] Bluetooth: HCI device and connection manager initialized
[    2.352975] Bluetooth: HCI socket layer initialized
[    2.352984] Bluetooth: L2CAP socket layer initialized
[    2.353001] Bluetooth: SCO socket layer initialized
[    2.353265] clocksource: Switched to clocksource arch_sys_counter
[    2.353363] VFS: Disk quotas dquot_6.6.0
[    2.353411] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    2.357484] NET: Registered protocol family 2
[    2.357832] tcp_listen_portaddr_hash hash table entries: 2048 (order: 3, 32768 bytes, linear)
[    2.357885] TCP established hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    2.358096] TCP bind hash table entries: 32768 (order: 7, 524288 bytes, linear)
[    2.358496] TCP: Hash tables configured (established 32768 bind 32768)
[    2.358572] UDP hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    2.358651] UDP-Lite hash table entries: 2048 (order: 4, 65536 bytes, linear)
[    2.358815] NET: Registered protocol family 1
[    2.359093] RPC: Registered named UNIX socket transport module.
[    2.359103] RPC: Registered udp transport module.
[    2.359110] RPC: Registered tcp transport module.
[    2.359117] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    2.359377] PCI: CLS 0 bytes, default 64
[    2.359485] Trying to unpack rootfs image as initramfs...
[    6.179699] Freeing initrd memory: 75720K
[    6.266346] Initialise system trusted keyrings
[    6.266456] workingset: timestamp_bits=46 max_order=20 bucket_order=0
[    6.267276] NFS: Registering the id_resolver key type
[    6.267296] Key type id_resolver registered
[    6.267303] Key type id_legacy registered
[    6.267315] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    6.267338] jffs2: version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
[    6.282293] NET: Registered protocol family 38
[    6.282306] Key type asymmetric registered
[    6.282314] Asymmetric key parser 'x509' registered
[    6.282346] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    6.282357] io scheduler mq-deadline registered
[    6.282365] io scheduler kyber registered
[    6.284478] ps_pcie_dma init()
[    6.309111] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    6.310312] Serial: AMBA driver
[    6.313072] cacheinfo: Unable to detect cache hierarchy for CPU 0
[    6.317329] brd: module loaded
[    6.321754] loop: module loaded
[    6.322733] mtdoops: mtd device (mtddev=name/number) must be supplied
[    6.324060] libphy: Fixed MDIO Bus: probed
[    6.325158] tun: Universal TUN/TAP device driver, 1.6
[    6.325242] CAN device driver interface
[    6.326223] usbcore: registered new interface driver asix
[    6.326266] usbcore: registered new interface driver ax88179_178a
[    6.326293] usbcore: registered new interface driver cdc_ether
[    6.326321] usbcore: registered new interface driver net1080
[    6.326348] usbcore: registered new interface driver cdc_subset
[    6.326376] usbcore: registered new interface driver zaurus
[    6.326413] usbcore: registered new interface driver cdc_ncm
[    6.327406] usbcore: registered new interface driver uas
[    6.327444] usbcore: registered new interface driver usb-storage
[    6.327885] rtc_zynqmp ffa60000.rtc: registered as rtc0
[    6.327948] i2c /dev entries driver
[    6.329807] usbcore: registered new interface driver uvcvideo
[    6.329816] USB Video Class driver (1.1.1)
[    6.330764] Bluetooth: HCI UART driver ver 2.3
[    6.330775] Bluetooth: HCI UART protocol H4 registered
[    6.330783] Bluetooth: HCI UART protocol BCSP registered
[    6.330805] Bluetooth: HCI UART protocol LL registered
[    6.330813] Bluetooth: HCI UART protocol ATH3K registered
[    6.330833] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    6.330879] Bluetooth: HCI UART protocol Intel registered
[    6.330900] Bluetooth: HCI UART protocol QCA registered
[    6.330933] usbcore: registered new interface driver bcm203x
[    6.330966] usbcore: registered new interface driver bpa10x
[    6.330996] usbcore: registered new interface driver bfusb
[    6.331027] usbcore: registered new interface driver btusb
[    6.331071] usbcore: registered new interface driver ath3k
[    6.331193] EDAC MC: ECC not enabled
[    6.331357] EDAC DEVICE0: Giving out device to module zynqmp-ocm-edac controller zynqmp_ocm: DEV ff960000.memory-controller (INTERRUPT)
[    6.331862] sdhci: Secure Digital Host Controller Interface driver
[    6.331871] sdhci: Copyright(c) Pierre Ossman
[    6.331877] sdhci-pltfm: SDHCI platform and OF driver helper
[    6.332260] ledtrig-cpu: registered to indicate activity on CPUs
[    6.332310] zynqmp_firmware_probe Platform Management API v1.1
[    6.332320] zynqmp_firmware_probe Trustzone version v1.0
[    6.335397] zynqmp-pinctrl firmware:zynqmp-firmware:pinctrl: zynqmp pinctrl initialized
[    6.358911] alg: No test for xilinx-zynqmp-aes (zynqmp-aes)
[    6.360821] zynqmp_aes zynqmp_aes: AES Successfully Registered
[    6.360821] 
[    6.361078] alg: No test for xilinx-keccak-384 (zynqmp-keccak-384)
[    6.362925] alg: No test for xilinx-zynqmp-rsa (zynqmp-rsa)
[    6.364723] usbcore: registered new interface driver usbhid
[    6.364732] usbhid: USB HID core driver
[    6.367236] ARM CCI_400_r1 PMU driver probed
[    6.367783] fpga_manager fpga0: Xilinx ZynqMP FPGA Manager registered
[    6.368259] usbcore: registered new interface driver snd-usb-audio
[    6.369209] pktgen: Packet Generator for packet performance testing. Version: 2.75
[    6.369794] Initializing XFRM netlink socket
[    6.369888] NET: Registered protocol family 10
[    6.370303] Segment Routing with IPv6
[    6.370426] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[    6.370753] NET: Registered protocol family 17
[    6.370773] NET: Registered protocol family 15
[    6.370796] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    6.370809] can: controller area network core (rev 20170425 abi 9)
[    6.370840] NET: Registered protocol family 29
[    6.370849] can: raw protocol (rev 20170425)
[    6.370857] can: broadcast manager protocol (rev 20170425 t)
[    6.370867] can: netlink gateway (rev 20190810) max_hops=1
[    6.370939] Bluetooth: RFCOMM TTY layer initialized
[    6.370952] Bluetooth: RFCOMM socket layer initialized
[    6.370969] Bluetooth: RFCOMM ver 1.11
[    6.370981] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    6.370988] Bluetooth: BNEP filters: protocol multicast
[    6.370998] Bluetooth: BNEP socket layer initialized
[    6.371006] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    6.371016] Bluetooth: HIDP socket layer initialized
[    6.371132] 9pnet: Installing 9P2000 support
[    6.371157] Key type dns_resolver registered
[    6.371350] registered taskstats version 1
[    6.371358] Loading compiled-in X.509 certificates
[    6.372295] Btrfs loaded, crc32c=crc32c-generic
[    6.381211] ff000000.serial: ttyPS0 at MMIO 0xff000000 (irq = 42, base_baud = 6249375) is a xuartps
[    7.644940] printk: console [ttyPS0] enabled
[    7.649854] ff010000.serial: ttyPS1 at MMIO 0xff010000 (irq = 43, base_baud = 6249375) is a xuartps
[    7.659200] of-fpga-region fpga-full: FPGA Region probed
[    7.666164] xilinx-dpdma fd4c0000.dma: Xilinx DPDMA engine is probed
[    7.672741] xilinx-zynqmp-dma fd500000.dma: ZynqMP DMA driver Probe success
[    7.679860] xilinx-zynqmp-dma fd510000.dma: ZynqMP DMA driver Probe success
[    7.686973] xilinx-zynqmp-dma fd520000.dma: ZynqMP DMA driver Probe success
[    7.694084] xilinx-zynqmp-dma fd530000.dma: ZynqMP DMA driver Probe success
[    7.701191] xilinx-zynqmp-dma fd540000.dma: ZynqMP DMA driver Probe success
[    7.708303] xilinx-zynqmp-dma fd550000.dma: ZynqMP DMA driver Probe success
[    7.715412] xilinx-zynqmp-dma fd560000.dma: ZynqMP DMA driver Probe success
[    7.722521] xilinx-zynqmp-dma fd570000.dma: ZynqMP DMA driver Probe success
[    7.729697] xilinx-zynqmp-dma ffa80000.dma: ZynqMP DMA driver Probe success
[    7.736811] xilinx-zynqmp-dma ffa90000.dma: ZynqMP DMA driver Probe success
[    7.743920] xilinx-zynqmp-dma ffaa0000.dma: ZynqMP DMA driver Probe success
[    7.751033] xilinx-zynqmp-dma ffab0000.dma: ZynqMP DMA driver Probe success
[    7.758148] xilinx-zynqmp-dma ffac0000.dma: ZynqMP DMA driver Probe success
[    7.765266] xilinx-zynqmp-dma ffad0000.dma: ZynqMP DMA driver Probe success
[    7.772373] xilinx-zynqmp-dma ffae0000.dma: ZynqMP DMA driver Probe success
[    7.779486] xilinx-zynqmp-dma ffaf0000.dma: ZynqMP DMA driver Probe success
[    7.786804] xilinx-psgtr fd400000.zynqmp_phy: Lane:1 type:8 protocol:4 pll_locked:yes
[    7.797934] xilinx-dp-snd-codec fd4a0000.zynqmp-display:zynqmp_dp_snd_codec0: Xilinx DisplayPort Sound Codec probed
[    7.808645] xilinx-dp-snd-pcm zynqmp_dp_snd_pcm0: Xilinx DisplayPort Sound PCM probed
[    7.816708] xilinx-dp-snd-pcm zynqmp_dp_snd_pcm1: Xilinx DisplayPort Sound PCM probed
[    7.825302] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: xilinx-dp-snd-codec-dai <-> xilinx-dp-snd-codec-dai mapping ok
[    7.837742] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: xilinx-dp-snd-codec-dai <-> xilinx-dp-snd-codec-dai mapping ok
[    7.850094] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: ASoC: no DMI vendor name!
[    7.859595] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: Xilinx DisplayPort Sound Card probed
[    7.869779] OF: graph: no port node found in /amba/zynqmp-display@fd4a0000
[    7.876763] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    7.883375] [drm] No driver support for vblank timestamp query.
[    7.889367] xlnx-drm xlnx-drm.0: bound fd4a0000.zynqmp-display (ops 0xffff800010d1b3c8)
[    8.977277] [drm] Cannot find any crtc or sizes
[    8.982045] [drm] Initialized xlnx 1.0.0 20130509 for fd4a0000.zynqmp-display on minor 0
[    8.990157] zynqmp-display fd4a0000.zynqmp-display: ZynqMP DisplayPort Subsystem driver probed
[    8.998975] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply ahci not found, using dummy regulator
[    9.007711] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply phy not found, using dummy regulator
[    9.016369] ahci-ceva fd0c0000.ahci: fd0c0000.ahci supply target not found, using dummy regulator
[    9.025392] xilinx-psgtr fd400000.zynqmp_phy: Lane:3 type:3 protocol:2 pll_locked:yes
[    9.033285] ahci-ceva fd0c0000.ahci: AHCI 0001.0301 32 slots 2 ports 6 Gbps 0x3 impl platform mode
[    9.042253] ahci-ceva fd0c0000.ahci: flags: 64bit ncq sntf pm clo only pmp fbs pio slum part ccc sds apst 
[    9.052598] scsi host0: ahci-ceva
[    9.056160] scsi host1: ahci-ceva
[    9.059597] ata1: SATA max UDMA/133 mmio [mem 0xfd0c0000-0xfd0c1fff] port 0x100 irq 40
[    9.067518] ata2: SATA max UDMA/133 mmio [mem 0xfd0c0000-0xfd0c1fff] port 0x180 irq 40
[    9.076219] spi-nor spi0.0: found mt25qu512a (n25q512a), expected m25p80
[    9.083442] spi-nor spi0.0: mt25qu512a (n25q512a) (131072 Kbytes)
[    9.089561] 4 fixed-partitions partitions found on MTD device spi0.0
[    9.095909] Creating 4 MTD partitions on "spi0.0":
[    9.100701] 0x000000000000-0x000000100000 : "qspi-fsbl-uboot"
[    9.107239] 0x000000100000-0x000000600000 : "qspi-linux"
[    9.113242] 0x000000600000-0x000000620000 : "qspi-device-tree"
[    9.119736] 0x000000620000-0x000000c00000 : "qspi-rootfs"
[    9.127897] macb ff0e0000.ethernet: Not enabling partial store and forward
[    9.135244] libphy: MACB_mii_bus: probed
[    9.142609] TI DP83867 ff0e0000.ethernet-ffffffff:0c: attached PHY driver [TI DP83867] (mii_bus:phy_addr=ff0e0000.ethernet-ffffffff:0c, irq=POLL)
[    9.155671] macb ff0e0000.ethernet eth0: Cadence GEM rev 0x50070106 at 0xff0e0000 irq 31 (00:0a:35:07:e3:90)
[    9.165867] xilinx-axipmon ffa00000.perf-monitor: Probed Xilinx APM
[    9.172412] xilinx-axipmon fd0b0000.perf-monitor: Probed Xilinx APM
[    9.178934] xilinx-axipmon fd490000.perf-monitor: Probed Xilinx APM
[    9.185453] xilinx-axipmon ffa10000.perf-monitor: Probed Xilinx APM
[    9.193391] dwc3 fe200000.dwc3: Failed to get clk 'ref': -2
[    9.199179] xilinx-psgtr fd400000.zynqmp_phy: Lane:2 type:0 protocol:3 pll_locked:yes
[    9.209473] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    9.214974] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    9.222737] xhci-hcd xhci-hcd.0.auto: hcc params 0x0238f625 hci version 0x100 quirks 0x0000000202010810
[    9.232158] xhci-hcd xhci-hcd.0.auto: irq 50, io mem 0xfe200000
[    9.238292] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.04
[    9.246565] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.253790] usb usb1: Product: xHCI Host Controller
[    9.258666] usb usb1: Manufacturer: Linux 5.4.0-xilinx-v2020.2 xhci-hcd
[    9.265281] usb usb1: SerialNumber: xhci-hcd.0.auto
[    9.270439] hub 1-0:1.0: USB hub found
[    9.274212] hub 1-0:1.0: 1 port detected
[    9.278312] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    9.283804] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    9.291464] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
[    9.298197] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.04
[    9.306462] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    9.313681] usb usb2: Product: xHCI Host Controller
[    9.318555] usb usb2: Manufacturer: Linux 5.4.0-xilinx-v2020.2 xhci-hcd
[    9.325169] usb usb2: SerialNumber: xhci-hcd.0.auto
[    9.330293] hub 2-0:1.0: USB hub found
[    9.334064] hub 2-0:1.0: 1 port detected
[    9.339093] pca953x 0-0020: 0-0020 supply vcc not found, using dummy regulator
[    9.347029] pca953x 0-0021: 0-0021 supply vcc not found, using dummy regulator
[    9.362763] i2c i2c-0: Added multiplexed i2c bus 3
[    9.373722] i2c i2c-0: Added multiplexed i2c bus 4
[    9.379659] i2c i2c-0: Added multiplexed i2c bus 5
[    9.384640] i2c i2c-0: Added multiplexed i2c bus 6
[    9.387480] ata2: SATA link down (SStatus 0 SControl 330)
[    9.389433] pca954x 0-0075: registered 4 multiplexed busses for I2C mux pca9544
[    9.394839] ata1: SATA link down (SStatus 0 SControl 330)
[    9.402147] cdns-i2c ff020000.i2c: 400 kHz mmio ff020000 irq 33
[    9.415162] at24 7-0054: 1024 byte 24c08 EEPROM, writable, 1 bytes/write
[    9.421889] i2c i2c-1: Added multiplexed i2c bus 7
[    9.426873] i2c i2c-1: Added multiplexed i2c bus 8
[    9.434493] si570 9-005d: registered, current frequency 300000000 Hz
[    9.440874] i2c i2c-1: Added multiplexed i2c bus 9
[    9.460616] si570 10-005d: registered, current frequency 148500000 Hz
[    9.467082] i2c i2c-1: Added multiplexed i2c bus 10
[    9.472170] si5324 11-0069: si5328 probed
[    9.530917] random: fast init done
[    9.538451] si5324 11-0069: si5328 probe successful
[    9.543361] i2c i2c-1: Added multiplexed i2c bus 11
[    9.548433] i2c i2c-1: Added multiplexed i2c bus 12
[    9.553429] i2c i2c-1: Added multiplexed i2c bus 13
[    9.558420] i2c i2c-1: Added multiplexed i2c bus 14
[    9.563303] pca954x 1-0074: registered 8 multiplexed busses for I2C switch pca9548
[    9.571204] i2c i2c-1: Added multiplexed i2c bus 15
[    9.576207] i2c i2c-1: Added multiplexed i2c bus 16
[    9.581210] i2c i2c-1: Added multiplexed i2c bus 17
[    9.586574] i2c i2c-1: Added multiplexed i2c bus 18
[    9.591571] i2c i2c-1: Added multiplexed i2c bus 19
[    9.596569] i2c i2c-1: Added multiplexed i2c bus 20
[    9.601586] i2c i2c-1: Added multiplexed i2c bus 21
[    9.606588] i2c i2c-1: Added multiplexed i2c bus 22
[    9.611470] pca954x 1-0075: registered 8 multiplexed busses for I2C switch pca9548
[    9.619059] cdns-i2c ff030000.i2c: 400 kHz mmio ff030000 irq 34
[    9.629107] cdns-wdt fd4d0000.watchdog: Xilinx Watchdog Timer with timeout 60s
[    9.636578] cdns-wdt ff150000.watchdog: Xilinx Watchdog Timer with timeout 10s
[    9.644186] cpufreq: cpufreq_online: CPU0: Running at unlisted freq: 1199880 KHz
[    9.651635] cpufreq: cpufreq_online: CPU0: Unlisted initial frequency changed to: 1199999 KHz
[    9.694993] mmc0: SDHCI controller on ff170000.mmc [ff170000.mmc] using ADMA 64-bit
[    9.705362] rtc_zynqmp ffa60000.rtc: setting system clock to 2023-09-18T10:38:10 UTC (1695033490)
[    9.714237] of_cfs_init
[    9.716693] of_cfs_init: OK
[    9.719647] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    9.768267] mmc0: new high speed SDHC card at address e624
[    9.774214] mmcblk0: mmc0:e624 SL16G 14.8 GiB 
[    9.783662]  mmcblk0: p1
[    9.861891] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    9.868427] clk: Not disabling unused clocks
[    9.872946] ALSA device list:
[    9.875908]   #0: DisplayPort monitor
[    9.879858] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[    9.888474] cfg80211: failed to load regulatory.db
[    9.893476] Freeing unused kernel memory: 768K
[    9.913297] Run /init as init process
INIT: version 2.88 booting
[    9.987917] /dev/root: Can't open blockdev
Starting udev
[   10.020310] udevd[297]: starting version 3.2.8
[   10.025121] random: udevd: uninitialized urandom read (16 bytes read)
[   10.031615] random: udevd: uninitialized urandom read (16 bytes read)
[   10.038123] random: udevd: uninitialized urandom read (16 bytes read)
[   10.049872] udevd[298]: starting eudev-3.2.8
[   10.109546] [drm] Cannot find any crtc or sizes
[   10.113874] mali: loading out-of-tree module taints kernel.
[   10.175363] zynqmp_r5_remoteproc ff9a0000.zynqmp-rpu: RPU core_conf: split
[   10.182867] remoteproc remoteproc0: r5@0 is available
[   10.475131] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
board_name:ZCU106 - board_rev:1.0
Valid Board Information Not Found, Loading rev1.0 bitstream and dtbo as default (see fpgautil -h for removing and loading different bitstream and dtbo)
Loading dtbo and bitstream from /lib/firmware/zcu106_1.0
[   10.826016] fpga_manager fpga0: writing zcu106_1.bit.bin to Xilinx ZynqMP FPGA Manager
[   10.987176] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/firmware-name
[   10.997284] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /fpga-full/resets
[   11.007135] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/overlay0
[   11.016973] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/overlay1
[   11.026806] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/afi0
[   11.036293] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/clocking0
[   11.046216] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/clocking1
[   11.056138] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/clocking2
[   11.066062] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/clocking3
[   11.075982] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/overlay2
[   11.085818] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/v_frmbuf_rd_0
[   11.096088] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/misc_clk_0
[   11.106097] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/v_frmbuf_wr_0
[   11.116366] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/vcu_0
[   11.125941] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/encoder
[   11.135692] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/decoder
[   11.145438] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/misc_clk_1
[   11.155447] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/vcu_ddr4_controller_0
[   11.166412] OF: overlay: WARNING: memory leak will occur if overlay removed, property: /__symbols__/misc_clk_2
[   11.183164] zynqmp_clk_divider_set_rate() set divider failed for pl0_ref_div1, ret = -13
[   11.193450] xilinx-frmbuf a00f0000.v_frmbuf_rd: failed to get ap_clk (-517)
[   11.201403] xilinx-frmbuf a0200000.v_frmbuf_wr: Unable to locate reset property in dt
[   11.209243] xilinx-frmbuf: probe of a0200000.v_frmbuf_wr failed with error -2
[   11.218360] xilinx-frmbuf a00f0000.v_frmbuf_rd: Unable to locate reset property in dt
[   11.226235] xilinx-frmbuf: probe of a00f0000.v_frmbuf_rd failed with error -2
[   11.233850] VCU PLL: enable
[   11.237495] xilinx-vcu xilinx-vcu: xvcu_probe: Probed successfully
Configuring packages on first boot....
 (This may take several minutes. Please do not power off the machine.)
Running postinst /etc/rpm-postinsts/100-sysvinit-inittab...
[   11.262679] al5e a0100000.al5e: l2 prefetch size:17530880 (bits), l2 color bitdepth:10
[   11.272686] al5d a0120000.al5d: l2 prefetch size:17530880 (bits), l2 color bitdepth:10
Running postinst /etc/rpm-postinsts/101-libmali-xlnx...
[   11.331082] update-alternatives: Linking /usr/lib/libMali.so.9.0 to /usr/lib/x11/libMali.so.9.0
[   11.371895] update-alternatives: Linking /usr/lib/libMali.so.9.0 to /usr/lib/x11/libMali.so.9.0
[   11.400582] Warn: update-alternatives: libmali-xlnx has multiple providers with the same priority, please check /usr/lib/opkg/alternatives/libmali-xlnx for details
[   11.426916] update-alternatives: Linking /usr/lib/libMali.so.9.0 to /usr/lib/x11/libMali.so.9.0
[   11.467248] update-alternatives: Linking /usr/lib/libMali.so.9.0 to /usr/lib/x11/libMali.so.9.0
update-rc.d: /etc/init.d/run-postinsts exists during rc.d purge (continuing)
INIT: Entering runlevel: 5
Configuring network interfaces... [   11.547752] pps pps0: new PPS source ptp0
[   11.551797] macb ff0e0000.ethernet: gem-ptp-timer ptp clock registered.
udhcpc: started, v1.31.0
udhcpc: sending discover
[   12.553825] macb ff0e0000.ethernet eth0: link up (1000/Full)
[   12.559510] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
udhcpc: sending discover
udhcpc: sending select for 10.0.0.176
udhcpc: lease of 10.0.0.176 obtained, lease time 86400
/etc/udhcpc.d/50default: Adding DNS 10.0.0.1
done.
Starting system message bus: dbus.
Starting haveged: haveged: listening socket at 3
haveged: haveged starting up


Starting Xserver
Starting Dropbear SSH server: 
Generating 2048 bit rsa key, this may take a while...

X.Org X Server 1.20.5
X Protocol Version 11, Revision 0
Build Operating System: Linux 3.10.0-693.el7.x86_64 x86_64 
Current Operating System: Linux xilinx-zcu106-2020_2 5.4.0-xilinx-v2020.2 #1 SMP Mon Sep 18 05:34:06 UTC 2023 aarch64
Kernel command line: earlycon clk_ignore_unused
Build Date: 15 November 2020  12:58:03PM
 
Current version of pixman: 0.38.4
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Mon Sep 18 10:38:15 2023
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
haveged: haveged: ver: 1.9.5; arch: generic; vend: ; build: (gcc 9.2.0 CTV); collect: 128K

haveged: haveged: cpu: (VC); data: 16K (D); inst: 16K (D); idx: 11/40; sz: 15456/64452

haveged: haveged: tot tests(BA8): A:1/1 B:1/1 continuous tests(B):  last entropy estimate 7.99974

haveged: haveged: fills: 0, generated: 0 

[   15.973869] random: crng init done
[   15.977273] random: 7 urandom warning(s) missed due to ratelimiting
The XKEYBOARD keymap compiler (xkbcomp) reports:
> Warning:          Unsupported high keycode 372 for name  ignored
>                   X11 cannot support keycodes above 255.
>                   This warning only shows for the first high keycode.
Errors from xkbcomp are not fatal to the X server
D-BUS per-session daemon address is: unix:abstract=/tmp/dbus-wps8B5w89w,guid=d3189735fdda72fb6e4957be65082899
matchbox: Cant find a keycode for keysym 269025056
matchbox: ignoring key shortcut XF86Calendar=!$contacts

matchbox: Cant find a keycode for keysym 2809
matchbox: ignoring key shortcut telephone=!$dates

matchbox: Cant find a keycode for keysym 269025050
matchbox: ignoring key shortcut XF86Start=!matchbox-remote -desktop

[settings daemon] Forking. run with -n to prevent fork
dbus-daemon[939]: Activating service name='org.a11y.atspi.Registry' requested by ':1.0' (uid=0 pid=941 comm="matchbox-panel --start-applets showdesktop,windows")
dbus-daemon[939]: Successfully activated service 'org.a11y.atspi.Registry'
SpiRegistry daemon is running with well-known name - org.a11y.atspi.Registry

** (matchbox-desktop:940): WARNING **: 10:38:18.695: Error loading icon: Icon 'applications-multimedia' not present in theme Sato

** (matchbox-desktop:940): WARNING **: 10:38:18.710: Error loading icon: Icon 'applications-multimedia' not present in theme Sato
Public key portion is:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCJnlgllIgeX1safx2tsDouH2vK0pG5H2TeGa93BU7KaM5OX+pR5eCeHZ8e5Rs5326tzeRraG8JoIUBS/bFQIlosw2lyO4p0rcakgh6mrwzf9x0xyRqkSTK2b1Um0IM5hZ5JqY8Q9DE1LQ7jyLOSW63nDT2y8zLiO4ZxT2s58GrjgPyKsjccM9tlxYcc2nnWWipVkpVdEBNbT95OXq/hbeLkrwNkV/WD5XsQpQUQp3BWoSHX2jr443XnIVqKzmPJV9emOkqJ3OBoXj/9hQbF1rcfeDzsgIMVHbUbxqEoKUOymVbvQpBusQMBCHpRaqsJkfwj5QFJHPID3GYuwv3lOWl root@xilinx-zcu106-2020_2
Fingerprint: sha1!! 8b:27:55:53:c5:c8:78:4b:3e:fe:b2:45:70:73:3d:a6:52:50:72:3f
dropbear.
Starting internet superserver: inetd.
Starting syslogd/klogd: done
Starting tcf-agent: OK

PetaLinux 2020.2 xilinx-zcu106-2020_2 /dev/ttyPS0

xilinx-zcu106-2020_2 login: root
Password: 
root@xilinx-zcu106-2020_2:~# 

3、执行测试命令

注意在echo_test运行起来后才有/dev/rpmsg0,之前没有是正常的。

cd /lib/firmware
echo image_echo_test > /sys/class/remoteproc/remoteproc0/firmware
echo start > /sys/class/remoteproc/remoteproc0/state
echo_test

root@xilinx-zcu106-2020_2:~# cd /lib/firmware
root@xilinx-zcu106-2020_2:/lib/firmware# ls
al5d.fw                al5d_b.fw              al5e.fw                al5e_b.fw              base                   image_echo_test        image_matrix_multiply  image_rpc_demo         zcu106_1.0             zcu106_2.0
root@xilinx-zcu106-2020_2:/lib/firmware# echo image_echo_test > /sys/class/remoteproc/remoteproc0/firmware
root@xilinx-zcu106-2020_2:/lib/firmware# ls /dev/rpmsg0
ls: /dev/rpmsg0: No such file or directory
root@xilinx-zcu106-2020_2:/lib/firmware# echo start > /sys/class/remoteproc/remoteproc0/state
[  347.049482] remoteproc remoteproc0: powering up r5@0
[  347.055166] remoteproc remoteproc0: Booting fw image image_echo_test, size 654444
Starting application...
                       [  347.069288]  r5@0: RPU boot from TCM.
Initialize remoteproc successfully.
creating remoteproc virtio
[  347.069470]  r5@0#vdev0buffer: registered virtio0 (type 7)
[  347.086262] remoteproc remoteproc0: remote processor r5@0 is now upn
                                                                       tializing rpmsg shared buffer pool
initializing rpmsg vdev
initializing rpmsg vdev
Try to create rpmsg endpoint.
                             Successfully created rpmsg endpoint.
                                                                 [  347.086653] virtio_rpmsg_bus virtio0: rpmsg host is online
[  347.097023] virtio_rpmsg_bus virtio0: creating channel rpmsg-openamp-demo-channel addr 0x0
root@xilinx-zcu106-2020_2:/lib/firmware# ls /dev/rpmsg0
ls: /dev/rpmsg0: No such file or directory
root@xilinx-zcu106-2020_2:/lib/firmware# echo_test

 Echo test start 

Master>probe rpmsg_char

 Open rpmsg dev virtio0.rpmsg-openamp-demo-channel.-1.0! 
Opening file rpmsg_ctrl0.
checking /sys/class/rpmsg/rpmsg_ctrl0/rpmsg0/name
svc_name: rpmsg-openamp-demo-channel
.

 **************************************

  Echo Test Round 0 

 **************************************

 sending payload number 0 of size 17
echo test: sent : 17
 received payload number 0 of size 17

 sending payload number 1 of size 18
echo test: sent : 18
 received payload number 1 of size 18

 sending payload number 2 of size 19
echo test: sent : 19
 received payload number 2 of size 19

......
......
中间循环输出,省略了
......
......
 sending payload number 470 of size 487
echo test: sent : 487
 received payload number 470 of size 487

 sending payload number 471 of size 488
echo test: sent : 488
 received payload number 471 of size 488

 **************************************

 Echo Test Round 0 Test Results: Error count = 0

 **************************************
root@xilinx-zcu106-2020_2:/lib/firmware# ls /dev/rpmsg0
/dev/rpmsg0
root@xilinx-zcu106-2020_2:/lib/firmware# 

附录:参考资料

如何配置硬件
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/1837006921/OpenAMP+Base+Hardware+Configurations

如何编译工程
https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/2423488521/OpenAMP+Project+Build+Process

未完待续~~~~

你可能感兴趣的:(Xilinx软件开发,-Master,Wang,linux,Xilinx,mpsoc,openamp,zcu106,amd)