Slide 1

Slide 1 text

初代プレイステーション用uClinuxの ルートファイルシステム 東海道らぐ 2024年12月オフな集まり @メリーアヒルヤキ(m〇ikutterの作者は誰?) 2024. 11. 9 1 kazueda か ず え だ Raspberry pi pico2の亜種で Risc-V用Linux-nommuを起動する話

Slide 2

Slide 2 text

kazueda(かずえだ)の紹介 • 大阪出身、丙午、おとめ座、O型 • 科学者(化学) • 2003年4月から浜松で、働き始める • 自転車での移動が生活の足 • 趣味は「ラジオを聴くこと」、「アメリカの コミックの邦訳を読むこと」 @kazueda 2 slideshare speaker deck

Slide 3

Slide 3 text

RP2350搭載ボード 3 https://www.marutsu.co.jp/GoodsListNavi.jsp?path=&q=RP2350 マルツオンラインの 検索によると、写真 があるもので、10種 類以上存在

Slide 4

Slide 4 text

Raspberry pi pico2 • オンチップのSRAM:520Kバイト • オンボードの外付けのフラッシュ・メモリ:4Mバイト • HSTX(High-speed Serial Transmit)搭載で、DVI(Digital Visual Interface)出力も可能 • PIO:3基 • CPUコア:Arm Cortex-M33とRISC-V<-Linux動作? 4 https://interface.cqpub.co.jp/wp-content/uploads/if2411_179.pdf

Slide 5

Slide 5 text

pi-pico2-linux RP2350用Buildroot • 「 SparkFun Pro Micro - RP2350」に対応 <-イメージファイルの保存に8 MBのPSRAMが必要 「PIMORONI PICO PLUS 2」も利用できそう • Raspberry pi pico2のPSRAMは4 MB <-PSRAMの「APS6404L」を外付けすると動く? 「https://www.adafruit.com/product/4677」に8 MBの PSRAMの使い方 5 https://github.com/Mr-Bossman/pi-pico2-linux

Slide 6

Slide 6 text

環境設定 1. cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build- essentialの入手 2. クロスコンパイラの入手 3. 環境設定 4. Linux-nommuのビルド 5. ビルドしたイメージの書き込み 6. Linux-nommuの起動 6

Slide 7

Slide 7 text

クロスコンパイラの入手 • Raspberypi/pico-exampleで紹介されているStable版を使う と、はまる 7 https://www.embecosm.com/resources/tool-chain-downloads/#riscv-stable

Slide 8

Slide 8 text

クロスコンパイラの入手 • Gigazineの記事で紹介しているクロスコンパイラならうま くいく 8 https://gigazine.net/news/20241004-raspberry-pi-pico-2-risc-v-debug/

Slide 9

Slide 9 text

クロスコンパイラの入手 • CORE-V用から選ぶ 9 https://www.embecosm.com/resources/tool-chain-downloads

Slide 10

Slide 10 text

ビルドしたイメージの書き込み • 「SparkFun Pro Micro - RP2350」のBOOTボタンを押したま ま、USBケーブルで母艦に接続 $ cd ../psram-bootloader $ make flash-kernel 10

Slide 11

Slide 11 text

ビルドしたイメージの書き込み $ make flash-kernel cd build && cmake .. CMake Error at pico_sdk_import.cmake:74 (message): Directory '/home/kazueda/home/kazueda/rpipico2/pico-sdk' not found Call Stack (most recent call first): CMakeLists.txt:33 (include) -- Configuring incomplete, errors occurred! … 11 <-「/home/kazueda/home/kazueda」を作成して、 使用している「rpipico2」ディレクトリをコピーして対応

Slide 12

Slide 12 text

Linux-nommuの起動 • ボートとの接続 • USB-C:母艦のUSBポート • USBシリアルアダプタ:ボードのTX、RX、GND • 以降、USBシリアルアダプタからの出力 12

Slide 13

Slide 13 text

Linux-nommuの起動 • 起動しました 13

Slide 14

Slide 14 text

Linux-nommuの起動 • 途中でとまります 14

Slide 15

Slide 15 text

Linux-nommuの起動 • ボードのUSB端子を母艦のポートからUSB電源に変更 • プロンプトが表示されました。 15

Slide 16

Slide 16 text

色々見て回りました 16

Slide 17

Slide 17 text

まとめ • RP2350のRisc-Vと8MB PSRAMの組み合わせで、Linux- nommuを起動 • 情報の錯綜、不足で、初心者は混乱 • シリアルポート、それ以外でネットワーク接続 • Risc-V用Linuxの起動の仕組みの勉強 17 今後の展開 おしまい