- 博客(33)
- 资源 (2)
- 收藏
- 关注
原创 fmt, ##__VA_ARGS__
#define log_error(fmt, ...) pr_err(fmt, ##__VA_ARGS__)#define log_fatal(fmt, ...) pr_err(fmt, ##__VA_ARGS__)
2023-08-29 16:42:52 225
原创 DP CR training流程
我们从(0,0)挡位开始训练,如果失败,我们将采用ADJUST_REQUEST_LANE的挡位(2,3),其实(2,3)挡位也不是能保证百分白成功(我的经验来看,基本很难成功,因为每次更新的值都不一样),而且很多显示器不是很正规,因此靠这个满足兼容性测试完全不够。发射器必须在电压摆幅为0,预加重为0(记为:(0,0)挡位)的挡位。如果,所有lane的LANEx_CR_DONE位的值,在连续读取了4次后,依然不全为1(即:如果4条lane,只有3条lane为1,也叫失败),则CR锁定失败,开始步骤S3。
2023-06-18 17:00:53 759
原创 休眠唤醒流程
notifier (hibernation_prepare)-> freeze->thaw-> thaw 失败 notifier ( restore_hibernation) /进入新内核-> notify(restore prepare)-> freeze-> restore-> notify (restore hibernation)thaw成功 save hibernation。
2023-06-17 21:20:36 309
原创 二维字符数组与字符串数组的使用
二维字符数组与字符串数组的使用一维字符数组的定义形式如下:<存储类型>char<数组名>[<常量表达式>]={<初始值>};二维字符数组定义的形式是:<存储类型>char<数组名>[<常量表达式e1>] [<常量表达式e2>]={<初始值>};字符串数组...
2020-03-20 17:34:15 5326
原创 C数组&结构体&联合体快速初始化
C语言数组的初始化表示方法一、C语言一维数组初始化:(1)在定义数组时对数组元素赋以初值。如:staticinta[10]={0,1,2,3,4,5,6,7,8,9};经过上面的定义和初始化后,a[0]=0,a[1]=1,…,a[9]=9。(2)初始化时可以只对一部分元素赋初值。例如:staticinta[10]={0,1,2,3,4};定义的数...
2020-01-04 16:29:45 3261
原创 Android.mk添加打印 makefile
# Copyright (C) 2009 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # Yo...
2019-12-27 14:26:59 153
原创 Linux之Makefile
strip$(strip STRINT)函数名称:去空格函数—strip。函数功能:去掉字串(若干单词,使用若干空字符分割) “STRINT”开头和结尾的空字符,并将其中多个连续空字符合并为一个空字符。返回值:无前导和结尾空字符、使用单一空格分割的多单词字符串。函数说明:空字符包括空格、[Tab]等不可显示字符。示例:STR = a b c ...
2019-12-27 10:27:10 179
转载 C 语言指针的指针和二维数组的区别
C 语言指针的指针和二维数组的区别?为什么:指针的指针不能存二维数组的指针。如: 1 #include<stdio.h> 2 int main (void) 3 { 4 int a[2][3] = {{1,2,3},{4,5,6}}; 5 int ** array_ptr = a; 6 printf("%d\n",a[0][0]...
2019-03-04 17:03:05 440
原创 C 函数传参 形参指针 返回指针分析
题目一:void GetMemory( char *p ){ p = (char *) malloc( 100 );} void Test( void ) { char *str = NULL; GetMemory( str ); strcpy( str, "hello world" ); printf( str );}【运行错误】传入GetMemory(char* ...
2019-02-19 16:50:17 1043
转载 关于C语言中 字符串常量的问题
(Linux环境下),编译能够通过,但是运行的时候老是报段错误。我当时非常郁闷,因为代码不长。其中主函数中有这样一句话: char *str="epmzm bpmzm qa eqtt bpmzm qa i eig";以后的代码对这个字符串进行操作(修改了其中的字符)。但是改成char str[]="epmzm bpmzm qa eqtt bpmzm qa i eig";之后就能正常...
2019-02-19 16:41:09 776
原创 Android 的Input Event 子系统(一)
分析Android 的Input Event 子系统的来龙去脉。 Android 系统里面有很多小工具,运行这些工具,我们对它们有一个感性的认识,进而阅读和分析这些小工具源代码,再顺藤摸瓜,就可以把整个子系统的来龙去脉弄清楚。 1.运行toolbox的getevent 工具。 # getevent -helpgetevent -helpUsage: getevent [...
2018-12-17 15:37:03 1884
原创 查看内核支持的文件系统cat proc/filesystems
130|M01:/ # cat proc/filesystems nodev sysfsnodev rootfsnodev ramfsnodev bdevnodev procnodev cgroupnodev cgroup2nodev tmpfsnodev ...
2018-12-04 17:11:36 3066
原创 将本地的/dev/hdx整盘备份到/dev/hdy : #dd if=/dev/hdx of=/dev/hdy
例1:将本地的/dev/hdx整盘备份到/dev/hdy :#dd if=/dev/hdx of=/dev/hdy
2018-11-29 18:20:01 205
原创 shell循环执行脚本
shell循环执行脚本2017年08月24日 15:28:18阅读数:215for i in {1..10} do echo "Welcome $i times" eoo$i.sh done
2018-08-17 11:57:26 5622
原创 debugfs_create_fileLinux中debugfs的解析debugfs_remove_recursiveDEFINE_SIMPLE_ATTRIBUTE
Linux中debugfs的解析2016年06月27日 17:56:17阅读数:1088debugfs_create_dir和debugfs_create_file定义在fs/debugfs/inode.c,函数原型声明在include/linux/fs.h。struct dentry *debugfs_create_dir(const char *name, struct den...
2018-08-07 09:49:28 4624
原创 %llu 64位无符号%d、%u、%x/%X、%o%f、%e/%E或%g/%G
%llu 64位无符号 (2011-05-20 22:35:39)转载▼标签: 杂谈 分类: c语言 d,lx,ld,,lu,这几个都是输出32位的hd,hx,hu,这几个都是输出16位数据的,hhd,hhx,hhu,这几个都是输出8位的,lld,ll,llu,llx,这几个都是输出64位的,printf( "%llu ",.....)%llu ...
2018-08-07 09:45:41 22296
原创 snprintf()函数探讨printf()/sprintf()/snprintf()区别
snprintf()函数探讨2012年09月06日 12:53:37阅读数:14336printf()/sprintf()/snprintf()区别 先贴上其函数原型printf( const char *format, ...) 格式化输出字符串,默认输出到终端-----stdoutsprintf(char *dest, const char *format,...) ...
2018-08-06 20:17:48 1199
翻译 gpio_desc()的分析
Linux下GPIO驱动(三) ----gpio_desc()的分析 上篇最后提出的疑问是结构体gpio_chip中的成员函数set等是怎么实现的,在回答之前先介绍下gpio_desc这个结构体。 如上图所示,右上方部分为GPIO驱动对其它驱动提供的GPIO操作接口,其对应的右下方部分为GPIO硬件操作接口,也就是说对外提供的接口最终会一一对应的对硬件G...
2018-07-30 16:06:38 5838
原创 dev_get_platdata dev_get_drvdata
//dev_get_platdata和dev_get_drvdata获取的对象是不同的。 //dev_get_platdata获取的是device结构体成员变量的void * platform_data。 dev_get_drvdata获取的是device结构体void * driver_data。 另外有与dev_get_drvdata相对应的set函数dev_...
2018-07-29 16:33:33 2214
原创 subsys_initcall
linux子系统的初始化_subsys_initcall():那些入口函数【转】 2012-05-07 16:19:25| 分类: linux内核 | 标签:内核入口 |举报|字号 订阅 下载LOFTER我的照片书 | 内核选项的解析完成之后,各个子系统的初始化即进入第二部分—入口函数的调用。通常USB、PCI这样的子系统都...
2018-07-28 20:31:39 1745
原创 ret_from_fork
Linux系统fork执行过程2015年04月08日 18:18:48阅读数:2207郑德伦 原创作品转载请注明出处 《Linux内核分析》MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 一、配置环境: 首先我们把环境配置完成 在实验楼中输入rm menu –rfgit clone https://githu...
2018-07-28 19:57:43 3789
原创 kernel_init
Linux内核很吊之 module_init解析 二2017年10月12日 11:36:07阅读数:104简单来说上篇博文介绍module_init如何注册驱动的init函数,这篇博文将详细分析kernel启动过程又是如何执行我们注册的init函数。如果了解过linux操作系统启动流程,那么当bootloader加载完kernel并解压并放置与内存中准备开始运行,首先被调用的函数是...
2018-07-28 19:37:43 626
原创 关于platform_driver 是如何匹配 platform_device的和如何调用到platform_driver中的probe函数的研究
关于platform_driver 是如何匹配 platform_device的和如何调用到platform_driver中的probe函数的研究2012年02月24日 10:16:24阅读数:7184 在linux中platform平台驱动又三大部分组成,第一是bus、第二是驱动、第三是设备。 第一总线也就是platform_bus,总线也是一种特殊的d...
2018-07-28 19:29:29 1210 1
原创 of_match_device
Linux下设备与驱动match过程2018年06月13日 11:01:27阅读数:17在之前的学习过程中,我们知道了Linux 设备驱动总线架构,抽象硬件上设备都是挂载在总线BUS上的,所以,定义了各种总线结构体。这里用platform_bus_type为例 [plain] view plain copy<code class="language-plain"&...
2018-07-27 20:15:00 7567 1
原创 设备树详解dts
设备树详解在Linux3.x版本后,arch/arm/plat-xxx和arch/arm/mach-xxx中,描述板级细节的代码(比如platform_device、i2c_board_info等)被大量取消,取而代之的是设备树,其目录位于arch/arm/boot/dts1.设备树的组成1个dts文件+n个dtsi文件,它们编译而成的dtb文件就是真正的设备树soc厂商会把soc...
2018-07-27 20:10:11 5539
原创 set_bit()
set_bit()2007年01月12日 14:59:00阅读数:12987将addr的第nr位置为1 假设*addr = 0, nr = 3;则执行结果为1000(二进制数)extern __inline__ int set_bit(int nr,long * addr){ int mask, retval; addr += nr >> 5; ...
2018-07-26 20:46:28 4259
转载 gpio被其他模块占用 gpio_request
gpio_request()简单分析2015年01月28日 10:38:00阅读数:3950一、软件环境Andorid Version:5.0Cpu & Arch:Intel X86_64 二、File Pathinclude/linux/gpio.hinclude/asm-generic/gpio.hdrivers/gpio/gpiolib.c...
2018-07-26 14:42:37 8062
原创 Linux下读写UART串口的代码
Linux下读写UART串口的代码 转载至:http://blog.csdn.net/yao_guet/article/details/247689672014-04-30 09:35 15672人阅读 评论(2) 收藏 举报 分类:Linux(35) Android(37) 版权声明:本文为博主原创文章,未经博主允许不得转载。Linux下读写UART串口的代码,从I...
2018-07-25 17:09:25 8945
转载 sysfs查看USB设备
msm8996:/ # ls /sys/bus/usb/devices/usb1/speed /sys/bus/usb/devices/usb1/speedmsm8996:/ # cat /sys/bus/usb/devices/usb1/speed 480msm8...
2018-07-23 09:09:55 1181
原创 usb Host/Device switch command
Host/Device switch command echo "peripheral" > /sys/devices/soc/6a00000.ssusb/mode //Sets to periperhal mode echo "host" > /sys/devices/soc/6a00000.ssusb/mode //Sets to host mode...
2018-07-21 19:42:44 3771
原创 wpa_cli wpa_supplicant使用 wifi测试
1, 刷机后“adb shell am start -n com.android.settings/.Settings”调出wifi 界面 /vendor/bin/hw/wpa_supplicant -Dnl80211 -iwlan0 -O/data/misc/wifi/sockets -c/vendor/etc/wifi/wpa_sup...
2018-07-21 19:40:46 2920
原创 git查看本地和创建分支、上传分支、提交代码到分支、删除分支等
以下是git命令行里边的命令操作,加上了说明:Welcome to Git (version 1.9.5-preview20141217)Run 'git help git' to display the help index.Run 'git help <command>' to display help for specific commands.##进入项目目录...
2018-05-21 10:11:19 1123
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人