2021-11-03

Tinker Board 2 Kernel再コンパイル方法

はじめに

デフォルトのTinker Board 2 用Tinker OSはnftableのmasqueradeとnatに対応していない。
使えるようになるにはkernelの再コンパイルが必要となる。今回、コンパイル&稼働することができたので、公開する。

必要なもの:

  1. debian9
  2. ソース(https://github.com/TinkerBoard2/kernel)
  3. クロスコンパイラ(http://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz)
手順:
1. コンパイル環境の準備(OS)
debian9なのはgccのデフォルトがver6だからである。LinuxKernelはgcc10とかには対応していないので、debian9を用意しよう。個人的はdockerがおすすめ。
そしてaptコマンドでコンパイルに必要なアプリをどんどんインストールしよう。

2. Kernelソースの取得
TinkerBoard2のLinuxKernelソースをgithubから取得しよう。gitコマンドでも良いけど、
githubからのzipダウンロードもおすすめ。

3. クロスコンパイラのダウンロード
TinkerBoard2のフォーラムによると、linaroのクロスコンパイラを使うらしい。
おとなしくダウンロードして解凍しよう。
$ tar -Jxvf gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz
4.コマンドを実行する。
# Kernelのオプションをtinker2固有の設定にしてくれる。
$ make ARCH=arm64  CROSS_COMPILE=/root/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-  tinker2_defconfig 

# ユーザーが設定する部分。
# CONFIG_NFT_MASQやCONFIG_NFT_CHAIN_ROUTE_IPV4を有効にしよう。
$ make ARCH=arm64  CROSS_COMPILE=/root/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-  menuconfig

# Kernelのコンパイル
$ make ARCH=arm64  CROSS_COMPILE=/root/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- -j4 rk3399-tinker_board_2.img
※コンパイルのとき、コンパイルに必要なアプリがなく。エラーになるかもしれない。エラーを読んで必要なファイルをどんどんインストールしよう。
※うまくコンパイルができていれば、「boot.img」が作られる。

5.カーネルをSDカードへ書き込む。
「boot.img」をSDカードのパーティーション4番目に直接書き込む。
 $ sudo dd if=boot.img  of=/dev/mmcblk0p4
※TinkerBoard2が稼働中でも書き込み可能

6. TinkerBoard2をリブートする。
dmegや、zcat /proc/config.gz
などで想定通り設定(コンパイル)されていることを確認してみてください。

備考:
※ TinkerBoard2をルーター化してみたかった。なお、TinkerBoard2のルーター化は成功しました。
※ ここに書いてある内容を参考にした。
https://tinker-board.asus.com/forum/index.php?/topic/14991-kernel-build-error-wlan-wireless-and-net-modules/

2021-11-02

Chromebook + USB DAC

結論

「HDは」動く。ただし、Urtra-HDさせるには制限があり、再生側のアプリケーションがChromebookに対応している必要がある。

構成

  1. Chromebook
    ASUS Chromebook Detachable CM3
  2. USB-Cハブ
    Anker PowerExpand 8-in-1 USB-C PD 10Gbps
  3. USB-DAC
    iFi audio ZEN DAC Signature V2

説明

音源

今回の音源はChromebook。Chromebookで良い音が聞きたかった。 最近のものだったら、外部ディスプレイも繋げられるし、キーボードやマウスも繋げられる。 ただし,殆どのアプリはChromebookのUrtra-HDに対応していない。

USB-Cハブ

充電しながら音を流したいのだったら買いましょう。 USB-A(メス)のコネクタも付いていることですし。

USB-DAC

つなぎ先が、スピーカーだったのでコレにした。専用のACアダプターがついているせいか、値段はお高め。