原创 rk3128系統&驅動開發分享——(五)xbin執行文件添加

驅動開發過程中經常需要寫一些測試代碼程序,可以在驅動中添加測試代碼,然後應用層調用。也可以直接應用層寫程序來測試。 這裏介紹添加可執行c程序到system/xbin目錄下並且直接通過make系統源碼就可以自動添加打包到系統中的方法。 an

原创 linux系統介紹及驅動子系統介紹

一、驅動分類 linux驅動一般分類方式爲字符設備驅動、塊設備驅動、網絡設備驅動。 字符設備驅動採用字節流訪問方式,如按鍵、串口、觸摸屏、spi外設等。 塊驅動如U盤、SD卡、nanflash等。 塊設備驅動需要mount掛載然後才能訪問

原创 Linux內核驅動調試方法

一、問題發現 問題發現可根據系統運行時查詢/proc信息(/proc是僞文件系統,主要提供一些系統信息),例如查詢/proc/meminfo查詢內存信息,也可採用一些內存檢查工具來檢測。 還可以根據系統運行崩潰發現問題。 二、調試方法 1

原创 IMAX6Q+DM9000+DP83640設計原理分享

概況:採用飛思卡爾IMAX6Q作爲主芯片,主芯片總線外接MAC芯片和PHY芯片實現網絡功能以及通過專用的物理層芯片實現1588時鐘同步功能。本節只介紹幾本原理,具體的驅動開發流程及1588時鐘同步協議開發移植流程暫不分享。 參考資料:DM

原创 linux驅動編程基礎

•內存操作 kmalloc()/kfree() vmalloc()/vfree() vmalloc和kmalloc都用於內核中內存的分配。 vmalloc分配的爲虛擬上連續的內存,kmalloc分配的是物理地址一一映射過來的連續內存。

原创 RK3128系統&驅動開發分享——(一)、開發環境搭建

本系列課程主要講解RK3128平臺的系統&驅動開發相關的知識。 RK3128爲我司基於RK3128平臺定製的一款pad設備。基於瑞芯微官網源碼開發。android版本採用5.1。 本章節主要講解android系統開發環境搭建及編譯基礎,

原创 linux應用基礎編程及優化調試

1、多線程及同步 linux多線程api:pthread_equal 、 pthread_self 、 pthread_create 、 pthread_exit 、pthread_join、pthread_cancel、pthrea

原创 RK3128系統&驅動開發分享——(四)init.rc及開機啓動腳本

1、android啓動代碼/system/core/init/init.c 該啓動代碼讀取並解析init.rc腳本代碼如下: init_parse_config_file("/init.rc"); 然後通過action_for_each_

原创 RK3128系統&驅動開發分享——(三)、系統啓動

RK3128系統啓動大致流程分三個階段1、boot啓動,即rk3128MiniLoaderAll(L)_V2.31.bin和uboot.img啓動2、linux內核啓動,即kernel.img的啓動3、android系統的啓動,即ramd

原创 rootfs根文件系統

一、下載並解壓根文件系統的源碼,進入根文件系統目錄 二、配置BusyBox 1、修改Makefile文件        vim  Makefile          CROSS_COMPILE = arm-linux-     

原创 ARM硬件接口及總線介紹

ARM總線架構:分高速總線和低速總線,類似pc機的南北橋。 常用總線接口介紹: uart: 接口介紹:uart和com是指物理接口形式,ttl和rs232是指電平信號標準。Uart爲4線接口(VCC、GND、TX、RX)採用ttl電平,

原创 RK3128系統&驅動開發分享——(二)、編譯及燒錄

燒錄工具及文檔:鏈接:https://pan.baidu.com/s/1jIvihSE 密碼:y67p本文主要講解三部分:一、編譯原理流程講解二、打包腳本講解三、生成文件及燒錄講解一、編譯原理流程講解. build/envsetup.sh

原创 Linux內核內存泄漏工具使用

1. 內核添加內存泄漏功能選項        kernel memory leak detector        kernel debugging        memory leak debugging        Com

原创 lwIP移植工作(一)cc.h 與CPU和編譯器的相關接口

Lwip的移植主要是三個接口部分:1、與CPU或編譯器相關接口(include中cc.h文件)2、與操作系統的接口;3、與底層網卡驅動的接口。一、與CPU或編譯器相關接口與CPU或編譯器相關接口(include中cc.h文件),主要包括數

原创 ARM中斷處理過程

一、前言本文主要以ARM體系結構下的中斷處理爲例,講述整個中斷處理過程中的硬件行爲和軟件動作。具體整個處理過程分成三個步驟來描述:1、第二章描述了中斷處理的準備過程2、第三章描述了當發生中的時候,ARM硬件的行爲3、第四章描述了ARM的中