一种通用串行总线端口适配方法及装置与流程

文档序号:15981565发布日期:2018-11-17 00:23阅读:1221来源:国知局

本发明实施例涉及但不限于一种通用串行总线端口适配方法及装置。

背景技术

早期u盘,usb(universalserialbus,通用串行总线)鼠标和键盘等都是通过ehci(enhancedhostcontrollerinterface,增强型主机控制器接口)接口,即usb2.0端口的规范来实现计算机的输入输出功能的交互。随着人们对存储设备容量、数据传输率、写入数据传输率、支持接口类型等性能要求的提高,usb3.0设备应运而生,但是ehci无法实现对其的兼容适配,新一代控制器xhci(extensiblehostcontrollerinterface,可扩展的主机控制器接口)主要面向usb3.0标准,同时也兼容2.0及以下的设备。随着新平台(purley)产品的发布,其南桥芯片只支持xhci控制器接口。相关技术中,xhci控制器和操作系统可能出现兼容测试失败,无法获取微软认证。



技术实现要素:

本发明至少一实施例提供了一种通用串行总线端口适配方法和装置,实现xhci控制器和操作系统兼容。

为了达到本发明目的,本发明提供了一种通用串行总线端口适配方法,包括:

在通用串行总线集线器插入到通用串行总线端口后,从所述通用串行总线集线器的属性信息中获取不同通用串行总线规范对应的端口;

设置固件中不同通用串行总线规范对应的端口,分别与从所述通用串行总线集线器的属性信息中获取的不同通用串行总线规范对应的端口一致。

本发明至少一实施例提供一种通用串行总线端口适配装置,包括:

映射关系获取模块,用于在通用串行总线集线器插入到通用串行总线端口后,从所述通用串行总线集线器的属性信息中获取不同通用串行总线规范对应的端口;

适配模块,用于设置固件中不同通用串行总线规范对应的端口,分别与所述映射关系获取模块获取的不同通用串行总线规范对应的端口一致。

与相关技术相比,本发明至少一实施例提供的通用串行总线端口适配方法,能获取usb端口的映射关系,准确定位存在的映射问题,大大缩短了排除故障的时间,修正映射问题,便于实现微软认证。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明一实施例提供的通用串行总线端口适配方法流程图;

图2为本发明一实施例提供的通用串行总线端口适配装置框图;

图3为本发明一具体施例提供的通用串行总线端口适配方法流程图;

图4为图3所述实施例中属性窗口示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

相关技术中,由于硬件层和固件层usb2.0和usb3.0映射关系不一致,实际usb端口和固件开启的个数不一致,导致xhci控制器和操作系统兼容测试失败,无法获取微软认证,本申请至少一实施例中,获取硬件层的映射关系,进而修改固件层的映射关系,使其与硬件层usb端口的映射一一对应。

如图1所示,本发明一实施例提供一种通用串行总线端口适配方法,包括:

步骤101,在usbhub(集线器)插入到usb端口后,从所述usbhub的属性信息中获取不同usb规范对应的端口。

步骤102,设置固件中不同usb规范对应的端口,分别与从所述usbhub的属性信息中获取的不同usb规范对应的端口一致。

其中,固件(firmware)是写入erom(可擦写只读存储器)或eeprom(电可擦可编程只读存储器)或flash(闪存)等中的程序。

本实施例提供的通用串行总线端口适配方法,能快速准确的获取usb端口的映射关系,准确定位存在的映射问题,大大缩短了排除故障的时间,并且修正映射问题,便于实现微软认证。

在一实施例中,所述步骤101中,不同usb规范对应的端口包括:usb3.0对应的端口和usb2.0对应的端口。

其中,步骤102中设置固件中不同usb规范对应的端口,分别与从所述usbhub的属性信息中获取的不同usb规范对应的端口一致比如:从所述usbhub的属性信息中获取的usb3.0对应的端口为0018,从所述usbhub的属性信息中获取的usb2.0对应的端口为0002,则设置固件中usb3.0对应的端口为0018,usb2.0对应的端口为0002。

在一实施例中,所述在usbhub插入到usb端口后,从所述usbhub的属性信息中获取不同usb规范对应的端口包括:

