一种引脚控制虚拟化方法、装置及电子设备制造方法及图纸

技术编号:37682947 阅读:15 留言:0更新日期:2023-05-28 09:36
本公开涉及一种引脚控制虚拟化方法、装置及电子设备,该方法应用于基于虚拟机监视器hypervisor构建的主操作系统和客户机操作系统中,所述方法包括:所述客户机操作系统在驱动的设备树脚本DTS中配置引脚控制器的状态和配置信息;在对所述引脚控制器状态执行预设操作时,在所述客户机操作系统端对虚拟的引脚控制器状态执行所述预设操作,并向所述主操作系统发送状态名字和配置信息;根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端对所述引脚控制器状态执行所述预设操作,并向所述客户机操作系统返回执行结果。通过引脚控制虚拟化方法,使得主操作系统和客户机操作系统都可以访问PIN CONTROLLER硬件,从而达到配置引脚的目的。从而达到配置引脚的目的。从而达到配置引脚的目的。

【技术实现步骤摘要】
一种引脚控制虚拟化方法、装置及电子设备


[0001]本公开涉及硬件控制领域,具体地,涉及一种引脚控制虚拟化方法、装置及电子设备。

技术介绍

[0002]虚拟化使得在同一个SOC(System on Chip,系统级芯片)上可以运行多个操作系统。比如基于虚拟机监视器hypervisor构建的系统,如图1所示,先是直接在SOC上运行一个hypervisor,然后在hypervisor的帮助下启动主操作系统HOST OS(如基于linux),HOST OS可以直接访问SOC上面的硬件资源。最后在hypervisor的帮助下启动一个或者多个客户机操作系统GUEST OS。
[0003]PIN CONTROLLER是一种引脚控制硬件,用于控制SOC上的引脚状态,比如控制一个(或者一组)引脚的多路复用,驱动强度,偏置等。Linux中的pinctrl子系统负责管理SOC上的引脚状态。但是,PIN CONTROLLER只能给HOST OS使用,GUEST OS没有办法直接配置引脚状态。

技术实现思路

[0004]本公开的目的是提供一种引脚控制虚拟化方法、装置及电子设备,用于解决现有技术中存在PIN CONTROLLER只能给HOST OS使用,GUEST OS没有办法直接配置引脚状态的技术问题。
[0005]为了实现上述目的,本公开第一方面提供一种引脚控制虚拟化方法,应用于基于虚拟机监视器hypervisor构建的主操作系统和客户机操作系统中,所述方法包括:
[0006]所述客户机操作系统在驱动的设备树脚本DTS中配置引脚控制器的状态和配置信息;
[0007]在对所述引脚控制器状态执行预设操作时,在所述客户机操作系统端对虚拟的引脚控制器状态执行所述预设操作,并向所述主操作系统发送状态名字和配置信息;
[0008]根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端对所述引脚控制器状态执行所述预设操作,并向所述客户机操作系统返回执行结果。
[0009]可选的,所述预设操作包括创建引脚控制器状态、配置引脚控制器状态和删除引脚控制器状态。
[0010]可选的,在创建所述引脚控制器状态时,所述方法包括:
[0011]在所述客户机操作系统端创建虚拟的引脚控制器状态,并向所述主操作系统发送状态名字和配置信息;
[0012]所述主操作系统根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端创建引脚控制器状态,并向所述客户机操作系统返回创建结果。
[0013]可选的,在配置所述引脚控制器状态时,所述方法包括:
[0014]所述客户机操作系统将所述引脚控制器的当前状态设置为不可用,并向所述主操
作系统发送所述当前状态的状态名字;
[0015]所述主操作系统获取到所述客户机操作系统发送的状态名字后,将所述引脚控制器的当前状态设置为不可用;
[0016]在所述客户机操作系统端配置虚拟的引脚控制器新状态,并向所述主操作系统发送所述引脚控制器新状态的名字;
[0017]所述主操作系统获取到所述引脚控制器新状态的名字后,在所述主操作系统端将所述引脚控制器配置成所述新状态,并向所述客户机操作系统返回配置结果。
[0018]可选的,在删除所述引脚控制器状态信息时,所述方法包括:
[0019]在所述客户机操作系统端删除虚拟的所述引脚控制器状态,并向所述主操作系统发送需要删除的状态名字;
[0020]所述主操作系统获取到需要删除的状态名字后,删除所述状态名字对应的引脚控制器状态。
[0021]本公开第二方面提供一种引脚控制虚拟化装置,应用于基于虚拟机监视器hypervisor构建的主操作系统和客户机操作系统中,所述装置包括:
[0022]配置模块,用于在驱动的设备树脚本DTS中配置引脚控制器的状态和配置信息;
[0023]客户机操作模块,用于在对所述引脚控制器状态执行预设操作时,在所述客户机操作系统端对虚拟的引脚控制器状态执行所述预设操作,并向所述主操作系统发送状态名字和配置信息;
[0024]主机操作模块,用于根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端对所述引脚控制器状态执行所述预设操作,并向所述客户机操作系统返回执行结果。
[0025]本公开第三方面提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述方法的步骤。
[0026]本公开第四方面提供一种电子设备,包括:
[0027]存储器,其上存储有计算机程序;
[0028]处理器,用于执行所述存储器中的所述计算机程序,以实现第一方面所述方法的步骤。
[0029]本公开实施例的方案中,通过所述客户机操作系统在驱动的设备树脚本DTS中配置引脚控制器的状态和配置信息;在对所述引脚控制器状态执行预设操作时,在所述客户机操作系统端对虚拟的引脚控制器状态执行所述预设操作,并向所述主操作系统发送状态名字和配置信息,使得所述主操作系统根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端对所述引脚控制器状态执行所述预设操作,并向所述客户机操作系统返回执行结果,从而解决现有技术中存在的PIN CONTROLLER只能给HOST OS使用,GUEST OS没有办法直接配置引脚状态的技术问题,使得GUEST OS也能正常通过linux的pinctrl框架配置引脚状态,便于底层驱动程序开发和移植。
[0030]本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
[0031]附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具
体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
[0032]图1是根据一示例性实施例示出的hypervisor构建的系统的示意图;
[0033]图2是根据一示例性实施例示出的引脚控制虚拟化方法的流程图;
[0034]图3是根据一示例性实施例示出的创建Pinctrl状态的流程图;
[0035]图4是根据一示例性实施例示出的配置Pinctrl状态的流程图;
[0036]图5是根据一示例性实施例示出的引脚控制虚拟化装置的框图。
具体实施方式
[0037]以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
[0038]在本说明书中,引脚控制器PIN CONTROLLER也称为Pinctrl,引脚控制器状态也称为Pinctrl状态,客户机操作系统也称为GUEST OS,主操作系统也称为HOST OS。
[0039]本公开实施例提供了一种引脚控制虚拟化方法,应用于基于虚拟机监视器hypervisor构建的主操作系统和客户机操作系统中,如图2所示,所述方法包括以下步骤。
[0040]步本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种引脚控制虚拟化方法,应用于基于虚拟机监视器hypervisor构建的主操作系统和客户机操作系统中,其特征在于,所述方法包括:所述客户机操作系统在驱动的设备树脚本DTS中配置引脚控制器的状态和配置信息;在对所述引脚控制器状态执行预设操作时,在所述客户机操作系统端对虚拟的引脚控制器状态执行所述预设操作,并向所述主操作系统发送状态名字和配置信息;根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端对所述引脚控制器状态执行所述预设操作,并向所述客户机操作系统返回执行结果。2.如权利要求1所述的方法,其特征在于,所述预设操作包括创建引脚控制器状态、配置引脚控制器状态和删除引脚控制器状态。3.如权利要求1所述的方法,其特征在于,在创建所述引脚控制器状态时,所述方法包括:在所述客户机操作系统端创建虚拟的引脚控制器状态,并向所述主操作系统发送状态名字和配置信息;所述主操作系统根据所述客户机操作系统发送的状态名字和配置信息,在所述主操作系统端创建引脚控制器状态,并向所述客户机操作系统返回创建结果。4.如权利要求3所述的方法,其特征在于,在配置所述引脚控制器状态时,所述方法包括:所述客户机操作系统将所述引脚控制器的当前状态设置为不可用,并向所述主操作系统发送所述当前状态的状态名字;所述主操作系统获取到所述客户机操作系统发送的状态名字后,将所述引脚控制器的当前状态设置为不可用;在所述客户机操作系统端配置虚拟的引脚控制器新状态,并向所述主操作系统发送所述引脚控制器新状态的名字...

【专利技术属性】
技术研发人员:请求不公布姓名
申请(专利权)人:中瓴智行成都科技有限公司
类型:发明
国别省市:

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

1