Video4Linux2 part 4: inputs and outputs

This is the fourth article in the irregular LWN series on writing videodrivers for Linux. Those who have not yet readthe introductory article maywant to start there. This week's episode describes how an application candetermine which inputs and

Video4Linux2 part 5b: format negotiation

This article is a continuation of the irregular LWN series on writing videodrivers for Linux. Theintroductory article describes theseries and contains pointers to the previous articles. Inthe last episode, we looked at how the Video4Linux2 API

u-boot.lds 檔案分析

 27 OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")指定輸出的格式是32bits ARM 小端OUTPUT_FORMAT原型為 OUTPUT_FORMAT(default, big,

MediaScanner分析 – MediaScanner.cpp

MediaScanner.cpp分析檔案路徑 frameworks/base/media/libmedia/MediaScanner.cppstatus_t MediaScanner::processDirectory( const char *path, const char *extensions, MediaScannerClient &client, ExceptionCheck exceptionCheck, void

UBIFS檔案系統分析3 – 超級塊管理

UBIFS superblock儲存在volume的第一個LEB,在UBIFS運行期間superblock幾乎不會改變,只有一種情況會導致superblock node被重寫,就是自動resize時。之所以需要自動resize,是因為建立ubifs檔案系統鏡像時,並不知道將要mount的UBI bolume的大小,所以當我們將UBIFS鏡像安裝到UBI上時,UBI的尺寸可能大於UBIFS鏡像所需要的最大空間,此時就需要把UBIFS resize以適合UBI volume,以更好的利用UBI空間。

MX51 uboot 啟動流程分析 – stage1

uboot啟動過程分為兩個部分,一般來說,系統在執行uboot之前會執行一段固化的程式,這段固化的程式會做一些基本的初始化,然後讀取uboot的第一部分到內部記憶體中,PC指標跳轉到這個記憶體位址,執行uboot的第一部分。uboot的第一部分要執行一些必要的硬體初始化,從我的理解至少包括外部ram的初始化,flash

Video4Linux2 part 7: Controls

With the completion of part 6ofthis series, we now know how to set up a video device and transferframes back and forth. It is a well known fact, however, that users can behard to please; not content with being able to see video from

UBIFS檔案系統分析5 – 檔案讀寫

檔案資料管理傳統檔案系統,如ext2通過ext2_inode的i_block成員管理檔案的資料,i_block的直接塊和間接塊組成了一棵樹,對某個邏輯地址的讀取,需要在這個樹上找到相應的物理塊指標。UBIFS為每一片資料建立一個data node,這一片資料一般指UBIFS_BLOCK_SIZE。data node被插入到wandering tree上,通過ino+type+blockno組成的key在wandering tree上尋找blockno對應的data

mx51 IPU 透明處理

Freescale MX51平台的透明處理根據bpp(bits_per_pixel)不同,處理方式有所不同。透明處理涉及到兩個圖層的合并,這個合併作業是MX51 IPU的DP(Display process)模組來進行的。為mx51 datasheet中的DP 微觀架構圖的中Combining Unit就是用來實現兩個圖層的合并,DP有兩個input FIFOs用來傳輸full 圖層和partial圖層的資料。在傳入Combining Unit之前,還會做CSC(Color space

交叉編譯libz libpng

因為有個arm測試載入器依賴libpng,所以需要交叉編譯libpng,而libpng又依賴zlib1. 首先編譯zlib./configure --prefix=/work/prebuilt/linux-x86/toolchain/gcc-4.1.2-glibc-2.5-nptl-3/arm-none-linux-gnueabi/修改Makefile,把所有的x86編譯相關命令修改為arm的make install, 會在$PREFIX/lib下產生libz.a

framebuffer 一些基本知識

Horizontal回掃和Vertical回掃是CRT引入的概念,電子束從左向右畫水平線,回到下一行行首繼續下一行掃描,直到螢幕最下一行,然後回到螢幕上方繼續下一幀掃描。水平回掃:電子束從上一行尾移動到下一行起始點需要的時間幀回掃:電子束從螢幕下方移動到螢幕上方所需的時間 CRT的重新整理屏率是怎麼計算的:假定顯卡的dotclock是28.37516MHZ1. 那麼每個點的掃描時間是1/(28.37516E6 Hz) = 35.242E-9 s2. 如果螢幕解析度是640x480

ioremap返回的地址

ioremap和vmalloc一樣,都會返回vmalloc區的虛擬位址,但是ioremap並不會分配任何實體記憶體,ioremap也需要建立新的頁表來訪問物理頁面。ioremap擷取的虛擬位址空間需要使用iounmap來釋放。ioremap主要用來映射裝置的實體記憶體到核心的虛擬位址空間,這樣,核心就可以通過這些虛擬位址空間訪問裝置記憶體。使用ioremap需要注意幾點:1. 盡量不要直接存取這些虛擬位址,使用專用的io操作函數可以增加移植性,當然有些特殊情況,比如android

MX51 V4L2 output 驅動

之前調試MXC V4L2驅動一直沒有注意到output/mxc_v4l2_output.c這個檔案,因為capture/*.c已經提供了still capture, stream capture, 以及overlay,所以沒仔細的去看mxc_v4l2_output.c提供的功能,直到前幾天負責維護overlay hal的同事提出開啟了overlay hal /dev/video16這個裝置節點,才讓我跟到這個檔案中先從/dev/video0 和video16說起:MXC

Video4Linux2 part 2: registration and open()

This is the second article in the LWN series on writing drivers for theVideo4Linux2 kernel interface; those who have not yet seenthe introductory article maywish to start there. This installment will look at the overall structureof a Video4Linux

使用kermit與Anrdoid裝置串口通訊

安裝sudo apt-get install ckermit配置編輯~/.kermrc檔案如下:set line /dev/ttyS0set speed 115200set carrier-watch offset handshake noneset flow-control nonerobustset file type binset file name litset rec pack 1000set send pack 1000set window 5串連Android裝置kermit c

MX51 uboot啟動流程分析 – stage2

start.S的reset中,把uboot的第二部分從NAND或者SD卡複製到外部ram後,就可以分配執行C代碼的堆棧,然後調用lib_arm/board.c中的start_armboot開始uboot的C代碼部分start_armboot的作用就是初始化系統硬體,然後進入main_loop等待使用者的輸入,272 init_fnc_t *init_sequence[] = {273 #if defined(CONFIG_ARCH_CPU_INIT)274     arch_cpu_init, 

Video4Linux2 part 3: Basic ioctl() handling

Anybody who has spent any amount of time working through the Video4Linux2 APIspecification will have certainly noted that V4L2 makes heavy use oftheioctl() interface. Perhaps more than just about any othertype of peripheral, video hardware has a

SDRAM和處理器定址的幾點理解

作者:田凱文日期:2011-6-6 14:59:16 PS:本人總結,備於日後查閱,如若轉載,請註明出處QQ:1324343063 最近在分析uboot中關於6410的 cpu_init.s,這是對DDR的配置,由於DDR是SDRAM的升級,所以就先看了一下SDRAM,以下是最近的總結。看:     這是64M(32M+32M),SDRAM的原理圖1、為什麼2440或2410中地址線都是從ADDR2中開始串連的?2440或2410中地址線都是從ADDR2中開始串連的,即A0-ADDR2、An-

RTC何時更新系統時間

RTC - real time clock維護著系統的hardware時間,當linux啟動時需要用RTC hardware時鐘設定system 時間。這個過程是在drivers/rtc/hctosys.c驅動中實現的,這個驅動實際只有一個init函數,並且把自己的init 函式宣告為late_initcall,這樣可以保證RTC驅動已經正常運轉。init函數從RTC裝置讀取當前硬體時鐘,然後調用do_settimeofday改寫系統時鐘。27 static int __init

UBIFS設計簡介 – A Brief Introduce to the Design of UBIFS

項目閑暇,想瞭解下UBIFS,就先從UBIFS的設計文檔翻譯開始吧,以後有機會有時間能分析下UBIFS源碼 flash memory檔案系統需要異地更新(out-of-place updates). 這是因為flash儲存在寫之前必須擦除, 並且每次擦除後只能寫一次。如果擦除塊很小並且擦除速度很快,那麼擦除塊可以看作是磁碟扇區,然而事實並非如此。讀取整個擦除快,擦除它然後回寫更新的資料,

總頁數: 61357 1 .... 20106 20107 20108 20109 20110 .... 61357 Go to: 前往

聯繫我們

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