bc10-router/kernel update
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
]
開始行:
[[bc10-router]]
#contents
**bc10-router kernel 更新 [#aac487d9]
bc10-router の起動イメージとして~
arago-project の beagleboard 用 arago-console-image を使...
linux kernel の version は 3.3.7 になります。~
~
これは、{HOME}/oe/arago/conf/machine/beagleboard.conf に...
PREFERRED_PROVIDER_virtual/kernel = "linux-stable"
から {HOME}/oe/arago/recipes/linux/linux-stable_3.3.bb が...
~
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linu...
beagleboard 向けに {HOME}/oe/arago/recipes/linux/linux-st...
-0001-ARM-OMAP-Cleanup-Beagleboard-DVI-reset-gpio.patch
-0001-ARM-OMAP2-UART-Fix-incorrect-population-of-default-...
の二つの patch を当てたものが bitbake でビルドされます。~
~
この default の kernel を使用した場合も家庭用ルーターとし...
以下のような点に関して性能を追及するため kernel を更新し...
-より高いネットワークスループット
-より高速な無線LAN接続
-より少ない消費電力
Android を使用したスマートフォンなどの普及により、 Linux ...
近年開発が非常に活発になっており、kernel を更新することで...
パワーマネージメントなどの性能向上が見込めるためです。~
**kernel 更新手順 [#ec30883e]
bc10 向けの kernel の更新は beagleboard 向けの kernel 更...
***RobertCNelson リポジトリ [#s41a9562]
Beagleboard、Pandaboard など TI の OMAP/Sitara シリーズ S...
RobertCNelsonリポジトリ~
https://github.com/RobertCNelson/linux-dev~
から環境一式を取得します。
$ mkdir {work_dir}
$ cd ~/{work_dir}
$ git clone https://github.com/RobertCNelson/linux-dev.git
$ cd linux-dev
作業時点での master branch がどの version の kernel をビ...
#Kernel/Build
KERNEL_REL=3.8
KERNEL_TAG=${KERNEL_REL}-rc3
BUILD=d0
2013年1月末時点で default は 3.8 の開発ブランチになってい...
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/am33x-v3.1
remotes/origin/am33x-v3.2
remotes/origin/am33x-v3.6
remotes/origin/am33x-v3.7
remotes/origin/master
$ git checkout -b am33x-v3.7 remotes/origin/am33x-v3.7
ビルド対象を切り替えたら設定ファイルの整備を行います。~
予め用意されている sample をコピーし、~
$ cp system.sh.sample system.sh
ARM GCC CROSS Compiler と、uImage のビルドに関する設定が...
有効に戻し、設定を行います。~
#ARM GCC CROSS Compiler: (See hints in Readme, for diffe...
#CC=arm-linux-gnueabi-
CC=arm-arago-linux-gnueabi-
###OPTIONAL: BUILD_UIMAGE: also build uImage vs just zIm...
#
BUILD_UIMAGE=1
###OPTIONAL: ZRELADDR: needed when building uImage's.
#
##For TI: OMAP3/4/AM35xx
ZRELADDR=0x80008000
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
build_kernel.sh を実行します。
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
$ ./build_kernel.sh
実行すると {HOME}/linux-src/ に kernel ソースを git clone...
そこから ~/{work_dir}/linux-dev/KERNEL に 3.7.2 を checko...
ARM 用 OMAP 用 beagleboard 用の各種 patch を当てた上で me...
config を終了して save すると(save 後の .config は &ref(...
deploy ディレクトリに以下のようなファイルが生成されます。~
$ ls -1
3.7.2-bone4.1-dtbs.tar.gz
3.7.2-bone4.1-firmware.tar.gz
3.7.2-bone4.1-headers.tar.gz
3.7.2-bone4.1-modules.tar.gz
3.7.2-bone4.1.config
3.7.2-bone4.1.uImage
3.7.2-bone4.1.zImage
dtbs/
fir/
headers/
mod/
dtbs は 3.7 から ARM アーキテクチャーでも対応された [[Dev...
今回は使用しません。~
uImage(3.7.2-bone4.1.uImage)と modules(3.7.2-bone4.1-m...
~
一度 build_kernel.sh によるビルドが終わった後再度ビルドを...
$ ./tools/rebuild.sh
ビルド出来たこれらのファイルを [[bc10-router/arago-projec...
起動用SDカードは fat パーティションが /media/FAT に、ext3...
$ sudo -s
# cp 3.7.2-bone4.1.uImage /media/FAT/uImage
# tar xvfz 3.7.2-bone4.1-modules.tar.gz -C /media/EXT3
RobertCNelson リポジトリの 3.7.2 kernel への更新はこれで...
*** kernel.org [#g43092fb]
arago project の default kernel は、3.3.7 stable kernel に~
DVI 出力のための gpio の修正と uart のマルチプレクサの修...
bc10 を起動するのに必要な beagleboard 向けのその他の修正は~
3.3.7 以降の mainline kernel にはすでに取り込まれています...
そこで、kernel.org で配布されている stable ブランチを使用...
確認しておきます。~
~
まず kernel.org から最新 stable ブランチの kernel ソース...
$ cd ~/
$ wget http://www.kernel.org/pub/linux/kernel/v3.0/linux...
$ tar xvfj linux-3.7.2.tar.bz2
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
kernel config はできるだけ arago project の default kerne...
3.3.7 をビルドした際の .config を元に作業し oldconfig を...
$ cp {HOME}/oe/arago-tmp/work/beagleboard-arago-linux-gn...
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- o...
3.3.7 にはなかった 3.7.2 の新しい設定項目をどう設定するか...
(Y で kenrnel 組み込みにするか、N で無効にするか、m でモ...
設定をすべて終えたら 3.7.2 向けの新しい .config が出来て...
さらに調整したい項目がある場合は、oldconfig 完了後であれ...
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- m...
設定が完了したらビルドします。
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi-
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- u...
ビルド完了後、kernel module を起動イメージ上へ展開する配...
仮インストールします。~
$ mkdir tmp_install
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- m...
完了すると tmp_install を rootfs の / として kernel modul...
~
必要なのは arch/arm/boot/uImage と tmp_install/ の lib/ ...
bc10-router/arago-project で作成した bc10-router 起動イメ...
起動用SDカードは fat パーティションが /media/FAT に、ext3...
$ sudo -s
# cp arch/arm/boot/uImage /media/FAT/uImage
# cd tmp_install
# cp -a lib/ /media/EXT3/
kernel.org の 3.7.2 kernel への更新はこれで完了です。
**Wi-Fiスループット [#k738cd7e]
arago-project の beagleboard 向け default version の 3.3....
Robert Nelson repositry を使用して更新した 3.7.2 kernel で~
Wi-Fi のスループットに向上が見られるかを確認しました。~
~
bc10-router をルーターモードで起動させ、~
Wi-Fi アクセスポイントである bc10-router LAN 側インタフェ...
そこに W-Fi クライアントとして接続している Netbook の Wi-...
nuttcp で計測しました。~
~
***bc10-router wlan0---PC間 [#ja7882eb]
nuttcpによる測定~
WAN側: bc10-router nuttcp -S~
LAN側: PC nuttcp 192.168.30.1~
-3.3.7~
kernel version(詳細)
# uname -a
Linux bc10-router 3.3.7 #1 Mon Nov 26 22:45:08 JST 2012 ...
BogoMIPS
# cat /proc/cpuinfo | grep BogoMIPS
BogoMIPS : 581.89
スループット(10回計測平均)
|回 | 1| 2| 3| 4| 5| 6|...
|Mbps |50.7863|55.0793|53.6637|54.0530|52.7941|55.5915|...
|%TX |6 |6 |7 |7 |6 |7 |...
|%RX |23 |25 |24 |24 |24 |25 |...
|retrans|0 |0 |0 |0 |0 |0 |...
|msRTT |1.27 |1.62 |1.49 |1.40 |1.33 |1.35 |...
-3.7.2~
kernel version(詳細)
# uname -a
Linux bc10-router 3.7.2-bone4.1 #3 Wed Jan 16 14:35:07 J...
BogoMIPS
# cat /proc/cpuinfo | grep BogoMIPS
BogoMIPS : 388.12
スループット(10回計測平均)
|回 | 1| 2| 3| 4| 5| 6|...
|Mbps |36.3708|37.5193|37.8842|37.2199|37.4805|37.3811|...
|%TX |4 |4 |8 |8 |8 |8 |...
|%RX |25 |27 |28 |27 |26 |27 |...
|retrans|0 |0 |0 |0 |0 |0 |...
|msRTT |1.81 |1.92 |1.71 |1.73 |1.84 |2.08 |...
残念ながら作業時点 2013/01/16 で最新の stable kernel であ...
ネットワーク性能の向上は得られませんでした。~
~
3.7 から ARM アーキテクチャでも DeviceTree に対応し、一つ...
ソースコードの整理や共通化が進んだ半面、SoC ごと、マシン...
性能が得られなくなっているものと考えられます。~
~
あくまで性能を追求するのであれば arago-project の default...
linux kernel 更新による新機能の追加を取り込みたい、ARM ア...
kernel の更新を考慮しなければなりません。
終了行:
[[bc10-router]]
#contents
**bc10-router kernel 更新 [#aac487d9]
bc10-router の起動イメージとして~
arago-project の beagleboard 用 arago-console-image を使...
linux kernel の version は 3.3.7 になります。~
~
これは、{HOME}/oe/arago/conf/machine/beagleboard.conf に...
PREFERRED_PROVIDER_virtual/kernel = "linux-stable"
から {HOME}/oe/arago/recipes/linux/linux-stable_3.3.bb が...
~
git://git.kernel.org/pub/scm/linux/kernel/git/stable/linu...
beagleboard 向けに {HOME}/oe/arago/recipes/linux/linux-st...
-0001-ARM-OMAP-Cleanup-Beagleboard-DVI-reset-gpio.patch
-0001-ARM-OMAP2-UART-Fix-incorrect-population-of-default-...
の二つの patch を当てたものが bitbake でビルドされます。~
~
この default の kernel を使用した場合も家庭用ルーターとし...
以下のような点に関して性能を追及するため kernel を更新し...
-より高いネットワークスループット
-より高速な無線LAN接続
-より少ない消費電力
Android を使用したスマートフォンなどの普及により、 Linux ...
近年開発が非常に活発になっており、kernel を更新することで...
パワーマネージメントなどの性能向上が見込めるためです。~
**kernel 更新手順 [#ec30883e]
bc10 向けの kernel の更新は beagleboard 向けの kernel 更...
***RobertCNelson リポジトリ [#s41a9562]
Beagleboard、Pandaboard など TI の OMAP/Sitara シリーズ S...
RobertCNelsonリポジトリ~
https://github.com/RobertCNelson/linux-dev~
から環境一式を取得します。
$ mkdir {work_dir}
$ cd ~/{work_dir}
$ git clone https://github.com/RobertCNelson/linux-dev.git
$ cd linux-dev
作業時点での master branch がどの version の kernel をビ...
#Kernel/Build
KERNEL_REL=3.8
KERNEL_TAG=${KERNEL_REL}-rc3
BUILD=d0
2013年1月末時点で default は 3.8 の開発ブランチになってい...
$ git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/am33x-v3.1
remotes/origin/am33x-v3.2
remotes/origin/am33x-v3.6
remotes/origin/am33x-v3.7
remotes/origin/master
$ git checkout -b am33x-v3.7 remotes/origin/am33x-v3.7
ビルド対象を切り替えたら設定ファイルの整備を行います。~
予め用意されている sample をコピーし、~
$ cp system.sh.sample system.sh
ARM GCC CROSS Compiler と、uImage のビルドに関する設定が...
有効に戻し、設定を行います。~
#ARM GCC CROSS Compiler: (See hints in Readme, for diffe...
#CC=arm-linux-gnueabi-
CC=arm-arago-linux-gnueabi-
###OPTIONAL: BUILD_UIMAGE: also build uImage vs just zIm...
#
BUILD_UIMAGE=1
###OPTIONAL: ZRELADDR: needed when building uImage's.
#
##For TI: OMAP3/4/AM35xx
ZRELADDR=0x80008000
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
build_kernel.sh を実行します。
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
$ ./build_kernel.sh
実行すると {HOME}/linux-src/ に kernel ソースを git clone...
そこから ~/{work_dir}/linux-dev/KERNEL に 3.7.2 を checko...
ARM 用 OMAP 用 beagleboard 用の各種 patch を当てた上で me...
config を終了して save すると(save 後の .config は &ref(...
deploy ディレクトリに以下のようなファイルが生成されます。~
$ ls -1
3.7.2-bone4.1-dtbs.tar.gz
3.7.2-bone4.1-firmware.tar.gz
3.7.2-bone4.1-headers.tar.gz
3.7.2-bone4.1-modules.tar.gz
3.7.2-bone4.1.config
3.7.2-bone4.1.uImage
3.7.2-bone4.1.zImage
dtbs/
fir/
headers/
mod/
dtbs は 3.7 から ARM アーキテクチャーでも対応された [[Dev...
今回は使用しません。~
uImage(3.7.2-bone4.1.uImage)と modules(3.7.2-bone4.1-m...
~
一度 build_kernel.sh によるビルドが終わった後再度ビルドを...
$ ./tools/rebuild.sh
ビルド出来たこれらのファイルを [[bc10-router/arago-projec...
起動用SDカードは fat パーティションが /media/FAT に、ext3...
$ sudo -s
# cp 3.7.2-bone4.1.uImage /media/FAT/uImage
# tar xvfz 3.7.2-bone4.1-modules.tar.gz -C /media/EXT3
RobertCNelson リポジトリの 3.7.2 kernel への更新はこれで...
*** kernel.org [#g43092fb]
arago project の default kernel は、3.3.7 stable kernel に~
DVI 出力のための gpio の修正と uart のマルチプレクサの修...
bc10 を起動するのに必要な beagleboard 向けのその他の修正は~
3.3.7 以降の mainline kernel にはすでに取り込まれています...
そこで、kernel.org で配布されている stable ブランチを使用...
確認しておきます。~
~
まず kernel.org から最新 stable ブランチの kernel ソース...
$ cd ~/
$ wget http://www.kernel.org/pub/linux/kernel/v3.0/linux...
$ tar xvfj linux-3.7.2.tar.bz2
ti-sdk-beagleboard-05.05.01.00 の Cross Toolchain へ PATH...
$ export PATH={HOME}/ti-sdk-beagleboard-05.05.01.00/linu...
kernel config はできるだけ arago project の default kerne...
3.3.7 をビルドした際の .config を元に作業し oldconfig を...
$ cp {HOME}/oe/arago-tmp/work/beagleboard-arago-linux-gn...
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- o...
3.3.7 にはなかった 3.7.2 の新しい設定項目をどう設定するか...
(Y で kenrnel 組み込みにするか、N で無効にするか、m でモ...
設定をすべて終えたら 3.7.2 向けの新しい .config が出来て...
さらに調整したい項目がある場合は、oldconfig 完了後であれ...
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- m...
設定が完了したらビルドします。
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi-
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- u...
ビルド完了後、kernel module を起動イメージ上へ展開する配...
仮インストールします。~
$ mkdir tmp_install
$ make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- m...
完了すると tmp_install を rootfs の / として kernel modul...
~
必要なのは arch/arm/boot/uImage と tmp_install/ の lib/ ...
bc10-router/arago-project で作成した bc10-router 起動イメ...
起動用SDカードは fat パーティションが /media/FAT に、ext3...
$ sudo -s
# cp arch/arm/boot/uImage /media/FAT/uImage
# cd tmp_install
# cp -a lib/ /media/EXT3/
kernel.org の 3.7.2 kernel への更新はこれで完了です。
**Wi-Fiスループット [#k738cd7e]
arago-project の beagleboard 向け default version の 3.3....
Robert Nelson repositry を使用して更新した 3.7.2 kernel で~
Wi-Fi のスループットに向上が見られるかを確認しました。~
~
bc10-router をルーターモードで起動させ、~
Wi-Fi アクセスポイントである bc10-router LAN 側インタフェ...
そこに W-Fi クライアントとして接続している Netbook の Wi-...
nuttcp で計測しました。~
~
***bc10-router wlan0---PC間 [#ja7882eb]
nuttcpによる測定~
WAN側: bc10-router nuttcp -S~
LAN側: PC nuttcp 192.168.30.1~
-3.3.7~
kernel version(詳細)
# uname -a
Linux bc10-router 3.3.7 #1 Mon Nov 26 22:45:08 JST 2012 ...
BogoMIPS
# cat /proc/cpuinfo | grep BogoMIPS
BogoMIPS : 581.89
スループット(10回計測平均)
|回 | 1| 2| 3| 4| 5| 6|...
|Mbps |50.7863|55.0793|53.6637|54.0530|52.7941|55.5915|...
|%TX |6 |6 |7 |7 |6 |7 |...
|%RX |23 |25 |24 |24 |24 |25 |...
|retrans|0 |0 |0 |0 |0 |0 |...
|msRTT |1.27 |1.62 |1.49 |1.40 |1.33 |1.35 |...
-3.7.2~
kernel version(詳細)
# uname -a
Linux bc10-router 3.7.2-bone4.1 #3 Wed Jan 16 14:35:07 J...
BogoMIPS
# cat /proc/cpuinfo | grep BogoMIPS
BogoMIPS : 388.12
スループット(10回計測平均)
|回 | 1| 2| 3| 4| 5| 6|...
|Mbps |36.3708|37.5193|37.8842|37.2199|37.4805|37.3811|...
|%TX |4 |4 |8 |8 |8 |8 |...
|%RX |25 |27 |28 |27 |26 |27 |...
|retrans|0 |0 |0 |0 |0 |0 |...
|msRTT |1.81 |1.92 |1.71 |1.73 |1.84 |2.08 |...
残念ながら作業時点 2013/01/16 で最新の stable kernel であ...
ネットワーク性能の向上は得られませんでした。~
~
3.7 から ARM アーキテクチャでも DeviceTree に対応し、一つ...
ソースコードの整理や共通化が進んだ半面、SoC ごと、マシン...
性能が得られなくなっているものと考えられます。~
~
あくまで性能を追求するのであれば arago-project の default...
linux kernel 更新による新機能の追加を取り込みたい、ARM ア...
kernel の更新を考慮しなければなりません。
ページ名:
BC::labsへの質問は、bc9-dev @ googlegroups.com までお願い致します。