- 博客(11)
- 资源 (3)
- 收藏
- 关注
原创 linux OBM分析
marvell的bootloader是blob+OBM+bootROM,所以还得编译OBM。下面就对OBM进行分析。查看OBM/Build/obm_linux.mak 文件,找到需要编译的文件。OBJS = obm_startup.o \ $(DDROBJS) \
2013-02-25 17:34:32 2234 1
原创 awk实例操作学习记录
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。awk的处理文本和数据的方式是这样的,它逐行扫描文件,从第一行到最后一行,寻找匹配的特定模式的行,并在这些行上进行你想要的操作。如果没有指定处理动作,则把匹配的行显示到标准输出
2013-02-23 13:19:57 744
原创 编译blob
1.修改flash驱动在configure.in中找到你所使用的板子,修改为case "$network_name" in eth)dnl BLOB_NETWORK_DRIVER_OBJS="ether-smc91x.o" //dnl 起注释作用 BLOB_NETWORK_DRIVER_OBJS="ether-dm9000.o p
2013-02-22 10:36:11 987
原创 blob分析(下)
下面到了main()里面/* initialise status */blob_status.paramType = fromFlash; //设置boot参数blob_status.kernelType = fromFlash; //设置内核blob_status.ramdiskType = fromFlash; //设置文件系统加载方式blob
2013-02-21 19:46:16 1953
原创 blob分析(上)
针对pxa芯片的blob分析Blob 编译后的代码定义最大为64Kb,并且这64Kb又分成两个阶段来执行。第一阶段的代码在start.S 中定义,大小为1KB,它包括从系统上电后在0x00000000 地址开始执行的部分。这部分代码运行在Flash 中,它包括对一些寄存器的初始化和将Blob第二阶段代码从Flash 拷贝到 sdram 中。第二阶段的起始文件为trampol
2013-02-21 16:27:53 2214
原创 shell中特殊变量$0 $1 $# $$ $! $?的涵义
$0:执行脚本的名字$*和$@:将所有参数返回$#:参数的个数$_:代表上一个命令的最后一个参数$$:代表所在命令的PID$!:代表最后执行的后台命令的PID$?:代表上一个命令执行是否成功的标志,如果执行成功则$? 为0,否则不为0写个脚本测试下[wang@localhost 桌面]$ vim test1.sh#
2013-02-20 14:43:44 21800
原创 shell中引号的用法
1.‘’与“”单引号和双引号单引号和双引号其实差不多,主要泣别如下:‘’单引号:凡是单引号内的所有特殊字符都无效”“双引号:在双引号内的特殊字符大部分无效,有些则会保留,比如$ \等例如:[wang@localhost ~]$ A=B Cbash: C: command not found[wang@localhost ~]$ A="B C"[wang@loca
2013-02-20 13:10:54 785
原创 hcid 分析
hcid分析实际上就是蓝牙启动流程的分析。 先看用法:hcid [-n] [-d] [-m mtu] [-f config file]进入main()函数: 1.hcid的一些默认设置,例如安全方式,名字等init_defaults();static inline void init_device_defaults(struct device_opts *
2013-02-18 11:35:24 3957 1
原创 hcitool 使用与分析
Usage: hcitool [options] [command parameters]Options: --help Display help -i dev HCI deviceCommands: dev Display local devices inq Inquire r
2013-02-01 17:10:20 5585 1
原创 简要分析蓝牙驱动
蓝牙驱动我们只要做三个步骤: 1.启动串口驱动 2.蓝牙初始化 3.通过hciattach建立串口和蓝牙协议层的数据连接通道为什么呢? 1.从整体上来说,我们的蓝牙是一个模块,顾名思义,该有的都有了,剩下的是与蓝牙芯片相关的。另外模块供应商应该都会提供他们自己的代码。 2.通讯条件。首先必须和CPU通讯,这需要个接口,这个接口可以是
2013-02-01 13:59:11 1880
原创 hci_uart 分析
先从初始化开始__init hci_uart_init(void){…… //注册ldisc hci_uart_ldisc.magic = TTY_LDISC_MAGIC; //通过i = N_HCI; if (ioctl(fd, TIOCSETD, &i) hci_uart_ldisc.name= "n_hci";
2013-02-01 12:13:14 3838 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人