Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1434926
  • 博文数量: 1334
  • 博客积分: 645
  • 博客等级: 上士
  • 技术积分: 5762
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-25 16:56
文章分类

全部博文(1334)

文章存档

2014年(108)

2013年(1059)

2012年(169)

发布时间:2013-06-06 01:06:31

该系列博文是基于高通8260,android版本为相对较新的Android4.0.4,由于高通的整个android usb子系统是一个整体,所以有一个框架支撑着整个体系结构。下面先大致说下该框架的结构: 该框架有以下三部分组成: 1、otg控制器。 2、主机控制器。 3、设备控制器。 三个控制器中,其中otg控制器是核心,控制着整个的调度过程,决定在某个时候,是启动主机控制器还是设备控制器。 1、当启动主机控制器的时候,就是我们的设备作为主机,例如:我们的手机上面可以接U盘,数码相机等,直接可以读取U盘上面的数据。 2、当启动设备控制器的时候,就是我们的设备作为外设,例如: 我......【阅读全文】

阅读(905) | 评论(0) | 转发(0)

发布时间:2013-06-06 01:06:26

三大控制器已经分析一个啦,下面接着第一篇分析,这篇分析下usb主机控制器设备与驱动的注册: //代码路径Devices-msm8x60.c (arch\arm\mach-msm)//主机控制器平台设备的注册#define IORESOURCE_MEM 0x00000200#define IORESOURCE_IRQ  0x00000400 static u64 dma_mask = 0xffffffffULL;#ifdef CONFIG_USB_EHCI_MSM_72Kstatic struct resource resources_hsusb_host[] ......【阅读全文】

阅读(380) | 评论(0) | 转发(0)

发布时间:2013-06-06 01:06:21

接着上一篇看,第三大设备控制器的注册: //Devices-msm8x60.c (arch\arm\mach-msm)//udc设备控制器注册static u64 dma_mask = 0xffffffffULL;struct platform_device    msm_device_gadget_peripheral = {//usb设备控制器平台设备 .name = "msm_hsusb", .id  = -1, .dev = {  .dma_mask  &......【阅读全文】

阅读(226) | 评论(0) | 转发(0)

发布时间:2013-06-06 01:06:21

接着上一篇看,第三大设备控制器的注册: //Devices-msm8x60.c (arch\arm\mach-msm)//udc设备控制器注册static u64 dma_mask = 0xffffffffULL;struct platform_device    msm_device_gadget_peripheral = {//usb设备控制器平台设备 .name = "msm_hsusb", .id  = -1, .dev = {  .dma_mask  &......【阅读全文】

阅读(227) | 评论(0) | 转发(0)

发布时间:2013-06-06 01:06:15

下面看下三大控制器的配合: /*在设备控制器注册的最后,调用了msm_otg_set_peripheral ()*/static int msm_otg_set_peripheral(struct otg_transceiver *xceiv, struct usb_gadget *gadget){ struct msm_otg *dev = container_of(xceiv, struct msm_otg, otg);  .................... dev->otg.gadget = gadget;//初始化收发器 pr_i......【阅读全文】

阅读(301) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册