Jarry_le
码龄11年
关注
提问 私信
  • 博客:419,333
    419,333
    总访问量
  • 144
    原创
  • 1,588,135
    排名
  • 215
    粉丝
  • 2
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2013-08-12
博客简介:

兰宝的专栏

博客描述:
编程之美
查看详细资料
个人成就
  • 获得856次点赞
  • 内容获得52次评论
  • 获得5,142次收藏
创作历程
  • 8篇
    2023年
  • 1篇
    2021年
  • 2篇
    2020年
  • 11篇
    2018年
  • 47篇
    2017年
  • 89篇
    2016年
  • 49篇
    2015年
  • 3篇
    2014年
成就勋章
TA的专栏
  • M_recommend_extracurricular
    3篇
  • linux_kernel
    6篇
  • android
    7篇
兴趣领域 设置
  • 软件工程
    性能优化
创作活动更多

仓颉编程语言体验有奖征文

仓颉编程语言官网已上线,提供版本下载、在线运行、文档体验等功能。为鼓励更多开发者探索仓颉编程语言,现诚邀各位开发者通过官网在线体验/下载使用,参与仓颉体验有奖征文活动。

368人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

看我解决Linux下的OTG切换问题

在接手这个问题之前,我是没有搞过usb相关的,当然了,我看过很多文章和书籍,之前在rockchip平台上,我也有接触过usb相关的知识,解决实际问题还是第一次,看MTK代码的时候,大部分都是通过函数名字和变量定义猜测意图,加上硬件的一些验证。就是上图的那个引脚,但是可惜的是,我们引脚上接的这个脚不是GPIO功能脚,所以MTK的补丁用不上,他们的补丁也就是检测是否有USB插入,并通过OTGID脚状态,然后再适配usb的状态。​插入OTG设备后,再拔掉,仍是OTG模式,没检测到OTG设备拔出​。
原创
发布博客 2023.06.16 ·
990 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

MT8768充电流程

