/ 雑記帳

[ カテゴリー » Linux日 記 ]

64bit rt-kernel への道(2)

パッチのdownload先
https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/
カーネルソースのdownload先
https://github.com/raspberrypi/linux
使用したソース等
2021-05-07-raspios-buster-arm64-lite.img
linux-9299025206cb3f9b1146aa2c3c1de5df8fc92e9c
(linux-rpi-5.16.y.zip)
patch-5.16-rc3-rt7.patch.xz

もう根性しかない(笑)という事で今日はコンパイルじゅうたん爆撃をしていました。
一応クロスコンパイル環境が出来た?様に思うのでスピードアップ出来ました。
root@raspberrypi:~# uname -a
Linux raspberrypi 5.16.0-rc3-rt7-v8 #1 SMP PREEMPT Sat Dec 4 19:35:24 JST 2021 aarch64 GNU/Linux
root@raspberrypi:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
card 1: vc4hdmi0 [vc4-hdmi-0], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: vc4hdmi1 [vc4-hdmi-1], device 0: MAI PCM i2s-hifi-0 [MAI PCM i2s-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: sndallodigione [snd_allo_digione], device 0: Allo DigiOne HiFi wm8804-spdif-0 [Allo DigiOne HiFi wm8804-spdif-0]
Subdevices: 0/1
Subdevice #0: subdevice #0

音出し成功です。
肝心の音は疲れすぎで後日コメントします(笑)
とりあえずddコマンドでバックアップを取り
それを書き戻して動作が確認できたので一安心です。

— posted by くま at 03:57 pm   commentComment [0] 

緊急めも upmpdcli インストール

通常のMPD をインストール
# apt-get install mpd

※upmpdcli をインストール(raspbian buster対応版)
リポジトリ キーの登録する。
# apt install dirmngr
# gpg --keyserver pool.sks-keyservers.net --recv-key F8E3347256922A8AE767605B7808CE96D38B9201
# gpg --export '7808CE96D38B9201' | sudo apt-key add -

cat /etc/apt/sources.list.d/upmpdcli.list

buster(debian 10)用
deb http://www.lesbonscomptes.com/upmpdcli/downloads/raspbian/ buster main
deb-src http://www.lesbonscomptes.com/upmpdcli/downloads/raspbian/ buster main

# apt-get update
# apt-get install upmpdcli

— posted by くま at 11:35 am   commentComment [0] 

64bit rt-kernel への道...

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

— posted by くま at 02:10 pm   commentComment [0] 

Archlinux telnet接続その後

だいぶ前に書いた?様な気がするが最近思い出して
正常に接続できるか?テストしてみた。(updateで改善されていないか?)
結論としてはノーマルのままでは接続出来なかった。
やはり
/usr/lib/systemd/system/telnet@.service の内容を
ExecStart=-/usr/bin/telnetd
    ↓
ExecStart=-/usr/bin/telnetd -E "/bin/login -f -H"
とする必要がある。
しかし前回テストした時は何回もトライする必要があったが
今回やってみたら一回でOKになっていた。

参考URL https://bbs.archlinux.org/viewtopic.php?id=255728

— posted by くま at 10:47 pm  

 

0.1μFのパスコンを200個以上購入して交換した話

もう200個以上購入して自家用機器内は大体交換が終わったので
このネタを書こうと思う(笑)

何かのICのVcc-GND間に入っている0.1μFのコンデンサーはパスコンと呼ばれ
大概の回路基板には必ず都市伝説的に実装されている。
電気的に考えれば恐らく数MHz程度のクロックまでは有効な値かなぁ

で!本題はここから
このコンデンサーは一枚の基板に何個も搭載されているのが普通で
付いていれば良いぐらいに自分は考えていたのだが...(笑)
ある日某氏(moct氏)のところへ機器の修理?に行った帰りに「使ってみろ。」良いから...
と手渡されたのがこれから解説?するコンデンサーだ。

メタライズド積層フィルムコンデンサー0.1μF16V パナソニックECHU
正式型番は ECHU1C104JX5

販売されているサイトでは次のような解説がされていた。
PPSフィルムを使用したパナソニックの面実装積層フィルムコンデンサーです。
特にHiFiオーディオ用として設計され、タンタルに比べ低歪、低雑音、低ESRです。
回路全体の高音質化に貢献します。

前述の様に自分は付いていれば良い程度にしか考えていなかったが
その頃ちょうどくま電源基板をイジっていて基準電圧発生の
ツェナーダイオードにパラって見たら...あれ!?音が違う
 
低音の響きが全然違う!のに気がついて
現在まで自分が組み立てた基板のパスコンをそれこそ手当り次第に交換して見た。
色々交換して見てうーん 美味しいという(笑)

だがしかし世の中良い事ばかりではないというのはあります(笑)
このコンデンサーには大きな欠点が2つもある。
極端に熱に弱い。一瞬でハンダ付けが終わらないと部品端から箔が剥離して扇形に(笑)
且つ通常2.0mmx1.25mmサイズのパスコン(セラミックコンデンサー)なのだが
当該コンデンサーは16V耐圧品で3.2mmx2.5mmもある。巨大なのだ(笑)
加えて基板設計者が実装するフットプリントを大きめのサイズで設計していないと
フットプリントより部品が大きく電極が見えないという絶望的状況も多々ある。
それでも....ハンダ付け作業が困難を極める事が分かっていても
搭載して音を聴いて見たいという欲望を抑えられない。
そんな魅力(魔力)があるコンデンサーだと自分は確信しています(笑)

フットプリントの幅が足りず立てて実装した例

DCIM0017



— posted by くま at 11:49 am   commentComment [2] 

ArchlinuxインストールPCは時々updateしておく

音楽再生メインPC:ASRock B450 Pro4 + AMD Ryzen 7 2700X
カーネルを Linux archlinux 5.10.31-1-lts から Linux archlinux 5.10.56-1-lts へupdateした。
ArchlinuxインストールPCは時々updateしておくとは?
ある時突然サーバー上GPG-KEYが無くなってupdate出来なくなるという災害に備える事(笑)

— posted by くま at 09:19 pm  

意味不明のbotの嵐(荒らし)

昨日は意味不明のbotにサイトを荒らされました?
何で6000台のアクセス数...
そんなに記事も無いのになぁ
Apacheの設定ファイルで対策して見ました。
今の所は大丈夫かな(笑)

— posted by くま at 03:31 pm  

自宅システムのメンテ

久しぶりに
lightmpd/upnpgwシステムのplayer側のarchlinuxをアップデートした。
フロント側 ドーナツ氏謹製 x86_64-upnpgw-kernel-20200830
バック側   Archlinux linux-lts
その後にtelnetでログインしてバージョンを確認
無事に動作している様だ。

$ telnet 192.168.11.22 8023
Trying 192.168.11.22...
Connected to 192.168.11.22.
Escape character is '^]'.

Linux 5.10.27-1-lts (archlinux) (pts/0)

login: root
Password:
Last login: Wed Apr 7 10:54:11 on pts/0
# uname -a
Linux archlinux 5.10.27-1-lts #1 SMP Tue, 30 Mar 2021 13:22:29 +0000 x86_64 GNU/Linux
# c00
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 11024
buffer_size: 22048

長期に渡ってPinkfaun i2s bridge の消息が不明状態だと
気にかけている方もいないだろうが(笑)
このシステムで問題なく稼働しています。
音の方はフロント側のAPU1C2へ接続している熊電源基板に
度々手を入れて何とかsymphonic-mpdのすぐ後ろに着いて行ってる感じだ(笑)
ただし音の良さの種類が違うので
単純比較では無い事は書いて置かないと誤解されそうだ。
I2Sをやり取りするシステムは使う電源で音が敏感に変化するので
その評価は慎重に行わないとジャングルを迷走する事となる。

20210407203843



— posted by くま at 08:02 pm  

<< 2021.12 >>
SMTWTFS
   1 2 3 4
567891011
12131415161718
19202122232425
262728293031 
 










T: Y: ALL: Online:
ThemePanel
Created in 0.0226 sec.