On Tue, Jul 09, 2019 at 04:34:48PM +0300, Andy Shevchenko wrote:
On Tue, Jul 09, 2019 at 04:29:43PM +0300, Andy Shevchenko wrote:
On Tue, Jul 09, 2019 at 04:14:01PM +0300, Andy Shevchenko wrote:
On Mon, Jul 08, 2019 at 01:50:07PM -0700, Curtis Malainey wrote:
So, the correct fix is to provide a platform data, like it's done in drivers/dma/dw/pci.c::idma32_pdata, in the sst-firmware.c::dw_probe(), and call idma32_dma_probe() with idma32_dma_remove() respectively on removal stage.
(It will require latest patches to be applied, which are material for v5.x)
Below completely untested patch to try
Also, it might require to set proper request lines (currently it uses 0 AFAICS). Something like it's done in drivers/spi/spi-pxa2xx-pci.c for Intel Merrifield.
And SST_DSP_DMA_MAX_BURST seems encoded while it's should be simple number, like 8 (bytes). Also SPI PXA is an example to look into.
I doubt it has been validated with upstream driver (I know about some internal drivers, hacked version of dw one, you may find sources somewhere in public).