nsk_sato
2017年8月30日 19時19分
Armadillo-840のマニュアルに従い
kernelとuserlandのイメージファイルを作成しました。
このイメージをフラッシュメモリに書込み、立ち上げた所
gpio.shの実行でエラーが発生し装置が立ち上がらない状況となりました
エラー内容(抜粋):「can't create /sys/class/gpio/gpioxx」
現象が発生している状況で、/sys/class/gpioディレクトリ配下
を確認したところ実行エラーとなったgpioxxがありませんでした。
実行エラーとならなかったgpioxxは存在していました。
イメージ作成手順の中で、/sys/class/gpio/gpioxxの生成に関する
操作/設定/変更は何かありますでしょうか?
コメント
at_ohsawa
exportしようとして
can't create /sys/class/gpio/gpioxx
が出力されるのであれば、当該のピンがGPIO以外のデバイスドライバ
に割り当てられているということです。
GPIOと他のデバイスドライバでピンを同時に使う事はできません。
参照:Armadillo-840 製品マニュアル
6.9. GPIO
https://manual.atmark-techno.com/armadillo-840/armadillo-840_product_ma…
どのGPIOポートを期待されているのかは分らないので、ここからは
想像になりますが恐らく、Armadillo-840のCON7もしくはCON8に
独自の拡張ボードを接続して、その信号のいくつかをGPIOとして使いたい。
という事かと思います。
その場合は、linux kernelのコンフィギュレーション(下記マニュアル参照)から
CON7 extension board
CON8 extension board
のうち、独自の拡張ボードを接続した側を Custom に選択して
デフォルトで設定されているオーディオコーデック等のドライバの
割り当てを解除します。
参照: Armadillo-840シリーズ 製品マニュアル
8.3. Linuxドライバ 8.3.1. Armadillo-840
https://manual.atmark-techno.com/armadillo-840/armadillo-840_product_ma…
この章に記載してある通り、Customにすると各デバイスドライバの
選択を解除することができます。
解除すると、GPIOに割り当て可能な信号線はGPIOドライバに割り当て
られるので、exportができるようになります。
どのGPIOポート/ピンを使いたいのかを教えてもらえれば、具体的な説明が
できると思います。
nsk_iida
at_ohsawa様
貴重な情報ありがとうございました。
仰るっ通りmenuconfigで対応でき解決しました。
重ねてありがとうございました。
> exportしようとして
>
>
> can't create /sys/class/gpio/gpioxx >
>
> が出力されるのであれば、当該のピンがGPIO以外のデバイスドライバ
> に割り当てられているということです。
> GPIOと他のデバイスドライバでピンを同時に使う事はできません。
>
> 参照:Armadillo-840 製品マニュアル
> 6.9. GPIO
> https://manual.atmark-techno.com/armadillo-840/armadillo-840_product_ma…
>
> どのGPIOポートを期待されているのかは分らないので、ここからは
> 想像になりますが恐らく、Armadillo-840のCON7もしくはCON8に
> 独自の拡張ボードを接続して、その信号のいくつかをGPIOとして使いたい。
> という事かと思います。
>
> その場合は、linux kernelのコンフィギュレーション(下記マニュアル参照)から
> CON7 extension board
> CON8 extension board
> のうち、独自の拡張ボードを接続した側を Custom に選択して
> デフォルトで設定されているオーディオコーデック等のドライバの
> 割り当てを解除します。
>
> 参照: Armadillo-840シリーズ 製品マニュアル
> 8.3. Linuxドライバ 8.3.1. Armadillo-840
> https://manual.atmark-techno.com/armadillo-840/armadillo-840_product_ma…
>
> この章に記載してある通り、Customにすると各デバイスドライバの
> 選択を解除することができます。
> 解除すると、GPIOに割り当て可能な信号線はGPIOドライバに割り当て
> られるので、exportができるようになります。
>
> どのGPIOポート/ピンを使いたいのかを教えてもらえれば、具体的な説明が
> できると思います。
nsk_iida
2017年8月31日 11時17分
> Armadillo-840のマニュアルに従い
> kernelとuserlandのイメージファイルを作成しました。
>
> このイメージをフラッシュメモリに書込み、立ち上げた所
> gpio.shの実行でエラーが発生し装置が立ち上がらない状況となりました
> エラー内容(抜粋):「can't create /sys/class/gpio/gpioxx」
>
上記のgpio.shとは、自前のスクリプトで、「echo in > /sys/class/gpio/gpioxx/direction」(xx=番号値)
を複数のgpioxxに実行しています。
> 現象が発生している状況で、/sys/class/gpioディレクトリ配下
> を確認したところ実行エラーとなったgpioxxがありませんでした。
> 実行エラーとならなかったgpioxxは存在していました。
>
/sys/class/gpio/配下のgpioxxが中途半端に作成されている点が不明です。
> イメージ作成手順の中で、/sys/class/gpio/gpioxxの生成に関する
> 操作/設定/変更は何かありますでしょうか?
>