Unexpectedly dma_ops is NULL in struct device

Alexander Fomichev a.fomichev at yadro.com
Thu Nov 15 21:05:15 AEDT 2018


Hello,

I tried to use Switchtec NTB on PowerPC platform and faced a strange behaviour. In ntb_hw_switchtec module's initialization section the "struct device" has uninitialized field dma_ops (NULL). Meanwhile the same NTB hardware on x86 platform get correct dma_ops in this driver. It looks like on lower layer "struct device" init differs between x86 and powerpc.
This issue makes functions dma_set_mask() and dma_set_coherent_mask() and dma_alloc_coherent() fail in ntb_hw_switchtec. And the driver can't start on powerpc.

Can anybody help to trace this issue? 
Thanks in advance.

Best regards, 
Alexander


More information about the Linuxppc-dev mailing list