imx8qxp PCIe iATU configure

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx8qxp PCIe iATU configure

1,645 Views
jun_li1
Contributor II

I checked linux driver code there is "cpu_addr_fixup" when configuring iATU, and the git commit history recorded as below:

- The HSIO address map as viewed from system level is as shown below.
  address [31:24]    Local address    Target    Address Size
  5F                 0                HSIO      16MB
  60-6F              40-4F            HSIO      256MB
  70-7F              80-8F            HSIO      256MB
  So, the cpu_addr_fixup is required to enable i.MX8QM/QXP PCIe.

https://lkml.org/lkml/2019/3/13/151

But, there is no any relevant description in the latest reference manual, Can NXP provide the detail description about this feature?

Tags (2)
0 Kudos
Reply
3 Replies

1,453 Views
igorpadykov
NXP Employee
NXP Employee

Hi Li

for i.MX8QXP HSIO PCIe address map there is description in Table 2-2. System memory map

i.MX 8DualXPlus/8QuadXPlus Applications Processor Reference Manual

address [31:24]    Local address    Target    Address Size
  5F                 0                HSIO      16MB

pastedImage_2.jpg

70-7F              80-8F            HSIO      256MB

pastedImage_1.jpg


for i.MX8QM there is no such documentation, since it is not publicly released yet. Please
apply to local marketing office for its preliminary documentation.

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
0 Kudos
Reply

1,453 Views
jun_li1
Contributor II

From i.MX 8DualXPlus/8QuadXPlus Applications Processor Reference Manual

PCIe system memory map is 0x70000000 - 0x7fffffff, but the key is, in fact, if set iATU cfg0 base register as 0x70000000,  cfgRead/cfgWrite will fail, the right cpu base address is 0x80000000, so there is a 

cpu_addr_fixup = 0x10000000

But the reference manual has no mention it at all .

0 Kudos
Reply

1,453 Views
igorpadykov
NXP Employee
NXP Employee

>But the reference manual has no mention it at all 

this is PREPRODUCTION part as described on below link in red and its Reference Manual

is "rev.D" - still is under development. More details will be added in future releases of Manual.

i.MX 8X Applications Processors| Arm® Cortex®-A35, Cortex-M4 | NXP 

for software recommended to use latest Linux L4.14.98
linux-imx - i.MX Linux kernel 

Linux L4.14.98_2.0.0 Documentation

Linux Binary Demo Files - i.MX 8QXPlus MEK

Best regards
igor

0 Kudos
Reply