原创 platform_driver_register( )過程追蹤

以下代碼源於linux3.1.9。 platform_driver_register( ) 是內核中非常著名的函數 。platform_driver_register( )負責註冊平臺驅動程序,如果在內核中找到了使用驅動程序的設備,調用p

原创 19年linux驅動筆記

1.管道(pipe)是一種用來連接兩個進程的虛擬文件,當進程A欲向進程B發送數據時,它把管道文件視作輸出文件,向其中寫數據,進程B則可將管道文件視作輸入文件,從中讀數據。於是,進程A和B之間的通信很像普通文件的讀寫。 2.MINIX中進程

原创 Linux input子系統詳解

一:前言 最近在研究android的sensor driver,主要是E-compass,其中用到了Linux input子系統.在網上也看了很多這方面的資料,感覺還是這篇分析的比較細緻透徹,因此轉載一下以便自己學習,同時和大家分享! (

原创 USB學習之一:USB總線驅動程序

USB總線驅動程序的作用 1. 識別USB設備 1.1 分配地址 1.2 並告訴USB設備(set address) 1.3 發出命令獲取描述符 描述符的信息可以在include\linux\usb\Ch9.h看到 2. 查找並安裝對應

原创 Linux 下C語言獲取文件大小

Linux 下C語言獲取文件大小 C語言是一種比較底層的語言,有時在其他語言中很容易操作的事情,在c語言中就比較麻煩,例如獲取一個文件的大小。Java中File類有個length函數,Python中os.path包中有個getsize函數

原创 Linux kernel debug技巧----開啓DEBUG選項

kernel的source code中有很多使用pr_debug/dev_dbg輸出的日誌信息(例如device tree解析的代碼,drivers/of/fdt.c)。默認情況下,kernel不會將這些日誌輸出到控制檯上,比如dev_d

原创 Linux驅動加載後kernel panic的oops信息分析

kernel panic 表示Linux kernel走到了一個不知道該怎麼走下一步的狀況,一旦到這個情況,kernel就儘可能把它此時能獲取的全部信息都打印出來,至於能打印出多少信息。 首先看一下出錯的kernel panic 現象,下

原创 class_create() 、class_create()詳解

在剛開始寫Linux設備驅動程序的時候,很多時候都是利用mknod命令手動創建設備節點,實際上Linux內核爲我們提供了一組函數,可以用來在模塊加載的時候自動在/dev目錄下創建相應設備節點,並在卸載模塊時刪除該節點,當然前提條件是用戶空

原创 Linux fuser命令用法

fuser命令是一個非常聰明的unix實用程序,用於查找哪個進程正在使用文件,目錄或套接字。它還提供有關擁有進程和訪問類型的用戶的信息。 fuser工具顯示使用指定文件或文件系統的每個進程的進程標識(PID)。fuser用法如下: 如下

原创 高通平臺ADC開發-AT+QTEMP

1.高通平臺AP內部沒有集成ADC電路,使用的是PMU內部的ADC,通過PMU的GPIO或者AMUX採集接口,AT+QADC命令採集電壓信息,AT+QTEMP命令將採集的電壓信息轉換爲溫度信息,信息通過spmi總線發送給AP處理。sdx5

原创 perl子程序詳解

原文鏈接:https://blog.csdn.net/rockiecxh/article/details/25214951 定義子程序:使用關鍵字sub,例如     sub marine{  

原创 用戶層和內核交互小方法

原文鏈接:https://blog.csdn.net/njuitjf/article/details/16940865 proc_create的使用方法 proc文件系統是個有用的東東。 創建一

原创 高通平臺電源管理regulator介紹

1. 前期參考資料文檔鏈接:          1).https://blog.csdn.net/longwang155069/article/details/53129378          2).https://blog.csdn.

原创 linux內核kallsyms機制分析

原文鏈接:http://www.th7.cn/system/lin/201502/93870.shtml 一、前言 Linux內核是一個整體結構,而模塊是插入到內核中的插件。儘管內核不是一個可安

原创 I2C總線時序以及ACK和NACK(NAK)

原文鏈接:http://blog.chinaunix.net/uid-16100003-id-3059814.html 額外資料:https://www.jianshu.com/p/ded5a2