NFD基板向けで rt-kernel が構築出来ないか?とイジっていました。
色々なサイトの情報を組み合わせて何とか?起動までは漕ぎ着けました。
もちろん問題は多々ありますが(笑)
$ uname -a
Linux raspberrypi 5.0.21-rt16-v8 #2 SMP Tue Nov 30 14:15:20 JST 2021 aarch64 GNU/Linux
# aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: ALSA [bcm2835 ALSA], デバイス 0: bcm2835 ALSA [bcm2835 ALSA]
サブデバイス: 7/7
サブデバイス #0: subdevice #0
サブデバイス #1: subdevice #1
サブデバイス #2: subdevice #2
サブデバイス #3: subdevice #3
サブデバイス #4: subdevice #4
サブデバイス #5: subdevice #5
サブデバイス #6: subdevice #6
カード 0: ALSA [bcm2835 ALSA], デバイス 1: bcm2835 IEC958/HDMI [bcm2835 IEC958/HDMI]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
カード 0: ALSA [bcm2835 ALSA], デバイス 2: bcm2835 IEC958/HDMI1 [bcm2835 IEC958/HDMI1]
サブデバイス: 1/1
サブデバイス #0: subdevice #0
現状、NFD基板を認識しません。
config.txt でdtoverlay=allo-digioneとしているのですが??
rt-kernelでなくても十分良い音なのでその先の音が聴いて見たい一心での試みでした。
追記 12/01 良く分かっていないがarm64とaarch64はイコールでは無いのか?
rt-kernelを構築するのにクロスコンパイル環境を作るのだが理由はarm64環境で作業すると起動出来るkernelが作れない。
(RaspberryPi4の内部でコンパイルするのにクロスコンパイル環境を作らないだダメって?何かミスしているのかなぁ(笑))
だから何か作業する前には呪文が必要でたとえばこんな感じである。
KERNEL=kernel8 make bcm2711_defconfig ARCH=arm64 CROSS_COMPILE=/opt/aarch64/bin/aarch64-linux-gnu-
(make bcm2711_defconfig)
うっかりこの呪文を忘れて作業すると
このコマンドは作業PCのarchで実行されて落とし穴に落ちるかor冷酷なERRが帰ってくる。
参考URL Raspberry Pi Documentation
64bit 版 Raspberry Pi OS のカーネルモジュールのビルド環境設定
追加 12/2
最初rt-kernelのパッチを当てる作業で組み合わせを探る部分が良く分からなかったので
たかじんさんのHPで紹介されている組み合わせで
やってみたのですが色々試していたら
そのバージョンはラズパイの3までしか対応いていない事が分かって...
しょうがなく(笑)たかじんさんの記事を熟読して
今回コンパイルした組み合わせを見つけてそれが
ラズパイ4に対応しているソースだと確認して再度挑戦しました。
自分の理解を超えた部分が多すぎで今出来ているカーネルが正しいのか?という部分が多々あります。
1番変だと思うのはラズパイ上にクロスコンパイル環境を作って
arm64ではなくaarch64 としてコンパイルしないと起動するカーネルが作れない所です(笑)
まぁ英語力があれば色々探して解決出来る問題だとは思います。
それと作ったカーネルではUSBデバイスが一切動作しません。
もともとのカーネルのconfigをいじらない方向で作業しているのに??です。
64bitノーマルカーネルでも結構な美音がするのですがその先が聴きたいですよね(笑)
現状で組み込まれたモジュールは
# lsmod | grep snd
snd_soc_wm8804_i2c 16384 0
snd_soc_wm8804 20480 1 snd_soc_wm8804_i2c
snd_soc_rpi_wm8804_soundcard 16384 0
snd_soc_bcm2835_i2s 20480 0
regmap_mmio 16384 1 snd_soc_bcm2835_i2s
snd_soc_core 221184 4 snd_soc_rpi_wm8804_soundcard,snd_soc_bcm2835_i2s,snd_soc_wm8804,vc4
snd_compress 20480 1 snd_soc_core
snd_bcm2835 28672 2
snd_pcm_dmaengine 16384 1 snd_soc_core
snd_pcm 131072 6 snd_soc_bcm2835_i2s,snd_soc_wm8804,vc4,snd_bcm2835,snd_soc_core,snd_pcm_dmaengine
snd_timer 40960 1 snd_pcm
snd 86016 9 snd_bcm2835,snd_timer,snd_compress,snd_soc_core,snd_pcm
この記事に対するコメントはありません
Comments