On Mon, Apr 10, 2017 at 05:22:33AM -0700, IanJiang wrote: >Hi all! > >I am porting PLX driver for PEX 8619 to a power8 machine with CentOS-7.3. >The PEX 8619 is used as an NTB (Non-Transparent Bridge). > >First, two DMA buffer are allocated with dma_alloc_coherent() and the >physical address are: >src: 0x 00000000_60600000 >dst: 0x 00000000_60800000 >Then, a DMA transfer is started and an EEH is reported in dmesg. > >This DMA test is OK at an x86_64 platform. > >Here are the details. Any suggestion is appreciated!
.../... >[72634.742182] brdgCtl: 00000002 >[72634.742183] RootSts: 0002004f 00400000 f0820008 00100147 00002800 >[72634.742184] RootErrSts: 00000000 00008000 00000000 >[72634.742185] PhbSts: 0000001c00000000 0000001c00000000 >[72634.742186] Lem: 0000000004000000 42498e327f502eae >0000000000000000 >[72634.742189] InAErr: 0000000000004000 0000000000004000 >8000000060600001 8 400000000000001 >[72634.742190] PE[ 1] A/B: 8200302500000000 8000000060600000 Please check if memory physical address (instead of DMA address) is used in the driver. The EEH error is caused by DMA address 0x60600000 and it's not having a corresponding TCE entry. Thanks, Gavin