原创 alsa音頻架構

設計ASoc的目的是爲嵌入式系統片上處理器音頻單元或外部的音頻解碼芯片提供更好的ALSA支持 ASoC有多個組件組成snd_soc_platform/snd_soc_codec/snd_soc_dai/snd_soc_card以

原创 關於開通博客

考慮了很久,今天終於開通了這個博客。我其實不太善於文字的人,雖然以前很熱愛文學,但是,自從選擇理科之後,也就不怎麼去關注文學了,所以,本來一般的文字功底,就日漸乾涸了。我其實挺關注CSDN的,從之前,通過CSDN下載資料,到慢慢的去關注C

原创 Android 筆記-Linux Kernel SMP (Symmetric Multi-Processors) 開機流程解析 Part(3) Linux 多核心啟動流程從rest_init到ker

  承襲之前的內容,本文會先把resr_init到kernel_init的流程做一個說明. 並針對Secondary處理器Booting,CPU I

原创 ARM與Cortex筆記-ARM MPCore (Multi-Processor Core) 多核心架構解析.

隨著目前SmartPhone的應用與複雜度增加,這類消費性電子產品,必須要能在考量功耗與持久性的前提下,達成使用者可接受的高效能,並且還要有足夠的使用與待機時間,基於如此,ARMMPCore多核心架構,就是一個在消費性電子產品上可以考慮的

原创 ARM LINUX 內核啓動

1. kernel運行的史前時期和內存佈局 在arm平臺下,zImage.bin壓縮鏡像是由bootloader加載到物理內存,然後跳到zImage.bin裏一段程序,它專門於將被壓縮的kernel解壓縮到KERNEL_RAM_PADDR

原创 Android 筆記-Linux Kernel SMP (Symmetric Multi-Processors) 開機流程解析 Part(1) Boot-Rom與UBoot.

本文主要針對Linux Kernel支援ARM MPCore架構下所需的多核心開機流程作一個介紹,所涉及的內容會以筆者認為值得進一步說明的內容為主,從目前市面上的產品來分析,雖然都是針對ARM MPCore的產品,然而這些流程上都還是有

原创 藍牙配對認證淺析

1 何爲配對? 是指兩個藍牙設備首次通訊時,相互確認的過程,兩個藍牙設備一經配對之後,隨後的通訊就不必每次配對,只需要認證就可以了。 2 安全模式 藍牙支持三種安全模式: (1)    設備沒有任何安全措施的“無安全操作”。 (2)  

原创 S3C2440 SDRAM驅動配置編程

SDRAM(Synchronous Dynamic Random Access Memory,同步動態隨機存儲器)也就是通常所說的內存。內存的工作原理、控制時序、及相關控制器的配置方法一直是嵌入式系統學習、開發過程中的一個難點。我們從其

原创 Android 筆記-Linux Kernel SMP (Symmetric Multi-Processors) 開機流程解析 Part(2) Linux Kernel SMP zImage到st

Mmmmmm,必須承認,我把這篇文章寫的有點囉嗦,以前在Linux Kernel上的工作,沒有留下太多的筆記,抽象的概念,容易隨著下一個產品或是技術的開發,成為過往記憶的一部分,這次重新整理,希望以後回來看時,可以很快Pick-up所有

原创 soc camera子系統之初始化i2c client

我們知道,當我們註冊soc_camera host時,會通過搜索鏈表devices來尋找需要安裝到該host上的soc camera device(這就意味着soc camera device的初始化必須要早於soc camera hos

原创 mmc host 之內核接口

當我們在編寫mmc host驅動時,不可避免的要調用mmc_alloc_host這個內核接口,它不僅爲host申請分配內存,而且會做一定的初始化,現

原创 Android消息機制之Looper

    android中非常重要的一個消息通信機制handler,可以理解爲是android進程內部的一種消息通信機制,通過消息隊列,提高系統的併發性。         根據上圖,可以看出,handler消息隊列的核心是looper,其實

原创 V4L2 攝像頭應用程序編程

1. 打開設備文件 int fd; fd = open("/dev/video0",O_RDWR | O_NOBLOCK,0); 通常來說,驅動應該支持read/write和mmap兩種傳遞幀數據的方式,但是較多情況下,採用的是m

原创 soc camera 子系統簡介

在介紹soc_camera 子系統之前,先看這張結構圖。從如上,我們可以看出,soc_camera 子系統是基於V4L2 system的,其實吧,即使你不使用soc_camera子系統,一樣可以寫攝像頭驅動,那麼它存在的意義到底是什麼呢

原创 mmc rescan簡析

mmc rescan是mmc host的detect work的功能函數,該函數用於探測目標卡的類型並且根據mmc/sd/sdio協議進行comm的初始化。 void mmc_rescan(struct work_struct *work