/home/tnishinaga/TechMEMO

日々行ったこと、面白かったことを書き留めます。

ARM

UEFIのHTTP BOOTを試してみる

UEFI 2.5からネットワークブートの方法として"HTTP BOOT"が増えました。 今回はこのHTTP BOOTは従来の方式に比べ何が嬉しいのか、この機能を使ってUEFIのアプリを起動するにはどのようにすればよいかを書いていこうと思います。 忙しい人のまとめ ネットワー…

gnu-efiを使ってAARCH64/ARM64のUEFIサンプルアプリを動かしてみる

UEFIアプリを作るためのツールキットとしてはEDK2とgnu-efiの2つが有名ですが、後者のgnu-efiについて書いているところが少なかった気がしたので、サンプルビルドの方法とQEMU上で実行する手順について書いておくことにしました。 対象はx86_64ではなく、AAR…

先日U-Bootに投稿したARMv7MのLinux起動時にデータキャッシュを無効にするパッチについての備忘録

先日、以下のパッチをU-Bootに投稿し、マージされました。 [U-Boot] [PATCH] armv7m: Disable D-cache when booting nommu(ARMv7M) Linux kernel 忘れないように、なぜこのパッチを投稿したかを残しておこうと思います。 前回のあらすじ ARM Cortex-M7マイコ…

QEMUでCortex-M3/M4マイコンボードをエミュレーションしてLチカする話

GNU ARM Eclipse QEMUを用いるとCortex-Mマイコンのプログラムをエミュレータを使ってパソコンの上で行うことができました。

黒柴(KURO-SHEEVA)にdebian jessieを入れる

tnishinaga.hatenablog.com この記事の続きです. 前回はLinuxカーネルをビルドして動かしてみるところまでやりました. 今回はdebianのイメージを作って動かしてみたいと思います. debootstrapでdebian環境を作る debootstrapはdebianの基本システムを簡単…

黒柴(KURO-SHEEVA)用にLinux Kernel 4.3をビルドする

先日,セキュリティミニキャンプ沖縄2015にチューターとして参加させていただきました. そこでお手伝いしながら木藤さんの講義「組込みシステム解体新書(入門編)」を聞いていたところ,組み込み機器をいじりたい欲がむくむくと湧き出してきたので,以前とあ…

PyOCDを使ってmbedをデバッグする(2015年末ver)

この記事はmbed Advent Calendar 2015の9日目の記事です. お久しぶりです. 今回の紹介するPyOCDは,mbedのプログラミングやデバッグに使えるPythonのライブラリです. 昨年のmbedアドベントカレンダーではmbedをデバッグするために使用していました. tnis…

Raspberry Pi2をJTAGデバッグできました

タイトルのとおりです. BareMetalなRaspberry Pi2にJTAGデバッガをつなげて,gdbでレジスタ読んだり実行止めたり出来ました. とりあえず,メモだけ残します. 参考にしたサイト http://www.raspberrypi.org/forums/viewtopic.php?f=72&t=100268 用意するも…

ARMアセンブラの16bit即値代入でコンパイルエラーが出た件

ARM

以下の様な16bit即値をレジスタr0に代入するコードをコンパイルしたところ,エラーとなったので,解決策をメモする. ターゲットはRaspberry Pi 2.コンパイラはgcc 4.7.2 mov r0, #0xffff ARMの公式ドキュメントを読んでみると ARMv6T2 以上のアーキテクチ…