On Mon, 2023-12-18 at 15:12 +0000, Stefan Binding wrote:
> Add new model entries into configuration table.
>
> Signed-off-by: Stefan Binding <sbinding@opensource.cirrus.com>
> ---
> sound/pci/hda/cs35l41_hda_property.c | 36
> ++++++++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
>
> diff --git a/sound/pci/hda/cs35l41_hda_property.c
> b/sound/pci/hda/cs35l41_hda_property.c
> index f90423ded85d..a0d808ed640a 100644
> --- a/sound/pci/hda/cs35l41_hda_property.c
> +++ b/sound/pci/hda/cs35l41_hda_property.c
> @@ -42,6 +42,24 @@ static const struct cs35l41_config
> cs35l41_config_table[] = {
> * in the ACPI. The Reset GPIO is also valid, so we can use the
> Reset defined in _DSD.
> */
> { "103C89C6", SPI, 2, INTERNAL, { CS35L41_RIGHT,
> CS35L41_LEFT, 0, 0 }, -1, -1, -1, 1000, 4500, 24 },
> + { "10431433", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431463", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431473", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
> + { "10431483", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
> + { "10431493", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "104314D3", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "104314E3", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431503", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431533", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431573", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431663", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
> + { "104317F3", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> + { "10431C9F", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431CAF", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431CCF", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431CDF", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431CEF", SPI, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
> + { "10431D1F", I2C, 2, INTERNAL, { CS35L41_LEFT,
> CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
> {}
> };
>
Very good to see this work done. I have tested on 3 models and each one
has very good sound now. Many thanks!
> @@ -316,6 +334,24 @@ static const struct cs35l41_prop_model
> cs35l41_prop_model_table[] = {
> { "CLSA0100", NULL, lenovo_legion_no_acpi },
> { "CLSA0101", NULL, lenovo_legion_no_acpi },
> { "CSC3551", "103C89C6", generic_dsd_config },
> + { "CSC3551", "10431433", generic_dsd_config },
> + { "CSC3551", "10431463", generic_dsd_config },
> + { "CSC3551", "10431473", generic_dsd_config },
> + { "CSC3551", "10431483", generic_dsd_config },
> + { "CSC3551", "10431493", generic_dsd_config },
> + { "CSC3551", "104314D3", generic_dsd_config },
> + { "CSC3551", "104314E3", generic_dsd_config },
> + { "CSC3551", "10431503", generic_dsd_config },
> + { "CSC3551", "10431533", generic_dsd_config },
> + { "CSC3551", "10431573", generic_dsd_config },
> + { "CSC3551", "10431663", generic_dsd_config },
> + { "CSC3551", "104317F3", generic_dsd_config },
> + { "CSC3551", "10431C9F", generic_dsd_config },
> + { "CSC3551", "10431CAF", generic_dsd_config },
> + { "CSC3551", "10431CCF", generic_dsd_config },
> + { "CSC3551", "10431CDF", generic_dsd_config },
> + { "CSC3551", "10431CEF", generic_dsd_config },
> + { "CSC3551", "10431D1F", generic_dsd_config },
> {}
> };
>
@@ -42,6 +42,24 @@ static const struct cs35l41_config cs35l41_config_table[] = {
* in the ACPI. The Reset GPIO is also valid, so we can use the Reset defined in _DSD.
*/
{ "103C89C6", SPI, 2, INTERNAL, { CS35L41_RIGHT, CS35L41_LEFT, 0, 0 }, -1, -1, -1, 1000, 4500, 24 },
+ { "10431433", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431463", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431473", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
+ { "10431483", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
+ { "10431493", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "104314D3", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "104314E3", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431503", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431533", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431573", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431663", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, -1, 0, 1000, 4500, 24 },
+ { "104317F3", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
+ { "10431C9F", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431CAF", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431CCF", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431CDF", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431CEF", SPI, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 1, 2, 0, 1000, 4500, 24 },
+ { "10431D1F", I2C, 2, INTERNAL, { CS35L41_LEFT, CS35L41_RIGHT, 0, 0 }, 0, 1, -1, 1000, 4500, 24 },
{}
};
@@ -316,6 +334,24 @@ static const struct cs35l41_prop_model cs35l41_prop_model_table[] = {
{ "CLSA0100", NULL, lenovo_legion_no_acpi },
{ "CLSA0101", NULL, lenovo_legion_no_acpi },
{ "CSC3551", "103C89C6", generic_dsd_config },
+ { "CSC3551", "10431433", generic_dsd_config },
+ { "CSC3551", "10431463", generic_dsd_config },
+ { "CSC3551", "10431473", generic_dsd_config },
+ { "CSC3551", "10431483", generic_dsd_config },
+ { "CSC3551", "10431493", generic_dsd_config },
+ { "CSC3551", "104314D3", generic_dsd_config },
+ { "CSC3551", "104314E3", generic_dsd_config },
+ { "CSC3551", "10431503", generic_dsd_config },
+ { "CSC3551", "10431533", generic_dsd_config },
+ { "CSC3551", "10431573", generic_dsd_config },
+ { "CSC3551", "10431663", generic_dsd_config },
+ { "CSC3551", "104317F3", generic_dsd_config },
+ { "CSC3551", "10431C9F", generic_dsd_config },
+ { "CSC3551", "10431CAF", generic_dsd_config },
+ { "CSC3551", "10431CCF", generic_dsd_config },
+ { "CSC3551", "10431CDF", generic_dsd_config },
+ { "CSC3551", "10431CEF", generic_dsd_config },
+ { "CSC3551", "10431D1F", generic_dsd_config },
{}
};