原创 ubuntu雙網絡設置

ubuntu16.04 eth0 eth5,eth0:內網(靜態IP),eth5:外網(DHCP分配) root@localhost:~# ifconfig eth5     Link encap:Ethernet  HWaddr 00:

原创 uboot 2016.05編譯uboot.bin和spl

1:$(srctree)/Makefile Makefile中的all目標編譯出相應的文件. 我們來看看這個all目標 all: $(ALL-y

原创 Linux common clock framework(2)_概述

1. 前言 本文接上篇文章,從clock driver的角度,分析怎麼藉助common clock framework管理系統的時鐘資源。換句話說,就是怎麼編寫一個clock driver。 由於kernel稱clock driver

原创 Linux common clock framework(3)_概述

1. 前言 前面兩篇clock framework的分析文章,分別從clock consumer和clock provider的角度,介紹了Linux kernel怎麼管理系統的clock資源,以及device driver怎麼使

原创 Unable to handle kernel NULL pointer dereference at virtual address

1:從sd卡出錯log裏可以看出來pc指針以及出錯位置 PC is at dw_mci_pre_dma_transfer.isra.19+0x7c/0x158 pc : [<8032e130>] lr : [<8032e14c>] psr

原创 u-boot 2013.01.01 Makefile分析

#########################################################################   # (C) Copyright 2000-2012   # Wolfgang D

原创 內核參數整理

以下內核參數未做相關優化,均使用系統默認值 net.ipv4.tcp_mem = 196608 262144  393216 net.core.wmem_max = 131071 net.core.rmem_max = 13107

原创 Linux common clock framework(1)_概述

1. 前言 common clock framework是用來管理系統clock資源的子系統,根據職能,可分爲三個部分: 1)向其它driver提供操作clocks的通用API。 2)實現clock控制的通用邏輯,這部分和硬件無關。

原创 字節對齊

一、概念     對齊跟數據在內存中的位置有關。如果一個變量的內存地址正好位於它長度的整數倍,他就被稱做自然對齊。比如在32位cpu下,假設一個整型變量的地址爲0x00000004,那它就是自然對齊的。       二、爲什麼要字節對齊

原创 TCP參數優化

net.ipv4.tcp_mem 內核分配給TCP連接的內存,單位是Page,1 Page = 4096 Bytes,可用命令查看:   #getconf PAGESIZE   4096   net.ipv4.tcp_mem

原创 Linux ALSA聲卡驅動之二:聲卡的創建

1. struct snd_card   1.1. snd_card是什麼 snd_card可以說是整個ALSA音頻驅動最頂層的一個結構,整個聲卡的軟件邏輯結構開始於該結構,幾乎所有與聲音相關的邏輯設備都是在snd_car

原创 linux內核中的GPIO系統

軟件框架 一、前言 作爲一個工作多年的系統工程師,免不了做兩件事情:培訓新員工和給新員工分配任務。對於那些剛剛從學校出來的學生,一般在開始的時候總是分配一些非常簡單的任務,例如GPIO driver、LED dri

原创 Linux ALSA聲卡驅動之三:PCM設備的創建

1. PCM是什麼 PCM是英文Pulse-code modulation的縮寫,中文譯名是脈衝編碼調製。我們知道在現實生活中,人耳聽到的聲音是模擬信號,PCM就是要把聲音從模擬轉換成數字信號的一種技術,他的原理簡單地說就是利用一個固

原创 Linux ALSA聲卡驅動之一:ALSA架構簡介

一.  概述     ALSA是Advanced Linux Sound Architecture 的縮寫,目前已經成爲了linux的主流音頻體系結構,想了解更多的關於ALSA的這一開源項目的信息和知識,請查看以下網址:http://

原创 Android切換usb和tcp adb方式

設備端執行: TCP/IP方式: setprop service.adb.tcp.port 5555 stop adbd start adbd usb方式: setprop service.adb.tcp.port -1 stop adb