- 博客(8)
- 收藏
- 关注
原创 基于mini2440的Linux音频驱动完全解读(三)——ASoc层的初始化(2)
下面就看看上面提到的两个链表platform和dai_list。先看platform搜索platform,发现在函数snd_soc_register_platform中,将snd_soc_platform类型的变量加入到了这个链表,现在就要看是谁调用了snd_soc_register_platform这个函数。之后,在s3c24xx_soc_platform_init中找到了调用这个函数的
2013-05-20 18:44:10
977
原创 基于mini2440的Linux音频驱动完全解读(二)——ASoc层的初始化(1)
首先接着soc_probe函数看,它里面调用了snd_soc_register_card这个函数。static int snd_soc_register_card(struct snd_soc_card *card){ if (!card->name || !card->dev) return -EINVAL; INIT_LIST_HEAD(&card->list); car
2013-05-20 17:38:05
1118
原创 基于mini2440的Linux音频驱动完全解读(一)
根据内核打印的信息“S3C24XX_UDA134X SoC Audio driver“我们来开始着手分析。搜索这个字符串,定位到文件s3c24xx_uda134x.c,查看module_init找到初始化函数。static int __init s3c24xx_uda134x_init(void){ returnplatform_driver_register(&s3c24
2013-05-12 23:18:41
1175
原创 容易弄混的ARM指令
ldr LOAD,将一个地址中的值放到寄存器中 //第二个操作数没有"=",有等号的是伪指令格式 : LDR{cond}{T} Rd,str STORE,将寄存器中的值存入某个地址ldm 批量加载,将指定地址中的值放入寄存器stm 批量存储,将寄存器中的值放入某个地址 IA:每次传递后地址加4(incr
2013-05-06 18:06:32
563
原创 ARM汇编中的LDR
一、作为ARM指令格式LDR{cond}{T} Rd,ldr Rd, label ;label为标号,是一个相对于当前地址PC的一个相对偏移量 ,将这个地址的内容放入寄存器中,这是ARM指令二、作为ARM伪指令格式LDR{COND} register,=expr/laber_exprldr r0, =0x1234 //
2013-05-06 17:57:58
1726
原创 Git和Github的简单使用
安装gitsudo apt-get install git配置用户信息git config --global user.name "Yang"git config --global user.email "yangyang_1989@qq.com"生成密钥ssh-keygen -t rsa -C "yangyang_1989@qq.com"初始化本地库git ini
2013-04-28 22:50:14
778
原创 代码格式化工具AStyle介绍
简介 Astyle是一个用来对C/C++/C#/JAVA代码进行格式化的命令行工具,我们在看别人代码 ,经常会碰见缩进很乱的情况,导致阅读代码的时候很郁闷,有了这个东西之后,只需要敲几个命令就可以了将代码调整成你想要的风格了。或者你自己在提交代码的时候,格式不规范,又不想自己一个一个改,同样也可以用这个命令搞定,下面就介绍一下这个命令的使用方法。大家可以在这里下载,下载之后添加到
2013-04-28 21:04:42
1739
原创 可以发表博客了?
一 测试1 测试1.1 测试正文开始了static struct usb_driver skel_driver = { .name = "skeleton", .probe = skel_probe, .disconnect = skel_disconnect, .suspend = skel_suspend, .resume = skel_resume, .pr
2013-04-28 11:16:55
534
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人