自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(123)
  • 资源 (2)
  • 收藏
  • 关注

原创 瑞发科Norelsys NS6601 linux驱动开发

soc平台:RK3588。ns6601.c文件。

2024-05-17 15:13:13 125

转载 linux 设备电源管理框架dpm

在计算机系统中,可能包含众多的设备,如通信设备、存储设备、信号采集设备以及信号处理设备等。在linux中,通过设备模型将这些设备组织成了一个具有层次化结构的集合。电源管理的一个重要目标是在系统挂起恢复流程中,正确地挂起和恢复这些设备。为此内核实现了一套dpm框架,用于管理所有设备的电源相关流程linux系统休眠(三)设备休眠dpm - 知乎 (zhihu.com)

2024-05-11 13:18:17 39

原创 linux 设备驱动支持多个设备写法

当一个驱动支持多个设备的时候,在每个设备的dts中,都会配置各自的compatible,当与driver中的compatible匹配后,会取各自的data。在 __of_match_node中有match++。在bbb.dts中,匹配到第1条,data就用第1条。在ccc.dts中,匹配到第2条,data就用第2条。

2024-05-10 15:49:14 313

原创 RK3588 usb adb调试

问题:2路usb3.0 otg,在使用其中一路typeC1作用adb功能使用后,将这路设置成host模式后,另外一路typeC0设置device,这路还是无法当做usb adb来使用。设置usb controller属性为typeC0。再reset设置sys.usb.config属性。查看当前usb controller属性。设置usb typeC1模式为host。查看usb typeC1当前模式。

2024-05-10 10:17:02 545

转载 RK3588 usb调试

参考:Rockchip RK3588 - USB基础 & 调试 - 大奥特曼打小怪兽 - 博客园 (cnblogs.com)

2024-05-06 17:46:58 42

原创 RK3588平台MIPI CSI调试错误记录

这里0x438 表示场的分辨率只到1080大小,但是驱动配置里超过这个大小了。1200 --》 1080 就可以了。

2024-04-30 17:50:39 833

原创 ip route 网络配置相关

【代码】ip route 网络配置相关。

2024-04-22 09:55:23 331

原创 cyttsp 固件手动升级

【代码】cyttsp 固件手动升级。

2024-02-01 18:03:27 332

原创 KASLR 内核随机地址配置开启

CONFIG_RANDOMIZE_BASEkernel features ---> Randomize of module region independently from the core kernel参考链接:KASLR 内核动态地址 - kk Blog —— 通用基础 (abcdxyzk.github.io)

2023-08-25 17:14:04 333

原创 A2B bus:通过I2C访问slave以及slave外挂得设备

A2B 汽车音频流传输总线,如何通过master访问多个node slave设备以及slave设备下外挂得子设备

2023-08-25 14:56:51 214

原创 alsa sound修改--period-size上限配置

RCar-H3 alsa-sound --period-size max修改。

2023-02-11 15:03:01 671

原创 pack 字节对齐

pack 字节对齐

2022-08-25 10:03:42 476

原创 Amba平台cyttsp裸机驱动移植

【代码】Amba平台cyttsp裸机驱动移植。

2022-08-25 09:23:13 454

原创 cyttsp MCU裸机触摸驱动

【代码】cyttsp MCU裸机触摸驱动。

2022-08-25 09:20:14 453

原创 linux系统多主机网络通信配置

主机多系统之间,多网卡进行通信

2022-06-15 14:57:40 404

原创 git reflog 查看commit但是未push的日志

命令如题之前用过,好久没用突然忘记了,做下笔记。

2022-04-27 10:07:30 514

原创 linux regulator接口驱动demo

