아래 보이는 USB 타입 GPS는 ACM 드라이버로 붙습니다.
http://www.ascenglobal.com/info.asp?id=139
kernel에서 ACM을 추가한다.
*** USB Device Class drivers ***
<*> USB Modem (CDC ACM) support
< > USB Printer support
아래 링크에서 gps 소스를 다운 받는다.
https://www.dropbox.com/s/tp8zp5grnpis51r/libodroid-gps.tar.gz
device/hardkernel/proprietary/libodroid-gps에 압축을 푼다.
device.mk에 gps가 포함이 되도록 수정한다.
# gps
PRODUCT_PACKAGES += \
gps.$(TARGET_PRODUCT)
BoardConfig.mk
# GPS
BOARD_HAVE_ODROID_GPS := true
BOARD_SUPPORT_EXTERNAL_GPS := true
62 #for gps
63 /dev/ttyACM0 0666 gps gps
64 /dev/ttyUSB0 0666 gps gps
hardware/libhardware/hardware.c
91 /* Check that the id matches */
92 if (strcmp(id, hmi->id) != 0) {
93 ALOGE("load: id=%s != hmi->id=%s", id, hmi->id);
94 status = -EINVAL;
95 goto done;
96 }
97
98 //codewalker
99 if(hmi->dso)
100 hmi->dso = handle;
101
102 /* success */
103 status = 0;