<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Obsession2015的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Obsession2015</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Obsession2015]]></copyright><item><title><![CDATA[boot.img的生成过程，解析mkbootimg]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/85101845</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/85101845</guid><author>Obsession2015</author><pubDate>Thu, 20 Dec 2018 08:59:10 +0800</pubDate><description><![CDATA[Android系统镜像中boot.img如何生成，在此篇文章解开它的神秘面纱。

源码位置：android/system/core/mkbootimg/



boot.img是由文件头信息，内核数据以及文件系统数据组成，它们之间非页面对齐部分用0填充


mkbootimg工具的使用：
int usage(void)
{
    fprintf(stderr,&quot;usage: mkbootimg\...]]></description><category></category></item><item><title><![CDATA[MSM8998(高通835处理器)外接指纹识别传感器linux驱动如何与设备树进行匹配]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/78050999</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/78050999</guid><author>Obsession2015</author><pubDate>Thu, 21 Sep 2017 13:36:44 +0800</pubDate><description><![CDATA[驱动名称：fpc1020.c

平台：msm8998

 

描述指纹传感器设备的结构：

 


struct fpc1020_data {
	struct device *dev;
        struct wake_lock ttw_wl;
	int irq_gpio;
	int rst_gpio;               //复位gpio号
	int irq_num;       ...]]></description><category></category></item><item><title><![CDATA[MSM8998(高通835处理器)外接指纹识别传感器linux驱动]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/78048141</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/78048141</guid><author>Obsession2015</author><pubDate>Thu, 21 Sep 2017 09:36:30 +0800</pubDate><description><![CDATA[/*
 * FPC1020 Fingerprint sensor device driver
 *
 * This driver will control the platform resources that the FPC fingerprint
 * sensor needs to operate. The major things are probing the sensor to chec]]></description><category></category></item><item><title><![CDATA[共享内存]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/78019357</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/78019357</guid><author>Obsession2015</author><pubDate>Mon, 18 Sep 2017 15:08:20 +0800</pubDate><description><![CDATA[#include 
#include 
#include 
共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种
非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地
址空间中，所有进程都可以访问共享内存中的地址，就好像它们是由用C语言函数malloc分配的内存一样。而如果某个进]]></description><category></category></item><item><title><![CDATA[platform平台device和driver如何匹配]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77933852</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77933852</guid><author>Obsession2015</author><pubDate>Mon, 11 Sep 2017 15:41:45 +0800</pubDate><description><![CDATA[device方面：
platform_device_register(struct platform_device *dev)
platform_device_add(pdev)；
device_add(&pdev->dev);
bus_probe_device(dev);
device_attach(dev);
  bus_for_each_drv(dev->bus, NULL, d]]></description><category></category></item><item><title><![CDATA[驱动中添加参数进行调试和控制设备驱动]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77933783</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77933783</guid><author>Obsession2015</author><pubDate>Mon, 11 Sep 2017 15:36:11 +0800</pubDate><description><![CDATA[1.在加载驱动的时候向驱动传入参数：
1.1传入字符型参数
static char *name;
module_param(name, charp, 0);
MODULE_PARM_DESC(name, "param description");
1.2传入无符号整型参数
static unsigned rotate;
module_param(rotate, uint, 0);
]]></description><category></category></item><item><title><![CDATA[移植树莓派中的fbtft显示驱动到Linux开发板下（四）-fbtft中的数据结构]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77189678</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77189678</guid><author>Obsession2015</author><pubDate>Tue, 15 Aug 2017 14:48:04 +0800</pubDate><description><![CDATA[/* FBTFT主要数据结构 */
struct fbtft_par {
	struct spi_device *spi;           /* 设置spi设备 */     
	struct platform_device *pdev;     /* 设置是否是平台设备 */
	struct fb_info *info;             /* 指向framebuffer fb_inf]]></description><category></category></item><item><title><![CDATA[移植树莓派中的fbtft显示驱动到Linux开发板下（三）-参数传递]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77188882</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77188882</guid><author>Obsession2015</author><pubDate>Tue, 15 Aug 2017 14:43:00 +0800</pubDate><description><![CDATA[在fbtft显示驱动fbtft_device.c下有很多待传入的参数，如name设备名称，用它来匹配寻找你的对应的显示屏驱动
了解一下传参的函数：
module_param(name,type,perm);

module_param 使用了 3 个参数: 变量名, 变量名的类型, 以及一个权限掩码用来做一个辅助的 sysfs 入口




static char *name;]]></description><category></category></item><item><title><![CDATA[移植树莓派中的fbtft显示驱动到Linux开发板下（二）]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77188320</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77188320</guid><author>Obsession2015</author><pubDate>Tue, 15 Aug 2017 14:16:23 +0800</pubDate><description><![CDATA[上一章节讲述了fbtft显示驱动移植到Linux中，被直接编译进去，但是怎么才能把他编译成模块呢？
1. git clone https://github.com/notro/fbtft

2. 修改fbtft.h,如下图（补丁文件）

3.修改fbtft_device.c

4.删除fbtft目录下的Makefile和Kconfig,增加编译模块的Makefile
	ifneq]]></description><category></category></item><item><title><![CDATA[移植树莓派中的fbtft显示驱动到Linux开发板下（一）]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/77185837</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/77185837</guid><author>Obsession2015</author><pubDate>Tue, 15 Aug 2017 11:45:19 +0800</pubDate><description><![CDATA[fbtft来自树莓派系统中基于spi等接口的tft显示屏驱动
下载fbtft驱动：https://github.com/notro/fbtft


有两种方式加载到内核，一种是直接编译进内核，一种是直接编译成模块动态加载进内核


1.直接编译进内核
对于Linux3.10版本的内核
(1).直接在driver/video下执行git clone https://github.c]]></description><category></category></item><item><title><![CDATA[APxxx系列wifi驱动芯片移植笔记]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/76559428</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/76559428</guid><author>Obsession2015</author><pubDate>Tue, 01 Aug 2017 21:08:12 +0800</pubDate><description><![CDATA[/*
*   Dave/>    2017-07-26撰写
*/
 
Ap系列芯片设备树的移植：


compatible = “wlan-platdata”
表示
Wifi_chip_type = “ap6212”
表示使用wifi芯片的类型


sdio_vref =   //sdio电压


电源管理芯片供电配置：
power_pmu_regulator]]></description><category></category></item><item><title><![CDATA[调试声卡ALC5631Q]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/76559361</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/76559361</guid><author>Obsession2015</author><pubDate>Tue, 01 Aug 2017 20:58:12 +0800</pubDate><description><![CDATA[
/*
*   Dave/&amp;lt;nova_wangwenbo@126.com&amp;gt;
*/




调试声卡ALC5631Q
	设备树信息：
		rockchip-rt5631 {
		compatible = &quot;rockchip-rt5631&quot;;
		dais {
			dai0 {
					audio-codec = &amp;lt;&amp;amp;rt5631&amp;gt;;
					audio-cont...]]></description><category></category></item><item><title><![CDATA[Xfce安装与移植]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/76559341</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/76559341</guid><author>Obsession2015</author><pubDate>Tue, 01 Aug 2017 20:56:57 +0800</pubDate><description><![CDATA[/*
*   Dave/
*/
下载xfce源码包：
wget http://archive.xfce.org/xfce/4.12/fat_tarballs/xfce-4.12.tar.bz2
解压：
 tar xvjf xfce-4.12.tar.bz2
打开解压的文件夹：
cd src/
解压各个模块：
 for i in `ls *.tar.bz2| awk '{print $NF}'`; ]]></description><category></category></item><item><title><![CDATA[wifi（rtl8188eu）移植及调试笔记]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/76559331</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/76559331</guid><author>Obsession2015</author><pubDate>Tue, 01 Aug 2017 20:56:00 +0800</pubDate><description><![CDATA[/* 
*   Dave/nova_wangwenbo@126.com 
*/wifi移植及调试笔记一.rtl8188eu1.修改设备树： 
    添加wifi ap电源控制引脚WIFI,power_ap_gpio = <&gpio3 GPIO_B5 GPIO_ACTIVE_LOW>;2.修改文件：include/linux/rfkill-wlan.h 
    增加gpio资源：struct r]]></description><category></category></item><item><title><![CDATA[usb hub模块调试]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/76559084</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/76559084</guid><author>Obsession2015</author><pubDate>Tue, 01 Aug 2017 20:47:45 +0800</pubDate><description><![CDATA[1.usb hub设备树：
	hsic-usb-hub{
        compatible = "hub_reset";
        reset,pin =;   // hub reset pin
        status = "disabled";
    };



2.对应的代码：		#include 
	#include 
	#include 
	#include 
	#i]]></description><category></category></item><item><title><![CDATA[使用busybox制作Linux文件系统（一）]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/75168740</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/75168740</guid><author>Obsession2015</author><pubDate>Sat, 15 Jul 2017 15:43:43 +0800</pubDate><description><![CDATA[1. busybox简介
BusyBox 是一个集成了一百多个最常用Linux命令和工具的软件。BusyBox 包含了一些简单的工具，
例如ls、cat和echo等等，还包含了一些更大、更复杂的工具，例grep、find、mount以及telnet。有些人将
BusyBox 称为 Linux 工具里的瑞士军刀。简单的说BusyBox就好像是个大工具箱，它集成压缩了
 Linux 的
许多]]></description><category></category></item><item><title><![CDATA[树莓派入门--安装系统]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/72598499</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/72598499</guid><author>Obsession2015</author><pubDate>Sun, 21 May 2017 15:13:52 +0800</pubDate><description><![CDATA[The Raspberry Pi 3 is the third generation Raspberry Pi. It replaced the Raspberry Pi 2 Model B in February 2016. Compared to the Raspberry Pi
 2 it has:

A 1.2GHz 64-bit quad-core ARMv8 CPU802.11n]]></description><category></category></item><item><title><![CDATA[（三）使用摄像头进行物体边缘检测]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/66971426</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/66971426</guid><author>Obsession2015</author><pubDate>Mon, 27 Mar 2017 14:43:13 +0800</pubDate><description><![CDATA[使用摄像头进行物体边缘检测
运行环境：ubuntu14.04
程序源码：test.cpp
源码：


编译：
make
Makefile:


在Linux中./test
运行结果：]]></description><category></category></item><item><title><![CDATA[驱动分析（1） --  串口驱动的分析]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/59107956</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/59107956</guid><author>Obsession2015</author><pubDate>Wed, 01 Mar 2017 14:52:43 +0800</pubDate><description><![CDATA[1.uart_driver包含了串口设备名、串口驱动名、主次设备号、串口控制台(可选)等信息，还封装了tty_driver(底层串口驱动无需关心)struct uart_driver { 
 struct module     owner;           / 拥有该uart_driver的模块,一般为THIS_MODULE / 
 const char       driver_name;]]></description><category></category></item><item><title><![CDATA[（二）opencv3.2之 图片显示]]></title><link>https://blog.youkuaiyun.com/Obsession2015/article/details/56665955</link><guid>https://blog.youkuaiyun.com/Obsession2015/article/details/56665955</guid><author>Obsession2015</author><pubDate>Thu, 23 Feb 2017 10:01:16 +0800</pubDate><description><![CDATA[example code-01include<opencv2/opencv.hpp> 
 using namespace cv;  
 int main(int argc, char **argv) 
 { 
     Mat aImage; 
     aImage = imread(“one.jpg”); 
     imshow(photo1， aImage); 
     waitKey(0]]></description><category></category></item></channel></rss>