All of lore.kernel.org
 help / color / mirror / Atom feed
* ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
@ 2015-11-10  1:31 Michael Pogrebinsky
  2015-11-10 18:53 ` Pierre-Louis Bossart
  0 siblings, 1 reply; 8+ messages in thread
From: Michael Pogrebinsky @ 2015-11-10  1:31 UTC (permalink / raw)
  To: alsa-devel

Hi all,
I have the MinnowBoard Max with Baytrail Atom (ValleyView) SoC.
I'm attempting to write an Alsa (ASoC) driver for my sound card to
work with this board.
PCM should work through I2S for this sound card I have.

>From my understanding Baytrail's I2S goes over LPE. I read this
thread:https://www.mail-archive.com/elinux-minnowboard@lists.elinux.org/msg01572.html

So I understand that I need the 3 components for my ASoC driver. However I
am having trouble at understanding how to communicate with the LPE to get
the I2S working.

Here is what I have done so far:
I am running Ubuntu 14.04 LTS, kernel : 4.3.0-040300rc4

First of all I downloaded the firmware fw_sst_0f28.bin-48kHz_i2s_master
fromhttps://kernel.googlesource.com/pub/scm/linux/kernel/git/firmware/linux-firmware/+/refs/heads/master/intel/fw_sst_0f28.bin-48kHz_i2s_master

And put it /lib/firmware/intel/.
Later I went to the Bios and enabled LPE in PCI mode. I do see the LPE
controller now, but it shows as UNCLAIMED.

Later I looked at the sound/soc/inte/baytrail/ and from my understanding
in order for me to get the I2S working I need to load this module so I did
modprobe snd-soc-sst-baytrail-pcm. Later I wrote a simple codec and machine
driver (looking at the example of sound/soc/intel/boards/byt_max98090)
however everytime I attempt to register the sound card with
snd_soc_register_card, I get the following error message in dmesg : "ASoC:
CPU DAI baytrail-pcm-audio not registered".

>From this I deduct that although I loaded the snd-soc-sst-baytrail-pcm
module, the driver has not actually been loaded.
I'm clueless on how to proceed from here.

I would highly appreciate your help.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-10  1:31 ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max Michael Pogrebinsky
@ 2015-11-10 18:53 ` Pierre-Louis Bossart
  2015-11-10 19:59   ` Michael Pogrebinsky
  2017-10-02 16:14   ` Nicola Lunghi
  0 siblings, 2 replies; 8+ messages in thread
From: Pierre-Louis Bossart @ 2015-11-10 18:53 UTC (permalink / raw)
  To: Michael Pogrebinsky, alsa-devel; +Cc: John Hawley

Hi Michael,

> I have the MinnowBoard Max with Baytrail Atom (ValleyView) SoC.
> I'm attempting to write an Alsa (ASoC) driver for my sound card to
> work with this board.
> PCM should work through I2S for this sound card I have.

Good to hear. There are several folks in Intel trying to enable I2S over 
the low-speed connector for 3rd party enablement or help 'makers'. This 
is still work-in-progress but we can already share some elements of 
information based on our own experience:
1. the default 0.82 firmware doesn't enable the I2S pins, we are 
currently using a DSDT override to configure them.
2. the audio codec needs to be registered as a child of I2C6 (it's 
typically I2C2 on regular baytrail platforms). this is also part of the 
DSDT override.
3. since we need to support multiple audio codecs, we'd like to add a 
mechanism to add information in the SSDT table to be able to boot the 
same kernel and select the right drivers. Alternatively you will have to 
use the DSDT override method until this mechanism is ready.
4. there is no MCLK on existing MinnowBoards, so your codec will have to 
drive its PLL from the BLCK. newer versions of the MinnowBoard Turbot 
will support an MCLK but they are in pre-production stage and to the 
best of my knowledge not available commercially yet.
5. to get the best long-term support you really want to use the newer 
DPCM-based driver/firmware for e.g 24-bit, TDM and deep-buffer support. 
We have a set of patches that have not been published upstream yet but 
if you are interested you can look at my github 
https://github.com/plbossart/sound/tree/minnow-v4.3-24bit. In theory if 
you take this code and change the DSDT to support your _HID just like it 
was done for the rt5651 the drivers should load and register a sound card.
Disclaimer: there is no official support on this branch and 
rebases/fixes may happen at any time. the code will be submitted 
upstream when ready.

