Just back today.
On Tue, 2017-10-24 at 22:11 +0200, Sven Schwermer wrote:
Hi Pierre,
I did indeed compile the wrong SOFT branch. Using the 1.0-dev branch with alsa utils & lib fresh from git, I managed to produce a valid firmware file. I also modified the SOF Kconfig to also build the PCI driver for Baytrail devices. I still get the memory mapping error in addition to new errors:
# insmod snd-sof-intel-byt.ko # insmod 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-0xff] caller byt_probe+0xfb/0x1730 [snd_sof_intel_byt] mapping multiple BARs sof-nocodec sof-nocodec: ASoC: CPU DAI sof-audio not registered pmd_set_huge: Cannot satisfy [mem 0x05e00000-0x06000000] with a huge-page mapping due to MTRR override. sof-audio sof-audio: Firmware info: version 1:0- build 0 on Oct 22 2017:17:28:10 sof-audio sof-audio: firmware boot complete sof-audio sof-audio: error: ipc error for 0x90010000 size 0xc sof-audio sof-audio: error: cant set params for DMA for Trace-22 sof-audio sof-audio: error: failed to initialize trace -22
Can you check you have the latest kernel ? my HEAD is at :-
09376b5f404b5185f9e7732879821cf9dbb83dfe
sof-audio sof-audio: Direct firmware load for intel/reef-byt.tplg failed with error -2 sof-audio sof-audio: error: tplg intel/reef-byt.tplg load failed with -2
The topology files are generated using the latest alsa topology compiler in alsa-utils and alsa-lib.git. The topology sources are part of the SOF tools repo (alongside rimage)
Liam
sof-audio sof-audio: error: failed to load DSP topology -2 sof-audio sof-audio: ASoC: failed to probe component -2 sof-nocodec sof-nocodec: ASoC: failed to instantiate card -2 sof-nocodec: probe of sof-nocodec failed with error -2
# lsmod Module Size Used by Not tainted sof_pci_dev 16384 0 snd_sof_intel_byt 20480 1 sof_pci_dev
Any sort of hints are appreciated.
Thanks, Sven
On 10/23/2017 06:31 AM, Pierre-Louis Bossart wrote:
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:
- There is a memory mapping that can not be completed.
- The firmware seems to have an invalid format.
- 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@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@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware