CN112069112B - Uart控制器配置方法和*** - Google Patents

Uart控制器配置方法和*** Download PDF

Info

Publication number
CN112069112B
CN112069112B CN202010923778.5A CN202010923778A CN112069112B CN 112069112 B CN112069112 B CN 112069112B CN 202010923778 A CN202010923778 A CN 202010923778A CN 112069112 B CN112069112 B CN 112069112B
Authority
CN
China
Prior art keywords
target
uart controller
configuration information
uart
attribute
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010923778.5A
Other languages
English (en)
Other versions
CN112069112A (zh
Inventor
李雪峰
刘学
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Loongson Technology Corp Ltd
Original Assignee
Loongson Technology Corp Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Loongson Technology Corp Ltd filed Critical Loongson Technology Corp Ltd
Priority to CN202010923778.5A priority Critical patent/CN112069112B/zh
Publication of CN112069112A publication Critical patent/CN112069112A/zh
Application granted granted Critical
Publication of CN112069112B publication Critical patent/CN112069112B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例提供了一种通用异步收发传输UART控制器配置方法和***,包括:当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置;基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化。本发明实施例可以基于ACIP表实现UART控制器的初始化。

Description

UART控制器配置方法和***
技术领域
本发明涉及计算机技术领域,特别是涉及一种UART控制器配置方法、一种UART控制器配置***、电子设备和存储介质。
背景技术
UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输),简称串口,可以将数据在串行通信与并行通信之间加以转换以进行数据传输,这些传输的数据也被称为UART数据。
其中,UART控制器是控制UART数据的输入、输出的设备,在操作***的内核中,UART控制器的多种属性需要进行初始化,然而目前较少针对UART控制器指定其属性,完成UART控制器的初始化方案。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种UART控制器配置方法和相应的一种UART控制器配置***、电子设备、存储介质。
为了解决上述问题,本发明实施例公开了一种UART控制器配置方法,包括:
当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;
从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置;
基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化。
可选地,当初始化UART控制器时,获取所述目标UART控制器对应的设备标识之前,所述方法还包括:
在ACPI表的DSDT中,基于UART控制器的设备标识确定对应的配置信息;
在所述配置信息中设置所述UART控制器的属性信息。
可选地,在所述配置信息中设置所述UART控制器的属性信息,包括:
在所述配置信息中确定DSD对象;
在所述DSD对象中设置所述UART控制器的属性信息。
可选地,在所述DSD对象中设置所述UART控制器的属性信息,包括:
在所述DSD对象中设置所述UART控制器的时钟频率。
可选地,所述从ACPI表中调取与所述目标设备标识对应的目标配置信息,包括:
从ACPI表的DSDT中,将与所述目标设备标识匹配的所述设备标识对应的配置信息,作为目标配置信息。
可选地,所述基于所述目标配置信息配置所述目标UART控制器的属性信息,包括:
从所述目标配置信息的所述DSD对象中,获取目标属性信息;
将所述目标UART控制器的属性,配置为所述目标属性信息。
可选地,所述属性信息为时钟频率,所述将所述目标UART控制器的属性,配置为所述目标属性信息,包括:
将所述目标UART控制器的时钟频率,配置为所述目标时钟频率。
可选地,在基于所述目标配置信息配置所述目标UART控制器的属性之后,所述方法还包括:
当初始化所述目标UART控制器失败时,调取固定属性信息;将所述目标UART控制器的属性,配置为所述固定属性信息。
可选地,所述属性信息为时钟频率,所述将所述目标UART控制器的属性,配置为所述固定属性信息,包括:将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
本发明实施例还公开了一种UART控制器配置***,包括:
设备标识获取模块,用于当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;
配置信息调取模块,用于从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置;
配置模块,用于基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化。
可选地,所述***还包括:
配置信息确定模块,用于在ACPI表的DSDT中,基于UART控制器的设备标识确定对应的配置信息;
属性设置模块,用于在所述配置信息中设置所述UART控制器的属性信息。
可选地,所述配置信息确定模块,用于在所述配置信息中确定DSD对象;在所述DSD对象中设置所述UART控制器的属性信息。
可选地,所述配置信息确定模块,用于在所述DSD对象中设置所述UART控制器的时钟频率。
可选地,所述配置信息调取模块,用于从ACPI表的DSDT中,将与所述目标设备标识匹配的所述设备标识对应的配置信息,作为目标配置信息。
可选地,所述配置信息调取模块,用于从所述目标配置信息的所述DSD对象中,获取目标属性信息;将所述目标UART控制器的属性,配置为所述目标属性信息。
可选地,所述配置模块,用于将所述目标UART控制器的时钟频率,配置为所述目标时钟频率。
可选地,所述***还包括:切换模块,用于当初始化所述目标UART控制器失败时,调取固定属性信息;将所述目标UART控制器的属性,配置为所述固定属性信息。
可选地,所述切换模块,用于将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
本发明实施例公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的UART控制器配置方法的步骤。
本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的UART控制器配置方法的步骤。
本发明实施例包括以下优点:
在本发明实施例中,当初始化目标UART控制器时,获取目标UART控制器对应的目标设备标识,以从ACPI表中调取与目标设备标识对应的目标配置信息,从而可以基于目标配置信息配置目标UART控制器的时钟频率,完成目标UART控制器的初始化。本发明实施例可以基于高级配置和电源管理接口ACIP表实现UART控制器的初始化,使得UART控制器可以根据指定的属性进行工作,保证了UART控制器的正常工作,且由于只需要在操作***中已有的高级配置和电源管理接口ACIP表上预先配置UART控制器的配置信息然后初始化时调取即可,故而不会造成***额外的负担,保证了***流畅性。
附图说明
图1是本发明的一种UART控制器配置方法实施例的步骤流程图;
图2是本发明的一种UART控制器配置***实施例的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例的UART控制器配置方法和***,在UART控制器初始化流程中,可以通过ACPI表的DSDT中对应的DSD对象,来指定UART控制器的时钟频率,从而实现UART控制器的初始化,UART控制器可以开始正常运行。
参照图1,示出了本发明的一种UART控制器配置方法实施例的步骤流程图,本发明实施例具体可以包括如下步骤:
步骤101,当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识。
在具体实现中,在启动设备时需要对设备进行初始化(注册),比如对UART控制器进行初始化,以使UART控制器能够开始正常运行。其中,设备标识是指的能够用于唯一识别设备的编码或者名称,例如UART控制器的设备标识可以为UART0。
在本发明实施例中,进行初始化操作的UART控制器为目标UART控制器,在确定目标UART控制器时,将获取目标UART控制器对应的目标设备标识。
步骤102,从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置。
其中,ACPI(Advanced Configuration and PowerManagement Interface,高级配置和电源管理接口)是Intel(i386,x86_64,IA64)等平台的标准固件规范,大部分操作***需要从BIOS(Basic Input Output System,基本输入输出***)得到的信息都可以从ACPI得到。具体地,ACPI的信息可以包括:配置信息、ACPI相关设备、底层硬件、电源管理、设备热插拔,ACPI由多个ACPI表组成,这些ACPI表存放在内存中,在需要时可以从内存中获取到所有的ACPI表。
在本发明实施例中,在ACPI表中预先配置所有的UART控制器所分别对应的配置信息。具体地,配置信息可以包括时钟频率、寄存器基地址、寄存器结束地址、控制器包含的管脚数量等属性信息,且配置信息与UART控制器的设备标识绑定,因此在确定需要进行初始化的目标UART控制器时,可以根据目标UART控制器的目标设备标识,从ACIP表中获取与该目标设备标识对应的目标配置信息。
步骤103,基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化。
其中,在获取到目标UART控制器对应的目标配置信息后,就可以基于目标配置信息,对目标UART控制器分配对应的属性,从而完成对于目标UART控制器的初始化。
在本发明实施例中,当初始化目标UART控制器时,获取目标UART控制器对应的目标设备标识,以从ACPI表中调取与目标设备标识对应的目标配置信息,从而可以基于目标配置信息配置目标UART控制器的时钟频率,完成目标UART控制器的初始化。本发明实施例可以基于高级配置和电源管理接口ACIP表实现UART控制器的初始化,使得UART控制器可以根据指定的属性进行工作,保证了UART控制器的正常工作,且由于只需要在操作***中已有的高级配置和电源管理接口ACIP表上预先配置UART控制器的配置信息然后初始化时调取即可,故而不会造成***额外的负担,保证了***流畅性。
在一示例性实施例中,在所述步骤101,当初始化UART控制器时,获取所述目标UART控制器对应的设备标识之前,所述方法还可以包括:在ACPI表的DSDT中,基于UART控制器的设备标识确定对应的配置信息;在所述配置信息中设置所述UART控制器的属性信息。
其中,在ACPI表中有很多的表,其中DSDT(Differentiated System DescriptionTable,***差异描述表)是其中一个最主要的ACPI表,DSDT可以提供关于基本***的执行和配置信息。因此,本发明实施例在ACPI表的DSDT中,可以在各个UART控制器的设备标识所对应的配置信息中,预先设置由用户指定的属性信息。
在上述示例中,在DSDT预先针对各个UART控制器配置了对应的配置信息,使得后续在初始化UART控制器时,可以基于ACPI表中DSDT中的配置信息完成。
在不同的平台,对于初始化启动UART控制器的属性信息可能是不同的,比如龙芯平台上,仅需要对属性信息中的时钟频率进行配置,即可实现对UART控制器的启动,在一示例性实施例中,在所述配置信息中设置所述UART控制器的属性信息,可以包括:在所述配置信息中确定DSD对象;在所述DSD对象中设置所述UART控制器的时钟频率。
其中,在DSDT具有DSD对象(_DSD),基于DSD对象可以实现数据的传递。在本发明实施例中,在DSDT中各个UART控制器的配置信息的DSD对象中,设置该UART控制器对应的属性信息。
在上述示例中,在DSDT的DSD对象预先针对各个UART控制器配置了对应的属性信息,使得后续在初始化UART控制器时,可以基于ACPI表中DSDT中,DSD对象中的配置信息完成。
在一示例性实施例中,在所述DSD对象中设置所述UART控制器的属性信息,包括:在所述DSD对象中设置所述UART控制器的时钟频率。
具体地,UART控制器需要设置时钟频率,用于驱动UART总线传输的数据和速率。然而外部输入的时钟频率是固定的时钟频率,故而无法指定UART控制器所需要的时钟频率,将导致UART控制器无法正常运行。
因此,本发明实施例可以在DSDT的DSD对象预先针对各个UART控制器配置了对应的时钟频率,从而可以在初始化时可以从DSD对象中获取到时钟频率,以对UART控制器进行初始化。
在一个具体示例中,固件需要在DSDT中UART控制器对应的配置信息的_DSD中,指定时钟频率,从而作为内核配置UART控制器的指定时钟频率。具体地,一种DSDT中UART控制器的配置信息如下所示:
Figure BDA0002667622560000071
Figure BDA0002667622560000081
在上述示例中,针对一个UART控制器(UART0),在配置信息中的_DSD中设置了时钟频率属性和对应的时钟频率:clock-frequency:0xXXXX。
在一示例性实施例中,所述步骤102,从ACPI表中调取与所述目标设备标识对应的目标配置信息,可以包括:从ACPI表的DSDT中,将与所述目标设备标识匹配的所述设备标识对应的配置信息,作为目标配置信息。
在本发明实施例中,在获取目标UART控制器的目标设备标识后,可以从ACPI表的DSDT中调取相应的配置信息,作为该目标UART控制器的目标配置信息。在上述示例中,在需要初始化目标UART控制器,只需要基于目标设备标识,即可从DSDT中调取到相应的目标配置信息,数据调取方式简单,易于实现。
在一示例性实施例中,所述步骤103,基于所述目标配置信息配置所述目标UART控制器的属性,可以包括:从所述目标配置信息的所述DSD对象中,获取目标属性信息;将所述目标UART控制器的属性,配置为所述目标目标属性信息。
其中,在调取目标UART控制器的目标配置信息后,可以从目标配置信息中的DSD对象中,进一步获取到目标属性信息,然后对于目标UART控制器中的属性基于目标属性信息进行配置。
在一示例性实施例中,所述属性信息为时钟频率,所述将所述目标UART控制器的属性,配置为所述目标属性信息,包括:将所述目标UART控制器的时钟频率,配置为所述目标时钟频率。
具体地,内核中解析目标UART控制器对应的DSD对象,使用DSD对象中的目标时钟频率,具体为将clock-frequency(时钟频率属性)对应的时钟频率,设置为DSD对象中的目标时钟频率。例如:
device_property_read_u32(&dev->dev,"clock-frequency",uart.port.uartclk)
在一示例性实施例中,在所述步骤103,基于所述目标配置信息配置所述目标UART控制器的属性之后,所述方法还可以包括:当初始化所述目标UART控制器失败时,调取固定属性信息;将所述目标UART控制器的属性,配置为所述固定属性信息。
在具体实现中,基于ACPI表完成了对目标UART控制器的初始化后,就可以在***中正常运行目标UART控制器。但是在实际中,可能由于软件或者硬件方面的原因,导致基于ACPI表无法完成对目标UART控制器的初始化,初始化失败,则可以切换初始化方式,切换为基于调取固定的属性信息,对目标UART控制器的初始化。
在一示例性实施例中,所述将所述目标UART控制器的属性,配置为所述固定属性信息,包括:将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
例如,可以在8250串口驱动初始化代码中,将配置UART控制器的时钟频率设置为固定时钟频率1843200Hz:uart.port.uartclk=1843200。
应用本发明实施例,在基于ACPI表初始化目标UART控制器失败时,将固定的时钟频率作为目标UART控制器的时钟频率,无需重启设备,提升了***的健壮性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图2,示出了本发明的一种UART控制器配置***实施例的结构框图,具体可以包括如下模块:
设备标识获取模块202,用于当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;
配置信息调取模块202,用于从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置;
配置模块203,用于基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化。
在本发明的一个优选实施例中,所述***还包括:
配置信息确定模块,用于在ACPI表的DSDT中,基于UART控制器的设备标识确定对应的配置信息;
属性设置模块,用于在所述配置信息中设置所述UART控制器的属性信息。
在本发明的一个优选实施例中,所述配置信息确定模块,用于在所述配置信息中确定DSD对象;在所述DSD对象中设置所述UART控制器的属性信息。
在本发明的一个优选实施例中,所述配置信息确定模块,用于在所述DSD对象中设置所述UART控制器的时钟频率。
在本发明的一个优选实施例中,所述配置信息调取模块202,用于从ACPI表的DSDT中,将与所述目标设备标识匹配的所述设备标识对应的配置信息,作为目标配置信息。
在本发明的一个优选实施例中,所述配置信息调取模块202,用于从所述目标配置信息的所述DSD对象中,获取目标属性信息;将所述目标UART控制器的属性,配置为所述目标属性信息。
在本发明的一个优选实施例中,所述配置模块203,用于将所述目标UART控制器的时钟频率,配置为所述目标时钟频率。
在本发明的一个优选实施例中,所述***还包括:切换模块,用于当初始化所述目标UART控制器失败时,调取固定属性信息;将所述目标UART控制器的属性,配置为所述固定属性信息。
在本发明的一个优选实施例中,所述切换模块,用于将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
综上可知,在本发明实施例中,当初始化目标UART控制器时,获取目标UART控制器对应的目标设备标识,以从ACPI表中调取与目标设备标识对应的目标配置信息,从而可以基于目标配置信息配置目标UART控制器的时钟频率,完成目标UART控制器的初始化。本发明实施例可以基于高级配置和电源管理接口ACIP表实现UART控制器的初始化,使得UART控制器可以根据指定的属性进行工作,保证了UART控制器的正常工作,且由于只需要在操作***中已有的高级配置和电源管理接口ACIP表上预先配置UART控制器的配置信息然后初始化时调取即可,故而不会造成***额外的负担,保证了***流畅性。
对于***实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例公开了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上UART控制器配置方法实施例所述的步骤。
本发明实施例公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上UART控制器配置方法实施例所述的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、***、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的***。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令***的制造品,该指令***实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种UART控制器配置方法、一种UART控制器配置***、电子设备和存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种通用异步收发传输UART控制器配置方法,其特征在于,应用于具有高级配置和电源管理接口ACPI表的平台,该方法,包括:
在所述ACPI表的***差异描述表DSDT中,基于UART控制器的设备标识确定对应的配置信息;
在所述配置信息中设置所述UART控制器的属性信息;
当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;
从ACPI表的DSDT中,将与所述目标设备标识匹配的所述设备标识对应的配置信息,作为目标配置信息;
基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化;
其中,所述方法还包括:
在所述ACPI表中预先配置所有的UART控制器所分别对应的配置信息。
2.根据权利要求1所述的方法,其特征在于,所述在所述配置信息中设置所述UART控制器的属性信息,包括:
在所述配置信息中确定***差异描述DSD对象;
在所述DSD对象中设置所述UART控制器的属性信息;
所述基于所述目标配置信息配置所述目标UART控制器的属性信息,包括:
从所述目标配置信息的所述DSD对象中,获取目标属性信息;
将所述目标UART控制器的属性,配置为所述目标属性信息。
3.根据权利要求2所述的方法,其特征在于,在所述DSD对象中设置所述UART控制器的属性信息,包括:
在所述DSD对象中设置所述UART控制器的时钟频率,作为目标时钟频率;
所述将所述目标UART控制器的属性,配置为所述目标属性信息,包括:
将所述目标UART控制器的时钟频率,配置为所述目标时钟频率。
4.根据权利要求1-3任一项所述的方法,其特征在于,在基于所述目标配置信息配置所述目标UART控制器的属性之后,所述方法还包括:
当初始化所述目标UART控制器失败时,调取固定属性信息;
将所述目标UART控制器的属性,配置为所述固定属性信息。
5.根据权利要求4所述的方法,其特征在于,所述属性信息为时钟频率,所述固定属性信息为固定时钟频率,所述将所述目标UART控制器的属性,配置为所述固定属性信息,包括:
将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
6.一种UART控制器配置***,其特征在于,应用于具有高级配置和电源管理接口ACPI表的平台,该***包括:
配置信息确定模块,用于在ACPI表的DSDT中,基于UART控制器的设备标识确定对应的配置信息;
属性设置模块,用于在所述配置信息中设置所述UART控制器的属性信息;
设备标识获取模块,用于当初始化目标UART控制器时,获取所述目标UART控制器对应的目标设备标识;
配置信息调取模块,用于从ACPI表中调取与所述目标设备标识对应的目标配置信息;其中,所述目标配置信息为针对所述目标UART控制器在所述ACPI表中预先配置;
配置模块,用于基于所述目标配置信息配置所述目标UART控制器的属性,完成所述目标UART控制器的初始化;
其中,所述***还用于:
在所述ACPI表中预先配置所有的UART控制器所分别对应的配置信息。
7.根据权利要求6所述的***,其特征在于,所述***还包括:切换模块,用于当初始化所述目标UART控制器失败时,调取固定属性信息;将所述目标UART控制器的属性,配置为所述固定属性信息。
8.根据权利要求7所述的***,其特征在于,所述固定属性信息为固定时钟频率,所述切换模块,用于将所述目标UART控制器的时钟频率,配置为所述固定时钟频率。
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至5中任一项所述的UART控制器配置方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的UART控制器配置方法的步骤。
CN202010923778.5A 2020-09-04 2020-09-04 Uart控制器配置方法和*** Active CN112069112B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010923778.5A CN112069112B (zh) 2020-09-04 2020-09-04 Uart控制器配置方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010923778.5A CN112069112B (zh) 2020-09-04 2020-09-04 Uart控制器配置方法和***

Publications (2)

Publication Number Publication Date
CN112069112A CN112069112A (zh) 2020-12-11
CN112069112B true CN112069112B (zh) 2022-08-19

Family

ID=73665901

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010923778.5A Active CN112069112B (zh) 2020-09-04 2020-09-04 Uart控制器配置方法和***

Country Status (1)

Country Link
CN (1) CN112069112B (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060245533A1 (en) * 2005-04-28 2006-11-02 Arad Rostampour Virtualizing UART interfaces
CN101770379B (zh) * 2008-12-31 2013-10-02 北京联想软件有限公司 加载高级配置与电源接口命名空间的方法及计算机***
KR20160120004A (ko) * 2015-04-07 2016-10-17 삼성전자주식회사 시스템 온-칩 및 이를 포함하는 전자 기기
CN106708596B (zh) * 2015-11-13 2020-02-14 华为技术有限公司 一种输入输出虚拟化资源的调整方法及处理器
CN105677345A (zh) * 2016-01-04 2016-06-15 段利平 一种交换机控制方法及装置
CN109614157A (zh) * 2018-12-27 2019-04-12 联想(北京)有限公司 一种***的配置方法、装置和存储介质

Also Published As

Publication number Publication date
CN112069112A (zh) 2020-12-11

Similar Documents

Publication Publication Date Title
US9792441B2 (en) Portable desktop device and method of host computer system hardware recognition and configuration
US9507604B2 (en) Boot method and boot system
WO2017054573A1 (zh) 一种配置方法及装置
JP2016058083A (ja) 複数のbiosデフォルト設定を管理するシステムと方法
CN105488418B (zh) 一种虚拟化平台服务器的可信启动方法及***
CN105824678A (zh) 一种操作***安装方法及装置
CN111124508A (zh) 一种调整网卡pxe启动顺序的方法和装置
CN112527328A (zh) ***克隆方法、装置、电子设备和计算机可读存储介质
CN110119623A (zh) 一种利用tpcm实现固件主动度量的可信主板实现方法
JP2014006726A (ja) コントローラ、電子機器及びusbデバイスの制御方法
EP3137998A1 (en) System and method of loading virtual machines
US10491736B2 (en) Computer system and method thereof for bluetooth data sharing between UEFI firmware and OS
CN112069112B (zh) Uart控制器配置方法和***
CN112069113B (zh) I2c设备配置方法和***
CN111142956B (zh) 一种最大有效负载值的修改方法、***、设备以及介质
CN112069102B (zh) Gpio控制器配置方法和***
CN115495161B (zh) Bios选项修改的生效方法和装置、存储介质
CN110119625A (zh) 一种可信计算方法
US20230273893A1 (en) Method for dynamically modifying pch pcie root port where onboard vga is located
CN115291951A (zh) Uefi启动方法、装置、电子设备以及存储介质
US20030225930A1 (en) Attaching a device driver to multiple logical devices of one physical device
CN110119624A (zh) 一种安全度量方法
CN111142955B (zh) 一种信息处理方法及装置
CN114579198B (zh) 内存芯片的启动方法、装置、计算机设备及存储介质
CN114489852B (zh) 内存芯片的启动方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Applicant after: Loongson Zhongke Technology Co.,Ltd.

Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing

Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant