1、解决linux中无ens33的问题
sudo /sbin dhclient
2、petalinux下测试U盘的读写速率
u盘格式化fat32
sync;time dd if=/dev/zero of=/mnt/usb/1g bs=4M count=256;time sync
计算存储设备中写入1G数据所需要的时间。
3、查看zynqMP ps端gtr的连接训练情况
root@usb3:~# dmesg | grep psgtr
[ 9.422664] xilinx-psgtr fd400000.zynqmp_phy: Lane:1 type:8 protocol:4 pll_locked:yes
4、ultra96 识别USB3.0U盘配置
在system_user.dtsi设备树中添加 下列设备树中的引号 都是在英文状态下
/include/ “system-conf.dtsi”
/ {
};
/*sd0 only support 3.3v
disable only read;
*/
&sdhci0 {
no-1-8-v;
broken-cd;
disable-wp;
};
&dwc3_0 {
dr_mode = “host”;
snps,usb3_lpm_capable;
phy-names = “usb3-phy”;
phys = <&lane2 4 0 0 26000000>;
maximum-speed = “super-speed”;
};
&dwc3_1 {
dr_mode = “host”;
snps,usb3_lpm_capable;
phy-names = “usb3-phy”;
phys = <&lane3 4 1 0 26000000>;
maximum-speed = “super-speed”;
};
5、启动后,插入3.0u盘
root@usb3:~# [ 60.468977] usb 2-1.1: new SuperSpeed Gen 1 USB device number 3 using xhci-hcd
[ 60.504347] usb 2-1.1: New USB device found, idVendor=0781, idProduct=5588, bcdDevice= 1.00
[ 60.512703] usb 2-1.1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 60.520011] usb 2-1.1: Product: USB Extreme Pro
[ 60.524566] usb 2-1.1: Manufacturer: SanDisk
[ 60.529062] usb 2-1.1: SerialNumber: 153136794EBB
[ 60.572207] usb-storage 2-1.1:1.0: USB Mass Storage device detected
[ 60.605909] scsi host0: usb-storage 2-1.1:1.0
[ 60.623612] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: ASoC: CPU DAI (null) not registered
[ 61.650606] scsi 0:0:0:0: Direct-Access SanDisk Extreme Pro 0 PQ: 0 ANSI: 6
[ 61.660503] sd 0:0:0:0: [sda] 250085376 512-byte logical blocks: (128 GB/119 GiB)
[ 61.668529] xilinx-dp-snd-card fd4a0000.zynqmp-display:zynqmp_dp_snd_card: ASoC: CPU DAI (null) not registered
[ 61.685119] sd 0:0:0:0: [sda] Write Protect is off
[ 61.690173] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn’t support DPO or FUA
[ 61.701609] sda: sda1
[ 61.713865] sd 0:0:0:0: [sda] Attached SCSI removable disk
[ 62.002353] FAT-fs (sda1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
6、测试写入速度
root@usb3:/mnt# sync;time dd if=/dev/zero of=/mnt/usb/1g bs=4M count=256;time sync
256+0 records in
256+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 8.45262 s, 127 MB/s
real 0m9.604s
user 0m0.009s
sys 0m8.056s
real 0m0.387s
user 0m0.001s
sys 0m0.003s
root@usb3:/mnt# sync;time dd if=/dev/zero of=/mnt/usb/1g bs=4K count=256000;time sync
256000+0 records in
256000+0 records out
1048576000 bytes (1.0 GB, 1000 MiB) copied, 7.92089 s, 132 MB/s
real 0m9.072s
user 0m0.207s
sys 0m7.224s
real 0m0.387s
user 0m0.001s
sys 0m0.003s
7、zynqMP 自定义DISPLAYPORT不显示问题
问题原因在于https://www.xilinx.com/support/answers/69764.html
在dp的时钟中To resolve this issue, set TOPSW_MAIN to DPLL and DP_VIDEO to VPLL。
8、系统上电后,测试,显示器可正常输出。
9、petalinux 挂在exfat u盘
(1)petalinux-config -c kernel
选中 fuse support
选中 exfat fs support
(2)petalinux-config -c rootfs
选中 packagegroup-petalinux-utils 和 驱动
(3)petalinux-build
(4)exfat U盘插入,挂载即可识别
10、关闭petalinux外接显示器,由于运行时间过长,进入低功耗黑屏的功能。
运行程序前,可调整屏幕的分辨率
export DISPLAY=:0.0
xrandr --output DP-1 --mode 640x480
其中后面的参数要是驱动中包含的,比如1920x1080都是有的
xset dpms 0 0 10
此命令的含义是,当程序运行10s以后,进入低功耗模式
xset dpms 0 0 0
此命令的含义是,不会进入低功耗模式
11、挂载NFS服务
(1)安装
sudo apt-get install nfs-kernel-server
(2)设置路径
sudo gedit /etc/exports
最下添加
/路径/Nfs_work *(rw,sync,no_root_squash,no_subtree_check)
(3)重启nfs服务
sudo /etc/init.d/rpcbind restart
sudo /etc/init.d/nfs-kernel-server restart
(4)挂载 将新建的此文件夹挂载到/mnt下
sudo mount -t nfs 127.0.0.1:/路径/Nfs_work/ /mnt
12、petalinux添加SSD
(1)在bd中
(2)选择正确的相关时钟
(3)在高级设置的pcie中
(4)在petaliinux-config -c kernel中
(5)在petaliinux-config -c rootfs中
(6)petalinux-build
(7)开机后
查看硬盘大小
fdisk -l
新建分区
fdisk /dev/nvme0n1
按提示输入
n、p、1、32、+100G、wq
则此时新建一个100G的分区
格式化分区
mkfs.ext4 -t ext4 /dev/nvme0n1p1
挂载到mnt下
mount /dev/nvme0n1p1 /mnt
(8)测试程序
依然用PL生成的128M图片写入SSD
写入速度大致在128MB/0.54=237MB。
13、PS添加千兆网 GEM
(1)在vivado中
(2)设备树中增加
(3)petalinux-build
(4)开机后
修改ip 使开发板与PC在同一个网段
成功建立连接
14、在编译系统时,如果要在系统初始化时做一些读写操作,可以将xsa文件导入vitis中,新建fsbl工程,在xfsbl_initialization.c添加所需要的功能,然后生成fsbl.elf,最后通过bif文件生成BOOT.BIN文件即可。