[Armadillo:07354] Re: CON9の初期設定

s.maruyama email@hidden
2011年 6月 23日 (木) 15:08:34 JST


お世話になっております、丸山です。

> { MX25_PIN_CSPI1_SS0, MUX_ALT5, MUX_ALT5, -1, -1 },
 -1 はどんな意味ですか

ブートローダーのソースを書き換えて起動したとすると、
ブートローダー起動中の初期設定はできると思いますが、
次に、Linux起動中の初期設定は、ブートローダーのソースを
書き換えた内容を引き継ぎますか。

もし、引き継がないとしたら、カーネルのどのファイルを変更すればよろしいでしょうか。

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

>> hermit-atsrc/target/armadillo4x0/board.c を見たところ、
>> このテーブルの意味が、わかりません。
> struct iomux_infoは、hermit-at/include/arch-mx25/iomux.hで
> 定義されている構造体です。
>
> struct iomux_info {
>        int pin;
>        u8 mux1;
>        u8 mux2;
>        u16 pad1;
>        u16 pad2;
> };
>
>> どれが何番ピン、PinStateの設定をLow/highにする方法など
>> ご教授ください。
>>
>> static struct iomux_info gpio_pins[] = {
>> /* CON9 */
>> { MX25_PIN_CSI_MCLK, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
> MX25_PIN_xxx と書いてある部分(pinメンバ)がどのパッドの設定をするかを示しています。
> どのパッドが、どのピンに対応するかは、ハードウェアマニュアルに記載があります。 
> 
>
> 例えば、MX25_PIN_CSI_MCLK の場合、
> 「表5.13 CON9信号配列」の以下の記述から、CON9_21ピンであることが分かります。 
> 
>>  21 EXT_IO14 In/Out 拡張入出力14、i.MX257のCSI_MCLKピンに接続
>
>
> MUX_ALT5 と書いてある部分(mux1メンバ)がマルチプレクスの設定です。
> そのパッドにどの機能を割り当てるかを指定します。
> mux1で指定した値が、
> i.MX25のReference Manualの「Appendix A IOMUX Registers」に記載のある、
> IOMUXC_SW_MUX_CTL_PAD_xxxレジスタに書き込まれます。
>
> pinメンバがMX25_PIN_CSI_MCLKでmux1メンバがMUX_ALT5の場合、
> IOMUXC_SW_MUX_CTL_PAD_CSI_MCLKのMUX_MODEが0b101に設定されます。
> 0b101は、GPIOとして設定することを意味します。
>
>
> 0x00e0と書いてある部分(pad1メンバ)が、機能の設定です。
> そのパッドの機能(プルアップするか否か)を指定できます。
> pad1で指定した値が、
> i.MX25のReference Manualの「Appendix A IOMUX Registers」に記載のある、
> IOMUXC_SW_PAD_CTL_PAD_xxxレジスタに書き込まれます。
> (マルチプレクス用のパッドとは、微妙に名前が違います。)
>
> pinメンバがMX25_PIN_CSI_MCLKでpad1メンバが0x00e0の場合、
> IOMUXC_SW_PAD_CTL_PAD_CSI_MCLKが0x00e0に設定されます。
> 0x00e0は、100kΩプルアップとして設定することを意味します。
>
> mux2とpad2は使われないので、適当に設定しておいてください。
>
>> { MX25_PIN_CSI_VSYNC, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_HSYNC, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_PIXCLK, MUX_ALT5, MUX_ALT5, 0x01e0, 0x01e0 },
>> { MX25_PIN_CSPI1_SS0, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_CSPI1_RDY, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_CLKO, MUX_ALT5, MUX_ALT5, 0x0000, 0x0000 },
>> { MX25_PIN_EXT_ARMCLK, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_CSPI1_SS1, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_CSI_D4, MUX_ALT5, MUX_ALT5, 0x01e0, 0x01e0 },
>> { MX25_PIN_CSPI1_SCLK, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_CSI_D5, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_D8, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_D6, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_D9, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> { MX25_PIN_CSI_D7, MUX_ALT5, MUX_ALT5, 0x01e0, 0x01e0 },
>> { MX25_PIN_VSTBY_REQ, MUX_ALT5, MUX_ALT5, 0x0080, 0x0080 },
>> { MX25_PIN_RTCK, MUX_ALT5, MUX_ALT5, 0x00e0, 0x00e0 },
>> /* CON14 */
>> { MX25_PIN_GPIO_C, MUX_ALT0, MUX_ALT0, 0x00e0, 0x00e0 },
>> { MX25_PIN_GPIO_D, MUX_ALT0, MUX_ALT0, 0x00a0, 0x00a0 },
>> /* FFC */
>> { MX25_PIN_DE_B, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_KPP_ROW0, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_KPP_ROW1, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_KPP_ROW2, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_KPP_ROW3, MUX_ALT5, MUX_ALT5, -1, -1 },
>> { MX25_PIN_KPP_COL0, MUX_ALT5, MUX_ALT5, 0x00a0, 0x00a0 },
>> { MX25_PIN_KPP_COL1, MUX_ALT5, MUX_ALT5, 0x00a0, 0x00a0 },
>> { MX25_PIN_KPP_COL2, MUX_ALT5, MUX_ALT5, 0x00a0, 0x00a0 },
>> { MX25_PIN_KPP_COL3, MUX_ALT5, MUX_ALT5, 0x00a0, 0x00a0 },
>> { MX25_PIN_GPIO_A, MUX_ALT0, MUX_ALT0, 0x00e0, 0x00e0 },
>> { MX25_PIN_GPIO_B, MUX_ALT0, MUX_ALT0, 0x00e0, 0x00e0 },
>> { },
>> };
>>
>> 以上、よろしくお願いいたします。
>>
>>> 竹之下です。
>>>
>>> hermit-atと、Atmark Distは別々のソースコードです。
>>>
>>> 下記のURLからダウンロードしたものを使用してください。
>>> http://armadillo.atmark-techno.com/files/downloads/armadillo-420/source/bootloader/hermit-at-2.1.2-source.tar.gz
>>>
>>>
>>> また、
>>>>> 設定を変更したい場合は、ブートローダーのソースを直接書き換えてくださ
>>>>> い。
>>>>> hermit-atsrc/target/armadillo4x0/board.c
>>> 上記は、
>>> hermit-at/src/target/armadillo4x0/board.c
>>> の間違いでした。("/"が一つ抜けていました。)
>>> 申し訳ありません。
>>>
>>> (2011年06月21日 10:45), s.maruyama wrote:
>>>> お世話になっております、丸山です。
>>>>
>>>> hermit-atsrc/target/armadillo4x0/board.c を探したのですが見つかりませ
>>>> ん。
>>>> Atmark-Dist のどこあるか教えてください。
>>>>
>>>> 以上、よろしくお願いいたします。
>>>>
>>>>> 竹之下です。
>>>>>
>>>>> Linuxが立ち上がるまでの間は、ブートローダー(hermit-at)で
>>>>> 入出力方向を設定しています。
>>>>>
>>>>> 標準では、以下の設定になっています。
>>>>> http://manual.atmark-techno.com/armadillo-4x0/armadillo-400_series_hardware_manual_ja-1.4.1/apb.html#table-apb-2
>>>>>
>>>>>
>>>>>
>>>>> 設定を変更したい場合は、ブートローダーのソースを直接書き換えてくださ
>>>>> い。
>>>>> hermit-atsrc/target/armadillo4x0/board.c
>>>>>
>>>>> (2011年06月20日 14:06), s.maruyama wrote:
>>>>>> お世話になっております、丸山です。
>>>>>>
>>>>>> Armadillo-420で開発しています。
>>>>>>
>>>>>> Armadillo-420のCON9に拡張ボードを接続しています。
>>>>>> ボードに電源を投入してから、Linuxが立ち上がる迄の間は、
>>>>>> CON9の入出力方向をアプリケーションではコントロールできませんので、
>>>>>>
>>>>>> 何か設定できる方法はありませんか。
>>>>>> 方法があると助かります。
>>>>>> 以上です、よろしくお願いいたします。
>>>>>>
>>>>>> _______________________________________________
>>>>>> armadillo mailing list
>>>>>> email@hidden
>>>>>> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
>>>>>>
>>




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