If you provide more information on which codec you are trying to link to 
we can help further.
-Pierre

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-10 18:53 ` Pierre-Louis Bossart
@ 2015-11-10 19:59   ` Michael Pogrebinsky
  2015-11-11  2:18     ` Michael Pogrebinsky
  2017-10-02 16:14   ` Nicola Lunghi
  1 sibling, 1 reply; 8+ messages in thread
From: Michael Pogrebinsky @ 2015-11-10 19:59 UTC (permalink / raw)
  To: Pierre-Louis Bossart; +Cc: John Hawley, alsa-devel

Hi Pierre,
Thank you so much for your reply, and for sharing your repo.
This is great news for me, as I was blocked for a while on this issue. And
I'm particularly happy that this is all done on top of the 4.3 Kernel, this
is very professional of you. I will try the code, and definitely let you
know how it goes, or if I have any issues.

Thank you again,
Michael



On Tue, Nov 10, 2015 at 10:53 AM, Pierre-Louis Bossart <
pierre-louis.bossart@linux.intel.com> wrote:

> Hi Michael,
>
> I have the MinnowBoard Max with Baytrail Atom (ValleyView) SoC.
>> I'm attempting to write an Alsa (ASoC) driver for my sound card to
>> work with this board.
>> PCM should work through I2S for this sound card I have.
>>
>
> Good to hear. There are several folks in Intel trying to enable I2S over
> the low-speed connector for 3rd party enablement or help 'makers'. This is
> still work-in-progress but we can already share some elements of
> information based on our own experience:
> 1. the default 0.82 firmware doesn't enable the I2S pins, we are currently
> using a DSDT override to configure them.
> 2. the audio codec needs to be registered as a child of I2C6 (it's
> typically I2C2 on regular baytrail platforms). this is also part of the
> DSDT override.
> 3. since we need to support multiple audio codecs, we'd like to add a
> mechanism to add information in the SSDT table to be able to boot the same
> kernel and select the right drivers. Alternatively you will have to use the
> DSDT override method until this mechanism is ready.
> 4. there is no MCLK on existing MinnowBoards, so your codec will have to
> drive its PLL from the BLCK. newer versions of the MinnowBoard Turbot will
> support an MCLK but they are in pre-production stage and to the best of my
> knowledge not available commercially yet.
> 5. to get the best long-term support you really want to use the newer
> DPCM-based driver/firmware for e.g 24-bit, TDM and deep-buffer support. We
> have a set of patches that have not been published upstream yet but if you
> are interested you can look at my github
> https://github.com/plbossart/sound/tree/minnow-v4.3-24bit. In theory if
> you take this code and change the DSDT to support your _HID just like it
> was done for the rt5651 the drivers should load and register a sound card.
> Disclaimer: there is no official support on this branch and rebases/fixes
> may happen at any time. the code will be submitted upstream when ready.
>
> If you provide more information on which codec you are trying to link to
> we can help further.
> -Pierre
>



-- 

[image: DAQRI] <http://daqri.com/>

Michael Pogrebinsky

Senior Android Developer - DAQRI Smart Helmet Applications

*Tel:* *844-327-7443*

michael.pogrebinsky@daqri.com <stephen.keegan@daqri.com>
DAQRI.com <http://daqri.com/>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-10 19:59   ` Michael Pogrebinsky
@ 2015-11-11  2:18     ` Michael Pogrebinsky
  2015-11-11 15:50       ` Pierre-Louis Bossart
  0 siblings, 1 reply; 8+ messages in thread
From: Michael Pogrebinsky @ 2015-11-11  2:18 UTC (permalink / raw)
  To: Pierre-Louis Bossart; +Cc: John Hawley, alsa-devel

Hi Pierre,
I downloaded 4.3 stable kernel, and I applied all the commits in the repo
you forwarded to me.
I'm running into an issue, where after doing those instructions:
"iasl -tc dsdt_minnow.dsl

mv dsdt_minnow.hex include/

the options following options need to be set in the .config
for the tables to be taken into account:

CONFIG_ACPI_CUSTOM_DSDT_FILE=dsdt_minnow.hex
CONFIG_ACPI_CUSTOM_DSDT=y"

