Howto

Armadillo-640でMQSオーディオを使う (Debian)

MQSを使用してオーディオの再生を行なう方法を紹介します。再生を行なうアプリケーションにはalsa-utilsを使用します。

なお、本Howtoでは、以下の環境を想定しています。

項目 動作確認環境
対象製品 Armadillo-640
Linuxカーネル linux-v4.14-at12.tar.gz
ATDE ATDE7(v20190527)
at-dtweb バージョン2.1.0
alsa-utils バージョン1.1.3-1

1.MQSデバイスを有効にする

MQSデバイスを有効にします。ここではat-dtwebを利用してDevice Treeファイルを構成し、Armadillo-640へ書き込む手順を紹介します。
at-dtwebの詳しい利用法に関してはArmadillo-640製品マニュアルの「Device Treeをカスタマイズする」を参照してください。

1. MQSのアサイン

MQSを17,18ピンへアサインして、Saveボタンを押してください。
加えて、CON9のシリアルコンソール出力が必要な場合はUART1(RXD/TXD)を3,5ピンへアサインしてください。

2. DTBファイルの書き込み

at-dtwebで生成したDTBファイルは以下にありますので、scp等でArmadillo-640へ転送してください。
以下はscpで転送する例です。1

[ATDE ~]$ ls linux-v4.14-at[version]/arch/arm/boot/dts/armadillo-640-at-dtweb.dtb 
linux-v4.14-at[version]/arch/arm/boot/dts/armadillo-640-at-dtweb.dtb
[ATDE ~]$ scp linux-v4.14-at[version]/arch/arm/boot/dts/armadillo-640-at-dtweb.dtb atmark@[ArmadilloのIPアドレス]:~/

DTBファイルを書き込み、再起動します。

[armadillo ~]# cd /home/atmark
[armadillo /home/atmark]# mount /dev/mmcblk0p2 /mnt
[armadillo /home/atmark]# cp armadillo-640-at-dtweb.dtb /mnt/boot/a640.dtb
[armadillo /home/atmark]# umount /mnt
[armadillo /home/atmark]# reboot

2.スピーカーを接続する

以下の回路図を参考にして、アンプやスピーカーを接続してください。

3.alsa-utilsで再生を行う

alsa-utilsをインストールします。

[armadillo ~]# apt-get update
[armadillo ~]# apt-get install alsa-utils

以下のコマンドでMQSデバイスが認識されているか確認できます。

[armadillo ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: mqsaudio [mqs-audio], device 0: HiFi fsl-mqs-dai-0 []
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 0: mqsaudio [mqs-audio], device 1: HiFi-ASRC-FE (*) []
  Subdevices: 1/1
  Subdevice #0: subdevice #0  

以下のコマンドでオーディオファイルを再生できます。再生したいファイルはあらかじめ転送しておいてください。

[armadillo ~]# aplay -D hw:0 [ファイル名]

再生可能なファイルフォーマットは、-h オプションで確認できます。

[armadillo ~]# aplay -h

  1. Linuxカーネルソースのディレクトリの場所は各自の環境で読み替えてください ↩︎