sho_oikawa
2021年4月14日 13時47分
お世話になっております。
及川と申します。
Armadillo-X1のGPIO5の部分にてマルチプレクスの設定を行い、
SDカードをマウントできるようにしたいと考えております。
用途としては普通の外部メモリとして用いる予定です。
マルチプレクスの方法について
https://armadillo.atmark-techno.com/blog/53/2584
https://armadillo.atmark-techno.com/blog/53/2629
を参考に設定を試みましたが、
記載にあった「1行目:設定するためのドライバ指定」の時点で躓いております。
浅学のため申し訳ございませんが、
SDカードのマルチプレクス設定を行う方法について、ご教授いただけませんでしょうか。
以上、よろしくお願いいたします。
コメント
sho_oikawa
及川です。
入江様、回答ありがとうございます。
> Armadillo-X1 開発セット同梱の拡張ボードではCON8のSDインターフェースを
> 使用しています。
> その設定を行っている以下のファイルが参考になると思います。
> https://github.com/atmark-techno/linux-4.9-at/blob/master/arch/arm/boot…
今回は[armadillo_x1.dtb]をmakeして用いているため、[armadillo_x1.dts]に参照先の内容を記載して
makeを行いました。その場合、[armadillo_x1.dtb]作成時にはエラーとならなかったのですが、
[armadillo_x1-extboard-eva01-usbhost.dtb]make時にエラーとなりました。
対応として添付ファイルの[armadillo_x1_changed.dts]のように
参考とした内容と少し内部の変数を変更したらコンパイルは正常終了したため、
そちらで動作確認を行いました。
しかしアップデート後、SDカードの参照先が変になっているような挙動となってしまいます。
変更ファイルは上記の[armadillo_x1_changed.dts]にて[armadillo_x1.dts]を上書きしたのみとなります。
(ファイル名は[armdillo_x1.dts]です)
修正点、改善点などをお教えいただけませんでしょうか。
以上、よろしくお願いいたします。
ファイル | ファイルの説明 |
---|---|
dts.zip | armadillo_x1_base.dtsは初期時、armadillo_x1_changed.dtsは変更後のファイルとなります。 |
at_akihito.irie
sho_oikawa
及川です。
> 具体的に何が起こっているか説明頂くことは可能でしょうか。
> (エラーメッセージが出力されている等)
添付ファイルのような形になります。
[従来]の方は比較用です。
[起動時エラー出力]は二つのログが入っています。
①最初~590行目は追加したSDカード部分に何も挿入しない状態のログです。
②591~最後はマイクロSDカードを挿入した状態のログです。
[mmcblk1]に対して転送データエラーなどの内容で表示されます。
因みに、SDカード部分はアップデート用と拡張用の二つ分用意したく考えております。
アップデート用はX1のCON7?の部分であり、拡張用はGPIO5を使う予定です。
以上、よろしくお願いいたします。
ファイル | ファイルの説明 |
---|---|
teraterm_起動時エラー出力.log | |
teraterm_従来.log |
at_akihito.irie
入江です。
問題の切り分けのため、400kHz程度まで動作周波数を落として動作するか確
認していただけますでしょうか。
具体的な手順としましては、&usdhc2ノードにmax-frequencyを追記して動作周
波数を指定します。
&usdhc2 { pinctrl-names = "default", "state_power_off"; pinctrl-0 = <&pinctrl_usdhc2_ex>; pinctrl-1 = <&pinctrl_usdhc2_ex_power_off>; pinctrl-assert-gpios = <&gpio5 13 GPIO_ACTIVE_LOW>, /* SD2_CMD */ <&gpio5 14 GPIO_ACTIVE_LOW>, /* SD2_DATA0 */ <&gpio5 15 GPIO_ACTIVE_LOW>, /* SD2_DATA1 */ <&gpio5 16 GPIO_ACTIVE_LOW>, /* SD2_DATA2 */ <&gpio5 17 GPIO_ACTIVE_LOW>; /* SD2_DATA3 */ tuning-step = <2>; vmmc-supply = <®_sd2_ex_vmmc>; vqmmc-supply = <&vgen6_reg>; enable-sdio-wakeup; keep-power-in-suspend; no-1-8-v; max-frequency = <400000>; /* この行を追加 */ status = "okay"; };
上記修正適用後、再度dtbを生成し、Armadilloに書き込んで動作確認を行って
ください。
sho_oikawa
及川です。
ご確認いただきありがとうございます。
起動ログについて添付いたします。
1~593行目がSDカード未挿入状態での起動ログで、
594~最後がSDカード挿入状態での起動ログとなります。
先ほどとは異なり、エラーが表示されていないように見えます。
以上、よろしくお願いいたします。
ファイル | ファイルの説明 |
---|---|
teraterm_速度変更版.log |
at_akihito.irie
sho_oikawa
at_akihito.irie
2021年4月14日 17時55分
入江です。
> https://armadillo.atmark-techno.com/blog/53/2584
> https://armadillo.atmark-techno.com/blog/53/2629
> を参考に設定を試みましたが、
> 記載にあった「1行目:設定するためのドライバ指定」の時点で躓いております。
申し訳ございません。上記記事内、&iomuxでなく、&iomuxcの間違いでした。
修正いたしました。
> SDカードのマルチプレクス設定を行う方法について、ご教授いただけませんでしょうか。
Armadillo-X1 開発セット同梱の拡張ボードではCON8のSDインターフェースを
使用しています。
その設定を行っている以下のファイルが参考になると思います。
https://github.com/atmark-techno/linux-4.9-at/blob/master/arch/arm/boot…