"
I am not able to boot the kernel.
The last message I see on the screen before it goes blank is the system is
trying to load rmfs.
If I take the kernel with your patches however, and do not set the
Config_ACPI_CUSTOM_DST_FILE to dsdt_minnow.hex and do not run the iasl
tool. ( I just take the kernel with the patches) the system loads.

On the same note I should mention that I am running on Atom E3825 64 bit.
Thanks,
Michael





On Tue, Nov 10, 2015 at 11:59 AM, Michael Pogrebinsky <
michael.pogrebinsky@daqri.com> wrote:

> Hi Pierre,
> Thank you so much for your reply, and for sharing your repo.
> This is great news for me, as I was blocked for a while on this issue. And
> I'm particularly happy that this is all done on top of the 4.3 Kernel, this
> is very professional of you. I will try the code, and definitely let you
> know how it goes, or if I have any issues.
>
> Thank you again,
> Michael
>
>
>
> On Tue, Nov 10, 2015 at 10:53 AM, Pierre-Louis Bossart <
> pierre-louis.bossart@linux.intel.com> wrote:
>
>> Hi Michael,
>>
>> I have the MinnowBoard Max with Baytrail Atom (ValleyView) SoC.
>>> I'm attempting to write an Alsa (ASoC) driver for my sound card to
>>> work with this board.
>>> PCM should work through I2S for this sound card I have.
>>>
>>
>> Good to hear. There are several folks in Intel trying to enable I2S over
>> the low-speed connector for 3rd party enablement or help 'makers'. This is
>> still work-in-progress but we can already share some elements of
>> information based on our own experience:
>> 1. the default 0.82 firmware doesn't enable the I2S pins, we are
>> currently using a DSDT override to configure them.
>> 2. the audio codec needs to be registered as a child of I2C6 (it's
>> typically I2C2 on regular baytrail platforms). this is also part of the
>> DSDT override.
>> 3. since we need to support multiple audio codecs, we'd like to add a
>> mechanism to add information in the SSDT table to be able to boot the same
>> kernel and select the right drivers. Alternatively you will have to use the
>> DSDT override method until this mechanism is ready.
>> 4. there is no MCLK on existing MinnowBoards, so your codec will have to
>> drive its PLL from the BLCK. newer versions of the MinnowBoard Turbot will
>> support an MCLK but they are in pre-production stage and to the best of my
>> knowledge not available commercially yet.
>> 5. to get the best long-term support you really want to use the newer
>> DPCM-based driver/firmware for e.g 24-bit, TDM and deep-buffer support. We
>> have a set of patches that have not been published upstream yet but if you
>> are interested you can look at my github
>> https://github.com/plbossart/sound/tree/minnow-v4.3-24bit. In theory if
>> you take this code and change the DSDT to support your _HID just like it
>> was done for the rt5651 the drivers should load and register a sound card.
>> Disclaimer: there is no official support on this branch and rebases/fixes
>> may happen at any time. the code will be submitted upstream when ready.
>>
>> If you provide more information on which codec you are trying to link to
>> we can help further.
>> -Pierre
>>
>
>
>
> --
>
> [image: DAQRI] <http://daqri.com/>
>
> Michael Pogrebinsky
>
> Senior Android Developer - DAQRI Smart Helmet Applications
>
> *Tel:* *844-327-7443*
>
> michael.pogrebinsky@daqri.com <stephen.keegan@daqri.com>
> DAQRI.com <http://daqri.com/>
>



-- 

[image: DAQRI] <http://daqri.com/>

Michael Pogrebinsky

Senior Android Developer - DAQRI Smart Helmet Applications

*Tel:* *844-327-7443*

michael.pogrebinsky@daqri.com <stephen.keegan@daqri.com>
DAQRI.com <http://daqri.com/>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-11  2:18     ` Michael Pogrebinsky
@ 2015-11-11 15:50       ` Pierre-Louis Bossart
  2015-11-11 17:53         ` Michael Pogrebinsky
  0 siblings, 1 reply; 8+ messages in thread
From: Pierre-Louis Bossart @ 2015-11-11 15:50 UTC (permalink / raw)
  To: Michael Pogrebinsky; +Cc: John Hawley, alsa-devel

On 11/10/15 8:18 PM, Michael Pogrebinsky wrote:
> Hi Pierre,
> I downloaded 4.3 stable kernel, and I applied all the commits in the repo
> you forwarded to me.
> I'm running into an issue, where after doing those instructions:
> "iasl -tc dsdt_minnow.dsl
>
> mv dsdt_minnow.hex include/

