创建control device
来源:互联网 发布:掉头发怎么办知乎 编辑:程序博客网 时间:2024/05/23 05:09
/dev/snd # llcrw-rw---- system audio 116, 0 2014-09-19 10:36 controlC0crw-rw---- system audio 116, 32 2014-09-19 10:36 controlC1crw-rw---- system audio 116, 64 2014-09-19 10:36 controlC2crw-rw---- system audio 116, 96 2014-09-19 10:36 controlC3创建controldevice的过程和pcm类似
snd_soc_register_cardsnd_soc_instantiate_cardsnd_card_createsnd_ctl_create
用户态对controlCx的操作怎么到kernel的哪?关键在snd_ctl_create中的注册函数snd_ctl_dev_register
static const struct file_operations snd_ctl_f_ops ={ .owner = THIS_MODULE, .read = snd_ctl_read, .open = snd_ctl_open, .release = snd_ctl_release, .llseek = no_llseek, .poll = snd_ctl_poll, .unlocked_ioctl = snd_ctl_ioctl, .compat_ioctl = snd_ctl_ioctl_compat, .fasync = snd_ctl_fasync,};static int snd_ctl_dev_register(struct snd_device *device){ if ((err = snd_register_device(SNDRV_DEVICE_TYPE_CONTROL, card, -1, &snd_ctl_f_ops, card, name)) < 0) }snd_ctl_ioctl snd_ctl_elem_read_user snd_ctl_elem_read snd_ctl_find_id(card, &control->id); kctl->get(kctl, control);
而kctl来自card的controls链表。用户态传入的时候会有一个num id指定这个kcontrol
num id可以关注mixer_open中SNDRV_CTL_IOCTL_ELEM_LIST
对应于kernel中的snd_ctl_elem_list
0 0
- 创建control device
- Android音频驱动-ASOC之Control Device创建
- 创建Android Virtual Device
- 创建pcm device
- 创建Custom Control
- 创建不规则形状的Control
- 怎么创建silverlight custom control
- 手动创建table control实例
- 利用emca创建database control
- MFC 动态创建Picture Control
- Usb Audio Device Descriptor(1) Standard Audio Control Interface Descriptor
- 分析bacnet协议栈中的Device Communication Control服务
- VS2005,无法创建 VC++ Smart Device Project
- Linux下如何创建loop device
- Linux下如何创建loop device
- allegro 自动批量创建device文件
- Linux下如何创建loop device
- ubuntu16.10 AndroidStudio创建Virtual Device问题解决
- windows系统下用命令重启Apache
- 文档和元素的几何图形
- MTK Android 菜鸟上手之旅
- redhat忘记root密码的解决方法
- 列举出给定目录中各种文件的个数算法实现
- 创建control device
- static关键字理解整理:静态变量、静态函数的作用及使用规则
- Java开发中的23种设计模式详解
- 用jedis链接池技术调用redis数据库
- 裁剪libiconv-1.8
- C++ primer 第五版 中文版 练习 11.7 个人code
- PL/SQL Developer如何连接64位的Oracle图解
- 双buffer模版
- 【边做项目边学Android】小白会遇到的问题--This Android SDK requires Android Developer Toolkit version 23.0.0 or above