投稿日: 2016/05/18 13:44:48
[更新履歴]
apu2用のlightMPD-v1.0.2(64bit版)を公開しました。
apu2ではmicroSDメモリのインターフェイスがapu1から変更になってます。
apu1のmicroSDメモリはUSBを経由して接続されてました。その為、Linuxではscciデバイスとして扱われてました。
apu2のmicroSDメモリはPCI接続になったため、LinuxではSDメモリデバイスとして扱われます。
scsiとSDメモリではデバイス名が異なるためその対応を行いました。
その他、バグフィックスとチューニング方法を変更しました。
主な変更点
linux-4.4.6rt14について
native-dsdに対応するDAC(DDC)
このうち実際に動作確認したのは
です。
mpd-0.19.14rt-native-dsdはAmanero combo384をサポートしています。
combd384 でnative dsdを使う場合は audio_output を以下のようにして下さい。
native_dsd "yes"
native_dsd_type "3"
cpuaffinityについて
cpuaffinityを以下のようにしました。
cpuaffinityの設定はlightmpd.confの[cpuaffinity]とブートパラメータ(/boot/grub/menu.lst)で行います。
例
[cpuaffinity]
type=2
cpuaffinityに1,2を指定した場合はブートパラメータに以下を追加して下さい。
isolcpus=1 nohz_full=1 rcu_nocbs=1
cpuaffinityに2を指定した場合は isolcpus=1-3 を指定する事も出来ます。
デフォルトはtype=2です。
irqhandlerについて
lightmpd.confの[irqpriority]でDACを接続したUSBのirqhandlerのプライオリティの指定が行えます。
apu2は通常のUSBポート(USB3.0)の他内部にUSBポート(USB2.0,1.1)がありそれぞれirqhandlerが異なります。
USB3.0 xhci_hcd#0
USB2.0 ehci_hcd:usb1
[irqpriority]ではirqhandlerのプライオリティを下記の様に指定します。
USB3.0を使う場合
[irqpriority]
xhci_hcd#0=FIFO:99
USB2.0を使う場合
[irqpriority]
ehci_hcd:usb1=FIFO:99
ブートデバイスについて
lightMPDではkernelのブート完了後ブートデバイスからlightmpd.confを参照して初期化を行います。
apu2ではmicroSDメモリとUSBメモリからブートできますが、これらのデバイス名が異なります。
kernel起動後はどのデバイスからブートされたか解りません。その為、/boot/grub/menu.lstのkernelに
lightmpd.bootdev
というパラメータを追加しました。
ブートデバイス毎に下記の様に指定します。
クロックソース
apu2,apu1ではclocksourceにhpetとtscを指定できます。
以前はhpetをデフォルトにしてましたが、このバージョンからtscをデフォルトにしました。
clocksourceの指定を行う場合は /boot/grub/menu.lstのkernelに下記を追加します。
ブートパラメータ
ブートパラメータは/boot/grub/menu.lstで指定します。従来のパラメータから下記の物を追加しました。
lightmpd.systype=apu2
/boot/grub/menu.lstにはいくつかのパターンが用意されてます。
デフォルトは
になってます。
インストール
linux-4.6rt1
パッケージ作成中に4.6の正式版が公開されました。パッケージとは別に4.6rt1を用意しました。
ダウンロード