在所述usbhub插入到不同usb端口后,从所述usbhub的属性信息中获取每个usb端口下不同usb规范对应的端口。比如,有3个usb端口:端口1、端口2、端口3,在usbhub插入到端口1后,从所述usbhub的属性信息中获取usb3.0对应的端口和usb2.0对应的端口,即端口1下各usb规范对应的端口;在所述usbhub插入到端口2后,从所述usbhub的属性信息中获取usb3.0对应的端口和usb2.0对应的端口,即端口2下各usb规范对应的端口;在usbhub插入到端口3后,从所述usbhub的属性信息中获取usb3.0对应的端口和usb2.0对应的端口,即端口3下各usb规范对应的端口。usbhub插入各端口的顺序不限。

在一实施例中,所述usbhub为usb3.0hub,所述usb端口为usb3.0端口。需要说明的是,如果usb升级到更高版本,比如usb4.0,且兼容usb3.0和usb2.0,或者,只兼容usb3.0,同样可以应用本申请。此时,将usbhub插入到usb端口后,从所述usbhub的属性信息中获取usb4.0对应的端口、usb3.0对应的端口和usb2.0对应的端口,并根据从所述usbhub的属性信息中获取到的信息设置固件中usb4.0对应的端口、usb3.0对应的端口和usb2.0对应的端口,使得固件中各usb规范对应的端口与从所述usbhub的属性信息中获取到的各usb规范对应的端口一致。

在一实施例中,在步骤102之后,还包括步骤103:运行微软认证中usb相关的测试项。

本发明一实施例提供一种通用串行总线端口映射关系获取方法,包括:

在usbhub(集线器)插入到usb端口后,从所述usbhub的属性信息中获取不同usb规范对应的端口。

如图2所示,本发明一实施例提供一种通用串行总线端口适配装置,包括:

映射关系获取模块201,用于在usbhub插入到usb端口后,从所述usbhub的属性信息中获取不同usb规范对应的端口;

适配模块202,用于设置固件中不同usb规范对应的端口,分别与所述映射关系获取模块获取的不同usb规范对应的端口一致。

在一实施例中,所述不同usb规范对应的端口包括:usb3.0对应的端口和usb2.0对应的端口。

在一实施例中,所述映射关系获取模块201在usbhub插入到usb端口后,从所述usbhub的属性信息中获取不同usb规范对应的端口包括:在所述usbhub插入到不同usb端口后,从所述usbhub的属性信息中获取每个usb端口下不同usb规范对应的端口。

在一实施例中,所述usbhub为usb3.0hub,所述usb端口为usb3.0端口。

在一实施例中,所述usb端口适配装置还包括测试模块203,所述测试模块203用于运行微软认证中usb相关的测试项。

下面通过具体实施例进一步说明本申请。

如图3所述,本实施例提供的通用串行总线端口适配方法包括:

步骤301,进入windows操作系统,打开设备管理器,在usb3.0hub插入到某个usb3.0的端口,右键“genericsuperspeedusbhub”(即usb3.0)和“genericusbhub”(即usb2.0),开启对应的“属性”窗口,即“genericsuperspeedusbhubproperties”和“genericusbhubproperties”,如图4所示,可以看到usb3.0对应的port(端口)为0018(图4中的location:port_#0018),usb2.0对应的port为0002(图4中的location:port_#0002),称为硬件层映射关系;

需要说明的是,图4中将usb3.0的属性信息和usb2.0的属性信息组合在同一个图中,实际两个属性信息不是同时显示。另外,上述获取usb3.0和usb2.0对应的端口也可以不通过打开设备管理器的方式,直接从操作系统内部读取usbhub的属性信息。

步骤302,将usb3.0的hub插入其他的usb3.0端口(如果存在),分别记录usb3.0和usb2.0对应的端口,即得到其他的usb3.0端口的硬件层映射关系;

步骤303,设置固件层(即固件中)usb3.0和usb2.0对应的端口,与硬件层的映射关系一一对应,运行微软认证相关的测试项,即可通过usb相关的微软认证。

本实施例提供的方法,可以快速准确的获取xhci接口对应的映射关系,准确定位存在的映射问题,大大缩短了排除故障的时间,推动了微软认证的实现。

领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1