![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
linux
文章平均质量分 94
markvz
这个作者很懒,什么都没留下…
展开
-
Linux驱动编程中EXPORT_SYMBOL()介绍
推荐看原文:https://blog.csdn.net/qq_37858386/article/details/78444168原创海月汐辰 最后发布于2017-11-04 16:43:22 阅读数 13633 收藏展开一、查看内核驱动代码你会发现很多的函数带有EXPORT_SYMBOL()宏定义。二、那么EXPORT_SYMBOL的作用是什么?EXPORT...转载 2020-04-26 21:46:22 · 203 阅读 · 0 评论 -
device_add
八、device_add强烈建议阅读原文:https://blog.csdn.net/qq_20678703/article/details/52841706展开1.总体框架linux设备模型:设备device,驱动driver,总线bus。设备代表物理设备,驱动代表了设备操作方法,bus则是用来管理和匹配它们。device和driver里面都有一个成员变量bus,表示它们归哪个...转载 2020-03-31 21:15:44 · 1516 阅读 · 0 评论 -
Linux内核部件分析 设备驱动模型之driver ---mark 详细
Linux内核部件分析设备驱动模型之driver转载:https://www.linuxidc.com/Linux/2011-10/44627p7.htm上节我们分析设备驱动模型中的device,主要是drivers/base/core.c,可以说是代码量最大的一个文件。本节要分析的驱动driver,就要相对简单很多。原因也很简单,对于driver,我们能定义的公共部...转载 2020-03-31 20:18:14 · 404 阅读 · 0 评论 -
android系统编译过程详解
android系统编译过程详解原创:https://blog.csdn.net/huangxiaominglipeng/article/details/41745199第一部分:概述在研究Android编译系统之前,我们首先需要了解Linux系统的make命令。在Linux系统中,我们可以通过make命令来编译代码。Make命令在执行的时候,默认会在当前目录找到一个Makefile文件...转载 2020-03-31 16:01:46 · 1110 阅读 · 0 评论 -
Linux设备管理(一)_kobject, kset,ktype分析
Linux设备管理(一)_kobject, kset,ktype分析转载:https://www.cnblogs.com/xiaojiang1025/p/6193959.htmlLinux内核大量使用面向对象的设计思想,通过追踪源码,我们甚至可以使用面向对象语言常用的UML类图来分析Linux设备管理的"类"之间的关系。这里以4.8.5内核为例从kobject,kset,ktype的分析入...转载 2020-03-31 15:10:43 · 344 阅读 · 0 评论 -
板级文件中的struct resource结构体
板级文件中的struct resource结构体转载:https://blog.csdn.net/K_Linux_Man/article/details/7206358?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task展开linux对挂接...转载 2020-03-31 14:30:55 · 192 阅读 · 0 评论 -
Linux设备管理(三)_总线设备的挂接
Linux设备管理(三)_总线设备的挂接转载:https://www.cnblogs.com/xiaojiang1025/p/6201290.html扒完了字符设备,我们来看看平台总线设备,平台总线是Linux中的一种虚拟总线,我们知道,总线+设备+驱动是Linux驱动模型的三大组件,设计这样的模型就是将驱动代码和设备信息相分离,对于稍微复杂一点的驱动,都要使用这种结构,我在"Linux设...转载 2020-03-31 11:11:54 · 322 阅读 · 0 评论 -
Linux Platform驱动模型(二) _驱动方法
Linux Platform驱动模型(二) _驱动方法转载:https://www.cnblogs.com/xiaojiang1025/p/6367910.html在Linux设备树语法详解和Linux Platform驱动模型(一) _设备信息中我们讨论了设备信息的写法,本文主要讨论平台总线中另外一部分-驱动方法,将试图回答下面几个问题:如何填充platform_driver对象?...转载 2020-03-31 10:55:08 · 355 阅读 · 0 评论 -
Linux Platform驱动模型(一) _设备信息
Linux Platform驱动模型(一) _设备信息转载:https://www.cnblogs.com/xiaojiang1025/p/6367061.html我在Linux字符设备驱动框架一文中简单介绍了Linux字符设备编程模型,在那个模型中,只要应用程序open()了相应的设备文件,就可以使用ioctl通过驱动程序来控制我们的硬件,这种模型直观,但是从软件设计的角度看,却是一种十...转载 2020-03-31 10:53:06 · 254 阅读 · 0 评论 -
platform总线(一)
platform总线(一)转载:https://www.jianshu.com/p/4c3351ffcccb在linux2.6设备模型中,关心总线,设备,驱动这三个实体,总线将设备和驱动绑定,在系统每注册一个设备的时候,会寻找与之匹配的驱动。相反,在系统每注册一个驱动的时候,寻找与之匹配的设备,匹配是由总线来完成的。硬件资源用专门的模块维护,驱动用专门的模块维护,使用platfo...转载 2020-03-31 10:50:01 · 187 阅读 · 0 评论 -
linux内核中likely与unlikely ---mark 详细
前言 内核版本:linux 4.13 在linux内核中,经常可以看见if( likely(x))或if( unlikely(x))语句,那么likely和unlikely是什么意思呢?本文将对likely和unlikely进行一些讨论。likely和unlikely参考/include/linux/compiler.h */# define likely(x) __built...转载 2020-03-30 15:18:02 · 144 阅读 · 0 评论 -
subsys_initcall
subsys_initcalllinux子系统的初始化_subsys_initcall():那些入口函数【转】https://blog.csdn.net/u010388659/article/details/81265010内核选项的解析完成之后,各个子系统的初始化即进入第二部分—入口函数的调用。通常USB、PCI这样的子系统都会有一个名为subsys_initcall的...原创 2020-03-07 11:25:27 · 2529 阅读 · 0 评论 -
linux defconfig、 .config 、kconfig 与makefile
linux defconfig、 .config 、kconfig 与makefile展开当驱动文件编写完成之后,需要将其编译进内核uimage或者编译模块(.ko),此时需要修改kconfig 和makefile文件。下面以博通平台为例,阐述下kconfig等文件的用途等,本人水平有限,如有错误之处,请不赐指正。介绍Kconfig makefile 等文件的文章很多,可以参考:点击打开链...原创 2020-03-04 21:51:03 · 702 阅读 · 0 评论 -
如何确定使用的kernel defconfig和dts配置文件 比较实用 新手福利
如何确定Dragonboard410c使用的kernel defconfig和dts配置文件展开各个平台内核defconfig配置文件一般都是在kernel/arch/arm64/configs/目录下,但往往这个目录下放了好几个项目的defconfig文件,那我们如何找到自己项目的对应defconfig文件呢?一般我们编译前都会输入下面两条命令:source build/envsetu...原创 2020-03-04 21:46:07 · 4577 阅读 · 0 评论 -
Linux之Makefile (filter) (ifneq) --- 分析的比较清楚
filter:$(filter PATTERN…,TEXT)函数名称:过滤函数—filter。函数功能:过滤掉字串“TEXT”中所有不符合模式“PATTERN”的单词,保留所有符合此模式的单词。可以使用多个模式。模式中一般需要包含模式字符“%”。存在多个模式时,模式表达式之间使用空格分割。返回值:空格分割的“TEXT”字串中所有符合模式“PATTERN”的字串。函数说明:...原创 2020-02-21 14:46:34 · 4513 阅读 · 0 评论 -
linux下错误的捕获:errno和strerror的使用
阿里云 > 教程中心 > linux教程 > linux下错误的捕获:errno和strerror的使用 linux下错误的捕获:errno和strerror的使用 发布时间:2018-01-19 来源:网络 上传者:用户 关键字: 捕获 strerror 错误 使用 errno Linux 发表文章 摘要:经常在调用linux系统api的时候会...转载 2018-12-11 08:24:30 · 226 阅读 · 0 评论 -
深入理解Android音频框架AudioTrack到AudioFlinger及Mix过程 ******
深入理解Android音频框架AudioTrack到AudioFlinger及Mix过程逆流的鱼yuiop发表于何俊林订阅1K AudioTrack构造过程 AudioTrack 数据写入 获取音频输出 创建AudioTrackThread线程 申请Track AudioFlinger 概述 AudioTrack和AudioFlinger的通信机制 建立联...转载 2019-03-13 21:05:24 · 1151 阅读 · 1 评论 -
高通Audio中ASOC的machine驱动
高通Audio中ASOC的machine驱动233333发表于linux驱动个人学习已订阅1.1KASoC被分为Machine、Platform和Codec三大部分,其中的Machine驱动负责Platform和Codec之间的耦合以及部分和设备或板子特定的代码,再次引用上一节的内容:Machine驱动负责处理机器特有的一些控件和音频事件(例如,当播放音频时,需要先行打开一个放大器);...转载 2019-03-13 21:29:36 · 1040 阅读 · 0 评论 -
git修改分支名称 -------- mark
git修改分支名称我小时候可猛了_关注0.52017.06.26 13:54*字数 111阅读 17688评论 1喜欢 20假设分支名称为oldName想要修改为 newName1. 本地分支重命名(还没有推送到远程)git branch -m oldName newName2. 远程分支重命名 (已经推送远程-假设本地分支和远程对应分支名称相同)a. 重...转载 2019-03-23 18:04:53 · 7363 阅读 · 1 评论 -
ANDROID系统编译过程详解
ANDROID系统编译过程详解第一部分:概述在研究Android编译系统之前,我们首先需要了解Linux系统的make命令。在Linux系统中,我们可以通过make命令来编译代码。Make命令在执行的时候,默认会在当前目录找到一个Makefile文件,然后根据Makefile文件中的指令来对代码进行编译。也就是说,make命令执行的是Makefile文件中的指令。Makefile文件...转载 2019-03-23 18:10:05 · 700 阅读 · 0 评论 -
module_init 和 late_initcall 区别
在init.h 中有如下定义#define pure_initcall(fn)__define_initcall("0",fn,1)#define core_initcall(fn)__define_initcall("1",fn,1)#define core_initcall_sync(fn)__define_initcall("1s",fn,1s)#define ...转载 2019-04-16 22:16:16 · 158 阅读 · 0 评论 -
Linux驱动late_initcall和module_init相关分析
Linux驱动late_initcall和module_init相关分析2017年05月26日 11:27:11jzjhome阅读数:2623文章来源:http://blog.chinaunix.net/uid-29570002-id-4387097.htmlLinux系统启动过程很复杂,因为它既需要支持模块静态加载机制也要支持动态加载机制。模块动态加载机制给系统提供了极大的灵活性...转载 2019-04-16 22:19:00 · 353 阅读 · 0 评论 -
Android系统Audio框架介绍 ········MARK
Android系统Audio框架介绍2014年09月24日 08:49:49快乐安卓阅读数:17043标签:AudioFlingerAudioPolicyServiceAudioSystemAudioTrack更多个人分类:【Android 音频模块】音频基础知识声音有哪些重要属性呢?响度(Loudness)响度就是人类可以感知到的各种声音的大小,也就是音量。响度...转载 2019-04-19 15:27:51 · 293 阅读 · 0 评论 -
Android使用AudioRecord遇到的问题与解决方法
Android使用AudioRecord遇到的问题与解决方法2015年05月14日 12:11:55 wyyl1 阅读数:26347更多个人分类: android判断是否禁用了录音权限Android版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wyyl1/article/details/45719099问题:1、androi...转载 2019-02-14 10:53:53 · 1857 阅读 · 0 评论 -
android MediaRecorder start failed:-38
android MediaRecorder start failed:-382015年06月30日 17:40:28 laizhiwei2014 阅读数:6060最近在学习android 录音方面的知识,发现在部分手机正常运行的APP,在华为平板上挂了,eclipse的Logcat显示MediaRecorder start failed:-38。查了下资料,原因是我的APP在编码时使用了多...转载 2019-02-14 10:51:18 · 1525 阅读 · 1 评论 -
Android系统下在te文件中为指定服务添加sepolicy权限 ~~~~mark 详细
Android系统下在te文件中为指定服务添加sepolicy权限 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: sepolicy 指定 权限 添加 Android 文件 系统 服务 发表文章 摘要:【正文】设备在播放视频时有异常,使用Logcat查看日志时发现了如下记录:04-2714:01:59.13628252825ESELinux:avc:denied{...转载 2018-12-12 09:23:34 · 1938 阅读 · 0 评论 -
Android中SeLinux权限 .te文件编写
Android中SeLinux权限 .te文件编写2017年09月05日 10:26:19 mrx润物细无声 阅读数:3193版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/x2017x/article/details/77847988 在android中添加一个LocakSocket通信,权限部分折腾了好几天,终于搞定了. 首...转载 2018-12-12 09:18:56 · 1877 阅读 · 0 评论 -
内存耗用:VSS/RSS/PSS/USS
Terms VSS- Virtual Set Size 虚拟耗用内存(包含共享库占用的内存) RSS- Resident Set Size 实际使用物理内存(包含共享库占用的内存) PSS- Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存) USS- Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)一般来说内...转载 2018-12-11 08:26:19 · 389 阅读 · 0 评论 -
open()打开文件失败对应的各种错误码
open()打开文件失败对应的各种错误码open()打开文件失败错误码:获取错误信息实例: HANDLE hFile = 0; hFile = open(“c:\test.txt”, O_RDWR, S_IRWXU|S_IRWXG|S_IRWXO); if (-1 == hFile) { ...转载 2018-12-11 08:25:22 · 18227 阅读 · 0 评论 -
errno、strerror、perror的使用
errno、strerror、perror的使用 (2018-11-02 23:46:45)转载▼ 调用linux 系统api 的时候会出现一些错误,想知道失败的原因一、errno1.errno是"errno.h"中定义的以E开头的宏,代表数字。 (如果是在内核,可能是/usr/include/asm/errno.h 、include/asm-...转载 2018-12-11 08:23:55 · 625 阅读 · 0 评论 -
fprintf、stderr、strerror(errno)、strncpy和strcpy的用法
fprintf、stderr、strerror(errno)、strncpy和strcpy的用法2012年04月09日 19:01:05 li4850729 阅读数:818fprintf:http://baike.baidu.com/view/656682.htmstderr:http://baike.baidu.com/view/3233662.htmstrerror():htt...转载 2018-12-11 08:24:39 · 343 阅读 · 0 评论 -
内核打印函数介绍 printk、、pr_xxx()API、dev_xxx()
内核打印函数介绍2016年08月20日 20:01:20 那颗流星的秘密 阅读数:7000 标签: 驱动 更多个人分类: 驱动开发版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mike8825/article/details/52262774 在驱动中,有很多打印信息,有些是默认不能打开的,如dev_dbg或dev_v...转载 2018-12-10 19:40:47 · 3861 阅读 · 0 评论 -
android Audio 详解( 二 )
android Audio 详解( 二 )2018年01月04日 15:57:45 韩半仙 阅读数:302更多个人分类: linux驱动2 tinyalsa tinyalsa是Google在Android 4.0之后推的基于alsa内核的用户层音频接口。在Android 4.0之前还一直是使用这alsa-lib接口。Google之所以推出tinyalsa,可能是因为alsa使用...转载 2018-12-06 16:24:15 · 990 阅读 · 0 评论 -
[小技巧]open()函数创建文件时便捷的权限设置
[小技巧]open()函数创建文件时便捷的权限设置2016年07月18日 17:14:12 岚漾忆雨 阅读数:3404更多个人分类: LinuxC编程版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/baidu_35085676/article/details/51943657open()函数创建文件时便捷的权限设置头文件#...转载 2018-11-30 17:30:26 · 1596 阅读 · 0 评论 -
audio_policy.conf说明(翻译)
albert1017audio_policy.conf说明(翻译)自己记着当笔记,水平有限,仅供参考按 Ctrl+C 复制代码## Audio policy configuration for generic device builds (goldfish audio HAL - emulator)#这是模拟器的Audio policy配置## Global config...转载 2018-12-12 11:49:15 · 340 阅读 · 0 评论 -
一种定位android HAL代码位置的方法
一种定位android HAL代码位置的方法2017年04月07日 23:33:20 feiniao8651 阅读数:1044背景设备厂商一般会在Android HAL层做自己定义的实现,但是不同厂商的路径不同,在没有文档的情况下,查找对应的源码实现就要花费很多时间。这里提供一种查找的思路。方法以Audio的HAL实现为例,查看adb logcat输出adb logcat...转载 2018-12-12 11:50:29 · 315 阅读 · 0 评论 -
如何决定audio的输出路径?
如何决定audio的输出路径?由 jiang shao 于 2016-9-8 提出的问题最新回复由jiang shao于2016-9-13提供 喜欢 • 显示 0 喜欢0 评论 • 2各位尊敬的FAE 我有一块非原装imx6dl sabresd开发板,带有wm8960和hdmi接口,最近根据community上的文章完成了wm8960的porting。但是产生了一个新的问题,不...转载 2018-12-12 11:53:27 · 1380 阅读 · 1 评论 -
android 实时录音和回放
Android 实时录音和回放,边录音边播放 (KTV回音效果)Posted on 2013-08-07 21:00 泡泡糖 阅读(29135) 评论(7) 编辑 收藏 上一篇介绍了如何使用Mediarecorder来录音,以及播放录音。不过并没有达到我的目的,一边录音一边播放。今天就讲解一下如何一边录音一边播放。使用AndioRecord录音和使用AudioTrack回放。参考了网上一...转载 2019-02-14 10:50:20 · 2151 阅读 · 0 评论 -
record无法录音原因总结
无法录音原因总结置顶 2013年05月04日 10:13:38 syh63053767 阅读数:10061 原因十:dsp已经出现异常。从所提交上来的log来看,在录音出现异常之前,playback已经出错,也就是说dsp已经出现异常。但是,从这份log,无法判断dsp出现异常的原因。Line 38946: 09-23 11:15:32.152 5748 5857 E alsa_...转载 2019-02-14 10:00:53 · 5493 阅读 · 0 评论 -
使用 ftrace 来跟踪系统问题 - ftrace 介绍
使用 ftrace 来跟踪系统问题 - ftrace 介绍 siddontang 关注2018.07.15 10:44 字数 1476 阅读 1447评论 0喜欢 10虽然之前一直听说过 ftrace,但从来没将它用在实战中,在一次客户排查问题中,遇到了比较奇怪的现象,一位精通内核的朋友建议使用 ftrace 来定位一下。虽然那一次并没有使用 ftrace,但也让我觉得,后面我们势必...转载 2019-01-22 18:51:30 · 1174 阅读 · 0 评论