Hi Jiada
Thank you for your patch
Currently each SSI unit 's busif dma address is calculated by following calculation formulation: 0xec540000 + 0x1000 * id + busif / 4 * 0xA000 + busif % 4 * 0x400
But according to user manual 41.1.4 Register Configuration ssi9 4/5/6/7 busif data register address (SSI9_4_BUSIF/SSI9_5_BUSIF/SSI9_6_BUSIF/SSI9_7_BUSIF) are out of this rule.
This patch updates the calculation formulation to correct ssi9 4/5/6/7 busif data register address
Fixes: commit 5e45a6fab3b9 ("ASoc: rsnd: dma: Calculate dma address with consider of BUSIF") Signed-off-by: Jiada Wang jiada_wang@mentor.com Signed-off-by: Timo Wischer twischer@de.adit-jv.com
We don't need below anymore by this patch ?
--- dma.c ---- /* * FIXME * * We can't support SSI9-4/5/6/7, because its address is * out of calculation rule */ if ((id == 9) && (busif >= 4)) dev_err(dev, "This driver doesn't support SSI%d-%d, so far", id, busif);
Best regards --- Kuninori Morimoto