if (__power_supply_is_supplied_by(psy, pst)) { //只有power_supply_changed("mtk_charger_type")的时候才会跑"battery"、"mtk-master-charger"的external_power_changed。可能是找到第1个返回了吧。//CHARGER_OUT,唤醒算法。
原创
发布博客 2023.02.22 ·
1282 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

00.mipi协议

由于MIPI是采用差分信号传输的,所以在设计上需要按照差分设计的一般规则进行严格的设计,关键是需要实现差分阻抗的匹配,MIPI协议规定传输线差分阻抗值为80-125欧姆。在高速模式下,通道状态是差分的0或者1,也就是线对内P比N高时,定义为1,P比N低时,定义为0,此时典型的线上电压为差分200MV,请注意图像信号仅在高速模式下传输;在高速模式下,通道状态是差分的0或1,定义P比N高时定义为1,P比N低时定义为0,此时线上典型电压为差分200mv。在LP模式下,只用lane0传输数据和时钟,双向数据传输。
原创
发布博客 2023.02.22 ·
674 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

01.mipi时序

首先会发送VSPW行(VSA lines)的空数据包,在发送VBP lines的空数据包,接着发送VACT lines(屏宽)的有效RGB数据,其中每一行数据都包含HSS 行开始信号+HBP数据包+RGB+HFP数据包。3 Burst mode: 在horizontal 的时序是一样的情况下DSI会把连接的速度提升到Panel支持的最大速度。那么这三种video模式的区别就是传递的数序和数据包位置的不同,至于最终在dtsi配置哪一个模式就要根据实际的panel IC所支持video 模式来。
原创
发布博客 2023.02.22 ·
1348 阅读 ·
0 点赞 ·
0 评论 ·
8 收藏

插入USB开机

在kernel阶段判断的电压要比lk阶段的启动电压要大,否则kernel充电到3.6自动关机重启后电压只有3.58,lk阶段判断启动电压不满足,继续充电,3.6关机,死循环!3.45V 以下关机充电 g_boot_mode = LOW_POWER_OFF_CHARGING_BOOT //9。3.45V 以上关机充电 g_boot_mode = KERNEL_POWER_OFF_CHARGING_BOOT //8。2. 3.45 - 3.6 kernel充电。
原创
发布博客 2023.02.22 ·
332 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[FAQ202071860]修改uart0输出串口LOG

1.修改所在工程中的pinmap文件,用来配置UART0 PAD对相应的UART0 控制器,其它芯片也有类似的寄存器用来配置不同的pad对应不同的控制器,请查看相应的芯片spec。2.配置了uart0 pad对应uart0控制器后,还需要将log的输出定位到uart0控制器上来,uboot中UART的驱动在/修改uart0输出串口LOG。
原创
发布博客 2023.01.13 ·
246 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

[FAQ122070]eMMC降速怎么修改

1,可以修改平台端 eMMC总线工作模式配置,在kernel工程dts文件,默认配置为最高HS400 模式打开Enhanced Strobe。2,限制总线模式最高HS400 400MB/s,关闭Enhanced Strobe。4,限制总线模式最高High Speed DDR 104MB/s。5,限制总线模式最高High Speed SDR 52MB/s。3,限制总线模式最高HS200 200MB/s。eMMC降速怎么修改。
原创
发布博客 2023.01.13 ·
735 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

[FAQ202172679]如何使用ADB控制GPIO高低?

如何使用ADB控制GPIO高低?
原创
发布博客 2023.01.13 ·
442 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

谈谈Linux内核驱动的coding style

最近在向Linux内核提交一些驱动程序,在提交的过程中,发现自己的代码离Linux内核的coding style要求还是差很多。当初自己对内核文档里的CodingStyle一文只是粗略的浏览,真正写代码的时候在很多细节上会照顾不周。不过, 在不遵守规则的程序员队伍里,我并不是孤独的。如果去看drivers/staging下的代码,就会发现很多驱动程序都没有严格遵守内核的coding style,而且在很多驱动程序的TODO文件里,都会把"checkpatch.pl fixes"作为自己的目标之一(check
原创
发布博客 2021.03.28 ·
341 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

ADB 常用命令及详解

ADB 即 Android Debug Bridge,Android调试桥。ADB工作方式比较特殊,采用监听Socket TCP 端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口。熟练使用 ADB 命令将会大大提升开发效率。 ADB 的命令有很多,今天就来总结下我在TV开发常用到的一些 ADB 命令。 显示系统中全部设备: adb devices 这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 2.开启ADB服务: adb
原创
发布博客 2020.10.17 ·
784 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

SecureCRT自动保存日志设置

嵌入式开发经常由于无法debug而只能使用串口打印日志的方式调试代码,SecureCRT支持“SSH2”、“Serial”等多种连接方式,是嵌入式工程师开发必备工具之一。串口日志打印由于打印数量大,经常会超过SecureCRT一屏显示范围,所以设置自动日志保存功能对于查找问题很有必要。SecureCRT保存日志有2种方式:手动模式和自动模式。一、手动模式:选择“File”->“Log Session”,会弹出保存Session路径及名称的对话框,输入路径和名称后SecyreCRT就将保
原创
发布博客 2020.06.01 ·
3638 阅读 ·
4 点赞 ·
1 评论 ·
17 收藏

自己写的uvc驱动支持IP2977/ip2970

/* 作者: 453411484@qq.com   * 此驱动程序是基于linux2.6.31.14内核  * 上一篇自己写的uvc驱动程序是针对环宇飞扬6190来写的,有一些缺点,这些缺点在本次的驱动  * 中进行了修改此uvc驱动是针对IP2977进行了支持,根据IP2977芯片厂商提供的修改手册进行了修改。  * 此驱动程序虽然支持IP2977摄像头,但是显示效果不太好,此驱动只是针对学习使...
原创
发布博客 2018.03.13 ·
766 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android USB Camera(2) : UVC协议分析

1. 前言本文对USB的功能类协议USB Video Class(UVC)的具体设计进行介绍,但不会介绍USB基础协议,所以需要对USB基础协议有一定的了解,包括USB四大描述符以及四种传输方式。分析usb协议的重点在于描述符,这里将以实际设备的描述符为线索,贯穿、分析uvc协议。2. UVC功能概述UVC设备都是多Interface设备,这点同普通的u盘不同。UVC设备最起码有两个Interfa...
原创
发布博客 2018.03.13 ·
3120 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

framework层服务分析

framework层服务分析      最近在做公司内部员工android系统培训,编写了一些PPT,引用了网上诸位大侠的贡献,下面就分析下framework框架层服务。            Android Service是android 系统中的四大组件之一(Activity、Service...
原创
发布博客 2018.03.13 ·
726 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

android4.2.2---1. hal层与framework层的调用

1.HAL层首先在hal层定义结构体sensors_module_t#define SENSORS_HARDWARE_MODULE_ID "sensors"struct sensors_module_t HAL_MODULE_INFO_SYM = {common:    {tag:       ...
原创
发布博客 2018.03.13 ·
1301 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android应用层到Framework到HAL再到驱动层的整个流程分析

本篇参考老罗的实例进行总结。老罗写六篇,层层嵌套,他告诉了我们流程,但没有说编程思想,所以,即使知道怎么做也很快会忘调,因此打算总结下每层之间是怎么调用的,以加深印象。不对细节进行探讨。细节可以参见老罗的blog:http://blog.csdn.net/luoshengyang/article/details/6567257老罗的分析是从驱动到应用层的,但我想从app开发者的角度去反思这个流程,...
原创
发布博客 2018.03.13 ·
9235 阅读 ·
6 点赞 ·
3 评论 ·
51 收藏

全志平台boot框架中增加设备驱动过程分析

在boot启动阶段,大家都知道他的主要目的就是引导uboot,uboot在引导内核,从而让整个系统运作起来。全志的boot阶段,对应平板这一块,它会驱动LCD,显示一些开机LOGO,这个过程很快,也就1-2秒钟的时间。然而对于车载行业应用来说,可能需要再boot阶段做一些事情。比如,机器冷启动,大家都知道android启动时间还是比较长的,那么怎么使得客户能快速的用上倒车影像的功能呢?这就需要动脑...
原创
发布博客 2018.03.13 ·
768 阅读 ·
2 点赞 ·
0 评论 ·
3 收藏

全志平台boot里TVD倒车显示功能开发

倒车显示分两个部分,前端处理好视频输入信号,准备好内容,后端显示驱动再来把内容显示到LCD上。很明显,前端是TVD模块来处理的,后端是有DE模块来处理的,我们接下来先分析一下TVD模块怎么工作的。      首先,需要加载驱动打开设备驱动,如果有需要还可以执行IOCTL操作,跟在linux系统里操作驱动的IOCTL类似。代码如下:/*********************************...
原创
发布博客 2018.03.13 ·
1066 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

android音频系统音量控制探讨

  android音频系统音量控制上,没有考虑到控制模拟音频信号的问题,笔者在项目中要控制FM,voice incall的时候很不好处理。android对数字信号有很好的处理,可以用software来调节音量,省去硬件的控制,但是对于模拟信号不能一起控制了,笔者采用在android中不使用软件条件音量,因为如果采用软件音量,必然需要把音频的codec芯片设置的默认值提高,但是一提高,噪声就会增大,...
原创
发布博客 2018.03.13 ·
495 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

linux下ALSA音频驱动软件开发

最近一直忙于Linux下ALSA音频驱动的开,作了一次专题讨论,现将部分内容贴出来大家分享一下。   内容提要一、音频相关的基础知识 •二、Linux下音频驱动开发模型 •三、socxx+ WM8993驱动实例分析 •四、总结 •五、 Question& Discussion  音频相关的基础知识  ----采样、量化  •1、采样频率 •   常用 32kHz、 44.1kHz、 48k...
原创
发布博客 2018.03.13 ·
639 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏
加载更多