21:46:58
icon

plat/allwinner/common/sunxi_bl31_setup.cでfdtを探しちゃいるけど、得られたアドレスはこの中に囲い込んじゃってるね。検索用のsunxi_find_dtb()についても。

21:26:00
icon

そもそもlibfdtが触れる、fdtへのポインタってやつをどっかから引っ張って来ないといけないんだけど…引っ張って来れるのか、という問題があるような。

21:24:18
icon

OpenBSDの場合、以前

node = OF_finddevice("/");
if (!node)
return;

if (OF_is_compatible(node, "xunlong,orangepi-one-plus")) {

みたいなコードを自分用に書いていたので、こんな感じの機種判別コードをlibfdt使って実装すれば良いんだろうとは思う。どうやるか全然分からんけど。

21:14:27
icon

SETUP_REGULATORSの有無を切り替えるようなMakefileのパッチは投げてはいるけど、撤回してボード名に応じて動きを変えるようなATFにするパッチをこさえた方が良いんだろうか。こういうのは気分的にすごく嫌なんだけど、それでも無いとまともにボードが動かないし…

(まずは作ってみる必要があるかな、実現可能性を探る意味でも)

21:00:31
icon

ていうか、Orange Pi OnePlusとOrange Pi 3って地雷ってことなんじゃ…(今更気づくか)

20:58:10
icon

axp/common.cはここから下がごっそり無効化されるので、SUNXI_SETUP_REGULATORS=0は牛刀持って鶏を…という気がしなくもない。
github.com/ARM-software/arm-tr

というか本気でレギュレータの制御を「何もしない」にしてるのがなんとも…(OS側で全部掌握せーよ、ということなんだろうけどOS側が面倒見切れてないという部分もあるのでU-boot他のアシストはあると嬉しいんだよねという甘いことをほざいてみよう)。

Web site image
arm-trusted-firmware/drivers/allwinner/axp/common.c at master · ARM-software/arm-trusted-firmware
20:54:42
icon

コンパイル時のオプションで制御できるからportsで何とかできるのであって、必要な時のみパッチをon/offといった大技(?)までは流石に難しいんじゃないかなあ。

20:50:58
icon

SCPで何かやってると思ったが…どうも違うみたいだ。

ArmbianがATFにパッチを当てて問題を回避してる。
github.com/armbian/build/blob/

そしてこれはOrangePi OnePlusとOnrange Pi 3でのみ有効になってる。

これなら確かにATFのバージョン縛りは要らないし、SUNXI_SETUP_REGULATORS=0を指定する必要も無い(このパッチによる修正とSUNXI(略)=0での対応は、厳密には同じではないというのも厄介)。

20:43:18
icon

ん-、レギュレータ操作なしのATFを組み込んで、コールドブートした場合のみethernet PHYがちゃんと動く、ってのが厄介だな(rebootでウォームブートするとPHYが見えなくなる)。

多分、SCPにレギュレータ操作を握らせるか何かするとちゃんと動くようになるとかそういう話なんだろうか。Armbianの動作がマトモなので。

20:14:22
icon

SCP抜き、レギュレータの操作はデフォルト(あり)だとこうなるわなあ。
dwxe0 at simplebus0: address 02:07:11:b5:5a:5a
dwxe0: no PHY found!

とはいえ、SCP抜きのせいか時折

NOTICE: BL31: v2.10.2(release):lts-2.10.2
NOTICE: BL31: Built : 05:29:45, Feb 22 2024
NOTICE: BL31: Detected Allwinner H6 SoC (1728)
NOTICE: BL31: Found U-Boot DTB at 0xa0963d8, model: OrangePi One Plus
ERROR: MHU: Unexpected protocol (MHU status: 0x0)

となって起動できないことがある。

19:32:11
icon

今のご時世、big-endianなマシンでかつマトモなOSの走るマシン、状態の良いものがどれだけ残ってるのか…という疑問はある。

ポリタンクなMacの一台くらいは確保したい気分ではあるけど、場所取るしな…(それならpowerpcなMac miniか?)

18:43:59
icon

QEMUでビッグエンディアンな環境をエミュレートとか、ARMのbigendian環境に挑戦とか、方法はありそうな気がする。面倒そうだけど。

18:42:56
2024-02-22 18:30:16 hfpの投稿 hfp@social.mikutter.hachune.net
icon

このアカウントは、notestockで公開設定になっていません。

18:21:48
icon

Orange Pi One Plus向けのArmbian、何度再起動してもEthernet phyを見失わずに動いてますね…ATFが新しいからなのか、PSCI(crust)対応しているからなのか…

18:13:35
icon

株価が上がろうが、自分の財布に入る金が増えない限り景気が良くなったとは決して言えないのでは?

07:36:34
icon

rootのパスワードを設定せず、ユーザも作らずに再起動したらログインできなくなった…やり直しw

07:34:04
icon

INFO: BL31: cortex_a53: CPU workaround for 855873 was applied
INFO: BL31: cortex_a53: CPU workaround for 1530924 was applied
SCP/INF: Crust v0.6.10000
INFO: PSCI: Suspend is available via SCPI
INFO: BL31: Preparing for EL3 exit to normal world
INFO: Entry point address = 0x4a000000
INFO: SPSR = 0x3c9

07:34:00
icon

U-Boot SPL 2024.01-armbian (Feb 10 2024 - 01:35:26 +0000)
DRAM: 1024 MiB
Trying to boot from MMC1
NOTICE: BL31: v2.9(debug):armbian
NOTICE: BL31: Built : 01:34:56, Feb 10 2024
NOTICE: BL31: Detected Allwinner H6 SoC (1728)
NOTICE: BL31: Found U-Boot DTB at 0xa096b48, model: OrangePi One Plus
INFO: ARM GICv2 driver initialized
INFO: Configuring SPC Controller
INFO: BL31: Platform setup done
INFO: BL31: Initializing runtime services

07:30:56
icon

落としてバイナリダンプしてみtけどATFのバージョン分からないな…microSDに書いて動かせばいいか。

07:26:28
icon

Armbian/Orange Pi One PlusのサポートはCommunity maintained/Unofficial扱いか。 armbian.com/orange-pi-one-plus

07:20:37
icon

Orange Pi One Plusはcrust未対応なんじゃなくconfigが無いだけか。かといってconfig書くのめんどいな(書かないと対話式の質問に答えることになるので余計にめんどいんだけど)。

07:06:52
06:54:56
icon

とりあえず、portsのATFを使って野良ビルドしたu-boot-2024.01でOrangePi OnePlusが起動することは確認。まずはATFのSUNXI_SETUP_REGULATORS=1/0でネットワーク周りの動作がどう変わるかを見ることにしよう…というところまでは、進められたか。

今日が休みならもっと進められるんだが…ほんっと、こうやって実行中のタスクコンテキストをイベントに刺されて実行を切られるのって不愉快極まりないんだよね。コンテキストスイッチが重い部類の人間なので、なるったけこういう切り替えは減らしたいというか0にしないとただでさえ低いパフォーマンスが0になるどころかマイナスになる。

06:24:35 06:24:48
icon

昔のarmbian、ATF縛りやってたはずなんだけどmasterブランチ→mainブランチに変わってからはATFしばり止めちゃったんですかね。 github.com/armbian/build/tree/

06:22:07
icon

てーかOrange Pi One Plus動かすのってそうとう久しぶりかも。専用の電源ケーブルをどこやったっけー?と散々探し回るくらい(見つからなかったらストックを開けようかと思ったけどそれはしないで済んだ)。

06:21:01
icon

やっと-currentなportsにあるcrust, ATFからOrange Pi One Plus(H6)向けのu-bootを作って、起動用イメージをこさえるところまできた。ここからがテストの本番なので準備に時間かかりまくりってやつなんですが。

05:35:46
icon

(しばらくsj3はおやすみ)
OpenBSD-Allwinner H6/H616絡みの話が少し動いてるので、そっち側の作業中。ARM Trusted Firmwareのバージョンアップの話があったので、Allwinner H6での問題回避の話(SUNXI_SETUP_REGULATORS=0)を入れてもらうようお願いしているところ。

既にこのオプションあり/なしのビルドを作れるようにしてはいるけど、portsの形で綺麗にまとめるのって結構大変…