We are trying to port custom pci based alsa driver on our custom board with Qoriq processor.
when the driver is loaded,got below error,
[ 120.014015] CTI_ALSA: module init called, index=[1]
[ 120.017797] CTI_ALSA: device set 24bit DMA mask failed w/err=[0]
The error occurs when i do dma_set_mask for 24bit
/*
if ((err = dma_set_mask(&pcidev->dev, DMA_BIT_MASK(24))) < 0) {
printk(KERN_ERR CTI_PREFIX " device set 24bit DMA mask failed w/err=[%d]", err);
err = -ENXIO;
goto err_disable_dev;
}
if ((err = pci_set_consistent_dma_mask(pcidev,DMA_BIT_MASK(24)) < 0)) {
printk(KERN_ERR CTI_PREFIX " device set 24bit consistent DMA mask failed w/err=[%d]", err);
err = -ENXIO;
goto err_disable_dev;
}
*/
The same driver is working fine with Intel processor.
Let me know, if i need to do any change w.r.t Qoriq processor.
Please consider that the PowerPC processor is big-endian.
Refer to the following application note: