一种固件升级的方法和主机端装置及系统制造方法及图纸

技术编号:12405292 阅读:99 留言:0更新日期:2015-11-28 19:50
本发明专利技术涉及一种固件升级的方法和主机端装置及系统,该方法包括:主机端通过USB主机控制器驱动操作USB主机控制器检测本地USB接口是否有待升级的客户端插入;若检测到有待升级的客户端插入,主机端通过固件升级应用程序将初始化程序和固件升级程序下载到客户端,初始化程序用于初始化客户端内存,固件升级程序被下载到初始化后的内存中,用于解析并执行从主机端接收的各种命令;主机端通过固件升级应用程序向客户端发送固件烧写命令及固件数据,由客户端收到固件烧写命令及固件数据后,通过客户端上的固件升级程序根据固件烧写命令将固件数据写入存储介质。本发明专利技术可以有效地减低生产成本,并大大提高同一时间的量产数目,提高了生产效率。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种固件升级的方法和主机端装置及系统
技术介绍
目前的平板电脑量产后进行升级的过程中,通常会采用如下方式进行固件升级:I)利用一台Windows PC对多台平板电脑进行固件烧写升级采用Windows PC对平板电脑进行升级,通过向平板电脑发送命令和传送固件升级程序,可以与平板电脑交互获取升级的进度和是否成功信息。但此方式需要装载有Windows系统的PC来参与,因此在工厂的产线上面对成千上万台生产出来的平板电脑的时候,装载有Windows系统的PC数量的多少会限制量产的速度,且配置多台PC的成本也较高。2)利用卡进行固件烧写升级将存储卡插入平板电脑,通过读取和运行存储卡内的固件升级程序进行固件升级,此方式的弊端在于不能实时反映量产的进度和是否成功的信息,量产如果失败无法方便地反馈给生产人员失败的原因等信息。3)利用网络下载固件烧写升级此方式要求被升级的平板电脑必须已经有系统的运行,否则无法连接网络,这对于刚刚生产出来还不带系统固件的平板来说无法做到。且这种方式同样存在升级的过程中无法方便地在另一方的平台工具上显示量产进度信息等问题。
技术实现思路
本专利技术提供一种固件升级的方法和主机端装置及系统,可以提高固件升级的效率。本专利技术提供一种固件升级的方法,包括:主机端通过USB主机控制器驱动操作USB主机控制器检测本地USB接口是否有待升级的客户端插入;若检测到有待升级的客户端插入,主机端通过固件升级应用程序将初始化程序和固件升级程序下载到所述客户端,所述初始化程序用于初始化客户端内存,所述固件升级程序被下载到初始化后的内存中,用于解析并执行从所述主机端接收的各种命令;主机端通过固件升级应用程序向客户端发送固件烧写命令及固件数据,由所述客户端接收到固件烧写命令及固件数据后,通过所述客户端上的固件升级程序根据固件烧写命令将固件数据写入存储介质。优选地,所述主机端通过固件升级应用程序将初始化程序和固件升级程序下载到所述客户端之后,通过固件升级应用程序向客户端发送固件烧写命令及固件数据之前,该方法还包括:主机端通过固件升级应用程序向客户端发送检测扫描命令,由所述客户端接收到所述检测扫描命令后,通过所述客户端上的固件升级程序根据检测扫描命令扫描获得硬件信息并反馈给主机端。优选地,主机端检测到有待升级的客户端插入,具体包括:若USB主机控制器检测到有新设备插入时,通过USB主机控制器驱动通知USB内核,由USB内核通过USB主机控制器驱动操作USB主机控制器获取新设备的设备信息,并与USB量产设备驱动程序所存储的设备信息相匹配,若匹配成功,则确定本地USB接口有待升级的客户端插入;所述USB内核通知USB量产设备驱动程序有待升级的客户端插入,USB量产设备驱动程序通知Linux用户层,由Linux用户层通知Java层的固件升级应用程序。优选地,主机端通过固件升级应用程序将初始化程序和固件升级程序下载到客户端上,具体包括:Java层的固件升级应用程序通过JNI接口向Linux用户层的固件升级应用程序发送下载命令、初始化程序和固件升级程序;Linux用户层的固件升级应用程序向USB量产设备驱动程序发送下载命令、初始化程序和固件升级程序,所述USB量产设备驱动程序对下载命令进行解析后,通知USB内核通过USB主机控制器驱动操作USB主机控制器将初始化程序和固件升级程序发送到待升级的客户端。优选地,主机端通过固件升级应用程序向客户端发送固件烧写命令及固件数据,具体包括:Java层的固件升级应用程序通过JNI接口向Linux用户层的固件升级应用程序发送固件烧写命令及固件数据;Linux用户层的固件升级应用程序向USB量产设备驱动程序发送固件烧写命令及固件数据,所述USB量产设备驱动程序对固件烧写命令进行解析后,通知USB内核通过USB主机控制器驱动操作USB主机控制器将固件烧写命令及固件数据发送到待升级的客户端。优选地,主机端通过固件升级应用程序向客户端发送固件烧写命令及固件数据之后,还包括:所述主机端通过固件升级应用程序接收所述客户端在烧写完成后返回的是否烧写成功的反馈信息,并将所述反馈信息进行显示。本专利技术提供一种固件升级的主机端装置,包括:检测单元,用于通过USB主机控制器驱动操作USB主机控制器检测本地USB接口是否有待升级的客户端插入;下载单元,用于若检测到有待升级的客户端插入,通过固件升级应用程序将初始化程序和固件升级程序下载到所述客户端,所述初始化程序用于初始化客户端内存,所述固件升级程序被下载到初始化后的内存中,用于解析并执行从所述主机端接收的各种命令;升级单元,用于通过固件升级应用程序向客户端发送固件烧写命令及固件数据,由所述客户端接收到固件烧写命令及固件数据后,通过所述客户端上的固件升级程序根据固件烧写命令将固件数据写入存储介质。优选地,该主机端装置还包括:命令单元,用于在下载单元通过固件升级应用程序将初始化程序和固件升级程序下载到所述客户端之后,在升级单元通过固件升级应用程序向客户端发送固件烧写命令及固件数据之前,通过固件升级应用程序向客户端发送检测扫描命令,由所述客户端接收到所述检测扫描命令后,通过所述客户端上的固件升级程序根据检测扫描命令扫描获得硬件信息并反馈给主机端。优选地,检测单元检测到有待升级的客户端插入,具体包括:若由USB主机控制器检测到有新设备插入时,通过USB主机控制器驱动通知USB内核,由USB内核通过USB主机控制器驱动操作USB主机控制器获取新设备的设备信息,并与USB量产设备驱动程序所存储的设备信息相匹配,若匹配成功,则确定本地USB接口有待升级的客户端插入;由所述USB内核通知USB量产设备驱动程序有待升级的客户端插入,USB量产设备驱动程序通知Linux用户层,由Linux用户层通知Java层的固件升级应用程序。优选地,下载单元通过固件升级应用程序将初始化程序和固件升级程序下载到客户端上,具体包括:由Java层的固件升级应用程序通过JNI接口向Linux用户层的固件升级应用程序发送下载命令、初始化程序和固件升级程序;由Linux用户层的固件升级应用程序向USB量产设备驱动程序发送下载命令、初始化程序和固件升级程序,所述USB量产设备驱动程序对下载命令进行解析后,通知USB内核通过USB主机控制器驱动操作USB主机控制器将初始化程序和固件升级程序发送到待升级的客户端。优选地,升级单元通过固件升级应用程序向客户端发送固件烧写命令及固件数据,具体包括:由Java层的固件升级应用程序通过JNI接口向Linux用户层的固件升级应用程序发送固件烧写命令及固件数据;由Linux用户层的固件升级应用程序向USB量产设备驱动程序发送固件烧写命令及固件数据,所述USB量产设备驱动程序对固件烧写命令进行解析后,通知USB内核通过USB主机控制器驱动操作USB主机控制器将固件烧写命令及固件数据发送到待升级的客户端。本专利技术还提供一种固件升级的系统,包括:主机端,通过USB数据线连接客户端,用于通过USB主机控制器驱动操作USB主机控制器检测本地USB接口是否有待升级的客户端插入;若检测到有待升级的客户端插入,主机端通过固件升级应用程序将初始化程序本文档来自技高网...

【技术保护点】
一种固件升级的方法,其特征在于,包括:主机端通过USB主机控制器驱动操作USB主机控制器检测本地USB接口是否有待升级的客户端插入;若检测到有待升级的客户端插入,主机端通过固件升级应用程序将初始化程序和固件升级程序下载到所述客户端,所述初始化程序用于初始化客户端内存,所述固件升级程序被下载到初始化后的内存中,用于解析并执行从所述主机端接收的各种命令;主机端通过固件升级应用程序向客户端发送固件烧写命令及固件数据,由所述客户端接收到固件烧写命令及固件数据后,通过所述客户端上的固件升级程序根据固件烧写命令将固件数据写入存储介质。

【技术特征摘要】

【专利技术属性】
技术研发人员:侯景昆
申请(专利权)人:炬芯珠海科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1