android平台按鍵驅動[基於x210開發板]

來源:互聯網
上載者:User

按鍵驅動源碼在kernel/arch/arm/mach-s5pv210/button-smdkv210.c中,源碼很簡單,
在s3c_button_probe函數中設定相關按鍵的寄存器,再開啟定時器定時掃描。在定時器中斷
函數s3cbutton_timer_handler中判斷相應IO口的電平,達到監控按鍵的作用。
值得注意的是,當我們需要修改按鍵的功能時,需要和android層的按鍵匹配起來,具體通過
數組s3c_Keycode的定義以及按鍵配置表實現,驅動中定義如下:
static int s3c_Keycode[MAX_BUTTON_CNT] = {KEY_POWER, KEY_BACK, KEY_VOLUMEUP, KEY_VOLUMEDOWN};
這裡表示定義四個按鍵,分別為POWER,返回,音量加,音量減。具體和device/samsung/smdkv210/s3c-button.kl中的定義對應,s3c-button.kl
內容如下:
key 116    ENDCALL           WAKE_DROPPED
key 103    DPAD_UP           WAKE_DROPPED
key 108    DPAD_DOWN         WAKE_DROPPED
key 105    DPAD_LEFT         WAKE_DROPPED
key 106    DPAD_RIGHT        WAKE_DROPPED
key 114    VOLUME_DOWN     WAKE
key 115    VOLUME_UP     WAKE
key 139    MENU              WAKE_DROPPED
key 158   BACK              WAKE_DROPPED
注意,這裡s3c-button.kl的內容需和out/target/product/smdkv210/system/usr/keylayout/qwerty.kl的值對應起來。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.