This is only needed if you modified dsdt_minnow.dsl. if you did, can you 
provide the log of iasl to make sure the .hex file generation goes well.

> the options following options need to be set in the .config
> for the tables to be taken into account:
>
> CONFIG_ACPI_CUSTOM_DSDT_FILE=dsdt_minnow.hex
> CONFIG_ACPI_CUSTOM_DSDT=y"

yes

> I am not able to boot the kernel.

did you try with the unmodified .hex file but those two options set?

Another thing to look at is that you need to enable the LPSS (and 
specifically I2C6) and disable HDAudio in the boot menu.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-11 15:50       ` Pierre-Louis Bossart
@ 2015-11-11 17:53         ` Michael Pogrebinsky
  0 siblings, 0 replies; 8+ messages in thread
From: Michael Pogrebinsky @ 2015-11-11 17:53 UTC (permalink / raw)
  To: Pierre-Louis Bossart; +Cc: John Hawley, alsa-devel

Hi Pierre,
Thank you for your reply,
Did you mean enabling and disabling LPSS and HDAudio in the BIOS or Kernel
config?
I checked in the BIOS and LPSS is enabled ( ACPI Mode). And I2C6 is enabled
as well.
Regarding the HDAudio - Do you mean South Cluster Configuration - >Audio
Configuration - >Audio Controller ? I see only 2 options there, LPE Audio
Support and
"Audio Controller
--Azalia VCi Enable
--Azalia Docking Support Enable
--Azalia PME Enable
--Azalia HDMI Codec"
I disabled it and it didn't make a difference,
LPE controller is enabled ( I tried both ACPI and PCI mode)

Regarding the dsdt_minnow.hex , I did not modify it, I simply run the
instruction and copied the hex file to include/.
The output of iasl command is :

iasl -tc dsdt_minnow.dsl


Intel ACPI Component Architecture

ASL Optimizing Compiler version 20140214-64 [Mar 29 2014]

Copyright (c) 2000 - 2014 Intel Corporation


