原创 求一個數的臨近的較大的2的整數次冪

偶然看到雲風的http://blog.codingnow.com/2011/12/buddy_memory_allocation.html 代碼,發現了一個比較巧妙的實現。   static inline int is_pow_of_2(

原创 u-boot常用編譯選項

-isystem path  指定系統的頭文件,U-boot指定的是編譯器的頭文件 在host主機運行 arm-linux-gnueabihf-gc

原创 liinux中lds鏈接腳本中定義的變量理解

鏈接腳本中定義的符號(symbol)也可以認爲是全局變量,在C代碼和彙編代碼都可以訪問它。鏈接腳本定義的符號(變量)時代表一個地址。 下面根據u-boot中情形分兩種情況討論: OUTPUT_FORMAT("elf32-littlearm

原创 結合2012.10版本的u-boot分析SD卡驅動(筆記)

xxx_mmc_init流程: |power up sd_card|給卡上電         |        \|/ |reset controller/fifo/dma|執行控制器復位/fifo復位         |       

原创 3.10內核中使用dtb的ramdisk啓動方法

內核配置如下:      1) General setup-->[*] Initial RAM filesystem and RAM disk (initramfs/initrd) support                    

原创 C語言引用匯編代碼裏的全局標號或變量

在內核的include/linux/linkage.h中定義了: #ifndef ENTRY #define ENTRY(name) \   .globl name; \   ALIGN; \   name: #endif #endif

原创 arm的2級頁表在Linux內核創建過程解析

  系統DDR的基地址爲0x0,內存爲1GB,所以TTB的基地址爲0x4000。下面要創建虛擬地址0xfe700000到物理地址0xffff0000之間的映射,映射大小爲64KB,即16頁。由於物理地址不是1MB字節對齊,所以必須創建兩級

原创 最新的linux內核啓動時保留一段連續物理內存方法

MACHINE_START .reserve = xxx_reserve, MACHINE_END static void __init xxx_reserve(void) { memblock_free(phy_address_bas

原创 嵌入式系統如何安裝內核模塊

在內核源碼目錄下輸入make help,這裏就有幫助: 當我們把SD卡的ext3分區通過讀卡器掛載到主機下面,比如/media/xxxxx。 make ARCH=arm CROSS_COMPILE=arm-linux- modules

原创 wpa_supplicant和openssl移植

在ubuntu10.04下移植,下面記錄過程。 版本:wpa_supplicant-2.0.tar.gz            openssl-1.0.1e 編譯器:linaro - arm-linux-gcc-4.7.3 備註: 經過測

原创 linux下的二進制工具

hexdump -C -v xxx.bin   xxd -g1 xxx.bin    表示以1個字節爲分組,默認是2個字節分組,-g0表示以位的形式分組。   我們可以利用hexdump -C -v /dev/input/eventx

原创 usb

硬件部分: usb 信號: VBUS, GND, D+,D-,ID共5根線。 usb分爲插座和插頭兩種。 圖1 A型插座 圖2 A型插頭 圖3 mini 插頭 圖4 micro 插頭   standard:標準 mini: mic

原创 USB HID設備驅動加載過程

  本文以linux-3.12內核來分析usb鍵盤插入系統後系統如何識別usb鍵盤的過程。內核選項配置CONFIG_HID,CONFIG_USB_HID,CONFIG_HID_GENERIC,但是沒有配置CONFIG_USB_KBD,CO

原创 查找一個字符串中最大重複子串(C語言版)

#include <stdio.h> #include <string.h> /* 找出一個字符串最大相同子串,如果有多個重複子串,則要求返回最後一個位置的子串 */ void print_sub(char *p, int len) {

原创 usb

硬件部分: usb 信號: VBUS, GND, D+,D-,ID共5根線。 usb分爲插座和插頭兩種。 圖1 A型插座 圖2 A型插頭 圖3 mini 插頭 圖4 micro 插頭   standard:標準 mini: mic