自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 petalinux交叉编译快速编译方法,亲测百分百好用

至于编译应用程序,我习惯在制作的内核根目录选项里加入gcc,这样把.c文件拷贝到开发板就可以直接gcc编译,不用交叉编译,也很方便。你是否苦恼于使用petalinux编译驱动和应用程序时每次都要build -c等待好久,试试我的交叉编译方法,每次都是秒完成!至此makefile写完,在目录下make就可以秒生成.ko文件,再也不用petalinux build -c等着了。首先按照官方文件ug1144 builk SDK,建在默认路径下就行。其中KDIR就是你build生成内核镜像过程中编译好的内核。

2025-01-23 15:35:48 386

原创 ZYNQLinux开机卡在pcie初始化解决方案

其实vivado上pcie的ip已经很成熟,配置参数上的不同不会产生太大影响,那么只能是引脚和时钟的问题,引脚已经反复看过,时钟在ip配置里也没问题,后来是网上查找资料发现,综合里面的constraints wizard会提示一些警告。这里我就不具体展示了。排除了各种可能的故障原因:比如PCIe Block Location设置,GTH口选择,引脚也反复检查,都没有改善,还会让问题的现象有所变化,如下图所示,卡在nvme驱动尝试将盘挂载在系统这一步。列出一个据我看不太常见的问题,只发生在我自己身上。

2025-01-23 11:19:22 1264

原创 DMA实现自定义块设备的传输函数

映射这一段我发现存在缓存一致性问题,DMA_TO_DEVICE方向的数据是一致的,DMA_FROM_DEVICE的数据,dma能够正确搬运到dma_addr地址上,但与之对应的bv虚拟地址不一致,需要加一步dma_sync_single_for_cpu使缓存同步。这里缓存同步的方式有很多种,我是实际测试发现dma_sync_single_for_cpu能使dma_map_bvec映射的地址同步,dma_sync_sg_for_cpu就不行。后面对传输的操作就根据自己需求定义就可以,我这里就先讲个框架。

2025-01-22 15:54:06 672

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除