Message ID | 20181208130114.6612-1-hdegoede@redhat.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 271248f4c2bf56dc6b3582e37c7ac19dd483d989 |
Headers | show |
Series | [1/2] ASoC: Intel: bytcr_rt5640: Add quirk for the Prowise PT301 tablet | expand |
On 12/8/18 7:01 AM, Hans de Goede wrote: > Add a quirk for the Prowise PT301 tablet, this BYTCR tablet has no CHAN > package in its ACPI tables and uses SSP0-AIF1 rather then SSP0-AIF2 which > is the default for BYTCR devices. > > Also it uses IN1 for its MIC and JD2 for jack-detect, rather then the > default IN3 and JD1. Looks like someone was trying hard to avoid using defaults...Oh well. Both patch 1 and 2 Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> > > Signed-off-by: Hans de Goede <hdegoede@redhat.com> > --- > 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 8587bd3d1cc1..6df902e3a380 100644 > --- a/sound/soc/intel/boards/bytcr_rt5640.c > +++ b/sound/soc/intel/boards/bytcr_rt5640.c > @@ -674,6 +674,20 @@ static const struct dmi_system_id byt_rt5640_quirk_table[] = { > BYT_RT5640_SSP0_AIF2 | > BYT_RT5640_MCLK_EN), > }, > + { > + /* Prowise PT301 */ > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Prowise"), > + DMI_MATCH(DMI_PRODUCT_NAME, "PT301"), > + }, > + .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_DIFF_MIC | > + BYT_RT5640_SSP0_AIF1 | > + BYT_RT5640_MCLK_EN), > + }, > { > .matches = { > DMI_MATCH(DMI_BOARD_VENDOR, "TECLAST"),
Hi, On 10-12-18 15:35, Pierre-Louis Bossart wrote: > > On 12/8/18 7:01 AM, Hans de Goede wrote: >> Add a quirk for the Prowise PT301 tablet, this BYTCR tablet has no CHAN >> package in its ACPI tables and uses SSP0-AIF1 rather then SSP0-AIF2 which >> is the default for BYTCR devices. >> >> Also it uses IN1 for its MIC and JD2 for jack-detect, rather then the >> default IN3 and JD1. > > Looks like someone was trying hard to avoid using defaults...Oh well. FWIW: Well in practice more BYTCR devices seem to use SSP0-AIF1 rather then SSP0-AIF2, but I don't want to change the driver defaults at this point and most BYTCR devices do have a CHAN package in their ACPI tables. As for using IN1+JD2 rather then IN3+JD1 (which seem to be the most if not only used combos) in my experience there is pretty much a 50/50 split in which devices uses which combo. I've a table with the correct settings for most of the device which I have here: https://github.com/jwrdegoede/sunxi-fedora-scripts/blob/master/x86-codec-info > Both patch 1 and 2 > > Acked-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Thanks. Regards, Hans >> Signed-off-by: Hans de Goede <hdegoede@redhat.com> >> --- >> 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 8587bd3d1cc1..6df902e3a380 100644 >> --- a/sound/soc/intel/boards/bytcr_rt5640.c >> +++ b/sound/soc/intel/boards/bytcr_rt5640.c >> @@ -674,6 +674,20 @@ static const struct dmi_system_id byt_rt5640_quirk_table[] = { >> BYT_RT5640_SSP0_AIF2 | >> BYT_RT5640_MCLK_EN), >> }, >> + { >> + /* Prowise PT301 */ >> + .matches = { >> + DMI_MATCH(DMI_SYS_VENDOR, "Prowise"), >> + DMI_MATCH(DMI_PRODUCT_NAME, "PT301"), >> + }, >> + .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_DIFF_MIC | >> + BYT_RT5640_SSP0_AIF1 | >> + BYT_RT5640_MCLK_EN), >> + }, >> { >> .matches = { >> DMI_MATCH(DMI_BOARD_VENDOR, "TECLAST"),
diff --git a/sound/soc/intel/boards/bytcr_rt5640.c b/sound/soc/intel/boards/bytcr_rt5640.c index 8587bd3d1cc1..6df902e3a380 100644 --- a/sound/soc/intel/boards/bytcr_rt5640.c +++ b/sound/soc/intel/boards/bytcr_rt5640.c @@ -674,6 +674,20 @@ static const struct dmi_system_id byt_rt5640_quirk_table[] = { BYT_RT5640_SSP0_AIF2 | BYT_RT5640_MCLK_EN), }, + { + /* Prowise PT301 */ + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Prowise"), + DMI_MATCH(DMI_PRODUCT_NAME, "PT301"), + }, + .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_DIFF_MIC | + BYT_RT5640_SSP0_AIF1 | + BYT_RT5640_MCLK_EN), + }, { .matches = { DMI_MATCH(DMI_BOARD_VENDOR, "TECLAST"),
Add a quirk for the Prowise PT301 tablet, this BYTCR tablet has no CHAN package in its ACPI tables and uses SSP0-AIF1 rather then SSP0-AIF2 which is the default for BYTCR devices. Also it uses IN1 for its MIC and JD2 for jack-detect, rather then the default IN3 and JD1. Signed-off-by: Hans de Goede <hdegoede@redhat.com> --- sound/soc/intel/boards/bytcr_rt5640.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+)