作者janyfor (妳哪位ㄚ)
看板LinuxDev
標題[問題] Sensor HAL Kernel 與 user space 溝通
時間Thu Sep 29 00:50:42 2011
有幾個問題想請教各位,
目前正在實作 Android 的 sensor HAL 層,
卡在幾個環節上, 有些地方並不是很清楚,
首先, sensor 的數值範圍要怎麼定義?
例如 G-sensor, driver 會不斷的取得 x, y, z 三軸的重力值,
但是數值的範圍如何才能讓應用層正確使用?
其次,
user 與 kernel 的溝通方式,
目前有使用 ioctl 的方式初步讓其能溝通,
但最近找資料上有看見 ioctl 在 linux 之後版本會不支援,
因此, 想使用較為廣泛的寫法,
其中有找到關於 socket, 以及 sysfs 的方式,
目前看見的範例有些太過複雜, 有些寫得太過簡短,
有沒有這方面比較容易上手的書籍, 資料, 或者方式可供參考?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 182.235.94.61
1F:推 troylee:看spec 09/29 01:10
2F:→ bluestar8783:LSB轉SI單位,就要看spec去做轉換,範圍應是+/-9.81 09/29 10:33
3F:→ bluestar8783:ioctl不支援?真是個奇怪的說法..不然就改input_event 09/29 10:36
4F:→ bluestar8783:socket&sysfs實做上應該也不會太難才是 09/29 10:37
5F:→ bluestar8783:sensor HAL&driver是相對單純的,可能是做久才有此感 09/29 10:42
6F:→ mecs:input device 09/29 11:40
7F:推 tfe:參考android source的sensors.h。範圍看你開多大的dynamic 10/02 14:53
8F:→ tfe:range, +-2g=+-2*9.81 m/s^2, 餘此類推。dynamic range是寫y 10/02 14:54
9F:→ tfe:register設定的 所以同一顆ic也可能有不同的range 10/02 14:55
10F:→ janyfor:感謝以上回覆. 的確是相對單純, 只是我少了起頭... 10/04 23:02