基於Android移植IIC裝置驅動筆記

來源:互聯網
上載者:User

標籤:

我是從2015.7.23開始移植這個驅動程式的,經過在網上尋找資料,決定利用linux下I2C驅動體繫結構來完成驅動移植

整個步驟是根據http://blog.csdn.net/rickbeyond/article/details/7838313這個大神的部落格開始的,於是我的苦逼坑死我之路從此開始。。。。

 

第一天下午就卡在了第三步,即對Android.mk的編譯上,剛開始是報如下錯誤

make: *** No rule to make target `/iic.c‘, needed by `out/target/product/generic/obj/SHARED_LIBRARIES/iic.default_intermediates/iic.o‘.  Stop.

大神們的部落格都被我翻遍了,沒有!麻痹的這錯誤就我一個人遇到啊!!!!好吧,接著在部落格園與csdn論壇發貼,到今天為止沒有一個人知道,也許是知道,但是不屑回答我吧。。。不過,終於到下午下班之前自己找了半天發現有一條語句沒有(如下),遂加上。還真的就不報這個錯誤了,

LOCAL_SHARED_LIBRARIES := liblog libcutils

但是!!!!!!!但是換了個錯誤,說找不到i2c-dev.h標頭檔,開啟該路徑,發現好像確實是沒得,好吧,那我複製一份好了,也不知道對不對,呵呵

不過最後還真產生了.so檔案,哎呀臥槽!這個錯誤我是碰到了有緣人啊!他也沒解決,卡在這裡了,呵呵,不過那傢伙直接換了條路,去寫單獨的驅動程式去了,好吧,這坑爹路上又只剩我一個人了。。。。

附上昨天提問的連結:http://q.cnblogs.com/q/74082/    

 

終於到了第二天了。。。也就是7月24日,不得不感歎日子過得真是快啊!

嗯~是的,今天有開始開開心心的寫第二部分代碼,使用JNI在應用程式架構層添加服務提供者,又在最後!!!update-api!!!!

臥槽,果不其然,出錯了!!!!!!!

1 device/samsung/multimedia/codecs/video/Android.mk:10: device/samsung/multimedia/codecs/video/exynos4/mfc/exynos5/Android.mk: No such file or directory2 device/samsung/multimedia/utils/csc/Android.mk:10: device/samsung/multimedia/utils/csc/exynos4/exynos5/Android.mk: No such file or directory3 make: *** No rule to make target `device/samsung/multimedia/utils/csc/exynos4/exynos5/Android.mk‘.  Stop.

說沒有檔案,其實是該路徑都沒有,好吧,查Android.mk

 1 LOCAL_PATH := $(call my-dir) 2  3 include $(CLEAR_VARS) 4  5 ifeq ($(filter-out exynos4,$(TARGET_BOARD_PLATFORM)),) 6 include   $(LOCAL_PATH)/exynos4/Android.mk 7 endif 8  9 ifeq ($(filter-out exynos5,$(TARGET_BOARD_PLATFORM)),)10 include   $(LOCAL_PATH)/exynos5/Android.mk11 endif12     

報錯說在第10行,進入(LOCAL_PATH)/exynos5/Android.mk這個裡面,按照作者的意思應該是device/samsung/multimedia/codecs/video/exynos5/Android.mk啊!!!

  怎麼會是device/samsung/multimedia/codecs/video/exynos4/mfc/exynos5/Android.mk呢???!!!!臥槽,於是看了下device/samsung/multimedia/codecs/video/exynos4/Android.mk,說是再進入mfc/Android.mk中,然後沒有了,嗯啊!沒有了,也就是說當前路徑是停留在了device/samsung/multimedia/codecs/video/exynos4/mfc下啊!!!好吧我就想當然的覺得LOCAT_PATH是在這麼個屬性了!!!

於是!!!我也開始亂來了,把device/samsung/multimedia/codecs/video/Android.mk改成了

 1 LOCAL_PATH := $(call my-dir) 2  3 LOCAL_CUR_PATH :=$(LOCAL_PATH) 4 include $(CLEAR_VARS) 5  6 ifeq ($(filter-out exynos4,$(TARGET_BOARD_PLATFORM)),) 7 include   $(LOCAL_PATH)/exynos4/Android.mk 8 endif 9 10 ifeq ($(filter-out exynos5,$(TARGET_BOARD_PLATFORM)),)11 include   $(LOCAL_CUR_PATH)/exynos5/Android.mk12 endif13     

加了一個臨時變數儲存當前路徑,再make update-api,哎呀,居然過了!!!但是!!!臥槽哪有這麼多的但是....

1 build/core/base_rules.mk:166: *** device/samsung/multimedia/codecs/video/exynos5/mfc_v4l2: MODULE.TARGET.STATIC_LIBRARIES.libsecmfcapi already defined by device/samsung/multimedia/codecs/video/exynos4/mfc.  Stop.

這是什麼鬼啊什麼鬼啊啊啊啊!!!模組ID要唯一???我靠,我哪個模組ID不唯一了就?好吧,誰讓你是大哥,我去找debug..

基於Android移植IIC裝置驅動筆記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.