diff mbox

[1/2] ASoC: Intel: bytcr_rt5640: Add quirk for the Nuvison/TMax TM800W560 tablet

Message ID 20180603134232.677-1-hdegoede@redhat.com (mailing list archive)
State Accepted
Commit 6cea3590820819049df5945136b8a5acd72ed0f8
Headers show

Commit Message

Hans de Goede June 3, 2018, 1:42 p.m. UTC
Add a quirk for the Nuvison/TMax TM800W560 tablet, this tablet uses IN1
for the internal mic rather then the default IN3 and it uses JD2 rather
then JD1 for its not-inverted jack-detect switch.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 sound/soc/intel/boards/bytcr_rt5640.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

Comments

Pierre-Louis Bossart June 4, 2018, 1:57 p.m. UTC | #1
On 6/3/18 8:42 AM, Hans de Goede wrote:
> Add a quirk for the Nuvison/TMax TM800W560 tablet, this tablet uses IN1
> for the internal mic rather then the default IN3 and it uses JD2 rather
> then JD1 for its not-inverted jack-detect switch.
> 
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>

Both
Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>

BTW maybe we should move those quirks to a separate file, the quirk 
definitions will become larger than actual code pretty soon ...

> ---
>   sound/soc/intel/boards/bytcr_rt5640.c | 14 ++++++++++++++
>   1 file changed, 14 insertions(+)
> 
> diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards/bytcr_rt5640.c
> index d675d550f6c1..27a05778584f 100644
> --- a/sound/soc/intel/boards/bytcr_rt5640.c
> +++ b/sound/soc/intel/boards/bytcr_rt5640.c
> @@ -549,6 +549,20 @@ static const struct dmi_system_id byt_rt5640_quirk_table[] = {
>   					BYT_RT5640_DIFF_MIC |
>   					BYT_RT5640_MCLK_EN),
>   	},
> +	{	/* Nuvison/TMax TM800W560 */
> +		.matches = {
> +			DMI_EXACT_MATCH(DMI_SYS_VENDOR, "TMAX"),
> +			DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "TM800W560L"),
> +		},
> +		.driver_data = (void *)(BYT_RT5640_IN1_MAP |
> +					BYT_RT5640_JD_SRC_JD2_IN4N |
> +					BYT_RT5640_OVCD_TH_2000UA |
> +					BYT_RT5640_OVCD_SF_0P75 |
> +					BYT_RT5640_JD_NOT_INV |
> +					BYT_RT5640_DIFF_MIC |
> +					BYT_RT5640_SSP0_AIF1 |
> +					BYT_RT5640_MCLK_EN),
> +	},
>   	{	/* Pipo W4 */
>   		.matches = {
>   			DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"),
>
Hans de Goede June 4, 2018, 2 p.m. UTC | #2
Hi,

On 04-06-18 15:57, Pierre-Louis Bossart wrote:
> On 6/3/18 8:42 AM, Hans de Goede wrote:
>> Add a quirk for the Nuvison/TMax TM800W560 tablet, this tablet uses IN1
>> for the internal mic rather then the default IN3 and it uses JD2 rather
>> then JD1 for its not-inverted jack-detect switch.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> 
> Both
> Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>

Thanks.

> BTW maybe we should move those quirks to a separate file, the quirk definitions will become larger than actual code pretty soon ...

I can do that when the next quirk comes along.

Mark what is your take on this?

Regards,

Hans



> 
>> ---
>>   sound/soc/intel/boards/bytcr_rt5640.c | 14 ++++++++++++++
>>   1 file changed, 14 insertions(+)
>>
>> diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards/bytcr_rt5640.c
>> index d675d550f6c1..27a05778584f 100644
>> --- a/sound/soc/intel/boards/bytcr_rt5640.c
>> +++ b/sound/soc/intel/boards/bytcr_rt5640.c
>> @@ -549,6 +549,20 @@ static const struct dmi_system_id byt_rt5640_quirk_table[] = {
>>                       BYT_RT5640_DIFF_MIC |
>>                       BYT_RT5640_MCLK_EN),
>>       },
>> +    {    /* Nuvison/TMax TM800W560 */
>> +        .matches = {
>> +            DMI_EXACT_MATCH(DMI_SYS_VENDOR, "TMAX"),
>> +            DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "TM800W560L"),
>> +        },
>> +        .driver_data = (void *)(BYT_RT5640_IN1_MAP |
>> +                    BYT_RT5640_JD_SRC_JD2_IN4N |
>> +                    BYT_RT5640_OVCD_TH_2000UA |
>> +                    BYT_RT5640_OVCD_SF_0P75 |
>> +                    BYT_RT5640_JD_NOT_INV |
>> +                    BYT_RT5640_DIFF_MIC |
>> +                    BYT_RT5640_SSP0_AIF1 |
>> +                    BYT_RT5640_MCLK_EN),
>> +    },
>>       {    /* Pipo W4 */
>>           .matches = {
>>               DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"),
>>
>
Mark Brown June 18, 2018, 12:04 p.m. UTC | #3
On Mon, Jun 04, 2018 at 04:00:06PM +0200, Hans de Goede wrote:
> On 04-06-18 15:57, Pierre-Louis Bossart wrote:

> > BTW maybe we should move those quirks to a separate file, the quirk definitions will become larger than actual code pretty soon ...

> I can do that when the next quirk comes along.

> Mark what is your take on this?

I don't know that I really mind - those machine drivers are basically
all quirk tables at some level, it's just a question of what goes in the
core bit and what goes into patches on top of that.
diff mbox

Patch

diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards/bytcr_rt5640.c
index d675d550f6c1..27a05778584f 100644
--- a/sound/soc/intel/boards/bytcr_rt5640.c
+++ b/sound/soc/intel/boards/bytcr_rt5640.c
@@ -549,6 +549,20 @@  static const struct dmi_system_id byt_rt5640_quirk_table[] = {
 					BYT_RT5640_DIFF_MIC |
 					BYT_RT5640_MCLK_EN),
 	},
+	{	/* Nuvison/TMax TM800W560 */
+		.matches = {
+			DMI_EXACT_MATCH(DMI_SYS_VENDOR, "TMAX"),
+			DMI_EXACT_MATCH(DMI_PRODUCT_NAME, "TM800W560L"),
+		},
+		.driver_data = (void *)(BYT_RT5640_IN1_MAP |
+					BYT_RT5640_JD_SRC_JD2_IN4N |
+					BYT_RT5640_OVCD_TH_2000UA |
+					BYT_RT5640_OVCD_SF_0P75 |
+					BYT_RT5640_JD_NOT_INV |
+					BYT_RT5640_DIFF_MIC |
+					BYT_RT5640_SSP0_AIF1 |
+					BYT_RT5640_MCLK_EN),
+	},
 	{	/* Pipo W4 */
 		.matches = {
 			DMI_EXACT_MATCH(DMI_BOARD_VENDOR, "AMI Corporation"),