AM5728 PCIe的驱动调试问题 - AM57x - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4412|回复: 8

[已解决] AM5728 PCIe的驱动调试问题

[复制链接]

6

主题

13

帖子

92

积分

注册会员

Rank: 2

积分
92
发表于 2019-1-2 15:53:37 | 显示全部楼层 |阅读模式
如图1,是5728EASY连接在PEX8619上,8619连接在电脑主机的PCIe槽上,可以等效认为8619就是电脑主机的PCIe扩展接口,在8619上插入AMD显卡能够在电脑上检测到设备,并且显卡可以输出视频讯号;我所做的调试也就是能够让8619芯片检测到5728easy的PCIe设备,或者5728能够识别8619芯片。
现在PCIe的总线结构上来说,电脑主机应该是RC端,显卡和PEX8619算是EP端,我导入了DEMO里的检测A7的pcieLoader.ko,但加载并没有实现,lapci -v指令无实质变化,在主机端也检测不到5728的设备存在,但是在8619上电前后,输出内容有一些区别(图2是上电前,图3上电后):



问题:
1. 5728的例子里面是RC端是吗,那能不能支持EP端呢?
2. 如何修改驱动能够识别到device ID?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

17

帖子

1290

积分

金牌会员

Rank: 6Rank: 6

积分
1290
发表于 2019-1-2 17:14:34 | 显示全部楼层
你好
      1、对于你的连接来说。PC端作为RC端,EP端对应的为PEX8169。按照贴上的描述,PEX8169基本上可以当做PC中PCIe的扩展槽,请问我这样的理解正确么?
      2、对于AM5728-easy-evm来说,默认代码中,设置为RC模式,但如果需要像上面描述的连接,AM5728需要作为EP模式。这需要修改设备树并做一定配置,可参考下面的链接
https://training.ti.com/am57x-pcie-ep-demo-processor-sdk-linux
http://processors.wiki.ti.com/in ... e_EP_User%27s_Guide
      3、pcieLoader.ko是一个驱动文件,不可以以“./pcieLoader.ko”的形式去执行。这个驱动也是在AM5728作为RC端的时候才需要用到,所以根据你的情况来看,这个驱动不需要使用到
      4、lspci命令,是查看的AM5728作为RC端时,所扫描识别到的EP端设备,在AM5728作为EP端的情况下,同样不适用。
回复 支持 反对

使用道具 举报

6

主题

13

帖子

92

积分

注册会员

Rank: 2

积分
92
 楼主| 发表于 2019-1-3 09:12:57 | 显示全部楼层
12345 发表于 2019-1-2 17:14
你好
      1、对于你的连接来说。PC端作为RC端,EP端对应的为PEX8169。按照贴上的描述,PEX8169基本上可以 ...

我明白了你的意思,也就是说作为EP端的时候不需要insmod pcieLoader.ko等操作,我先试者改下驱动
回复 支持 反对

使用道具 举报

6

主题

13

帖子

92

积分

注册会员

Rank: 2

积分
92
 楼主| 发表于 2019-1-6 22:53:08 | 显示全部楼层
12345 发表于 2019-1-2 17:14
你好
      1、对于你的连接来说。PC端作为RC端,EP端对应的为PEX8169。按照贴上的描述,PEX8169基本上可以 ...

有几个问题不明,我按照官方的教程尝试了一遍,有一些问题:
在编译你们提供的内核的时候,4.4版本RT内核menuconfig图形界面即没有设置Endpoint,也没有PCI Mode-->Only EP Mode的选项,它的设备树am57xx-evm-common.dtsi文件也不能添加&pcie1_ep{}的描述;4.9版本RT内核也没有Only EP Mode的选项,同样无法成功修改设备树;

我换成你们提供的非RT的4.9版本,编译内核镜像的时候可以设置Endpoint,但还是不能选择Only EP Mode,但是可以修改并成功编译设备树,我制作了SD卡,运行后除了无法检测到“51000000.pcie_ep”文件,其余的按照官方手册可以执行,但因为无法检测到host,所以操作其实无效

但我看官方指导视频里面用的是4.4.32的内核,都能顺利搞定,我也不知道从哪里能下载到这个内核,linux网站提供的内核版本并没有5728的设备树,求给适用于你们产品的下载链接
回复 支持 反对

使用道具 举报

0

主题

17

帖子

1290

积分

金牌会员

Rank: 6Rank: 6

积分
1290
发表于 2019-1-7 15:08:49 | 显示全部楼层
ZJU_sjl 发表于 2019-1-6 22:53
有几个问题不明,我按照官方的教程尝试了一遍,有一些问题:
在编译你们提供的内核的时候,4.4版本RT内核 ...

SDK3.01对应的为4.4.19的kernel版本,am57x的ep模式由SDK3.2开始支持,建议你使用我们最新提供的SDK4.03做测试。
arch/arm/boot/dts/am57xx-beagle-x15-common.dtsi,在这个文件里能找到pcie_rc/pcie_ep的描述
回复 支持 反对

使用道具 举报

6

主题

13

帖子

92

积分

注册会员

Rank: 2

积分
92
 楼主| 发表于 2019-1-7 16:12:50 | 显示全部楼层
12345 发表于 2019-1-7 15:08
SDK3.01对应的为4.4.19的kernel版本,am57x的ep模式由SDK3.2开始支持,建议你使用我们最新提供的SDK4.03 ...

你好,我用的就是sdk4版本,其实最主要的问题还是在配置menuconfig的时候可以选择的设置不全,这个对修改EP有影响吗?
而且我找的几个官方内核也只有您说的设备树文件,那么请问我设备树的编译输出文件名称是什么,还是原来的那个吗?
回复 支持 反对

使用道具 举报

0

主题

17

帖子

1290

积分

金牌会员

Rank: 6Rank: 6

积分
1290
发表于 2019-1-7 16:55:52 | 显示全部楼层
ZJU_sjl 发表于 2019-1-7 16:12
你好,我用的就是sdk4版本,其实最主要的问题还是在配置menuconfig的时候可以选择的设置不全,这个对修改 ...

你好,
      没有了解你所说的only ep mode的设置。57x系列设置为EP模式的步骤
1、修改设备树,修改pcie_rc为disable,修改pcie_ep为okay模式,这样设置的情况下就可以关闭rc模式,达到"ep only"的模式
2、menuconfig中应设置的,是否开启pcie ep driver test模式(默认开启)
Bus support -> PCI Endpoint -> PCI Endpoint Test driver
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2024-3-29 06:28 , Processed in 0.039334 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表