[alsa-devel] ASoC: Intel: sst: Missing IRQ at index 5 on BYT-T device
Pierre-Louis Bossart
pierre-louis.bossart at linux.intel.com
Tue Dec 18 03:13:36 CET 2018
>>>> The quirks to get sound working with bytcr-rt5640 on that device are:
>>>> BYT_RT5640_SSP0_AIF1 | BYT_RT5640_IN1_MAP | BYT_RT5640_MCLK_EN
>>>>
>>>> I guess this means that SSP0 is being used?
>>> Yes indeed, and that makes me think we should force this device to look like
>>> Baytrail-CR.
>>>
>>> You can do this with a DMI-based quirk (preferably in is_byt_cr directly so
>>> that I can reuse the code when I move it to a helper at some point).
>> Okay - thanks! One last question:
>> I was looking at the ACPI DSDT tables of some similar devices and have
>> found two others that look the same (only one IRQ listed). In this case,
>> the BYT-T acpi_ipc_irq_index = 5 will never work, and we will definitely
>> have a better chances with trying Baytrail-CR.
>>
>> One of them actually had a similar patch proposed at [1] (although they
>> did it in a weird way and also need an extra machine driver).
>>
>> We could also detect this situation in a generic way with something like
>>
>> if (platform_irq_count(pdev) == 1) {
>> *bytcr = true;
>> return 0;
>> }
>>
>> ... instead of a DMI quirk. What do you think?
>>
> To avoid confusion: The existing PMIC-type based is_byt_cr() detection
> would be used in all other cases (i.e. if irq_count != 1), so it won't
> make any difference for the devices that are already working fine.
> (Most BYT-CR devices seem to have 5 IRQs listed)
>
> So it's more like
>
> if (platform_irq_count(pdev) == 1) {
> *bytcr = true;
> } else {
> // pmic-type based detection...
> }
>
> with platform_irq_count == 1 as condition for the "quirk".
The solution seems appealing but
1) does it really work? I am not sure an index=5 means there are 5
interrupts.
2) the test would affect all existing devices, and there's so much
hardware proliferation that proving this change in harmless might be
difficult. I personally only have one BYT-T (ASus T100) device left and
it's not very reliable. Hans seems to have a ton of devices but they are
mostly Byt-Cr?
More information about the Alsa-devel
mailing list