查看: 59|回复: 5

[hi3531/hi3535/hi3536] PCIE开发相关问题

[复制链接]
发表于 2018-12-6 11:02:11 | 显示全部楼层 |阅读模式
两个Hi3531d带PCIE的板子,一个A板,一个B板,A板做从设备,B板做主设备,验证二者之间PCIE数据通信;
1、PCIE从设备的核心板上R1867,R1868两个电阻要去掉;
2、PCIE内核和驱动操作模式:      
(1)将资料里面修改过的内核源码,拷贝到虚拟机;
(2)编译host模式的内核,clean后,按照arch/arm/configs/hi3531d_full_defconfig进行配置;make hi3531d_full_defconfig ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-
(3)进入menuconfig界面:makemenuconfig ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-,确认在 menuconfig 菜单下, 选择以下选项:
       Bus Support  --->
           
  • PCI support  --->
               
  • PCI Express support  --->
           Bus Support  --->
                
  • PCI support  --->
                
  • Hisilicon PCI Express support --->
    (4)makeuImage ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-编译内核;
    (5)进入sdk目录,osdrv/drv/pcie_mcc/目录,用下面命令编译pci-host驱动:
    makeCROSS_COMPILE=arm-hisiv500-linux- PCIE_KERNEL_MAKE=../linux-3.18.y-host VER=2SOFT_DDRT=y SLAVE_CHIP=hi3531d
    (6)编译slave模式内核,将linux-3.18.y-host内核源码拷贝一份linux-3.18.y-slave,clean后,按照arch/arm/configs/hi3531d_full_defconfig进行配置;make hi3531d_full_defconfig ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-
    (7)进入menuconfig界面:makemenuconfig ARCH=arm CROSS_COMPILE=arm-hisiv500-linux-,在 menuconfig 菜单下, EP模式下取消选择以下选项:
           Bus Support  --->
               [] PCI support  --->
               [] PCI Express support  --->
           Bus Support  --->
                [] PCI support  --->
                [] Hisilicon PCI Express support --->
    (8)进入sdk目录,osdrv/drv/pcie_mcc/目录,用下面命令编译pci-slave驱动:
    makeCROSS_COMPILE=arm-hisiv500-linux- PCIE_KERNEL_MAKE=../linux-3.18.y-slave VER=2target=slave
    (9)在uboot中,按照tftp的模式将主从模式的内核分别烧写到spi flash中;
    (10)将host模式的pcie驱动上传到host板子,
                                  
    Host模式板子的自动启动文件如下配置:

    (11)将slave模式的pcie驱动上传到slave板子,

    slave模式板子的自动启动文件如下配置:

    (12)slave板子先启动,然后再启动host板子,然后在slave板子上再手动加载
    insmodhi3531d_pciv_fmw.ko
    insmod hi3531d_pciv.ko
    两个驱动;
    (13)现在在加载slave板子的pciv驱动报错:

    帮我看一下是什么问题;

  • 本帖子中包含更多资源

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

    x
    楼主热帖
    发表于 2018-12-6 12:13:58 | 显示全部楼层
    PCIE级联相对比较复杂,有参考 PCIE级联应用指南.pdf里面的步骤吗?
     楼主| 发表于 2018-12-6 13:38:02 来自手机 | 显示全部楼层
    就是参考那个里面来做的
     楼主| 发表于 2018-12-6 13:52:44 来自手机 | 显示全部楼层
    现在是主设备的hi3531d_pciv.ko能正常加载,从设备的这个驱动不能正常加载,pcie相关的底层驱动和消息驱动都能正常加载
     楼主| 发表于 2018-12-6 14:33:32 来自手机 | 显示全部楼层
    看错了,3531d的pcie级联不支持使用pciv的驱动,应该使用mpp/sample/pciv里面的程序分别在主片和从片上运行,但是主从片的pcie握手不能正常通过是什么问题?v
    发表于 2018-12-6 16:43:55 | 显示全部楼层
    这个不好说,一般来说按照海思给你的固件来实测,硬件没有问题的话都是可以的
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    © 2008-2017 当前位置 易百纳技术社区论坛 返回 易百纳技术社区 ( 苏ICP备14036084 )   Powered by Discuz! X3.1
    快速回复 返回顶部 返回列表