[Armadillo:06413] Re: Linuxカーネルのバージョンアップ方法

Takenoshita Koyo email@hidden
2010年 12月 24日 (金) 13:37:33 JST


Armadillo-500 FX インターフェースボードのCON7は、i.MX31内蔵UARTコントローラのポート1につながっています。
http://manual.atmark-techno.com/armadillo-500-fx/armadillo-500-fx-interface-board-hardware-manual/ch04#sec-CON7_シリアルインターフェース1

> Arch/arm/mach-mx3 以下に armadillo-500 の対応がありましたので、
これは、Armadillo-500 開発ボードへの対応です。

Armadillo-500 開発ボードのコンソールはCON6です。
CON6は、i.MX31内蔵UARTコントローラのポート1につながっています。
http://manual.atmark-techno.com/armadillo-500/armadillo-500-dev-hardware-manual/ch05#sec-5-7

確かに、同じコントローラを使っているので、何某かのデータは出てきても良さそうです。

ブートローダーは、Armadillo-500 FX用のものを使用していますか?
ARM Linuxでは、ブートローダーからカーネルにmachine numberを渡して、
それが一致した場合だけ起動(マシーンごとの初期化処理)をするようになっています。

メインラインカーネルの以下の部分
linux-2.6/arch/arm/mach-mx3/mach-armadillo5x0.c
MACHINE_START(ARMADILLO5X0, "Armadillo-500")
              ~~~~~~~~~~~~
              ここでmachine numberが決まる
        /* Maintainer: Alberto Panizzo  */
        .boot_params    = MX3x_PHYS_OFFSET + 0x100,
        .map_io         = mx31_map_io,
        .init_irq       = mx31_init_irq,
        .timer          = &armadillo5x0_timer,
        .init_machine   = armadillo5x0_init,
MACHINE_END

ここが、Armadillo-500 FX用になっていますでしょうか?

