4e02fd62 | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Refactor DAI probe/remove ops as component ops
Move most of the DAI probe/remove logic into component ops. This makes things more consistent because the AIC clock is now managed so
ASoC: jz4740-i2s: Refactor DAI probe/remove ops as component ops
Move most of the DAI probe/remove logic into component ops. This makes things more consistent because the AIC clock is now managed solely from the component side. And it makes it easier to add codec switching support later on.
Reviewed-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-10-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
165afe6b | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Move component functions near the component driver
Move the component suspend/resume functions near the definition of the component driver to emphasize that they're unrelated to th
ASoC: jz4740-i2s: Move component functions near the component driver
Move the component suspend/resume functions near the definition of the component driver to emphasize that they're unrelated to the DAI functions.
Acked-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-9-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
84a91434 | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Support continuous sample rate
The I2S controller on JZ47xx SoCs doesn't impose restrictions on sample rate and the driver doesn't make any assumptions about it, so the DAI should
ASoC: jz4740-i2s: Support continuous sample rate
The I2S controller on JZ47xx SoCs doesn't impose restrictions on sample rate and the driver doesn't make any assumptions about it, so the DAI should advertise a continuous sample rate range.
Acked-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-8-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
7abd01cf | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Support S20_LE and S24_LE sample formats
The audio controller on JZ47xx SoCs can transfer 20- and 24-bit samples in the FIFO, so allow those formats to be used with the I2S driver.
ASoC: jz4740-i2s: Support S20_LE and S24_LE sample formats
The audio controller on JZ47xx SoCs can transfer 20- and 24-bit samples in the FIFO, so allow those formats to be used with the I2S driver. Although the FIFO doesn't care about the in-memory sample format, we only support 4-byte format variants because the DMA controller on these SoCs cannot transfer in 3-byte multiples.
Reviewed-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-7-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
dacc06b8 | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Align macro values and sort includes
Some purely cosmetic changes: line up all the macro values to make things easier to read and sort the includes alphabetically.
Acked-by: Paul
ASoC: jz4740-i2s: Align macro values and sort includes
Some purely cosmetic changes: line up all the macro values to make things easier to read and sort the includes alphabetically.
Acked-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-6-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
b355ebeb | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Use FIELD_PREP() macros in hw_params callback
Get rid of a couple of macros and improve readability by using FIELD_PREP() and GENMASK() for the sample size setting.
Acked-by: Paul
ASoC: jz4740-i2s: Use FIELD_PREP() macros in hw_params callback
Get rid of a couple of macros and improve readability by using FIELD_PREP() and GENMASK() for the sample size setting.
Acked-by: Paul Cercueil <paul@crapouillou.net> Reviewed-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-5-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
0fddb4bc | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Simplify using regmap fields
The differences between register fields on different SoC versions can be abstracted away using the regmap field API. This is easier to understand and e
ASoC: jz4740-i2s: Simplify using regmap fields
The differences between register fields on different SoC versions can be abstracted away using the regmap field API. This is easier to understand and extend than comparisons based on the version ID. Since the version IDs are unused after this change, remove them at the same time, and remove unused macros.
Reviewed-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-4-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
cf375e69 | 23-Oct-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Convert to regmap API
Using regmap for accessing the AIC registers makes the driver a little easier to read, and later refactors can take advantage of regmap APIs to further simpli
ASoC: jz4740-i2s: Convert to regmap API
Using regmap for accessing the AIC registers makes the driver a little easier to read, and later refactors can take advantage of regmap APIs to further simplify the driver.
Reviewed-by: Paul Cercueil <paul@crapouillou.net> Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Link: https://lore.kernel.org/r/20221023143328.160866-3-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|
8a769101 | 06-Jul-2022 |
Aidan MacDonald <aidanmacdonald.0x0@gmail.com> |
ASoC: jz4740-i2s: Refactor DMA channel setup
It's simpler to set up the playback and capture DMA settings at driver probe time instead of during DAI probing.
Signed-off-by: Aidan MacDonald <aidanma
ASoC: jz4740-i2s: Refactor DMA channel setup
It's simpler to set up the playback and capture DMA settings at driver probe time instead of during DAI probing.
Signed-off-by: Aidan MacDonald <aidanmacdonald.0x0@gmail.com> Acked-by: Paul Cercueil <paul@crapouillou.net> Link: https://lore.kernel.org/r/20220706211330.120198-3-aidanmacdonald.0x0@gmail.com Signed-off-by: Mark Brown <broonie@kernel.org>
show more ...
|