imx6SX PCI Driver

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 
2,943件の閲覧回数
simonlocke
Contributor III

Hi,

Can someone please point me to some instructions on how to build and include the PCI driver into the 3.14.28 poky Linux? I want to connect a PCIe board to my iMX6SX SABRE dev board and write a PCI device driver, but first I need to get the PCI root compiled into the kernel.

I tried following the instructions in the IMX6 Linux Reference Manual (IMX6LXRM 03/2015) section 42.2.2, but they do not make sense. If I run make in the either 'drivers/pci' or 'drivers/pci/host' folders I get 'no targets'.

ラベル(1)
0 件の賞賛
返信
1 解決策
2,452件の閲覧回数
simonlocke
Contributor III

I think I have found the instructions I was looking for:

Changing the Kernel configuration for i.MX6 SABRE

This is much clearer than any others I've found.

元の投稿で解決策を見る

0 件の賞賛
返信
4 返答(返信)
2,453件の閲覧回数
simonlocke
Contributor III

I think I have found the instructions I was looking for:

Changing the Kernel configuration for i.MX6 SABRE

This is much clearer than any others I've found.

0 件の賞賛
返信
2,452件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

Hi Simon

one can look at examples in

https://community.freescale.com/docs/DOC-95014

https://community.freescale.com/message/630828#comment-630828

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 件の賞賛
返信
2,452件の閲覧回数
simonlocke
Contributor III

Thanks Igor.

A lot of useful info on those two pages. However, still not sure I have a simple and non-contradictory set of instructions for building and including the PCIe Root Complex into a kernel and image.

In the Reference manual section 42.2.2 it says:

     Root Complex is not supported by the default kernel configurations on i.MX 6 boards.

     To set the default configuration, execute the following command as follows:

     make CROSS_COMPILE=arm-none-linux-gnueabi-ARCH=arm imx_v7_defconfig

     Configure the Root Complex to be built in:

     #

     # Bus support

     #

     CONFIG_PCI=y

     CONFIG_PCI_DOMAINS=y

     CONFIG_PCI_SYSCALL=y

     #

     # PCI host controller drivers

     #

     CONFIG_PCIE_DW=y

     CONFIG_PCI_IMX6=y

     NOTE

     PCI Express support can't be built as a module.

But, the first link you pointed me to (https://community.freescale.com/docs/DOC-95014) refers to:

        CONFIG_IMX_PCIE=y

        # CONFIG_IMX_PCIE_EP_MODE_IN_EP_RC_SYS is not set

        CONFIG_IMX_PCIE_RC_MODE_IN_EP_RC_SYS=y

However, this link also only talks about iMXSQ, where as I am using a iMX6 SoloX.

Either I need to do something to build the driver first, or I don't and I just need to add these lines to a bitbake recipe. And then which recipe? Do I need another recipe for a kernel, or can I just add the necessary lines to my custom image recipe?

0 件の賞賛
返信
2,452件の閲覧回数
igorpadykov
NXP Employee
NXP Employee

PCIe configuration settings for iMX6 SoloX should be same

as for other i.MX6.

~igor

0 件の賞賛
返信