[Sound-open-firmware] Support for Tangier SoC

Pierre-Louis Bossart pierre-louis.bossart at linux.intel.com
Mon Oct 23 06:31:01 CEST 2017


On 10/22/17 10:28 PM, Sven Schwermer wrote:
> Hi Liam,
> 
> today, I tried getting SOF to run on my Edison. Here's what I did:
> 
> - compiled the topic/sof-v4.13 branch
> - disabled everything SST related in the config
> - enabled the following:
>      CONFIG_SND_SOC_SOF_PCI=m
>      CONFIG_SND_SOC_SOF_ACPI=m
>      CONFIG_SND_SOC_SOF_NOCODEC=y
>      CONFIG_SND_SOC_SOF=y
>      CONFIG_SND_SOC_SOF_INTEL=y
>      CONFIG_SND_SOC_SOF_BAYTRAIL=m
>      CONFIG_SND_SOC_SOF_APOLLOLAKE=m
>      CONFIG_SND_SOC_SOF_CANNONLAKE=m

For the sake of simplicity, can you avoid enabling the last two, it 
seems to generate issues that we've not looked at yet.

> - compiled the SOF from the 1.0-dev branch, following the instructions
> in the wiki
> 
> Upon bootup I made sure, that the fw is located at
> /lib/firmware/intel/reef-byt.ri. Then I did the following:
> 
> # insmod /mnt/snd-sof-intel-byt.ko
> # insmod /mnt/sof-pci-dev.ko
> sof_pci_dev: Unknown symbol snd_sof_cnl_ops (err 0)
> sof_pci_dev: Unknown symbol snd_sof_bxt_ops (err 0)
> sof_pci_dev: Unknown symbol snd_sof_cnl_ops (err 0)
> sof_pci_dev: Unknown symbol snd_sof_bxt_ops (err 0)
> insmod: can't insert '/mnt/sof-pci-dev.ko': unknown symbol in module, or
> unknown parameter
> # insmod /mnt/snd-sof-intel-apl.ko
> # insmod /mnt/sof-pci-dev.ko
> sof-audio-pci 0000:00:0d.0: No matching ASoC machine driver found -
> using nocodec
> sof-nocodec sof-nocodec: ASoC: CPU DAI sof-audio not registered
> resource sanity check: requesting [mem 0xff200000-0xff3fffff], which
> spans more than 0000:00:0e.0 [mem 0xff298000-0xff29bfff]
> caller byt_probe+0xfb/0x1730 [snd_sof_intel_byt] mapping multiple BARs
> pmd_set_huge: Cannot satisfy [mem 0x05e00000-0x06000000] with a
> huge-page mapping due to MTRR override.
> sof-audio sof-audio: error: invalid firmware signature
> sof-audio sof-audio: error: invalid FW header
> sof-audio sof-audio: error: failed to load DSP firmware -22
> sof-nocodec sof-nocodec: ASoC: CPU DAI sof-audio not registered

there was another report of a firmware issue signature issue that we are 
looking into, can you make sure you pull the last firmware (sof.git, 
soft.git) and Liam's branch?

FYI, both Liam and I will only be able to help with delayed emails this 
week, thanks for your understanding.

> 
> There seem to be at least two issues here:
> 1. There is a memory mapping that can not be completed.
> 2. The firmware seems to have an invalid format.
> 3. The sof-pci-dev module seems to require either the apollo or coffee
> lake modules. Is that intentional or a bug?
> 
> Does anyone know what could be wrong here?
> 
> Sven
> 
> On 10/18/2017 01:11 PM, Liam Girdwood wrote:
>> Hi Sven,
>>
>> Btw, best to subscribe as non member posts are blocked and delayed.
>>
>> On Tue, 2017-10-17 at 20:49 +0200, Sven Schwermer wrote:
>>> Hi guys,
>>>
>>> Thanks for your replies. I had tried a running a vanilla kernel on the
>>> Edison. There, the sst_pci driver is probed, but the platform data is
>>> not set and that’s basically where I got stuck because I couldn’t
>>> figure out where that’s supposed to be set. Is that usually ACPI’s
>>> job?
>>>
>>
>> I dont think ACPI is used by the ADSP on Edison, I think it's purely a
>> PCI device. Vanilla kernel wont work either atm, you will need my
>> topic/sof-v4.13 branch from here :-
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/lrg/asoc.git
>>
>> Note that this branch only works on the SOF 1.0-dev branches (that are
>> not stable) and not the stable master branch.
>>
>> The stable SOF master firmware branch has a different IPC ABI and only
>> works with the topic/reef kernels (that unfortunately dont support PCI
>> mode on Edison) :(
>>
>>> What exactly should happen once the mrfld_sst SFI IPC is enumerated? I
>>> am lacking the big picture and the order of events here. Is there an
>>> overview document somewhere available online?
>>>
>>
>> There is also more than one driver upstream. The sst driver is for
>> Intel's closed source FW. The open source FW uses different ABIs and
>> APIs to the closed source version, currently you need to blacklist the
>> old SST modules in order to load the SOF FW and driver (this is being
>> fixed in upstream atm)
>>
>>> I guess, the nocodec mode would be fine as a start.
>>>
>>
>> Yes.
>>
>> Liam
>>
>>> Thanks, Sven
>>>
>>>> On 16 Oct 2017, at 17:59, Pierre-Louis Bossart <pierre-louis.bossart at linux.intel.com> wrote:
>>>>
>>>> On 10/16/17 10:19 AM, Liam Girdwood wrote:
>>>>> On Sun, 2017-10-15 at 19:51 +0200, Sven Schwermer wrote:
>>>>>> Hi.
>>>>>>
>>>>>> I was wondering if the Tangier SoC (Merrifield platform) is or will be
>>>>>> supported by SOF? I have the Intel Edison compute module in mind.
>>>>>>
>>>>> Yes, it _should_ work on Merrifield, but I don't have Edison HW so some
>>>>> things on the driver side might need some work.
>>>>> The 1.0-dev branch and sof-v4.13 kernel will probably be better for
>>>>> Edison than the stable 0.95 branch atm (mainly due to driver updates),
>>>>> but 1.0-dev is still has a few issues prior to doing an rc1 tag.
>>>>
>>>> The main difference with Baytrail is pci/acpi enumeration, and sfi/acpi for the firmware. I've been wanting to enable Tangier for some time but could never figure out how to add a reference to an audio codec, so it'd likely work in 'nocodec' mode, with just the I2S signals on the connector.
>>>
>>
>>
> _______________________________________________
> Sound-open-firmware mailing list
> Sound-open-firmware at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware
> 



More information about the Sound-open-firmware mailing list