设备树&i2c0 { mps2022_cam_pp: pp@21 { reg = <0x21>; compatible = "mps,mps2022"; device-supply = <&_3v3_db_ivi>; camera-supply = <&_8v_cam>; /* power down bit of mps2022 */ gpio = <&gpio6 12 GPIO_ACTIVE_HI

2022-02-11 10:06:19 1124

转载 CRC-8算法

请移步CRC8算法_简单的过客-CSDN博客_crc8

2022-01-26 10:09:51 6250 1

原创 gcc linaro交叉编译工具链下载地址

manifest_format=1.5# Note that for ABE, these parameters are not used# Component data for gmpgmp_url=http://snapshots.linaro.org/components/toolchain/infrastructuregmp_filespec=gmp-6.1.2.tar.xzgmp_md5sum=f58fa8001d60c4c77595fbbb62b63c1dgmp_mingw_on.

2021-12-20 10:33:36 1934

转载 ubuntu18.04以上系统使用旧版本的文件系统管理器

ubuntu 18.04 按键快速定位到文件或文件夹,而非出现搜索框转载#1.安装nemosudo apt-get install nemo#2.替代默认的文件管理器nautilusxdg-mime default nemo.desktop inode/directory application/x-gnome-saved-searchgsettings set org.gnome.desktop.background show-desktop-icons falsegsetti

2021-12-17 17:10:44 243

原创 [音频文件编译]通过audacity工具将2ch的音频文件编辑成8ch的音频文件

1 选择audacity工具上的【编辑】--->【偏好设置(或者首选项)】选择【导入/导出】--->【使用高级 混音选项】2. 导入2ch的音频文件3. 选择【轨道】--> 【追加新轨道】--> 【追加立体声轨道】立体声轨道是2ch的,所以追加3次就是8ch的音频轨道了4. 导出选择【文件】【导出】【导出音频】【保存】【确定】 【确定】ok,生成完成。...

2021-12-10 20:37:13 1694

原创 linux系统读写eth网卡PHY寄存器工具mdio_mmd_indirect

#include <sys/types.h>#include <sys/socket.h>#include <sys/ioctl.h>#include <linux/if.h>#include <linux/mii.h>#include <linux/sockios.h>#include <errno.h>#include <stdio.h>#include <string.h>.

2021-11-17 11:13:27 16938

原创 linux系统读写eth网卡PHY寄存器工具mdio_cmd

在用户层访问smi/mdio总线, 读写phy芯片寄存器的通用代码。Linux内核2.6以上通用。mdio_cmd.c#include <sys/types.h>#include <sys/socket.h>#include <sys/ioctl.h>#include <linux/if.h>#include <linux/mii.h>#include <linux/sockios.h>#include <

2021-11-17 11:11:10 3266

原创 音频编辑器工具

Audacity 是一个针对 Linux/Unix、 MacOS 及 Windows 平台的多音轨音频编辑器。 它是为方便用户录制、播放和编辑数字音频而设计的。Audacity 带有数码特效和频谱分析 工具。操作便捷并支持无限次撤消和重做。它支持的文件格式包括 Ogg、Vorbis、MP2、MP3、WAV、AIFF 和 AU 等。许可协议:开源...

2021-09-28 17:50:11 79

原创 liunx下xxd命令将text文件转成hex文件

liunx下xxd命令将text文件转成hex文件命令格式如下:xxd -r -p dd12.txt dd12.bin

2021-09-27 08:44:52 834

原创 linux下交叉编译strace工具

1. strace工具最新源码包下载github下载地址:https://github.com/strace/strace2. 执行bootstrap,生成configure文件root@:/home/samba/strace# ./bootstrapgenerating ./xlat/adjtimex_modes.hgenerating ./xlat/access_flags.hgenerating ./xlat/addrfams.hgenerating ./xlat/adjti

2021-09-01 13:44:40 535

原创 linux磁盘IO测试工具fio交叉编译

如何使用请参考以下文章https://www.cnblogs.com/xuyaowen/p/fio-usage.html1. 下载源码地址https://github.com/axboe/fio.githttp://git.kernel.dk/cgit/fio/2. configure配置通过./configure --help 查看帮助在当前路径下创建out文件./configure --host=arm-linux --cross-prefix=/home/lb008

2021-08-20 16:24:24 3137

原创 linux下drivers/gpio/gpiolib.c上再封装一层user gpio驱动

每个SOC芯片厂家BSP包,基于drivers/gpio/gpiolib.c下封装一层属于自己的GPIO驱动。生成的驱动节点一般在/sys/devices/platform/gpio/gpioxxx上层应用程序可以通过该节点下的value:/sys/devices/platform/gpio/gpioxxx/value,来对GPIO引脚进行输出电平控制。但是xxx是底层驱动通过某个公司换算出来的一组数值,用户无法明确知道对应的是哪个GPIO口。所以可以自己在SOC厂家的驱动基础上再封装一层,

2021-01-01 18:08:54 597

原创 linux驱动添加延迟队列monitor(Add delay worker for gmsl)

通过delay work实现在linux驱动中添加周期处理函数(monitor)#include <linux/delay.h>#include <linux/gpio/consumer.h>#include <linux/i2c.h>#include <linux/interrupt.h>#include <linux/irq.h>#include <linux/kernel.h>#include <li.

2020-11-02 23:44:52 501

原创 GPIO口工作原理的超详细解释(附电路图)

STM32的GPIO介绍STM32引脚说明GPIO是通用输入/输出端口的简称,是STM32可控制的引脚。GPIO的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。STM32F103ZET6芯片为144脚芯片,包括7个通用目的的输入/输出口(GPIO)组,分别为GPIOA、GPIOB、GPIOC、GPIOD、GPIOE、GPIOF、GPIOG,同时每组GPIO口组有16个GPIO口。通常简略称为PAx、PBx、PCx、PDx、PEx、PFx、PGx,其..

2020-10-08 16:24:37 8863

原创 docker搭建工程编译环境

一、必要工具docker下载安装1.1 下载安装docker工具sudo apt install apt-transport-https ca-certificates curl software-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -sudo add-apt-repository "deb [arch=amd64] https://downl

2020-09-25 14:31:16 693

原创 根据udev机制创建video camera设备节点软链接

一、列出设备所有属性,用来编写udev规则# udevadm info -a -n [device name]将 [device name] 替换为系统中存在的设备,比如 /dev/sda 或 /dev/ttyUSB0。如果你不知道设备名,你也可以列出某个系统路径的属性:-a :所有属性-n:后面跟设备节点node查看video设备节点所有属性# udevadm info -a -n /dev/video16root:/ # udevadm info -a -n /de

2020-09-22 10:39:49 966

原创 linux系统oops panic 奔溃问题调查objdump工具使用demo脚本

用法:./objdump-function.sh vmlinux symbolsymbol指定要找的函数名vmlinux=$1 symbol=$2 #source /opt/poky/1.6.1/environment-setup-cortexa15hf-vfp-neon-poky-linux-gnueabiif [ -z "$vmlinux" ]; then echo "usage : $0 vmlinux symbol" exit fi start...

2020-09-15 15:23:39 267

原创 maxim 美信IC 远端设备访问条件(gmsl协议)

硬件条件:1. BWS2. HIM3. DBL确认以上三个硬件回路设计电平接口是否一致。软件条件:1. 是否使能反向控制通道

2020-09-15 15:19:12 588 2

原创 linux内核wait_event_interruptible和wake_up_interruptible的使用,实现内核两个进程间的交互

内核中使用wait_event_interruptible和wake_up_interruptible接口函数,来实现内核两个进程之间的交互。代码实现:/* 声明一个工作队列入等待*/static DECLARE_WAIT_QUEUE_HEAD(my_wq);static volatile int wq_condition = 0;void thread1(){ for(;;){ /*进入休眠等待*/ wait_event_interrupti

2020-09-06 22:48:58 786

转载 Linux 字符设备驱动结构(四)—— file_operations 结构体知识解析

前面在Linux 字符设备驱动开发基础 (三)—— 字符设备驱动结构(中),我们已经介绍了两种重要的数据结构struct inode{...}与 struct file{...} ,下面来介绍另一个比较重要数据结构struct _file_operationsstruct _file_operations在Fs.h这个文件里面被定义的,如下所示: struct file_operations { struct module *owner;//拥有...

2020-09-06 20:04:18 544

转载 Linux 字符设备驱动结构(三)—— file、inode结构体及chardevs数组等相关知识解析

前面我们学习了字符设备结构体cdevLinux 字符设备驱动开发 (一)—— 字符设备驱动结构(上) 下面继续学习字符设备另外几个重要的数据结构。 先看下面这张图,这是Linux 中虚拟文件系统、一般的设备文件与设备驱动程序值间的函数调用关系; 上面这张图展现了一个应用程序调用字符设备驱动的过程, 在设备驱动程序的设计中,一般而言,会关心 file 和 inode 这两个结构体 用户空间使用 open() 函数打开一个字符设备 fd =...

2020-09-06 20:00:56 174

转载 Linux 字符设备驱动结构(二)—— 自动创建设备节点

上一篇我们介绍到创建设备文件的方法,利用cat /proc/devices查看申请到的设备名,设备号。第一种是使用mknod手工创建:mknod filename type major minor第二种是自动创建设备节点:利用udev(mdev)来实现设备文件的自动创建,首先应保证支持udev(mdev),由busybox配置。 具体udev相关知识这里不详细阐述,可以移步Linux 文件系统与设备文件系统 —— udev 设备文件系统,这里主要讲使用方法。 在...

2020-09-06 19:59:46 176

转载 Linux 字符设备驱动结构(一)

一、字符设备基础知识1、设备驱动分类 linux系统将设备分为3类:字符设备、块设备、网络设备。使用驱动程序:字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后数据。字符设备是面向流的设备,常见的字符设备有鼠标、键盘、串口、控制台和LED设备等。块设备:是指可以从设备的任意位置读取一定长度数据的设备。块设备包括硬盘、磁盘、U盘和SD卡等。每一个字符设备或块设备都在/dev目录下对应一个设备文件。linux用户程序通过设...

2020-09-06 19:56:09 154

原创 带参数加载驱动模块

内核允许对驱动程序指定参数,而这些参数可在装载驱动程序模块时改变。这些参数的值可在运行insmod或modprobe命令装载模块时赋值,而modprobe还可以从它的配置文件(/etc/modprob.conf)中读取参数值。这两个命令可在命令行接受几种参数类型的赋值。hello world例子程序:#include <linux/init.h>#include <linux/module.h>#include <linux/moduleparam.h>

2020-08-30 22:46:06 354

Camera serdes 瑞发科NS6601 linux驱动支持包

基于RK3588平台的,瑞发科serdes ns6601的camera linux驱动支持包

2024-06-03

A2B slave &peri device 访问说明

A2B master slave &peri device 访问说明 A2B master slave和slave外挂设备地址访问操作说明 A2B master slave GPIO控制访问说明 A2B 数据流传输配置说明

2023-08-25

A2B 配置,关于superframe超级帧数据dataslots,downstreams和upstreams传输配置

A2B 配置,关于superframe超级帧数据dataslots,downstreams和upstreams传输配置

2023-08-24

SIM868模块参考资料

SIM868模块的一些参考资料,参考手册。包括芯片内部结构等。

2018-03-19

STM8L控制SIM868模块GPS/LBS定位

使用STM8L控制SIM868模块来进行定位,先通过GPS卫星定位,如果一定时间内获取不到GPS卫星数据,则使用LBS基站定位,然后将定位坐标信息通过GPRS上传到服务器。

2018-03-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除