3

Angstrom OS を実行している BeagleBone デバイスを GPIO 信号でスリープ モードから復帰させる必要があります。

私はそれを使用することが方法であることを読みました/sys/class/gpio/gpioXX/power/wakeup。問題は、power ディレクトリの下に「wakeup」ファイルがないことです。では、どのようにアクティベートすればよいのでしょうか? カーネルを再コンパイルせずに解決策はありますか?

GPIO 値から正常に読み取ることができるので、GPIO sysfs は機能しています。

4

1 に答える 1

2

MUXサブシステムの初期化に GPIO バンクが初期化されると、OMAP4xxx カーネルの GPIO ドライバー内に問題がありました。これにより、GPIO モードでのピンによるウェイクアップが効果的に防止されました。

これは、構造体(ファイル drivers/omap/gpio-omap.c)mux[]のフィールドを読み取ることで確認できます。gpio_bankNULL 値を保持しないでください。

関数の最後に for ループがありvoid omap_gpio_mod_init(struct gpio_bank *bank)ます。muxそれを削除し、関数の最後でポインタを初期化する必要がありstatic int omap_gpio_request(struct gpio_chip *chip, unsigned offset)ます。

これにより、正しく初期化されることが保証されます。

また、私が覚えている限りでは、これはデバウンス クロックに問題がありました。私の最初のアドバイスがうまくいかない場合は、そのピンのデバウンスを無効にしてみてください。

于 2013-01-29T17:11:19.227 に答える