config_tools: support vUART Tx/Rx buffer size configuration

Introduce an interface to define Tx/Tx buffer size via ACRN config tool.
User can configure under Hypervisor->Advanced Parameters.

Tracked-On: #8644
Signed-off-by: Haiwei Li <haiwei.li@intel.com>
This commit is contained in:
Haiwei Li 2024-07-02 21:22:30 +08:00 committed by acrnsi-robot
parent cc9013541f
commit f47b2b6860
4 changed files with 42 additions and 4 deletions

View File

@ -32,8 +32,8 @@
#include <asm/lib/spinlock.h> #include <asm/lib/spinlock.h>
#include <asm/vm_config.h> #include <asm/vm_config.h>
#define RX_BUF_SIZE 256U #define RX_BUF_SIZE CONFIG_VUART_RX_BUF_SIZE
#define TX_BUF_SIZE 8192U #define TX_BUF_SIZE CONFIG_VUART_TX_BUF_SIZE
#define INVAILD_VUART_IDX 0xFFU #define INVAILD_VUART_IDX 0xFFU
#define COM1_BASE 0x3F8U #define COM1_BASE 0x3F8U

File diff suppressed because one or more lines are too long

View File

@ -124,6 +124,36 @@ If your VM is not a security VM, leave this option unchecked. </xs:documentation
<xs:documentation>Enable the software workaround for Machine Check Error on Page Size Change (erratum in some processor families). For more information about this workaround and affected processors, see this `MCE Avoidance on Page Size Change White Paper &lt;https://www.intel.com/content/www/us/en/developer/articles/troubleshooting/software-security-guidance/technical-documentation/machine-check-error-avoidance-page-size-change.html&gt;`_.</xs:documentation> <xs:documentation>Enable the software workaround for Machine Check Error on Page Size Change (erratum in some processor families). For more information about this workaround and affected processors, see this `MCE Avoidance on Page Size Change White Paper &lt;https://www.intel.com/content/www/us/en/developer/articles/troubleshooting/software-security-guidance/technical-documentation/machine-check-error-avoidance-page-size-change.html&gt;`_.</xs:documentation>
</xs:annotation> </xs:annotation>
</xs:element> </xs:element>
<xs:element name="VUART_RX_BUF_SIZE" default="256">
<xs:annotation acrn:title="vuart rx buffer size (bytes)" acrn:views="advanced"
acrn:errormsg="'required': 'must config the max rx buffer size of vuart in byte'">
<xs:documentation>Specify the maximum rx buffer size of vuart.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:annotation>
<xs:documentation>Integer from 256 to 2560.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:minInclusive value="256" />
<xs:maxInclusive value="2560" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="VUART_TX_BUF_SIZE" default="8192">
<xs:annotation acrn:title="vuart tx buffer size" acrn:views="advanced"
acrn:errormsg="'required': 'must config the max tx buffer size of vuart in byte'">
<xs:documentation>Specify the maximum tx buffer size of vuart.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:annotation>
<xs:documentation>Integer from 8192 to 81920.</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:integer">
<xs:minInclusive value="8192" />
<xs:maxInclusive value="81920" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="RDT" type="RDTType"> <xs:element name="RDT" type="RDTType">
<xs:annotation acrn:title="Intel Resource Director Tech" acrn:views=""> <xs:annotation acrn:title="Intel Resource Director Tech" acrn:views="">
<xs:documentation>Intel Resource Director Technology (RDT) provides cache and memory bandwidth allocation features. The features can be used to improve an application's real-time performance.</xs:documentation> <xs:documentation>Intel Resource Director Technology (RDT) provides cache and memory bandwidth allocation features. The features can be used to improve an application's real-time performance.</xs:documentation>

View File

@ -158,6 +158,14 @@
<xsl:with-param name="key" select="'IVSHMEM_ENABLED'" /> <xsl:with-param name="key" select="'IVSHMEM_ENABLED'" />
<xsl:with-param name="value" select="count(//hv//IVSHMEM/IVSHMEM_REGION[PROVIDED_BY = 'Hypervisor']) > 0" /> <xsl:with-param name="value" select="count(//hv//IVSHMEM/IVSHMEM_REGION[PROVIDED_BY = 'Hypervisor']) > 0" />
</xsl:call-template> </xsl:call-template>
<xsl:call-template name="integer-by-key">
<xsl:with-param name="key" select="'VUART_RX_BUF_SIZE'" />
</xsl:call-template>
<xsl:call-template name="integer-by-key">
<xsl:with-param name="key" select="'VUART_TX_BUF_SIZE'" />
</xsl:call-template>
</xsl:template> </xsl:template>
<xsl:template match="MEMORY"> <xsl:template match="MEMORY">