Linux 2.6
文章平均质量分 74
willand1981
这个作者很懒,什么都没留下…
展开
-
浅析linux 2.6.23驱动自动匹配设备driver_attach()函数
浅析linux 2.6.23驱动自动匹配设备driver_attach()函数int driver_attach(struct device_driver * drv){ return bus_for_each_dev(drv->bus, NULL, drv, __driver_attach);}调用该函数,那么drv驱动程序会和drv所在总线上连接了的物理设备进行一一匹配,再来看看下原创 2010-03-11 16:47:00 · 709 阅读 · 0 评论 -
一个linux 混音播放的 /etc/asound.conf 配置
备用。只有相同用户才能实现设备的同时打开。pcm.!dmix {type dmixipc_key 5678293ipc_key_add_uid yesslave {pcm "hw:0,0"period_time 0period_size 2048buffer_size 16384format S16_LErate 48000}}pcm.!dsnoop {type dsnoopipc_key 5转载 2010-05-26 14:41:00 · 4210 阅读 · 0 评论 -
Alsa学习笔记
ALSA 学习笔记 因为项目用的kernel为2.6.17,所以以下分析都是基于2.6.17版本,在这个版本里,没有asoc等。 1 整体架构Application ---------------Alsa-lib User Space-------------------转载 2010-05-26 14:07:00 · 4649 阅读 · 10 评论 -
[S3C6410]Linux2.6.28到Linux2.6.32的内核移植
<br />Linux2.6.28到Linux2.6.32的内核移植<br /><br />今天从GIT上拖下最新的Android Linux2.6.32内核,对S3C6410的支持还是基本功能。<br />目前三星内核树上功能比较全的内核应该是28了,升级到32试试,本来以为只要换几个目录即可,没想到做下来发现还是要改很多东西。<br /><br />过程如下:<br /><br />1 替换目录<br />mach-s3c6400 mach-s3c6410 plat-s3c plat-s3c64XX p转载 2010-07-29 16:31:00 · 2408 阅读 · 0 评论 -
Linux kernel panic问题解决方法
Linux kernel panic释疑kernel panic错误表现kernel panic 主要有以下几个出错提示:Kernel panic-not syncing fatal exception in interruptkernel panic - not syncing: Attempted to kill the idle task!kernel panic - not syncing: killing interrupt handler!Kernel Panic - not syncing:A原创 2010-06-11 10:33:00 · 50616 阅读 · 0 评论 -
系统与管理命令(脚本分析)
<br />在/etc/rc.d目录中的启动和关机脚本中包含了好多有用的(和没用的)这些系统管理命令. 这些命令通常总是被root用户使用, 用与系统维护或者是紧急文件系统修复.一定要小心使用这些工具, 因为如果滥用的话, 它们会损坏你的系统.<br />Users 和 Groups类命令users<br />显示所有的登录的用户. 这个命令与 who -q 基本一致.groups<br />列出当前用户和他所属于的组. 这相当于 $GROUPS 内部变量, 但是这个命令将会给出组名字, 而不是数字.bas转载 2010-06-13 10:47:00 · 3381 阅读 · 0 评论 -
嵌入式gdb调试的方法
一、下载gdb-6.4.tar.gz源代码http://ftp.gnu.org/gnu/gdb/二、编译 GDB#tar zxvf gdb-6.4.tar.gz2.1、编译GDB Server#cd gdb-6.4 #./configure --target=arm-linux --prefix=/usr/local/arm-gdb #make注意: 这里如果你用的是gcc-4.3.2的话,编译可能会出错!你可以改成 gcc-4.1 就可以顺利编译通过编译ARM用的GDB时出现error: no转载 2010-06-17 14:33:00 · 759 阅读 · 0 评论 -
以太网更改MAC地址后 eth0变化问题解决
1、 修改eth0、eth1的IP地址: vi /etc/sysconfig/network/ifcfg-eth0 vi /etc/sysconfig/network/ifcfg-eth1 最后重启网络 rcnetwork restart2、 开启ssh功能 vi /etc/ssh2/sshd_config 将ListenAdress修改为访问的IP地址 vi /etc/ssh2/sshd_config.l 将ListenAdress修原创 2010-06-18 13:55:00 · 3209 阅读 · 0 评论 -
建立嵌入式gdb调试环境
<br />建立嵌入式gdb调试环境<br /> <br />一.下载gdb-7.1.tar.gz源代码<br />phil@ubuntu-embedded:~/gdb-7.1$ wget http://ftp.gnu.org/gnu/gdb/gdb-7.1.tar.gz<br /> <br />二.编译 GDB<br />#tar zxvf gdb-7.1.tar.gz<br /> <br />2.1 编译GDB Client<br />phil@ubuntu-embedded:~/gdb-7.1$ cd原创 2010-06-17 11:26:00 · 820 阅读 · 0 评论 -
智器Q5在内核4.0版下实现四系统聚会的方法
<br /> 内核4.0下提供了多启动的支持,这为实现多系统的共存打下了良好的支持。<br /> 1.分区sd卡,这个根据自己的需求来分,不过第一个主分区必须是fat32,并格式化好,这样才能启动wince,分区大小也是自定,我把fat32分了4G,后面再分成2个2G的ext3(不能是fat格式,因为后面安装文件中会有区分大小写的不同文件名,fat分区不能支持——后面确认了下不能用fat分区是因为fat分区不支持符号链接等操作,而在解压rootfs.tar.gz等构建根文件系统时有大量的符号链接转载 2010-06-18 14:30:00 · 1251 阅读 · 0 评论 -
alsa配置文件alsa.conf
使用到了Alsa,在这个过程中涉及到一些硬件的设置和测试,需要了解Alsa的配置文件的写法,稍微总结了一下。关于alsa文件,有三个包需要关注:alsa-lib,alsa-utils,libaudio。在alsa.conf中,通常还会引用 /etc/asound.conf 和 ~/.asoundrc这两个配置文件,这两个文件通常是放置你个人需要特殊设置的相关参数。(1)Alsa.conf中主要转载 2010-05-21 09:54:00 · 4933 阅读 · 0 评论 -
amixer的应用
上层使用amixer命令设置声卡,首先可以使用amixer contents 命令查看可供设置的选项,包括当前设置的值,通过amixer cset 命令修改设置。使用amixer命令设置声卡,用户可以直观的看到当前设置的功能,而不需要了解底层修改了哪些寄存器。 一、上层使用的amixer命令。amixer命令示例如下:amixer cset iface=MIXER,name=转载 2010-05-17 14:08:00 · 4312 阅读 · 0 评论 -
objdump(GCC)命令的用法
<br />如何使用 objdump 查看源代码 <br />1. 在编译时必须使用-g选项,-g意为debug,一般可以修改源代码的 Makefile来实现 如: <br />CC =$(CROSSCOM_PILE)gcc 为 <br />CC =$(CROSSCOM_PILE)gcc -g <br />使成生的vmlinux中含有debug信息 <br />2. 所有生成 .o 的 rule 中再加一条 /*其他参数除了-c外抄生成.o文件用的参数*/ <br />CC -E -dD -C $< > /原创 2010-07-12 14:52:00 · 2675 阅读 · 0 评论 -
arch/arm/plat-s3c64xx/clock.c学习
//clock文件,初始化6410时钟/* linux/arch/arm/plat-s3c64xx/clock.c** Copyright 2008 Openmoko, Inc.* Copyright 2008 Simtec Electronics* Ben Dooks ben@simtec.co.uk>* http://armlinux.simtec.co.uk/** S转载 2010-03-15 09:47:00 · 1371 阅读 · 0 评论 -
将S3C6410频率提升至666
将S3C6410频率提升至666前两天看了S3C6410时钟部分代码,发现在Linux中没有设置时钟,时钟是u-boot中设置好的,Linux启动时直接读取PLL寄存器中的数据。刚才浏览了下u-boot中的smdk6410.h文件,发现调整时钟的宏三星已经定义好了://#define CONFIG_CLK_800_133_66#define CONFIG_CLK_666_133_66//#defi原创 2010-03-15 16:00:00 · 1125 阅读 · 0 评论 -
S3C6410 USB枚举过程的工作经验总结[bootloader]
1.有关对比结束阶段的不同点: 对控制写入阶段:setup--OUT (Data0 | 1)--IN(0长DATA1) USB HOST送出IN包,USB Device以0长DATA1 包结束控制写入过程 对比控制读取过程:setup--IN(Data0 | 1)--OUT(0长DATA1 ) USB HOST发出OUT 0长DATA1包以结束控制读取过程 对于无数据的控制事务:setup--IN转载 2010-03-17 11:04:00 · 2234 阅读 · 1 评论 -
s3c6410 android 移植Step by step
Porting android on s3c6410Environment: ubuntu 8.10Board: XX6410Kernel version: linux 2.6.24, android 1.01.Copy filesCreate working location: /mydroid and copy the following files to this location:-原创 2010-03-29 18:04:00 · 1188 阅读 · 0 评论 -
HID ioctl 命令详解
ioctl(): This is the control interface. There are a number of controls: HIDIOCGVERSIONint (read)Gets the version code out of the hiddev driver.HIDIOCAPPLICATION(none)This ioctl c原创 2010-04-02 17:49:00 · 3719 阅读 · 1 评论 -
Ubuntu Linux系统下apt-get命令详解
整理了Ubuntu Linux操作系统下apt-get命令的详细说明,分享给大家。常用的APT命令参数:apt-cache search package 搜索包apt-cache show package 获取包的相关信息,如说明、大小、版本等sudo apt-get install package 安装包sudo apt-get install package - - reins原创 2010-04-06 18:14:00 · 7145 阅读 · 0 评论 -
2.6下用request_irq引起的问题
<br />奇怪的是在2.6用request_irq时发现好几个问题<br />我引入的头文件如下: <br />#include <linux/kernel.h> <br />#include <linux/sched.h> <br />#include <linux/irq.h> <br />#include <linux/interrupt.h> <br />#include <linux/signal.h> <br /><br />1、不认识SA_INTERRUPT,会提示 implicite de原创 2010-06-29 09:49:00 · 8144 阅读 · 2 评论 -
Linux2.6下开发简单的可加载内核模块
Linux下开发简单的可加载内核模块(2.6内核) 1. 模块代码结构 头文件模块宏声明初始化函数退出函数入口出口函数设置 最简单的hello.c源文件//头文件#include #include #include //模块宏声明MODULE_LICENSE( "GPL" );MODULE_DESCRIPTION( "Fortune Cookie Kernel Module" );MODULE_AUTHOR( "M. Tim Jones" ); //初始化函数static int __init转载 2010-07-05 10:35:00 · 597 阅读 · 0 评论 -
内核调试案例(oops错误)
结合自己的实践和网上的文章,介绍手工调试内核bug的通用方法。<br /><br />1.步骤<br />1).Collect oops output, System.map, /proc/ksyms, vmlinux, /proc/modules <br />2).Use ksymoops to interpret oops<br /> Instructions is /usr/src/linux/Documentation/oops-tracing.txt<br /> Ksymoops(8) m转载 2010-07-06 11:19:00 · 1494 阅读 · 0 评论 -
Fedora 下编译安装Mplayer
Fedora 下编译安装Mplayer(支持MP3/RMVB/WMV/RM…………) 1.首先下载安装包地址 http://slackbuilds.org/repository/12.1/multimedia/MPlayer/ 选择 mplayer-svn_r27865.tar.bz2 2. 解压 tar -xvf mplayer-svn_r27865.tar.bz2 3. 编译安装 cd mplayer*** ./configure make make install 4. 大功告成试听 mplayer转载 2010-06-17 14:48:00 · 486 阅读 · 0 评论