原创 OFN鼠標驅動(六) -- drivers\i2c\busses\i2c-s3c2410.c的分析

  之前我們分析的都是I2C的一些結構問題,現在我們來看看I2C的具體物理實現。 drivers\i2c\busses裏面有很多文件,每一個文件都對

原创 \lib\klist.c

  小結:   下面這個圖應該能說明全部問題   @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 函數列表:  

原创 lib\kobject.c文件分析

  本文件的函數列表:   char *kobject_get_path(struct kobject *kobj, gfp_t gfp_mask)

原创 OFN鼠標驅動(七) -- I2C部分最後的測試程序

在進入正題之前,我們先對前面的內容做個小結吧: 系統啓動的時候,會先調用s3c2410_i2c中的平臺代碼初始化I2C硬件設備,同時這個文件也實現了I2C通訊的物理操作,最關鍵的是,這個文件中註冊了一個適配器。 然後進入i2c-dev.c

原创 OFN鼠標驅動(五) -- i2c-dev.c文件的分析

  分析完i2c-core後,其實還遺留了不少問題,比如algo的掛載,I2C的ioctl命令的響應等,帶着這些問題,我們繼續分析i2c-dev.c

原创 OFN鼠標驅動(九) -- tsdev.c的分析

  這個文件是將input.c分析了一小半後打斷進入的,因爲在分析input.c的時候,發現這個文件只不過是一個函數集,類似於i2c-core.c的作用一樣,爲了避免重蹈分析i2c-core.c的痛苦,所以這裏先分析tsdev.c文件。

原创 drivers\base\sys.c

  小結:   從sysdev_shutdown函數的實現,我們可以大概的分析一下驅動的層次模式如下: 1、最頂層的是system_subsys,所有的cls都掛載在他的鏈表中 2、每一個cls有一個驅動鏈表,這個驅動鏈表又可以按sysd

原创 STM32學習筆記

以前摸STM32時整理的一份學習筆記,因爲圖太多了,整理太費時間,所以就把整個筆記壓成了PDF,有興趣的可以到以下地址下載: http://download.csdn.net/source/3524363   第零章 STM32芯片功能概

原创 OFN鼠標驅動(十) --input.c文件分析(上)

在分析完TS的代碼之後,我嘗試改了個TS驅動,結果發現驅動並沒有調用probe函數,帶着這個疑問,我們繼續來分析input.c文件,這個文件和TS驅動的關聯是INPUT設備的註冊。   同樣的,爲了方便理解,我們打亂了程序的順序。   @

原创 OFN鼠標驅動(一) --- I2C驅動的分析(DS1337)

  本文以Linux自帶的驅動DS1337爲例,對IIC驅動進行分析。 DS1337所在的位置爲Linux\drivers\i2c\chips\ds

原创 OFN鼠標驅動(二) -- I2C驅動的移植(1)

在分析完DS1337的驅動之後,我們對I2C的驅動的移植有了個簡單的認識,於是仿照DS1337的驅動,我們寫了OFN的I2C部分:   #include <linux/module.h> #include <linux/init.h> #

原创 drivers\base\core.c

  文件小結: 讀完這個文件的代碼,其實這個文件實現的最關鍵的代碼就是device_add函數,這個函數之前的所有函數都是爲這個函數服務的。而這個函數之後的函數則很簡單,基本和這個函數互相映襯了。而device_add函數在後面分析平臺設

原创 OFN鼠標驅動(三) -- I2C驅動的移植(2)

 驅動改好之後,RZ到目標板上,insmod, lsmod, rmmod可以看裝載的結果.   接下來,就是寫一個測試程序看下是否能打開設備了,同樣的,也是找了個EEPROM的代碼來修改的.   #include <stdio.h> #i

原创 kobject之kobject_uevent.c文件分析

struct      kset_uevent_ops {        int                 (*filter)(struct kset *kset, struct kobject *kobj);          /

原创 OFN鼠標驅動(八) -- inputs3c2410_ts.c的分析

 通訊的準備工作做完了,下面我們看看鼠標數據是怎麼給系統的。 和OFN最貼近的設備當然就是TS -- 觸摸屏了。 於是我們先來看看系統自帶的TS的驅動代碼: 其實這個文件分析完之後,我們基本已經能夠完成OFN驅動的移植動作了。   ---