Armadilloフォーラム

Armadillo-420 kernel変更(linux-3.14-at13 → linux-v4.14-at55)

tamuki

2023年4月19日 18時12分

tanukiです。

以下についてお教えください。

armadillo-420を使用しております。
以下の環境下で、kernel、ユーザーランドの変更を実施する事ができ、
正常に起動する事も確認出来ました。
※フォルダ配置、シンボリックリンク等は、マニュアル1を参考にしました。

・開発環境:atde5-amd64-20191016.tar.gz
・Atmark-Dist:atmark-dist-20191216.tar.gz
・Linuxカーネル:linux-3.14-at13.tar.gz

ここで、linuxのバージョンを上げたく、
以下のサイトより最新のlinuxバージョンをダウンロードしました。
< https://download.atmark-techno.com/ >

・開発環境:atde5-amd64-20191016.tar.g
・Atmark-Dist:atmark-dist-20191216.tar.gz
・Linuxカーネル:linux-v4.14-at55.tar.gz

 ※シンボリックリンクはマニュアルに従い「linux-3.x」としています。

linux-3.14使用時と同様の手順でkernelの設定をしようとしたところ、
>/home/atmark/atmark-dist/make ARCH=arm menuconfig

・「atmark-dist v1.55.1 Configuration」画面にてkernel設定を選択し、
  [*]Customize Kernel Settings(NEW)
 「Do you wish to save your new kernel configuration?」で「Yes」を選択しました。
・「.config -Linux/arm バージョン kernel Configuration」画面が出力されずに、
 以下のメッセージがターミナルに出力されました。
 *** unable to find the ncurses libraries or the
 *** required header files.
 *** 'make menuconfig' requires the ncurses libraries.
 ***
 *** Install ncurses (ncurses-devel) and try agein
 ***

linux-3.14-at13では発生しませんでした。
開発環境、Atmark-Dist、Linuxカーネルの組み合わせのは正しいでしょうか?
ちなみに、開発環境、Atmark-Distはダウンロードサイトの最新版を使用しているとの認識です。

<マニュアル1>
 Armadillo実践開発ガイド
  ~組み込みLinuxの導入から製品化まで~
   第一部「7.2.Armark Distを使ったルートファイルシステムの作成」
    Version 3.1.0
    2021/12/18
    linux3.14-at対応

コメント

at_akihito.irie

2023年4月19日 19時10分

入江です。

> ・Atmark-Dist:atmark-dist-20191216.tar.gz
> ・Linuxカーネル:linux-3.14-at13.tar.gz

Armadillo-420におきましては、ご使用のAtmark-distとLinuxカーネルが最新です。
最新のソフトウェアは以下から確認できます。
https://armadillo.atmark-techno.com/resources/software/armadillo-420/li…
https://armadillo.atmark-techno.com/resources/software/armadillo-420/us…
また、Armadillo-420のLinuxカーネルのバージョンをアップデートする予定はございません。

ちなみに、4.14カーネルはArmadillo-640やArmadillo-610などの別製品に対応したソフトウェアです。

つきましては、カーネルをアップデートしたい理由を教えていただければ何かアドバイスできるかもしれません。

入江さん

返信ありがとうございます。
以下に回答しますのでよろしくお願いします。

> ちなみに、4.14カーネルはArmadillo-640やArmadillo-610などの別製品に対応したソフトウェアです。
> つきましては、カーネルをアップデートしたい理由を教えていただければ何かアドバイスできるかもしれません。
>>
PEAK製(IPEH-002021)のPCAN-USBを用いてCAN通信を試みていますが、
cansendで送信したコマンドが送信先ECUに届いていなさそうです。(candumpでは送受信した内容が見れています)
そのため、PEAK製のドライバーチェック用シェルを実行したところ、
「PEAK System PCAN-USB needs Linux 3.4」と指摘されたためLinuxカーネルのアップデートが必要なのでは?と考えた次第です。

ちなみにKernel設定はマニュアルを参考にして以下のようにしています。
下記の設定で>ipconfig -a can0を実行した結果、RX packets、TX packets共にインクリメントする事は確認しています。
※CON14を接続する設定としていないため、can0のみです。

<マニュアル>
 Armadillo実践開発ガイド
  ~組み込みLinuxの導入から製品化まで~
   第3部「2.5.CAN」
    Version 3.0.0
    2015/10/26
    linux3.14-at対応

<Kernel設定>
・図2.65 CANドライバーを有効にする:設定済み
 その他に、以下設定をしています。

 --- CAN bus subsystem support
  CAN Device Drivers -->
   CAN USB interfaces -->
    <*>PEAK PCAN-USB/USB Pro interfaces
・図2.66 CANに使用するピンを指定する:USBを使用するので「[*]Enable I2C2 at CON14」のまま
 ※FlexCANは使用しないので、Disableとしています。
  Freescale i.MX support -->
   Device options -->
    []Enable FlexCAN2 module

御社では「CANアドオンモジュール」を販売されていますが、
CAN通信は本モジュールのみで実現可能でしょうか?

よろしくお願いします。
以上