Stingray's ブログ

米作りと趣味の電子工作

RaspbianとDAC6

2015-02-08 15:02:04 | Linux
失敗した。 特に必要はなかったのだが、下のようにパッケージのアップデートを行ったところ、DACカードが動かなくなってしまった。

pi@raspberrypi ~ $ sudo apt-get update
pi@raspberrypi ~ $ sudo apt-get upgrade

モジュールはロードしているようだが?

pi@raspberrypi ~ $ lsmod
Module Size Used by
snd_soc_bcm2708_i2s 7539 0
regmap_mmio 3548 1 snd_soc_bcm2708_i2s
snd_soc_pcm5102a 2093 0
snd_soc_hifiberry_dac 2963 0
snd_soc_core 177920 3 snd_soc_hifiberry_dac,snd_soc_pcm5102a,snd_soc_bcm2708_i2s
snd_compress 8698 1 snd_soc_core
snd_pcm_dmaengine 5850 1 snd_soc_core
snd_pcm 93100 3 snd_soc_core,snd_soc_hifiberry_dac,snd_pcm_dmaengine
snd_seq 61097 0
snd_seq_device 7209 1 snd_seq
snd_timer 23007 2 snd_pcm,snd_seq
snd 67211 6 snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress
arc4 1964 2
rt2800usb 18970 0
rt2800lib 81833 1 rt2800usb
rt2x00usb 12510 1 rt2800usb
rt2x00lib 48797 3 rt2x00usb,rt2800lib,rt2800usb
mac80211 557746 3 rt2x00lib,rt2x00usb,rt2800lib
cfg80211 472025 2 mac80211,rt2x00lib
crc_ccitt 1612 1 rt2800lib
rfkill 22347 2 cfg80211
uio_pdrv_genirq 3666 0
uio 9897 1 uio_pdrv_genirq

確認してみるとカードがないと言われる。

pi@raspberrypi ~ $ aplay -l
aplay: device_list:252: no soundcards found...

kernelが入れ替わってしまったようだ。前のバージョンは何だったか?

pi@raspberrypi ~ $ uname -a
Linux raspberrypi 3.18.6+ #1 PREEMPT Sat Feb 7 18:11:00 GMT 2015 armv6l GNU/Linux

古いバージョンのkernelに戻すのもありだが、何か対応策はないのかと調べたところ下の情報を発見した。

「HiFiBerry」HP https://www.hifiberry.com/guides/configuring-linux-3-18-x/

また、それならばとkernelを最新にアップデートすることにした。
pi@raspberrypi ~ $ sudo rpi-update
*** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
*** Performing self-update
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 7938 100 7938 0 0 16542 0 --:--:-- --:--:-- --:--:-- 21512
*** Relaunching after update
*** Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom
*** We're running for the first time
*** Backing up files (this will take a few minutes)
*** Backing up firmware
*** Backing up modules 3.18.5+
*** Downloading specific firmware revision (this will take a few minutes)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 168 0 168 0 0 197 0 --:--:-- --:--:-- --:--:-- 262
100 43.2M 100 43.2M 0 0 303k 0 0:02:25 0:02:25 --:--:-- 409k
*** Updating firmware
*** Updating kernel modules
*** depmod 3.18.6+
*** depmod 3.18.6-v7+
*** Updating VideoCore libraries
*** Using HardFP libraries
*** Updating SDK
*** Running ldconfig
*** Storing current firmware revision
*** Deleting downloaded files
*** Syncing changes to disk
*** If no errors appeared, your firmware was successfully updated to 22b808b52a2b6aa8abcbaadc7cc8726a8501b953
*** A reboot is needed to activate the new firmware
pi@raspberrypi ~ $
pi@raspberrypi ~ $ sudo shutdown -r now

以下、HPの通りの作業。

ブラックリストファイルからドライバーを削除
pi@raspberrypi ~ $ sudo vi /etc/modprobe.d/raspi-blacklist.conf

# blacklist spi and i2c by default (many users don't need them)

blacklist spi-bcm2708
#blacklist i2c-bcm2708
#blacklist snd-soc-pcm512x
#blacklist snd-soc-wm8804

オンボードのサウンドドライバーを削除
pi@raspberrypi ~ $ sudo vi /etc/modules
# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

#snd-bcm2835   ←これ
snd_soc_bcm2708  
snd_soc_bcm2708_i2s
bcm2708_dmaengine
snd_soc_pcm5102a
snd_soc_hifiberry_dac

デバイスツリーファイルを修正
pi@raspberrypi ~ $ sudo vi /boot/config.txt

dtoverlay=hifiberry-dac  ←この1行を追加

pi@raspberrypi ~ $ sudo shutdown -r now

pi@raspberrypi ~ $ lsmod
Module Size Used by
arc4 1964 2
rt2800usb 18970 0
rt2800lib 81833 1 rt2800usb
rt2x00usb 12510 1 rt2800usb
rt2x00lib 48797 3 rt2x00usb,rt2800lib,rt2800usb
mac80211 557796 3 rt2x00lib,rt2x00usb,rt2800lib
cfg80211 472025 2 mac80211,rt2x00lib
crc_ccitt 1612 1 rt2800lib
rfkill 22347 2 cfg80211
snd_soc_hifiberry_dac 2963 0
snd_soc_bcm2708_i2s 7539 2
snd_soc_pcm5102a 2093 1
regmap_mmio 3548 1 snd_soc_bcm2708_i2s
snd_seq 61097 0
snd_seq_device 7209 1 snd_seq
snd_soc_core 177952 3 snd_soc_hifiberry_dac,snd_soc_pcm5102a,snd_soc_bcm2708_i2s
snd_compress 8698 1 snd_soc_core
snd_pcm_dmaengine 5850 1 snd_soc_core
snd_pcm 93100 3 snd_soc_core,snd_soc_hifiberry_dac,snd_pcm_dmaengine
snd_timer 23007 2 snd_pcm,snd_seq
snd 67211 6 snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress
uio_pdrv_genirq 3666 0
uio 9897 1 uio_pdrv_genirq
pi@raspberrypi ~ $ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: sndrpihifiberry [snd_rpi_hifiberry_dac], device 0: HifiBerry DAC HiFi pcm5102a-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0

DACカードが復活した。もちろん再生できる。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« ヘッドフォンアンプ14 | トップ | RaspbianとDAC7 »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

Linux」カテゴリの最新記事