製品

Armadillo-X1

仕様

CON8 拡張インターフェース

デフォルトコンフィグレーション

  • SMP Symmetric Multi-Processing
  • SMP_ON_UP Allow booting SMP kernel on uniprocessor systems
  • ARM_CPU_TOPOLOGY Support cpu topology definition
  • HAVE_ARM_ARCH_TIMER Architected timer support
  • VMSPLIT_2G Memory split (2G/2G user/kernel split)
  • NO_HZ Tickless System (Dynamic Ticks)
  • PREEMPT Preemptible Kernel
  • ARM_PATCH_IDIV Runtime patch udiv/sdiv instructions into __aeabi_{u}idiv()
  • AEABI Use the ARM EABI to compile the kernel
  • HIGHMEM High Memory Support
  • CPU_SW_DOMAIN_PAN Enable use of CPU domains to implement privileged no-access
  • COMPACTION Allow for memory compaction
  • BOUNCE Enable bounce buffers
  • CMA Contiguous Memory Allocator

Node-RED

Electron

Armadillo-640

modprobe

  • Enable loadable module support を有効にしてカーネルをビルド
    [atde]$ cd ~/linux-v4.14-at29
    [atde]$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- LOADADDR=0x82000000 uImage
    [atde]$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
    [atde]$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=/tmp/mod modules_install
  • uImage を armadillo へ転送
    [atde]$ scp arch/arm/boot/uImage atmark@[armadilloのip]:~/
  • /tmp/mod の中身を armadillo へ転送
    [atde]$ cd /tmp/mod
    [atde]$ tar czf lib.tar.gz lib
    [atde]$ scp lib.tar.gz atmark@[armadilloのip]:~/
  • armadillo 側でファイルを配置
    [armadillo]# cp uImage /boot/uImage
    [armadillo]# tar zxvf lib.tar.gz
    [armadillo]# cp -r lib/modules /lib
    
  • kmod パッケージをインストール
    [armadillo]# apt-get install kmod

GPIO

SPI

Armadillo-440

開発

Perl

Python

LCD(VGA)

  • EABI ARM マシン用 fbset_2.1-28_armel.deb
    • ダウンロードして、dbkg -x でパッケージ展開し、bin 配下をビルド対象の  適当な場所(atmark-dist/AtmarkTechno?/[***]/usr/local/bin など)に配置してビルド
    • 入っているコマンド
      • fbset
      • con2fbmap
      • modeline2fb

解像度

画面のローテート

  • Xfbdev のオプションで指定
    -screen 480x640@90

LCD(ST7920)

ドライバなど

参考情報

GUI

フォント

シリアル通信

GPIO

  • カーネルコンフィギュレーションで機能が割り当てられなかったピンは、全て GPIO として設定される

GPIO sysfs

  • 標準状態で有効になっている
  • GPIO sysfsでは、/sys/class/gpio/(GPIO_NAME) ディレクトリ以下のファイルで入出力方向の設定、出力レベルの設定、入出力レベルの取得を行うことができる

Armadillo-200 シリーズ互換 GPIO ドライバー

  • 標準状態では無効になっている
  • 有効にするには Linux カーネルコンフィギュレーションで、CONFIG_GPIO_SYSFS を無効に、CONFIG_ARMADILLO2X0_GPIO を有効にして、カーネルをビルドする必要がある

i2c

  • Armadillo-400シリーズでは、標準のカーネルでi2cdevドライバーが有効になっているため、特に何も設定しなくとも使用可能

USB

libusb 0.1系

HID

  • 入力デバイス情報の見方
    # cat /proc/bus/input/devices

デバイスドライバ

カーネルコンフィギュレーション

Kconfig

System.map

  • System.mapファイルとはカーネルが使用するシンボルテーブル
  • シンボルテーブルはメモリ上でシンボル名とアドレスの対応関係を示す
  • シンボル名は、値もしくは関数名である場合が多い
  • System.mapファイルは、シンボル名のアドレスまたはアドレスの示すシンボル名が必要とされるケースにおいて要求される。とりわけこれはカーネルパニックやLinux kernel oopsが発生した場合、そのデバッグの役に立つ。
  • カーネルは、コンフィグレーション(Kconfig)にてCONFIG_KALLSYMSを有効化すると自身のアドレス-名前変換を行う

ATDE

設定

OpneCV

Tips

コンフィグ領域

  • コンフィグ領域の保存
    # flatfsd -s
  • コンフィグ領域の初期化(注意!)
    # flatfsd -w
    • 初期化時には「/etc/default」ディレクトリ以下のファイルがコンフィグ領域に保存され、且つ「/etc/config」ディレクトリにファイルが複製される
  • 書き換え回数
    • /etc/config - Armadilloフォーラム
      • 1ブロック(128KB)単位でイレース/プログラムされる
      • そのイレース回数の限度はおよそ10万回
      • イレース=「flatfsd -s」

コンソール

ブラウザ

  • iceweasel なら ARM系でもいけそう

USB-HID

ファイルシステム

cramfs

Docker

2038年問題


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-04-05 (月) 08:41:59 (1115d)