当社から提供しているカーネルのFX用のものは以下のようになっています。
linux-2.6.26-at/arch/arm/mach-mx3/armadillo500fx.c
MACHINE_START(ARMADILLO500FX, "Armadillo-500 FX")
              ~~~~~~~~~~~~~~
              FX用はこれ
        /* Maintainer: Atmark Techno, Inc. */
        .phys_io        = AIPS1_BASE_ADDR,
        .io_pg_offst    = ((AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
        .boot_params    = PHYS_OFFSET + 0x00000100,
        .map_io         = mxc_map_io,
        .init_irq       = mxc_init_irq,
        .timer          = &mxc_timer,
        .init_machine   = armadillo500fx_init,
MACHINE_END

参照
http://armputer.pbworks.com/f/porting_to_arm.pdf
http://free-electrons.com/docs/kernel-porting/

Yoshiaki IWATA さんは書きました:
> 竹之下さん
> お世話になっております。
> 岩田です。
> 
> Linux 2.6.33.7 を kernel.orgからダウンロードしたところ、
> Arch/arm/mach-mx3 以下に armadillo-500 の対応がありましたので、
> それをベースに Armadillo-500 FX対応を行おうとしているのですが、
> Harmitが kernel, userlandを読み込み展開したあと、インターフェースボード上の
> CON7からメッセージが出てこなくなります。
> 
> このCON7に関しては、Armadillo-500 と Armadillo-500FXの違いは無いという認識で
> すが
> その認識が間違っているのでしょうか?
> 
> なにか情報があればご提供いただけないでしょうか?
> 以上です。よろしくお願いいたします。
> 
>> -----Original Message-----
>> From: email@hidden
>> [mailto:email@hidden] On Behalf Of Yoshiaki
>> IWATA
>> Sent: Monday, December 20, 2010 7:15 PM
>> To: 'Armadillo series general discussion list'
>> Subject: [Armadillo:06390] Re: Linuxカーネルのバージョンアップ方法
>>
>> 竹之下さん、
>>
>>> 現状、今すぐお渡しできる形のものは無いのですが、よろしければ
>>> 2.6.32が必要な理由を教えていただけませんでしょうか?
>> 2.6.30以上を要求するデバイスドライバ(サードパーティ製です)を使用する必
>> 要が
>> 出てきましてそれに対応するために、2.6.30, 2.6.32, 2.6.34と試してみたの
>> です
>> が、
>> (コンフィグレーションの問題だと思いますが)ビルドエラーがでてしまいます。
>> そのデバイスドライバは USBでつながる HIDです。
>> (すみませんそれ以上はNDAで話せません)
>>
>> 以上です。よろしくお願いいたします。
>>
>>> 竹之下です。
>>>
>>>> とりあえず、kernel(2.6.32)のビルドが通るだけでも良いのですが、
>>>> Linux-2.6.32へのパッチという形での公開をご検討いただけないでしょう
>>> か?
>>> 現状、今すぐお渡しできる形のものは無いのですが、よろしければ
>>> 2.6.32が必要な理由を教えていただけませんでしょうか?
>>>
>>> 2.6.32以降で導入された何某かの機能を使われる予定でしょうか?
>>> 場合によっては、必要な機能だけ2.6.26にバックポートするのが早
>>> いかもしれません。
>>>
>>> Yoshiaki IWATA さんは書きました:
>>>> 竹之下さん、
>>>> ご回答ありがとうございます。
>>>>
>>>>> linux-2.6.34にはその修正が入っていないので、linux-2.6.34を
>>>>> Armadillo-500 FXで動かそうと思った場合、ドライバ類を自力で追加する
>>>>>>>>>> があります。やってやれないことは無いですが、それなりに手間がかかり
>>>>> す。
>>>>> 別のスレッド「Android対応」への投稿でも書いたように、linux-2.6.32-at
>>>>>>>> たはlinux-2.6.35-atへバージョンアップすることが予定されています。
>>>> 別のスレッドを拝見させていただきました。
>>>>
>>>> まだ予定、検討段階とのことですが、
>>>> とりあえず、kernel(2.6.32)のビルドが通るだけでも良いのですが、
>>>> Linux-2.6.32へのパッチという形での公開をご検討いただけないでしょう
>>> か?
>>>> 以上です。よろしくお願いいたします。
>>>>
>>>>> 竹之下です。
>>>>>
>>>>>>> そのため、残念ながら、linux-2.6.34を使う
>>>>>>> ことはできません。
>>>>>> というのは、
>>>>>> Kernelのビルドが通らないので、自力でなんとかしてください。
>>>>>> と言う意味でしょうか?
>>>>>> それとも、
>>>>>> そもそもArmadillo-500FXはlinux-2.6.34では動きませんのであきらめ
>>>>>>>>>> ださい。
>>>>>> と言う意味でしょうか?
>>>>> どちらかというと、前者でしょうか。
>>>>>
>>>>> 現在、Armadillo-500 FX用のカーネルとして提供しているlinux-2.6.26-at
>>>>> というものは、メインライン(大元のソースコード)のバージョン2.6.26
>>>>> (linux-2.6.26)に、アットマークテクノ製品用の修正(主にドライバ周り)
>>>>>>>> 加えたものです。なので、最後に-atがついています。
>>>>>
>>>>> linux-2.6.34にはその修正が入っていないので、linux-2.6.34を
>>>>> Armadillo-500 FXで動かそうと思った場合、ドライバ類を自力で追加する
>>>>>>>>>> があります。やってやれないことは無いですが、それなりに手間がかかり
>>>>> す。
>>>>> 別のスレッド「Android対応」への投稿でも書いたように、linux-2.6.32-at
>>>>>>>> たはlinux-2.6.35-atへバージョンアップすることが予定されています。
>>>>>
>>>>> Yoshiaki IWATA さんは書きました:
>>>>>> 竹之下さん、
>>>>>> ご回答ありがとうございました。
>>>>>>
>>>>>> 念のため確認させてください。
>>>>>>
>>>>>>> そのため、残念ながら、linux-2.6.34を使う
>>>>>>> ことはできません。
>>>>>> というのは、
>>>>>> Kernelのビルドが通らないので、自力でなんとかしてください。
>>>>>> と言う意味でしょうか?
>>>>>> それとも、
>>>>>> そもそもArmadillo-500FXはlinux-2.6.34では動きませんのであきらめ
>>>>>>>>>> ださい。
>>>>>> と言う意味でしょうか?
>>>>>>
>>>>>>> 竹之下です。
>>>>>>>
>>>>>>>> 単純にlinux-2.6.x のリンク先を変更するだけで良いのでしょうか?
>>>>>>> カーネルを差し替えるには、linux-2.6.xのリンク先を変更するだけで
>>>>>>> 良いです。
>>>>>>>
>>>>>>> Armadillo-400用に書いた説明ですが、他の製品でも同様です。
>>>>>>>
>> http://manual.atmark-techno.com/armadillo-guide/armadillo-guide-2_ja-1
>>>>>>> .1.0/ch07.html#sec_when_linux_kernel_is_updated
>>>>>>>
>>>>>>> 但し、Armadillo-500 FX用のカーネルは、現在のところlinux-2.6.26
>>>>>>>>>> ース
>>>>>>> にし
>>>>>>> たものまでしか提供しておりません。そのため、残念ながら、
>> linux-2.6.34
>>>>>>>>>>>> 使う
>>>>>>> ことはできません。
>>>>>>>
>>>>>>> Yoshiaki IWATA さんは書きました:
>>>>>>>> お世話になっております。岩田と申します。
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Armadillo-500FX LCDモデルで Linux 2.6.34を使用したいのですが、
>>>>>>>>
>>>>>>>> atmark-dist 内のlinux 2.6.26-at6のバージョンアップ方法をご教示
>>>>>>>>>>>>>>>>>>>>>>>>> ないでしょうか?
>>>>>>>> atmark-dist は 20090318を使用しています。
>>>>>>>>
>>>>>>>> 単純にlinux-2.6.x のリンク先を変更するだけで良いのでしょうか?
>>>>>>>> どこかに説明があれば、そのポインタをご教示いただけないでしょう
>> か。
>>>>>>>> 以上、よろしくお願いいたします。
>> _______________________________________________
>> armadillo mailing list
>> email@hidden
>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> 
> 
> _______________________________________________
> armadillo mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
> 


-- 
Koyo Takenoshita




armadillo メーリングリストの案内