Free飝Fly
这个作者很懒,什么都没留下…
展开
-
随身WIFI 路由器等嵌入式Linux 编程器固件解包打包
随身WIFI固件解包打包,jffs2,squashfs文件系统解包打包,工具和方法,实操训练。破解卡槽限制,破解速度限制原创 2024-05-29 15:34:42 · 1122 阅读 · 2 评论 -
PI4IOE5V6534 gpio扩展芯片linux驱动
regmap的方式会有更新i2c寄存器不及时的问题,有时读取不更新,暂采用实时读取的方式/* * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ * Keerthy <j-keerthy@ti.com> * * This program is free software; you can redistribute it and/or * modify it under the term.原创 2022-04-29 17:15:29 · 493 阅读 · 0 评论 -
高通Android随身WIFI屏蔽商家远程控制断网
随身WIFI破解商家后台限制,可自由换卡,换IMEI原创 2022-10-28 21:04:04 · 14191 阅读 · 6 评论 -
高通Android系列随身WIFI强行开启adb,关闭商家远程控制
随身wifi root 开adb原创 2022-04-16 11:18:27 · 22049 阅读 · 13 评论 -
中芯微随身WIFI破解实体SIM卡槽(不拆机,无需切卡密码)
MF782随身WIFI破解原创 2022-04-08 15:26:01 · 47259 阅读 · 30 评论 -
MTK平台AndroidP/Q快速生成dtb.img和dtbo.img(2秒生成)
背景:MTK升级新的Android版本后,无法快速编译dtbo image,当我们修改DWS和PROJECT DTS后验证问题非常麻烦,必须删除out下KERNEL_OBJ才能生成新的dtbo.img,而且必须整编。所以跟据编译流程,写了下面这个脚本,可以快速生成dtbo和dtb image,可以几秒钟完成使用方法:(1)将脚本放在工程跟目录(2)修改脚本开头的几个变量,改为你的工程配置(3)执行:./build_dtb.sh project_name #project_n...原创 2021-11-03 18:32:32 · 3209 阅读 · 0 评论 -
Ubuntu ftp搭建--配置不同用户不同权限
一、安装VSFTPsudo apt-get install vsftpd二、添加FTP用户sudo mkdir /etc/vsftpdsudo useradd -m -d /home/vsftpd vsftpd --用户名为vsftpd,目录和用户名可以自己更改sudo vi /etc/vsftpd/ftpuser.txt --这个到时与vsftp的配置文件对应建立一个文本格式的用户名/密码列表文件,奇数行为用户名,偶数行为上一行中用户名所对应的密码。输入ftp_r原创 2021-09-05 13:40:41 · 1061 阅读 · 0 评论 -
MTK Audio驱动Poring
Audio设计如果使用MTK参考设计,Audio驱动相对简单,只需要基于MTK portingGuide就可以完成Porting。但是如果自己外接Codec,需要改变参考设计就需要对Audio框架有一些基本的了解,也要对MTK的代码架构有些了解。下面记录一下MTK Audio的移植心得。ALSA架构驱动需要关注的三个部分Platform drivers,提供了配置/使能 SoC audio interface (或称 CPU DAI) 的能力; Codec drivers,提供了配置/使能 Cod原创 2021-07-23 17:45:16 · 2218 阅读 · 0 评论 -
Repo仓库批量制作patch合入Patch
背景:有的平台SDK使用的是repo sync的方式同步代码,当需要将平台更新代码同步到自己项目中时就比较麻烦,整个仓库比较的话Android代码量太大,太耗时,repo又没提供批量制作patch的命令。所以开发了自动化制作patch的脚本,以及使用教程原理:RK代码利用repo sync 同步,不是发的差分包,无法及时同步到自己的项目中,所以本地保存一份RK原生Code,保持和RK同步,然后制作出差分包再打patch到自己的项目中。(1)首先需要保存原始Code的oldmanifest .原创 2021-03-22 11:34:28 · 3067 阅读 · 0 评论 -
USB ADUIO与CDC ACM 复合设备
USB设备应用场景非常多,就是因为方便,而且很多还免驱。一般我们产品如果仅需要一种USB功能,如UAC、HID、ADB、MASS等系统都是直接支持的,直接配置下就可以轻松实现。即使需要实现一些常用的组合设备功能,如CDC + MASS STORAGElinux系统也提供了对应的驱动。但如果我们想实现自定义USB的组合设备,就需要自己编写驱动了。本文将介绍如何实现USB AUDIO + CDC ACM组合设备功能,也就是UAC+ UART说明:本文基于usb gadget legacy驱动方式实现.原创 2021-01-21 15:34:35 · 1586 阅读 · 14 评论 -
UVC webcam添加H264 NV12等格式支持
linux webcam 驱动默认仅支持YUY2 和 MJPG 两种格式,这也是大部分USB摄像头和应用支持的格式下面讲讲如何添加新的格式支持:(1)修改kernel\drivers\usb\gadget\function\uvc_v4l2.c添加新的格式支持,这里新增了H264、NV12和RGB565static struct uvc_format uvc_formats[] = { { 16, V4L2_PIX_FMT_YUYV }, { 0, V4L2_PIX_FMT_M..原创 2020-11-11 19:21:54 · 3620 阅读 · 15 评论 -
RK3308实现usb webcamera功能
有时为了调试摄像头,但没有屏幕,就需要将摄像头数据通过USB输出在电脑端查看图像。主要就是将rk3308(RK 其他平台也可以)作为一个USB摄像头,可以插在Windows或linux PC上使用。本文将讲解驱动如何配置以及实现向usb web camera写数据再电脑端查看的demo一、驱动配置修改kernel对应的config文件kernel config配置视原来配置进行修改,需要确保UVC配置的相关依赖都配置,否则可能不生效。CONFIG_VIDEO_V4L2_SUBDEV_.原创 2020-10-29 09:56:06 · 2692 阅读 · 10 评论 -
嵌入式kernel4中申请用户空间内存的方法
有时我们需要在内核空间申请一块用户空间的内存来使用,这该如何实现呢?如果直接使用内核内存,不会通过下面流程调用的地址检查,我们就必须申请一块用户空间地址来应付内核检查。根据网上资料显示,内核空间使用用户空间地址(或申请或调过内核检查)有以下三种方法一、使用brk系统调用二、使用set_fs、get_fs三、do_mmap或者sys_mmap_pgoff下面具体提供一种我自己验证保证可行的一种方案(因为前两种我都没有调试成功,第三种验证可行)。我是基于kernel4.4开发...原创 2020-09-16 16:00:39 · 308 阅读 · 0 评论 -
RK3308 Codec修改支持单声道PlayBack
一、3308声卡信息 / # cat /proc/asound/cards 0 [rockchiprk3308b]: rockchip_rk3308 - rockchip,rk3308b-acodec rockchip,rk3308b-acodec 1 [UAC1Gadget ]: UAC1_Gadget - UAC1_Gadget UAC1_Gadget 0 7 [Loopback ]:原创 2020-09-10 14:38:27 · 1461 阅读 · 0 评论 -
一种音视频缓冲方法(FIFO)
在做音视频处理时,为了保证数据不丢失,不损坏,通常需要使用缓冲BUFFER将处理后的数据先存起来,播放的时候再从buffer里一帧一帧的取出来。下面介绍一种缓冲方案(源码),可移植到需要做数据缓冲的项目中,不一定非要用作音视频处理。AutoLock.h#ifndef APP_MEDIAPLAYER_AUTOLOCK_H_#define APP_MEDIAPLAYER_AUTOLOCK_H_#include "PthreadLock.h"namespace mediaPlaye...原创 2020-07-27 15:30:46 · 1341 阅读 · 0 评论 -
RK3399 Android 实现虚拟camera的几种方案
在项目开发过程中,有时需要一个虚拟camera,由我们自己填充数据,比如TOF 模组 IR数据与depth数据是混合在一起输出的。我们需要将它们分开,分成两路送到上层去处理。物理camera只有一个,让上层认为是两个独立的camera。第一种方案:虚拟一个mipi camera 我首先想到的方案是模仿原有的mipi或usb camera框架,虚拟出一个camera。先说mipi camera,RK 的mipi camera源码都在hardware\rockchip\camera...原创 2020-07-21 15:58:37 · 5690 阅读 · 10 评论 -
Linux mic阵列实时录制 算法处理 UAC播放
本文讲解如何基于Linux系统做一个实时录播的UAC程序。网上大多都是要么pcm_read后直接调用pcm_write,完全没有对声音做处理,实用性不强,而且实时性不好。要么就是read write单开线程,但是没有做同步处理,稳定性不好,很容易产生延时和数据损坏,无法拿来做产品。而且UAC是无法一直向PC写,当PC端不录音的时候,因为会buffer溢出,然后pcm_write就报错的。 那如何做一个真正实现实时录播的程序,可以监听PC等其他上位机端的播放、停止动作,与操作端...原创 2020-06-28 12:55:54 · 2454 阅读 · 124 评论 -
RK3308 AUDIO_SOURCE配置
目录:(1)基于rk3308配置内核做麦克风(audio source)(2)验证麦克风功能是否工作正常(3)audio source和adb同时使用(4)修改audio source驱动,配置通道数及默认采样率正文:(1)基于rk3308配置内核做麦克风(audio source)Audio Source功能仅支持录音功能,不支持放音,这对于仅做麦克风的产品是再合适不过的了内核配置如下:添加 CONFIG_USB_CONFIGFS_F_ACC=y(Audio So.原创 2020-06-22 15:55:10 · 3274 阅读 · 14 评论 -
RK3308 Linux UAC与ADB 复合同时使用
一 、内核配置kernel config 中添加CONFIG_USB_CONFIGFS_F_UAC1=y 开启UAC1驱动二、BuildRoot 配置具体使用的哪个config,可以看device/rockchip/.BoardConfig.mk中RK_CFG_BUILDROOT的值修改buildroot/configs/firefly_rk3308_release_defconfig 添加BR2_PACKAGE_USBDEVICE=yBR2_PACKAGE_ANDROID_TOO..原创 2020-06-04 16:29:06 · 3808 阅读 · 25 评论 -
Android rk3399 UAC(USB Audio)开发笔记
一、UAC有1.0和2.0,因Windows对2.0支持不好,我使用的是UAC1.0驱动内核配置:CONFIG_USB_CONFIGFS_F_UAC1 ---这个宏配置无需物理codec,使用虚拟 alsa codec驱动路径:"kernel\drivers\usb\gadget\function\f_uac1.c"内核配置:CONFIG_USB_CONFIGFS_F_UAC1_LEGACY ---这个宏配置需要物理codec需要开启CONFIG_USB...原创 2020-06-02 19:02:32 · 6449 阅读 · 12 评论 -
adb shell 执行后台程序后断开adb后台进程被结束的解决办法
环境:Android 版本 Android8通常让程序后台执行就是在命令 最后加上 &即可,但是在Android 8上实验发现,程序的确后台了,但是拔掉USB线再连接上发现进程已结束。不确定Android早期版本是否存在此问题。参考网上一些Linux方法,如加nohup 仍然无效,还是会结束。看来Android adb shell 与 Linux shell 还是有一定区别。后...原创 2019-11-27 13:38:31 · 9605 阅读 · 8 评论