diff --git a/doc/tutorials/nvmx_virtualization.rst b/doc/tutorials/nvmx_virtualization.rst index 3b9e34a14..eacdf8dce 100644 --- a/doc/tutorials/nvmx_virtualization.rst +++ b/doc/tutorials/nvmx_virtualization.rst @@ -179,28 +179,12 @@ with these settings: the PCI-vUART for the Service VM. Refer to :ref:`Enable vUART Configurations ` for more details about VUART configuration. - - Edit ``vm.legacy_vuart.base`` in ``legacy_vuart 0`` and set it to ``INVALID_LEGACY_PIO`` - - - Edit :option:`vm.console_vuart.base` in ``console_vuart 0`` and set it to ``PCI_VUART`` + - Set :option:`vm.console_vuart` to ``PCI`` .. code-block:: xml - :emphasize-lines: 3, 14 + :emphasize-lines: 1 - - VUART_LEGACY_PIO - INVALID_COM_BASE - COM1_IRQ - - - VUART_LEGACY_PIO - INVALID_COM_BASE - COM2_IRQ - 1 - 1 - - - PCI_VUART - + PCI #. Remove CPU sharing VMs diff --git a/misc/config_tools/data/cfl-k700-i7/hybrid.xml b/misc/config_tools/data/cfl-k700-i7/hybrid.xml index 844fedf04..a8dcc765a 100644 --- a/misc/config_tools/data/cfl-k700-i7/hybrid.xml +++ b/misc/config_tools/data/cfl-k700-i7/hybrid.xml @@ -92,14 +92,7 @@ - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n n @@ -132,14 +125,7 @@ quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -158,14 +144,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -182,14 +161,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/cfl-k700-i7/hybrid_rt.xml b/misc/config_tools/data/cfl-k700-i7/hybrid_rt.xml index 85e2ae14f..30d5003b8 100644 --- a/misc/config_tools/data/cfl-k700-i7/hybrid_rt.xml +++ b/misc/config_tools/data/cfl-k700-i7/hybrid_rt.xml @@ -105,14 +105,7 @@ idle=poll irqaffinity=0 no_ipi_broadcast=1 reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -151,14 +144,7 @@ root=/dev/nvme0n1p3 rw rootwait console=ttyS0,115200n8 ignore_loglevel no_timer_check - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -181,14 +167,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -207,14 +186,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/cfl-k700-i7/partitioned.xml b/misc/config_tools/data/cfl-k700-i7/partitioned.xml index 4ed1602f0..a3f4548f6 100644 --- a/misc/config_tools/data/cfl-k700-i7/partitioned.xml +++ b/misc/config_tools/data/cfl-k700-i7/partitioned.xml @@ -95,14 +95,7 @@ rw rootwait root=/dev/sda3 console=ttyS0 noxsave nohpet no_timer_check ignore_loglevel log_buf_len=16M consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -143,14 +136,7 @@ consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/cfl-k700-i7/shared.xml b/misc/config_tools/data/cfl-k700-i7/shared.xml index f2a79e781..04a36b88e 100644 --- a/misc/config_tools/data/cfl-k700-i7/shared.xml +++ b/misc/config_tools/data/cfl-k700-i7/shared.xml @@ -77,14 +77,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -105,14 +98,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 POST_LAUNCHED_VM @@ -130,14 +116,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -156,14 +135,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -182,14 +154,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -208,14 +173,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -234,14 +192,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/generic_board/hybrid.xml b/misc/config_tools/data/generic_board/hybrid.xml index 3e2556557..76f082a22 100644 --- a/misc/config_tools/data/generic_board/hybrid.xml +++ b/misc/config_tools/data/generic_board/hybrid.xml @@ -92,14 +92,7 @@ - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n n @@ -134,14 +127,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -160,14 +146,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -184,14 +163,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/generic_board/hybrid_rt.xml b/misc/config_tools/data/generic_board/hybrid_rt.xml index a1161a3b2..fa15a6a7d 100644 --- a/misc/config_tools/data/generic_board/hybrid_rt.xml +++ b/misc/config_tools/data/generic_board/hybrid_rt.xml @@ -115,14 +115,7 @@ rw rootwait root=/dev/sda3 no_ipi_broadcast=1 console=ttyS0 noxsave nohpet no_timer_check ignore_loglevel consoleblank=0 tsc=reliable clocksource=tsc x2apic_phys processor.max_cstate=0 intel_idle.max_cstate=0 intel_pstate=disable mce=ignore_ce audit=0 isolcpus=nohz,domain,1 nohz_full=1 rcu_nocbs=1 nosoftlockup idle=poll irqaffinity=0 reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -154,14 +147,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -182,14 +168,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -206,14 +185,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/generic_board/partitioned.xml b/misc/config_tools/data/generic_board/partitioned.xml index 8f41a5a89..884abffb2 100644 --- a/misc/config_tools/data/generic_board/partitioned.xml +++ b/misc/config_tools/data/generic_board/partitioned.xml @@ -95,14 +95,7 @@ rw rootwait root=/dev/sda3 console=ttyS0 noxsave nohpet no_timer_check ignore_loglevel log_buf_len=16M consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -143,14 +136,7 @@ consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/generic_board/shared.xml b/misc/config_tools/data/generic_board/shared.xml index a7315ae86..9a1eb183f 100644 --- a/misc/config_tools/data/generic_board/shared.xml +++ b/misc/config_tools/data/generic_board/shared.xml @@ -84,14 +84,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -112,14 +105,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -139,14 +125,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -165,14 +144,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -191,14 +163,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -217,14 +182,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -243,14 +201,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/nuc11tnbi5/hybrid.xml b/misc/config_tools/data/nuc11tnbi5/hybrid.xml index 07acc415d..a87e64e02 100644 --- a/misc/config_tools/data/nuc11tnbi5/hybrid.xml +++ b/misc/config_tools/data/nuc11tnbi5/hybrid.xml @@ -92,14 +92,7 @@ - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n n @@ -134,14 +127,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -160,14 +146,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -184,14 +163,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/nuc11tnbi5/partitioned.xml b/misc/config_tools/data/nuc11tnbi5/partitioned.xml index 9d62e33ae..4ed9de844 100644 --- a/misc/config_tools/data/nuc11tnbi5/partitioned.xml +++ b/misc/config_tools/data/nuc11tnbi5/partitioned.xml @@ -95,14 +95,7 @@ rw rootwait root=/dev/sda3 console=ttyS0 noxsave nohpet no_timer_check ignore_loglevel log_buf_len=16M consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -143,14 +136,7 @@ consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/nuc11tnbi5/shared.xml b/misc/config_tools/data/nuc11tnbi5/shared.xml index e217f94e6..fe21e7f7b 100644 --- a/misc/config_tools/data/nuc11tnbi5/shared.xml +++ b/misc/config_tools/data/nuc11tnbi5/shared.xml @@ -96,14 +96,7 @@ rw rootwait root=/dev/nvme0n1p3 console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -124,14 +117,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -151,14 +137,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -177,14 +156,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -203,14 +175,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -229,14 +194,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -255,14 +213,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/qemu/shared.xml b/misc/config_tools/data/qemu/shared.xml index 0356ab141..fd456ee71 100644 --- a/misc/config_tools/data/qemu/shared.xml +++ b/misc/config_tools/data/qemu/shared.xml @@ -76,14 +76,7 @@ root=/dev/vda1 earlyprintk=serial,ttyS0,115200n8 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check ignore_loglevel ignore_loglevel no_timer_check intel_iommu=off tsc=reliable - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -102,13 +95,6 @@ 0 0 - - VUART_LEGACY_PIO - INVALID_COM_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + None diff --git a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/hybrid.xml b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/hybrid.xml index e16d18563..7fd96a817 100644 --- a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/hybrid.xml +++ b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/hybrid.xml @@ -92,14 +92,7 @@ - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n n @@ -135,14 +128,7 @@ i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -161,14 +147,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -185,14 +164,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/partitioned.xml b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/partitioned.xml index 1e6a4b86f..9da5af0db 100644 --- a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/partitioned.xml +++ b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/partitioned.xml @@ -95,14 +95,7 @@ rw rootwait root=/dev/sda3 console=ttyS0 noxsave nohpet no_timer_check ignore_loglevel log_buf_len=16M consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -143,14 +136,7 @@ consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/shared.xml b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/shared.xml index c9ca45004..c65bcf46b 100644 --- a/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/shared.xml +++ b/misc/config_tools/data/tgl-vecow-spc-7100-Corei7/shared.xml @@ -97,14 +97,7 @@ i915.nuclear_pageflip=1 swiotlb=131072 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -126,14 +119,7 @@ 0 PRIO_LOW - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -154,14 +140,7 @@ 0 PRIO_LOW - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/whl-ipc-i5/hybrid.xml b/misc/config_tools/data/whl-ipc-i5/hybrid.xml index 188c94fe5..1b3211616 100644 --- a/misc/config_tools/data/whl-ipc-i5/hybrid.xml +++ b/misc/config_tools/data/whl-ipc-i5/hybrid.xml @@ -84,14 +84,7 @@ - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -124,14 +117,7 @@ root=/dev/sda3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -150,14 +136,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/whl-ipc-i5/hybrid_rt.xml b/misc/config_tools/data/whl-ipc-i5/hybrid_rt.xml index b92c56534..193c123f7 100644 --- a/misc/config_tools/data/whl-ipc-i5/hybrid_rt.xml +++ b/misc/config_tools/data/whl-ipc-i5/hybrid_rt.xml @@ -104,14 +104,7 @@ reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -143,14 +136,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -171,14 +157,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -195,14 +174,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/whl-ipc-i5/partitioned.xml b/misc/config_tools/data/whl-ipc-i5/partitioned.xml index d6d050ba3..575707044 100644 --- a/misc/config_tools/data/whl-ipc-i5/partitioned.xml +++ b/misc/config_tools/data/whl-ipc-i5/partitioned.xml @@ -89,14 +89,7 @@ reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -137,14 +130,7 @@ consoleblank=0 tsc=reliable reboot=acpi - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/data/whl-ipc-i5/sdc.xml b/misc/config_tools/data/whl-ipc-i5/sdc.xml index 32dfd56ba..3cc996f00 100644 --- a/misc/config_tools/data/whl-ipc-i5/sdc.xml +++ b/misc/config_tools/data/whl-ipc-i5/sdc.xml @@ -62,14 +62,7 @@ root=/dev/sda3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -90,14 +83,7 @@ 0 0 - - VUART_LEGACY_PIO - INVALID_COM_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + None n diff --git a/misc/config_tools/data/whl-ipc-i5/shared.xml b/misc/config_tools/data/whl-ipc-i5/shared.xml index 38a8c7276..551ef564b 100644 --- a/misc/config_tools/data/whl-ipc-i5/shared.xml +++ b/misc/config_tools/data/whl-ipc-i5/shared.xml @@ -76,14 +76,7 @@ root=/dev/nvme0n1p3 rw rootwait console=tty0 console=ttyS0 consoleblank=0 no_timer_check quiet loglevel=3 i915.nuclear_pageflip=1 - - VUART_LEGACY_PIO - SERVICE_VM_COM1_BASE - SERVICE_VM_COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 @@ -104,14 +97,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 POST_LAUNCHED_VM @@ -129,14 +115,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -155,14 +134,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -181,14 +153,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -207,14 +172,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n @@ -233,14 +191,7 @@ 0 0 - - VUART_LEGACY_PIO - COM1_BASE - COM1_IRQ - - - INVALID_PCI_BASE - + COM Port 1 n diff --git a/misc/config_tools/scenario_config/upgrader.py b/misc/config_tools/scenario_config/upgrader.py index f3df2dc96..8866f861d 100755 --- a/misc/config_tools/scenario_config/upgrader.py +++ b/misc/config_tools/scenario_config/upgrader.py @@ -231,13 +231,48 @@ class ScenarioUpgrader(ScenarioTransformer): self.move_data_by_xpath(".//BUILD_TYPE", xsd_element_node, xml_parent_node, new_nodes) return False - def move_legacy_vuart(self, xsd_element_node, xml_parent_node, new_nodes): - # Preserve the legacy vuart for console only. + def move_console_vuart(self, xsd_element_node, xml_parent_node, new_nodes): + new_node = etree.Element(xsd_element_node.get("name")) + new_node.text = "None" + new_nodes.append(new_node) + + vm_load_order = next(iter(self.get_from_old_data(xml_parent_node, ".//load_order/text()")), None) legacy_vuart = self.get_from_old_data(xml_parent_node, ".//legacy_vuart[@id = '0']") - if legacy_vuart: - new_nodes.append(legacy_vuart[0]) - for child in legacy_vuart[0].iter(): - self.old_data_nodes.discard(child) + legacy_vuart = legacy_vuart[0] if legacy_vuart else None + console_vuart = self.get_from_old_data(xml_parent_node, ".//console_vuart") + console_vuart = console_vuart[0] if console_vuart else None + + if legacy_vuart is None and console_vuart is None: + return False + + if console_vuart is not None and console_vuart.text: + new_node.text = console_vuart.text + elif legacy_vuart is not None and legacy_vuart.find("type").text == "VUART_LEGACY_PIO": + vuart_base = legacy_vuart.find("base").text + if vuart_base == "CONFIG_COM_BASE": + # The new schema does not support arbitrary configuration of console vUART bases. Report the data as lost. + return False + elif vuart_base.endswith("COM1_BASE"): + new_node.text = "COM Port 1" + elif vuart_base.endswith("COM2_BASE"): + new_node.text = "COM Port 2" + elif vuart_base.endswith("COM3_BASE"): + new_node.text = "COM Port 3" + elif vuart_base.endswith("COM4_BASE"): + new_node.text = "COM Port 4" + + if vm_load_order == "SERVICE_VM": + logging.info(f"The console virtual UART of the service VM is moved to {new_node.text}. Please double check the console= command line option in the OS bootargs of the service VM.") + elif console_vuart is not None and console_vuart.find("base") != "INVALID_PCI_BASE": + new_node.text = "PCI" + + if legacy_vuart is not None: + for n in legacy_vuart.iter(): + self.old_data_nodes.discard(n) + if console_vuart is not None: + for n in console_vuart.iter(): + self.old_data_nodes.discard(n) + return False def move_vuart_connections(self, xsd_element_node, xml_parent_node, new_nodes): @@ -369,7 +404,7 @@ class ScenarioUpgrader(ScenarioTransformer): "security_vm": partialmethod(move_guest_flag, "GUEST_FLAG_SECURITY_VM"), "BUILD_TYPE": move_build_type, - "legacy_vuart": move_legacy_vuart, + "console_vuart": move_console_vuart, "vuart_connections": move_vuart_connections, "IVSHMEM": move_ivshmem, "vm_type": move_vm_type, diff --git a/misc/config_tools/schema/VMtypes.xsd b/misc/config_tools/schema/VMtypes.xsd index dddb0a5dd..937dfd8fa 100644 --- a/misc/config_tools/schema/VMtypes.xsd +++ b/misc/config_tools/schema/VMtypes.xsd @@ -177,6 +177,17 @@ must exactly match the module tag in the GRUB multiboot cmdline. + + + + + + + + + + + vCOM type @@ -209,141 +220,6 @@ must exactly match the module tag in the GRUB multiboot cmdline. - - - vCOM type - - - - - - - - - - A string with either ``SERVICE_VM_COM1_BASE``, -``SERVICE_VM_COM2_BASE``, ``SERVICE_VM_COM3_BASE``, ``SERVICE_VM_COM4_BASE``, -``COM1_BASE``, ``COM2_BASE``, ``COM3_BASE``, ``COM4_BASE``, -``CONFIG_COM_BASE``, or indicating it's disabled with ``INVALID_COM_BASE``. - - - - - - - - - - - - - - - - - - A string with either ``SERVICE_VM_COM1_IRQ``, -``SERVICE_VM_COM2_IRQ``, ``SERVICE_VM_COM3_IRQ``, ``SERVICE_VM_COM4_IRQ``, -``COM1_IRQ``, ``COM2_IRQ``, ``COM3_IRQ``, ``COM4_IRQ``, -``CONFIG_COM_IRQ`` or ``0``. If ``0`` is set, the vuart will -use polling mode. - - - - - - - - - - - - - - - - - - - - vUART (COM) type; only legacy PIO mode is -supported. - - - - - vUART (COM) enabling switch. Enable by exposing its COM_BASE -(e.b., ``SERVICE_VM_COM1_BASE`` for Service VM); disable by returning -``INVALID_COM_BASE``. - - - - - vCOM IRQ. - - - - - COM2 is used for VM communications. When it is enabled, specify which -target VM the current VM connects to. - - - - - Target vUART ID to which the vCOM2 connects. - - - - - - - - - A string with ``PCI_VUART`` or indicating its -disabled using ``INVALID_PCI_BASE``. - - - - - - - - - - - - Console vUART (A.K.A PCI based vUART) enabling switch. -Enable by specifying PCI_VUART; disable by specifying -``INVALID_PCI_BASE``. - - - - - - - - - - - Communication vUART (A.K.A PCI based vUART) enabling switch. -Enable by specifying PCI_VUART; disable by specifying -``INVALID_PCI_BASE``. - - - - - specify which target VM the current VM connects to. - - - - - Target vUART ID to which the ``communication_vuart`` connects. - - - - - - diff --git a/misc/config_tools/schema/config.xsd b/misc/config_tools/schema/config.xsd index 3069173d3..5b1252b43 100644 --- a/misc/config_tools/schema/config.xsd +++ b/misc/config_tools/schema/config.xsd @@ -400,13 +400,7 @@ Refer SDM 17.19.2 for details, and use with caution. argument and memory. - - - Specify the vUART (aka COM) with the vUART ID by its ``id`` attribute. -Refer to :ref:`vuart_config` for detailed vUART settings. - - - + Specify the console vUART (aka PCI based vUART) with the vUART ID by its ``id`` attribute. diff --git a/misc/config_tools/static_allocators/intx.py b/misc/config_tools/static_allocators/intx.py index b8316cfed..d407c6055 100644 --- a/misc/config_tools/static_allocators/intx.py +++ b/misc/config_tools/static_allocators/intx.py @@ -50,51 +50,6 @@ def create_vuart_irq_node(etree, vm_id, load_order, vuart_id, irq): common.append_node(f"./legacy_vuart[@id = '{vuart_id}']/irq", irq, allocation_vm_node) -def assign_legacy_vuart_irqs(vm_node, legacy_vuart_id, irq_list): - legacy_vuart_node_irq_text = common.get_node(f"legacy_vuart[@id = '{legacy_vuart_id}']/irq/text()", vm_node) - legacy_vuart_irq = '' - if legacy_vuart_node_irq_text == 'COM1_IRQ' or legacy_vuart_node_irq_text == 'SERVICE_VM_COM1_IRQ' \ - or legacy_vuart_node_irq_text == 'COM3_IRQ' or legacy_vuart_node_irq_text == 'SERVICE_VM_COM3_IRQ': - legacy_vuart_irq = '4' - if legacy_vuart_irq in irq_list: - remove_irq(irq_list, legacy_vuart_irq) - elif legacy_vuart_node_irq_text == 'COM2_IRQ' or legacy_vuart_node_irq_text == 'SERVICE_VM_COM2_IRQ' \ - or legacy_vuart_node_irq_text == 'COM4_IRQ' or legacy_vuart_node_irq_text == 'SERVICE_VM_COM4_IRQ': - legacy_vuart_irq = '3' - if legacy_vuart_irq in irq_list: - remove_irq(irq_list, legacy_vuart_irq) - elif legacy_vuart_node_irq_text == '0': - legacy_vuart_irq = '0' - else: - legacy_vuart_irq = alloc_irq(irq_list) - return legacy_vuart_irq - -def alloc_legacy_vuart_irqs(board_etree, scenario_etree, allocation_etree): - native_ttys = lib.lib.get_native_ttys() - hv_debug_console = lib.lib.parse_hv_console(scenario_etree) - - vm_node_list = scenario_etree.xpath("//vm") - for vm_node in vm_node_list: - load_order = common.get_node("./load_order/text()", vm_node) - irq_list = get_native_valid_irq() if load_order == "SERVICE_VM" else [f"{d}" for d in list(range(1,15))] - legacy_vuart_id_list = vm_node.xpath("legacy_vuart[base != 'INVALID_COM_BASE']/@id") - legacy_vuart_irq = '' - for legacy_vuart_id in legacy_vuart_id_list: - if legacy_vuart_id == '0' and load_order == "SERVICE_VM": - if hv_debug_console in native_ttys.keys(): - if native_ttys[hv_debug_console]['irq'] < LEGACY_IRQ_MAX: - legacy_vuart_irq = native_ttys[hv_debug_console]['irq'] - if legacy_vuart_irq in irq_list: - remove_irq(irq_list, legacy_vuart_irq) - else: - legacy_vuart_irq = assign_legacy_vuart_irqs(vm_node, legacy_vuart_id, irq_list) - else: - raise lib.error.ResourceError(f"{hv_debug_console} is not in the native environment! The ttyS available are: {native_ttys.keys()}") - else: - legacy_vuart_irq = assign_legacy_vuart_irqs(vm_node, legacy_vuart_id, irq_list) - - create_vuart_irq_node(allocation_etree, common.get_node("./@id", vm_node), load_order, legacy_vuart_id, legacy_vuart_irq) - def alloc_vuart_connection_irqs(board_etree, scenario_etree, allocation_etree): native_ttys = lib.lib.get_native_ttys() hv_debug_console = lib.lib.parse_hv_console(scenario_etree) @@ -250,6 +205,5 @@ def alloc_device_irqs(board_etree, scenario_etree, allocation_etree): pt_intx_node.text += f" ({irq}, {virq})" def fn(board_etree, scenario_etree, allocation_etree): - alloc_legacy_vuart_irqs(board_etree, scenario_etree, allocation_etree) alloc_vuart_connection_irqs(board_etree, scenario_etree, allocation_etree) alloc_device_irqs(board_etree, scenario_etree, allocation_etree) diff --git a/misc/config_tools/static_allocators/pio.py b/misc/config_tools/static_allocators/pio.py index c8ad24b38..dde56e5fc 100644 --- a/misc/config_tools/static_allocators/pio.py +++ b/misc/config_tools/static_allocators/pio.py @@ -9,63 +9,10 @@ import sys, os, logging sys.path.append(os.path.join(os.path.dirname(os.path.abspath(__file__)), '..', 'library')) import common, lib.lib, lib.error -def alloc_pio(pio_list): - try: - base = pio_list[0] - remove_pio(pio_list, base) - return base - except IndexError as e: - raise lib.error.ResourceError("Cannot allocate a pio base, the available pio base list:{}, {}".format(e, pio_list)) - -def remove_pio(pio_list, base): - try: - pio_list.remove(base) - except ValueError as e: - raise ValueError("Cannot remove a pio base:{} from the available pio base list:{}, {}". format(base, e, pio_list)) from e - -def assign_legacy_vuart_io_port(vm_node, legacy_vuart_id): - legacy_vuart_base = "" - legacy_vuart_node_base_text = common.get_node(f"./legacy_vuart[@id = '{legacy_vuart_id}']/base/text()", vm_node) - if legacy_vuart_node_base_text == 'COM1_BASE' or legacy_vuart_node_base_text == 'SERVICE_VM_COM1_BASE': - legacy_vuart_base = '0x3F8' - elif legacy_vuart_node_base_text == 'COM2_BASE' or legacy_vuart_node_base_text == 'SERVICE_VM_COM2_BASE': - legacy_vuart_base = '0x2F8' - elif legacy_vuart_node_base_text == 'COM3_BASE' or legacy_vuart_node_base_text == 'SERVICE_VM_COM3_BASE': - legacy_vuart_base = '0x3E8' - elif legacy_vuart_node_base_text == 'COM4_BASE' or legacy_vuart_node_base_text == 'SERVICE_VM_COM4_BASE': - legacy_vuart_base = '0x2E8' - return legacy_vuart_base - -def create_vuart_base_node(etree, vm_id, vuart_id, vuart_base): - vm_node = common.get_node(f"/acrn-config/vm[@id = '{vm_id}']", etree) - if vm_node is None: - vm_node = common.append_node("/acrn-config/vm", None, etree, id = vm_id) - vuart_node = common.get_node(f"./legacy_vuart[@id = '{vuart_id}']", vm_node) - if vuart_node is None: - vuart_node = common.append_node("./legacy_vuart", None, vm_node, id = vuart_id) - if common.get_node(f"./base", vuart_node) is None: - common.append_node(f"./base", vuart_base, vuart_node) - def fn(board_etree, scenario_etree, allocation_etree): - native_ttys = lib.lib.get_native_ttys() - hv_debug_console = lib.lib.parse_hv_console(scenario_etree) - - vm_node_list = scenario_etree.xpath("//vm") - for vm_node in vm_node_list: - load_order = common.get_node("./load_order/text()", vm_node) - legacy_vuart_base = "" - legacy_vuart_id_list = vm_node.xpath("legacy_vuart[base != 'INVALID_COM_BASE']/@id") - for legacy_vuart_id in legacy_vuart_id_list: - if legacy_vuart_id == '0' and load_order == "SERVICE_VM": - if hv_debug_console in native_ttys.keys(): - if native_ttys[hv_debug_console]['type'] == "portio": - legacy_vuart_base = native_ttys[hv_debug_console]['base'] - else: - legacy_vuart_base = assign_legacy_vuart_io_port(vm_node, legacy_vuart_id) - else: - raise lib.error.ResourceError(f"{hv_debug_console} is not in the native environment! The ttyS available are: {native_ttys.keys()}") - else: - legacy_vuart_base = assign_legacy_vuart_io_port(vm_node, legacy_vuart_id) - - if legacy_vuart_base != "": - create_vuart_base_node(allocation_etree, common.get_node("./@id", vm_node), legacy_vuart_id, legacy_vuart_base) + # With the console vUART explicitly specified as COM port and communication vUART with explicit I/O port base + # addresses, there is no need to allocate any port I/O for now. + # + # This allocator is preserved here, though, as the implicit vUART connections for system-level power management, + # which has to be port I/O based and are to be added later, will need I/O port allocation again. + pass diff --git a/misc/config_tools/xforms/vm_configurations.c.xsl b/misc/config_tools/xforms/vm_configurations.c.xsl index 001b0e592..a989ae991 100644 --- a/misc/config_tools/xforms/vm_configurations.c.xsl +++ b/misc/config_tools/xforms/vm_configurations.c.xsl @@ -102,7 +102,7 @@ - + @@ -246,23 +246,35 @@ - - - - - - - - - - - - - - - }, - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + }, +