Set up SOF on MinnowBoard Turbot¶
MinnowBoard resources¶
About Turbot¶
Schematic¶
BIOS¶
We recommend using the latest version.
Development¶
Hardware Rework & Connect External Audio Codec¶
Realtek ALC5651
Dialog DA7212
Update BIOS and Insert OEM Key¶
MinnowBoard does not need key signing, so no OEM key is needed.
Install Linux¶
Install Ubuntu: https://minnowboard.org/tutorials/installing-ubuntu-lts/
Set Up SOF¶
Please follow the build from scratch instructions for generic set up steps.
Set up Xtensa config to build with xt-xcc:
Install the RD-2012.5 version of Xtensa tools from Xplorer.
Download the Xtensa core config for BYT.
Save the core config tarball (Intel_HiFiEP_linux.tgz) in your <xtensa-tools-root>/XtDevTools/downloads directory.
Unzip and install the tarball.
tar xvzf Intel\_HiFiEP\_linux.tgz cd Intel\_HiFiEP ./install
When prompted, enter the Xtensa tools directory.
<xtensa-tools-root>/XtDevTools/install/tools/RD-2012.5-linux/XtensaTools
After you have built and setup SOF:
Copy the*sof-byt.ri* to /lib/firmware/intel/ on Minnow Turbot FS
Clone the Sound Open Firmware firmware tools from git://git.alsa-project.org/sound-open-firmware-tools.git and select a topology file like one of the following:
test-ssp2-passthrough-s16le-s16le-48k-codec.tplg test-ssp2-passthrough-s24le-s24le-48k-codec.tplg test-ssp2-volume-s16le-s16le-48k-codec.tplg test-ssp2-volume-s24le-s24le-48k-codec.tplg
Note
We only support pass-through topology in SOF 1.0.
Copy the topology file to /lib/firmware/intel/ as sof-byt-“codec name”.tplg (e.g. sof-byt-rt5651.tplg) to the Minnow Turbot FS.
UCM¶
Pierre Bossart provides a UCM repository that supports both headset mode and line in/out mode.
You can also use alsactl to restore a recommended asound.state file for the amixer setting.
asound.state files: user@bee:/git/audio/reef/board-int
Kernel build¶
Kernel update¶
Repo: https://github.com/plbossart/sound.git
Branch: heads/topic/sof-v4.14
Select the machine and codec driver in kernel config
Device Drivers > Sound card support > Advanced Linux Sound Architecture > ALSA for SoC audio support
Make sure ASoC SOF Baytrail and codec RT5651/DA7212 are selected.
Build deb package.
make -j8 && make -j8 deb-pkg
Package all the *.deb files for MinnowBoard, and install all deb files.
dpkg -i \*.deb
Reboot your system.
EFI API¶
Repo: https://github.com/plbossart/MinnowBoardMaxFirmware.git
Clone the repo and build the source code.
Note
AudioSsdtUpdate.efi and associated .aml files are avaible as pre-compiled binaries under X64/
Steps:
Create a startup.nsh file in /boot/efi/
vim startup.nsh
Add the following:
fs0: cd EFI AudioSsdtUpdate.efi "codecname".aml(like RT5651.aml or DA7212.aml) cd ubuntu grubx64.efi
Move .aml and .efi files to EFI directory.
cp \*.aml /boot/efi/EFI cp AudioSsdtUpdate.efi /boot/efi/EFI
Configure the BIOS.
From the BIOS press F2.
Select the EFI Internal Shell as primary boot option: Boot-Maintenance Manager -> Boot Options -> Change Boot Order
Press F10 to save and exit.
EFI shell will automatically run the startup.nsh shell script.