dsdt_minnow.dsl   2780:             Method (XDEP, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   2784:                     Name (_DEP, Package (0x01)

Remark   2089 -            Object is not referenced ^  (Name is within
method [XDEP])


dsdt_minnow.dsl   3570:                             Name (_T_0, Zero)

Remark   2011 -               Use of compiler reserved name ^  (_T_0)


dsdt_minnow.dsl   3672:                             Name (_T_0, Zero)

Remark   2011 -               Use of compiler reserved name ^  (_T_0)


dsdt_minnow.dsl   3774:                             Name (_T_0, Zero)

Remark   2011 -               Use of compiler reserved name ^  (_T_0)


dsdt_minnow.dsl   3876:                             Name (_T_0, Zero)

Remark   2011 -               Use of compiler reserved name ^  (_T_0)


dsdt_minnow.dsl   4607:             Method (_CRS, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   4643:             Method (GDEP, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   4647:                     Name (_DEP, Package (0x01)

Remark   2089 -            Object is not referenced ^  (Name is within
method [GDEP])


dsdt_minnow.dsl   7690:                 Method (_CRS, 0, NotSerialized)

Remark   2120 -                                   ^ Control Method should
be made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8194:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8205:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8216:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8300:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8311:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8322:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8407:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8418:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8429:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8513:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8524:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8535:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8659:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8670:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8681:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8765:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8776:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8787:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8913:             Method (SSCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8924:             Method (FMCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


dsdt_minnow.dsl   8935:             Method (FPCN, 0, NotSerialized)

Remark   2120 -                               ^ Control Method should be
made Serialized (due to creation of named objects within)


ASL Input:     dsdt_minnow.dsl - 9261 lines, 257789 bytes, 3258 keywords

AML Output:    dsdt.aml - 31359 bytes, 1147 named objects, 2111 executable
opcodes

Hex Dump:      dsdt_minnow.hex - 294325 bytes


Compilation complete. 0 Errors, 0 Warnings, 31 Remarks, 130 Optimizations


Thanks again for your help Pierre,


Michael



On Wed, Nov 11, 2015 at 7:50 AM, Pierre-Louis Bossart <
pierre-louis.bossart@linux.intel.com> wrote:

> On 11/10/15 8:18 PM, Michael Pogrebinsky wrote:
>
>> Hi Pierre,
>> I downloaded 4.3 stable kernel, and I applied all the commits in the repo
>> you forwarded to me.
>> I'm running into an issue, where after doing those instructions:
>> "iasl -tc dsdt_minnow.dsl
>>
>> mv dsdt_minnow.hex include/
>>
>
> This is only needed if you modified dsdt_minnow.dsl. if you did, can you
> provide the log of iasl to make sure the .hex file generation goes well.
>
> the options following options need to be set in the .config
>> for the tables to be taken into account:
>>
>> CONFIG_ACPI_CUSTOM_DSDT_FILE=dsdt_minnow.hex
>> CONFIG_ACPI_CUSTOM_DSDT=y"
>>
>
> yes
>
> I am not able to boot the kernel.
>>
>
> did you try with the unmodified .hex file but those two options set?
>
> Another thing to look at is that you need to enable the LPSS (and
> specifically I2C6) and disable HDAudio in the boot menu.
>



-- 

[image: DAQRI] <http://daqri.com/>

Michael Pogrebinsky

Senior Android Developer - DAQRI Smart Helmet Applications

*Tel:* *844-327-7443*

michael.pogrebinsky@daqri.com <stephen.keegan@daqri.com>
DAQRI.com <http://daqri.com/>

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2015-11-10 18:53 ` Pierre-Louis Bossart
  2015-11-10 19:59   ` Michael Pogrebinsky
@ 2017-10-02 16:14   ` Nicola Lunghi
  2017-10-02 18:22     ` Pierre-Louis Bossart
  1 sibling, 1 reply; 8+ messages in thread
From: Nicola Lunghi @ 2017-10-02 16:14 UTC (permalink / raw)
  Cc: alsa-devel, pierre-louis.bossart

Dear Pierre Louis

We are having problems enabling I2S output with the UP board.

We have currently two boards one based on Cherry Trail Platform and one 
on the Apollo Lake.

We want for now enable only I2S output without codec on kernel 4.9/4.10.

Can you give us some hint about the required ACPI asl code to add in the 
ACPI and if there's something else required in the Linux kernel?

Best Regards

Nicola Lunghi

-- 
Nicola Lunghi
*Emutex Limited*
International Science Centre, National Technology Park, Limerick, Ireland.
Email: nicola.lunghi@emutex.com
Web: http://www.emutex.com

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max
  2017-10-02 16:14   ` Nicola Lunghi
@ 2017-10-02 18:22     ` Pierre-Louis Bossart
  0 siblings, 0 replies; 8+ messages in thread
From: Pierre-Louis Bossart @ 2017-10-02 18:22 UTC (permalink / raw)
  To: Nicola Lunghi; +Cc: alsa-devel

On 10/02/2017 11:14 AM, Nicola Lunghi wrote:
> Dear Pierre Louis
>
> We are having problems enabling I2S output with the UP board.
>
> We have currently two boards one based on Cherry Trail Platform and 
> one on the Apollo Lake.
>
> We want for now enable only I2S output without codec on kernel 4.9/4.10.
>
> Can you give us some hint about the required ACPI asl code to add in 
> the ACPI and if there's something else required in the Linux kernel?

in theory all you need to do is enable the NOCODEC option, make sure 
that all other machine drivers are removed from the build and only add 
in ASL the bare minimum to make the audio DSP enumerate (as in make sure 
that all codecs are removed from the BIOS as well).

On Minnowboard MAX, I used this code
https://github.com/plbossart/MinnowBoardMaxFirmware/blob/master/AudioSsdtUpdate/LPEX.asl

You would need to compare with the existing BIOS since there might be 
some differences with CHT.

I have not done this work on APL and it's likely different since it's 
based on PCI.

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-10-02 18:22 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-11-10  1:31 ASoC Sound Driver I2S over LPE, Intel Baytrail SoC. MinnowBoard Max Michael Pogrebinsky
2015-11-10 18:53 ` Pierre-Louis Bossart
2015-11-10 19:59   ` Michael Pogrebinsky
2015-11-11  2:18     ` Michael Pogrebinsky
2015-11-11 15:50       ` Pierre-Louis Bossart
2015-11-11 17:53         ` Michael Pogrebinsky
2017-10-02 16:14   ` Nicola Lunghi
2017-10-02 18:22     ` Pierre-Louis Bossart

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.