On Sat, May 02, 2015 at 04:57:38PM -0700, Kenneth Westfield wrote:
On Thu, Apr 30, 2015 at 06:16:53PM +0100, Srinivas Kandagatla wrote:
This patch tries to make the lpass driver more generic by moving the ipq806x specific bits out of the cpu and platform driver, also allows
the
SOC specific drivers to add the correct register offsets.
This patch also renames the register definition header file into more generic header file.
diff --git a/sound/soc/qcom/lpass-ipq806x.c
b/sound/soc/qcom/lpass-ipq806x.c
new file mode 100644 index 0000000..8e9a427 --- /dev/null +++ b/sound/soc/qcom/lpass-ipq806x.c
+enum lpaif_i2s_ports {
- LPAIF_I2S_PORT_MIN = 0,
- LPAIF_I2S_PORT_CODEC_SPK = 0,
- LPAIF_I2S_PORT_CODEC_MIC = 1,
- LPAIF_I2S_PORT_SEC_SPK = 2,
- LPAIF_I2S_PORT_SEC_MIC = 3,
- LPAIF_I2S_PORT_MI2S = 4,
- LPAIF_I2S_PORT_MAX = 4,
- LPAIF_I2S_PORT_NUM = 5,
+};
These port mappings here...
+enum lpaif_irq_ports {
- LPAIF_IRQ_PORT_MIN = 0,
- LPAIF_IRQ_PORT_HOST = 0,
- LPAIF_IRQ_PORT_ADSP = 1,
- LPAIF_IRQ_PORT_MAX = 2,
- LPAIF_IRQ_PORT_NUM = 3,
+};
...here...
+enum lpaif_dma_channels {
- LPAIF_RDMA_CHAN_MIN = 0,
- LPAIF_RDMA_CHAN_MI2S = 0,
- LPAIF_RDMA_CHAN_PCM0 = 1,
- LPAIF_RDMA_CHAN_PCM1 = 2,
- LPAIF_RDMA_CHAN_MAX = 4,
- LPAIF_RDMA_CHAN_NUM = 5,
+};
...and here can be SOC-specific. Should move them to the SOC-specific files.
Expanding on this, the I2S port mappings for the APQ8016 should replace the ones defined above with the constants you refer to in dt-bindings/sound/apq8016.h: MI2S_PRIMARY MI2S_SECONDARY etc.
Maybe defining a corresponding ipq806x.h in the same directory, and moving the above definitions there?