12
07
2016
BeagleBone + Botic で簡単DSD Native 再生(その2)
Botic環境を最新版へアップデート
前回の記事『BeagleBone + Botic で簡単DSD Native 再生(その1)』の続きで、先ずは Botic Distribution を V4 系列から最新のV7系にアップデートしておくことにする.最新版にアップデートすることが必ずしも良い結果となるかどうかは微妙なところだが、とりあえず最新版を試してみたいという場合の参考にして欲しい.
【ステップ 8】Botic Distribution を最新版を探す
Boticの公式ページ? “http://bbb.ieero.com” には、開発中の最新版に関する情報は一切載っていないようなので、http://www.diyaudio.com/forums/ の一連のやり取りからそれらしき情報をピックアップするしか今のところ情報はなさそうだ.
“http://bbb.ieero.com” の下に幾つかリンクが貼られていない?(多分)サブディレクトリがあり、適当に類推して探して行くと
http://bbb.ieero.com/botic1/
http://bbb.ieero.com/botic2/
http://bbb.ieero.com/botic2/
http://bbb.ieero.com/botic3/
http://bbb.ieero.com/botic4/
http://bbb.ieero.com/botic5/
http://bbb.ieero.com/botic7-rc1/
が見つかったが、どうやらお目当てのBotic V7のイメージは無いようだ.仕方が無いので、http://www.diyaudio.com/forums/ の一連のやり取りを適当に追っていたら、”http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-171.html” に
wget http://repo.ieero.com/botic/pool/mai...-rc1_armhf.deb
sudo dpkg –i linux-upstream/linux-image-4.5.0-botic7-rc1_4.5-botic7-rc1_armhf.deb
なる書き込みがあった.どうやら別な場所 http://repo.ieero.com/ に開発中のリポジトリが置かれているようだ.http://repo.ieero.com/botic/pool/main/l/linux-upstream 配下を覗いてみると、
この “/botic/pool/main/l/linux-upstream” 配下に最新版のパッケージが置かれている模様
現時点(2016 12/07)では、”linux-image-4.8.11-botic7-rc2_1_armhf.deb” が最新のパッケージのようだ.とりあえずこのパッケージをダウンロードして、 dpkg コマンドでアップデートしてみる.
【追記】”http://bbb.ieero.com” のページの説明に書かれている、 ”Others” に
“source patches are available in the /sources directory”
という記述があり、その中を覗いていたら、わざわざ自分で探さなくても、Boticのリポジトリに関する情報が書かれていた.(記述では “/sources” となっているが、”/source” ディレクトリが正しいディレクトリ名)
“/source/boticize/01-addrepos.sh” というファイルの中身を覗くと、apt-get や dpkg コマンドでのアップデートに関する情報が得られる.とりあえずこのスクリプトを実行して、Botic V4を最新状態にアップデートしておく.
“/source/boticize/01-addrepos.sh”の中身
#!/bin/bash
### Enable wheezy backports
sed -i '/deb .*wheezy-backports/s/^#//' /etc/apt/sources.list
### Add Botic repository
if ! grep repo.ieero.com /etc/apt/sources.list; then
cat >> /etc/apt/sources.list < /etc/apt/preferences.d/botic < /etc/apt/preferences.d/wheezy-backports <<EOT
Package: *
Pin: release a=wheezy-backports
Pin-Priority: 650
EOT
### Add Botic signing key
cat <<EOT | apt-key add -
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.15 (GNU/Linux)
mQENBFSWGoMBCAC5/c5TvOwhXky+iNvG2V1J15/mbWWhlQ+/Mq1LC3m5ghUn7Ro3
n5P8uB8iucYaEUivdsJ0XT5fwfuS8oQCS84QMTdIIOsF2nCAxjnFkHctlNxyJSp1
94eoKi3FiXVIJvrNYsNH7Vn9RoeWRQCu0DfSKpzkLIRPR8J5BKpUvWwMwtSYmgF3
jUDGFRup48JWImkEkcqDmvsybRxhntl/Ox+/u1DBh7Dvxy0DGOLOO+QP42t2RTB1
NPFgbGMN/2Xd7xHnMHHVoVf0dcwR5vlOJOo/gN6wpY0dyMWJRbRxc3g4OpxbCu+M
ZX9HJS7ZEGPAYiZKwEO1VDruLRMkqBZKYgxDABEBAAG0M01pcm9zbGF2IFJ1ZGlz
aW4gKEJvdGljIHNpZ24ga2V5KSA8Ym90aWNAaWVlcm8uY29tPokBNwQTAQoAIQUC
VJYagwIbAwULCQgHAwUVCgkICwUWAwIBAAIeAQIXgAAKCRBBLzFaZa+zqEEKB/4i
EIMK0pNXS6X6pqQs0AFRh+SwW7vks13iSICgpaHCi6kwWFEt9QhCFmepKwFaD8ow
GPdQiLAB7HB33Jh46Z2haJThGj3g+LnXQ5JsTGuhPZ4eXq8yp1Zema/oKk/9OKnC
82PII4yrt6Lvmp1CEBMEQFESFHFSTp0sxyE2bjec2wECN7VA20fHFn35A696CRie
sXGVavZpU4db/zRrxfI6WTClfc9x4aEXVKy4rCyyEtKIAwiGz0znI92pWbowFMnK
a7JAwE4/oBNSgioEFUdPaf9KtNQ0hGQymKLWDH9DYJHqvgQp8NzC0lEwrAZs6Wcg
EWXY0McJCdRWYpj8lLhBuQENBFSWGoMBCADRtv1xp3K1XqfhVkNC97TMuHW9dVTU
v9ZbpNlDYlwNd2/aZWZYWebzv78vdtBXAXMfJ6sgrwNy7LsMKxuq9UfffDCJy8hS
gESaay8hzb/QUP4LSJP6vRsMaC17zBuTAR7rL7evmsfJvLzgqO0bfFHozYwFBfJH
x2iy4KOBR3mOcyjY4u6pVEH4ZScctm8Gd//xAKvwHtJgfbE0lSDVX6SH0ft7H3oF
jWn/C03uB0SgWMMRafAVrVgC+7SjGLNJyHBfNE6cHbCfz/Y4Gl71m6u2vcmX0mxl
u635jVqubQkVC73jDG1cVuaw7h2LNiy2iWlqEPPRAfWxmIPdQ5pgNjxhABEBAAGJ
AR8EGAEKAAkFAlSWGoMCGwwACgkQQS8xWmWvs6iNmgf+KlFFAjVIz/T4WiAjJAld
W/m2uvcfaAaCtptLVdvHJ5eSysh8eKw4rEgpvtaUVCUR1ZKBCiscSXW3JxG+zkSV
wXpMmxTEs8zy3WTxig4Hzp8WR62hrVcA4XZH0wrzghMGWB5vIhdi5imUQ/aG/ghE
Zob2N+zifL7275L7MpwA3Sxx8rlNyNBES/MJjI+TaqtN4mxJpbPjwHinZLqqa6wL
G6cCKCvgLrFPv3f7Pfj9W7mLhgw8XeiklCtU6YxgODqyBEV4pXPNsPHySdsVYZkH
qmDhSVpNcajANsVBVnp/129cLV+uzlLl1en8HlQZRp8VcgG1yONW76OhSxYNxeHx
tw==
=14WE
-----END PGP PUBLIC KEY BLOCK-----
EOT
apt-get update
apt-get dist-upgrade
【追記 Dec,22nd 2016】Boticのホームページの内容が更新されたようです
最近Boticのホームページにアクセスしてみたら、内容が更新されており、ページの一番最後にBoticのリポジトリとGitHubへに置かれたソースコードへのリンクが追加されていた.最初から公開していてくれたらこんな面倒な記事を書かなくても良かったのにね...正確な情報が公開されるようになったので、まあ良しとしましょう.
よく見ると、”Mute”信号 に関する記述が追加されており、Botic 7で新たに “Mute” 信号がサポートされたようだ.
【ステップ 9】Botic Distribution を最新版にアップデート
root@botic:~# uname -a
Linux botic 3.18.7-botic4 #1 PREEMPT Wed Feb 18 23:34:58 CET 2015 armv7l GNU/Linux <=== Botic V4 のカーネルバージョン
root@botic:~/Botic# wget http://repo.ieero.com/botic/pool/main/l/linux-upstream/linux-image-4.8.11-botic7-rc2_1_armhf.deb
--2016-12-05 22:44:48-- http://repo.ieero.com/botic/pool/main/l/linux-upstream/linux-image-4.8.11-botic7-rc2_1_armhf.deb
Resolving repo.ieero.com (repo.ieero.com)... 74.220.219.62
Connecting to repo.ieero.com (repo.ieero.com)|74.220.219.62|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12990032 (12M) [application/x-troff-man]
Saving to: `linux-image-4.8.11-botic7-rc2_1_armhf.deb'
100%[=============================================================================================>] 12,990,032 1.34M/s in 12s
2016-12-05 22:45:00 (1.07 MB/s) - `linux-image-4.8.11-botic7-rc2_1_armhf.deb' saved [12990032/12990032]
続いて、 dpkg コマンドで Botic V7(RC2) にアップデートする.
root@botic:~/Botic# dpkg --install linux-image-4.8.11-botic7-rc2_1_armhf.deb
Selecting previously unselected package linux-image-4.8.11-botic7-rc2.
(Reading database ... 15298 files and directories currently installed.)
Unpacking linux-image-4.8.11-botic7-rc2 (from linux-image-4.8.11-botic7-rc2_1_armhf.deb) ...
Setting up linux-image-4.8.11-botic7-rc2 (1) ...
update-initramfs: Generating /boot/initrd.img-4.8.11-botic7-rc2
zz-uenv_txt: Updating /boot/uEnv.txt [uname_r=4.8.11-botic7-rc2]
root@botic:~/Botic# reboot
...
【再起動】
...
Broadcast message from root@botic (pts/0) (Mon Dec 5 22:47:55 2016):
The system is going down for reboot NOW!
root@botic:~/Botic# Write failed: Broken pipe
iMac27:~ yasuaki$ ssh -l root 192.168.101.31
Debian GNU/Linux 7 \n \l
Boticized BeagleBoard.org Debian Image 2015-02-15
default username:password is [root:botic] and [debian:botic]
root@192.168.101.31's password:
Last login: Mon Dec 5 22:28:52 2016 from 192.168.101.158
root@botic:~# uname -a
Linux botic 4.8.11-botic7-rc2 #2 PREEMPT Fri Dec 2 00:50:49 CET 2016 armv7l GNU/Linux
root@botic:~#
Botic V7(rc3)へアップデート後のカーネル廻りの設定状況を確認しておくと、Botic V4とBotic V7の両方のカーネルイメージや設定が存在していることが確認できる.V7で上手く行かない場合はV4への切戻しができるだろう.
root@botic2:/# cd boot
root@botic2:/boot# ls -la
total 20132
drwxr-xr-x 4 root root 4096 Dec 10 19:49 .
drwxr-xr-x 24 root root 4096 Dec 10 16:48 ..
-rw-r--r-- 1 root root 480 Feb 22 2015 SOC.sh
-rw-r--r-- 1 root root 2725558 Feb 19 2015 System.map-3.18.7-botic4
-rw-r--r-- 1 root root 2587221 Dec 10 09:37 System.map-4.8.13-botic7-rc3
-rw-r--r-- 1 root root 121127 Feb 19 2015 config-3.18.7-botic4
-rw-r--r-- 1 root root 126307 Dec 10 09:37 config-4.8.13-botic7-rc3
drwxr-xr-x 4 root root 4096 Dec 10 19:49 dtbs
-rw-r--r-- 1 root root 2829850 Feb 22 2015 initrd.img-3.18.7-botic4
-rw-r--r-- 1 root root 2247230 Dec 10 19:49 initrd.img-4.8.13-botic7-rc3
-rw-r--r-- 1 root root 376 Dec 10 19:49 uEnv.txt
drwxr-xr-x 4 root root 16384 Jan 1 1970 uboot
-rwxr-xr-x 1 root root 5805792 Feb 19 2015 vmlinuz-3.18.7-botic4
-rwxr-xr-x 1 root root 4122480 Dec 10 09:37 vmlinuz-4.8.13-botic7-rc3
root@botic2:/boot# cd uboot
root@botic2:/boot/uboot# ls -la
total 490
drwxr-xr-x 4 root root 16384 Jan 1 1970 .
drwxr-xr-x 4 root root 4096 Dec 10 19:49 ..
-rwxr-xr-x 1 root root 73516 Feb 21 2015 MLO
-rwxr-xr-x 1 root root 667 Feb 21 2015 nfs-uEnv.txt
-rwxr-xr-x 1 root root 393496 Feb 21 2015 u-boot.img
-rwxr-xr-x 1 root root 1040 Feb 21 2015 uEnv.txt
root@botic2:/boot/uboot# cat uEnv.txt
##These are needed to be compliant with Angstrom's 2013.06.20 u-boot.
loadaddr=0x82000000
fdtaddr=0x88000000
rdaddr=0x88080000
initrd_high=0xffffffff
fdt_high=0xffffffff
##These are needed to be compliant with Debian 2014-05-14 u-boot.
loadximage=load mmc 0:2 ${loadaddr} /boot/vmlinuz-${uname_r}
loadxfdt=load mmc 0:2 ${fdtaddr} /boot/dtbs/${uname_r}/${fdtfile}
loadxrd=load mmc 0:2 ${rdaddr} /boot/initrd.img-${uname_r}; setenv rdsize ${filesize}
loaduEnvtxt=load mmc 0:2 ${loadaddr} /boot/uEnv.txt ; env import -t ${loadaddr} ${filesize};
check_dtb=if test -n ${dtb}; then setenv fdtfile ${dtb};fi;
loadall=run loaduEnvtxt; run check_dtb; run loadximage; run loadxrd; run loadxfdt;
mmcargs=setenv bootargs console=tty0 console=${console} ${optargs} ${cape_disable} ${cape_enable} root=/dev/mmcblk0p2 rootfstype=${mmcrootfstype} ${cmdline}
uenvcmd=run loadall; run mmcargs; bootz ${loadaddr} ${rdaddr}:${rdsize} ${fdtaddr};
#Docs for Botic: http://bbb.ieero.com/
optargs=snd_soc_botic.ext_masterclk=3 snd_soc_botic.serconfig=MMMM