diff mbox

[edk2,wave,3,15/15] ArmVirtPkg: include Virtio10Dxe from OvmfPkg

Message ID 1457960012-29481-16-git-send-email-lersek@redhat.com
State Superseded
Headers show

Commit Message

Laszlo Ersek March 14, 2016, 12:53 p.m. UTC
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Laszlo Ersek <lersek@redhat.com>

---

Notes:
    Ard, can you please regression-test the RNG for me? Thanks!

 ArmVirtPkg/ArmVirtQemu.dsc       | 1 +
 ArmVirtPkg/ArmVirtQemuKernel.dsc | 1 +
 ArmVirtPkg/ArmVirtQemu.fdf       | 1 +
 ArmVirtPkg/ArmVirtQemuKernel.fdf | 1 +
 4 files changed, 4 insertions(+)

-- 
1.8.3.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Ard Biesheuvel March 21, 2016, 10:14 a.m. UTC | #1
On 14 March 2016 at 13:53, Laszlo Ersek <lersek@redhat.com> wrote:
> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> Contributed-under: TianoCore Contribution Agreement 1.0

> Signed-off-by: Laszlo Ersek <lersek@redhat.com>

> ---

>

> Notes:

>     Ard, can you please regression-test the RNG for me? Thanks!

>


For the series/waves:

Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>


and where you need it

Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>


with the caveat that, other than confirming that everything still
works as before, I did not try to confirm that 1.0 capable peripherals
end up being driven in a different way.


>  ArmVirtPkg/ArmVirtQemu.dsc       | 1 +

>  ArmVirtPkg/ArmVirtQemuKernel.dsc | 1 +

>  ArmVirtPkg/ArmVirtQemu.fdf       | 1 +

>  ArmVirtPkg/ArmVirtQemuKernel.fdf | 1 +

>  4 files changed, 4 insertions(+)

>

> diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc

> index fafad7751e6d..2bb491fcfe81 100644

> --- a/ArmVirtPkg/ArmVirtQemu.dsc

> +++ b/ArmVirtPkg/ArmVirtQemu.dsc

> @@ -355,14 +355,15 @@ [Components.common]

>

>    #

>    # PCI support

>    #

>    ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>    OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

> +  OvmfPkg/Virtio10Dxe/Virtio10.inf

>

>    #

>    # Video support

>    #

>    OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {

>      <LibraryClasses>

>        BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf

> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc

> index bfa4dbe9fd8c..b33e96f5d7e8 100644

> --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc

> +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc

> @@ -345,14 +345,15 @@ [Components.common]

>

>    #

>    # PCI support

>    #

>    ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>    OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

> +  OvmfPkg/Virtio10Dxe/Virtio10.inf

>

>    #

>    # Video support

>    #

>    OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {

>      <LibraryClasses>

>        BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf

> diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf

> index ef456539cc62..9d1503cfc7c8 100644

> --- a/ArmVirtPkg/ArmVirtQemu.fdf

> +++ b/ArmVirtPkg/ArmVirtQemu.fdf

> @@ -212,14 +212,15 @@ [FV.FvMain]

>

>    #

>    # PCI support

>    #

>    INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>    INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>    INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

> +  INF OvmfPkg/Virtio10Dxe/Virtio10.inf

>

>    #

>    # Video support

>    #

>    INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf

>    INF OvmfPkg/PlatformDxe/Platform.inf

>

> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf

> index 7491f8042bd7..472e0fe810d4 100644

> --- a/ArmVirtPkg/ArmVirtQemuKernel.fdf

> +++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf

> @@ -230,14 +230,15 @@ [FV.FvMain]

>

>    #

>    # PCI support

>    #

>    INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>    INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>    INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

> +  INF OvmfPkg/Virtio10Dxe/Virtio10.inf

>

>    #

>    # Video support

>    #

>    INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf

>    INF OvmfPkg/PlatformDxe/Platform.inf

>

> --

> 1.8.3.1

>

> _______________________________________________

> edk2-devel mailing list

> edk2-devel@lists.01.org

> https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Laszlo Ersek March 21, 2016, 10:23 a.m. UTC | #2
On 03/21/16 11:14, Ard Biesheuvel wrote:
> On 14 March 2016 at 13:53, Laszlo Ersek <lersek@redhat.com> wrote:

>> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>> Contributed-under: TianoCore Contribution Agreement 1.0

>> Signed-off-by: Laszlo Ersek <lersek@redhat.com>

>> ---

>>

>> Notes:

>>     Ard, can you please regression-test the RNG for me? Thanks!

>>

> 

> For the series/waves:

> 

> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> 

> and where you need it

> 

> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

> 

> with the caveat that, other than confirming that everything still

> works as before, I did not try to confirm that 1.0 capable peripherals

> end up being driven in a different way.


Would you find it more precise if I added your T-b as
"Regression-tested-by"? I sometimes employ that tag myself.

For the testing (of RNG, for example), did you add the QEMU properties

  ,disable-legacy=on,disable-modern=off

? If you didn't add it, then R-t-b is more appropriate. If you did add
it, then T-b is appropriate.

Thank you!
Laszlo

> 

> 

>>  ArmVirtPkg/ArmVirtQemu.dsc       | 1 +

>>  ArmVirtPkg/ArmVirtQemuKernel.dsc | 1 +

>>  ArmVirtPkg/ArmVirtQemu.fdf       | 1 +

>>  ArmVirtPkg/ArmVirtQemuKernel.fdf | 1 +

>>  4 files changed, 4 insertions(+)

>>

>> diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc

>> index fafad7751e6d..2bb491fcfe81 100644

>> --- a/ArmVirtPkg/ArmVirtQemu.dsc

>> +++ b/ArmVirtPkg/ArmVirtQemu.dsc

>> @@ -355,14 +355,15 @@ [Components.common]

>>

>>    #

>>    # PCI support

>>    #

>>    ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>>    OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

>> +  OvmfPkg/Virtio10Dxe/Virtio10.inf

>>

>>    #

>>    # Video support

>>    #

>>    OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {

>>      <LibraryClasses>

>>        BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf

>> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc

>> index bfa4dbe9fd8c..b33e96f5d7e8 100644

>> --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc

>> +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc

>> @@ -345,14 +345,15 @@ [Components.common]

>>

>>    #

>>    # PCI support

>>    #

>>    ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>>    MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>>    OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

>> +  OvmfPkg/Virtio10Dxe/Virtio10.inf

>>

>>    #

>>    # Video support

>>    #

>>    OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {

>>      <LibraryClasses>

>>        BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf

>> diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf

>> index ef456539cc62..9d1503cfc7c8 100644

>> --- a/ArmVirtPkg/ArmVirtQemu.fdf

>> +++ b/ArmVirtPkg/ArmVirtQemu.fdf

>> @@ -212,14 +212,15 @@ [FV.FvMain]

>>

>>    #

>>    # PCI support

>>    #

>>    INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>>    INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>>    INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

>> +  INF OvmfPkg/Virtio10Dxe/Virtio10.inf

>>

>>    #

>>    # Video support

>>    #

>>    INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf

>>    INF OvmfPkg/PlatformDxe/Platform.inf

>>

>> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf

>> index 7491f8042bd7..472e0fe810d4 100644

>> --- a/ArmVirtPkg/ArmVirtQemuKernel.fdf

>> +++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf

>> @@ -230,14 +230,15 @@ [FV.FvMain]

>>

>>    #

>>    # PCI support

>>    #

>>    INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf

>>    INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf

>>    INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf

>> +  INF OvmfPkg/Virtio10Dxe/Virtio10.inf

>>

>>    #

>>    # Video support

>>    #

>>    INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf

>>    INF OvmfPkg/PlatformDxe/Platform.inf

>>

>> --

>> 1.8.3.1

>>

>> _______________________________________________

>> edk2-devel mailing list

>> edk2-devel@lists.01.org

>> https://lists.01.org/mailman/listinfo/edk2-devel


_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Ard Biesheuvel March 21, 2016, 10:29 a.m. UTC | #3
On 21 March 2016 at 11:23, Laszlo Ersek <lersek@redhat.com> wrote:
> On 03/21/16 11:14, Ard Biesheuvel wrote:

>> On 14 March 2016 at 13:53, Laszlo Ersek <lersek@redhat.com> wrote:

>>> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>> Contributed-under: TianoCore Contribution Agreement 1.0

>>> Signed-off-by: Laszlo Ersek <lersek@redhat.com>

>>> ---

>>>

>>> Notes:

>>>     Ard, can you please regression-test the RNG for me? Thanks!

>>>

>>

>> For the series/waves:

>>

>> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>

>> and where you need it

>>

>> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>

>> with the caveat that, other than confirming that everything still

>> works as before, I did not try to confirm that 1.0 capable peripherals

>> end up being driven in a different way.

>

> Would you find it more precise if I added your T-b as

> "Regression-tested-by"? I sometimes employ that tag myself.

>

> For the testing (of RNG, for example), did you add the QEMU properties

>

>   ,disable-legacy=on,disable-modern=off

>

> ? If you didn't add it, then R-t-b is more appropriate. If you did add

> it, then T-b is appropriate.

>


OK, that works, at least from the EDK2 side. From the kernel side, I am getting

[    0.897114] virtio_rng: probe of virtio2 failed with error -2
[    0.975458] virtio_blk: probe of virtio0 failed with error -2

which is unlikely to have anything to do with this series (not using
ACPI, since the ACPI PCI support in the arm64 kernel is not upstream
yet)
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Laszlo Ersek March 21, 2016, 10:38 a.m. UTC | #4
On 03/21/16 11:29, Ard Biesheuvel wrote:
> On 21 March 2016 at 11:23, Laszlo Ersek <lersek@redhat.com> wrote:

>> On 03/21/16 11:14, Ard Biesheuvel wrote:

>>> On 14 March 2016 at 13:53, Laszlo Ersek <lersek@redhat.com> wrote:

>>>> Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>>> Contributed-under: TianoCore Contribution Agreement 1.0

>>>> Signed-off-by: Laszlo Ersek <lersek@redhat.com>

>>>> ---

>>>>

>>>> Notes:

>>>>     Ard, can you please regression-test the RNG for me? Thanks!

>>>>

>>>

>>> For the series/waves:

>>>

>>> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>>

>>> and where you need it

>>>

>>> Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>

>>>

>>> with the caveat that, other than confirming that everything still

>>> works as before, I did not try to confirm that 1.0 capable peripherals

>>> end up being driven in a different way.

>>

>> Would you find it more precise if I added your T-b as

>> "Regression-tested-by"? I sometimes employ that tag myself.

>>

>> For the testing (of RNG, for example), did you add the QEMU properties

>>

>>   ,disable-legacy=on,disable-modern=off

>>

>> ? If you didn't add it, then R-t-b is more appropriate. If you did add

>> it, then T-b is appropriate.

>>

> 

> OK, that works, at least from the EDK2 side.


Great, thank you!

> From the kernel side, I am getting

> 

> [    0.897114] virtio_rng: probe of virtio2 failed with error -2

> [    0.975458] virtio_blk: probe of virtio0 failed with error -2

> 

> which is unlikely to have anything to do with this series (not using

> ACPI, since the ACPI PCI support in the arm64 kernel is not upstream

> yet)


That problem is indeed caused by QEMU. Please see the following in the
wave 3 blurb:

> If you would like to test this series with VirtIo 1.0 devices, patch

> 13 has some instructions about the QEMU command line. If you also want

> to boot Linux guests on them, then you will need a fairly recent (4.2

> or 4.3+) guest kernel, *plus* the following (pending) QEMU bugfix:

> <http://thread.gmane.org/gmane.comp.emulators.qemu/400142/focus=400161>.


The referenced patch ("virtio-pci: call pci reset variant when guest
requests reset") is now upstream (75fd6f13af85), but the branch
containing it was merged only very recently (after I posted these
series): on 2016-03-15. So if your QEMU is older than that, the above
Linux error message is expected.

Thanks again!
Laszlo

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
diff mbox

Patch

diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc
index fafad7751e6d..2bb491fcfe81 100644
--- a/ArmVirtPkg/ArmVirtQemu.dsc
+++ b/ArmVirtPkg/ArmVirtQemu.dsc
@@ -355,14 +355,15 @@  [Components.common]
 
   #
   # PCI support
   #
   ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
   MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
   OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+  OvmfPkg/Virtio10Dxe/Virtio10.inf
 
   #
   # Video support
   #
   OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {
     <LibraryClasses>
       BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc
index bfa4dbe9fd8c..b33e96f5d7e8 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.dsc
+++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc
@@ -345,14 +345,15 @@  [Components.common]
 
   #
   # PCI support
   #
   ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
   MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
   OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+  OvmfPkg/Virtio10Dxe/Virtio10.inf
 
   #
   # Video support
   #
   OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf {
     <LibraryClasses>
       BltLib|OptionRomPkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
index ef456539cc62..9d1503cfc7c8 100644
--- a/ArmVirtPkg/ArmVirtQemu.fdf
+++ b/ArmVirtPkg/ArmVirtQemu.fdf
@@ -212,14 +212,15 @@  [FV.FvMain]
 
   #
   # PCI support
   #
   INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
   INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
   INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+  INF OvmfPkg/Virtio10Dxe/Virtio10.inf
 
   #
   # Video support
   #
   INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
   INF OvmfPkg/PlatformDxe/Platform.inf
 
diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
index 7491f8042bd7..472e0fe810d4 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
+++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
@@ -230,14 +230,15 @@  [FV.FvMain]
 
   #
   # PCI support
   #
   INF ArmVirtPkg/PciHostBridgeDxe/PciHostBridgeDxe.inf
   INF MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
   INF OvmfPkg/VirtioPciDeviceDxe/VirtioPciDeviceDxe.inf
+  INF OvmfPkg/Virtio10Dxe/Virtio10.inf
 
   #
   # Video support
   #
   INF OvmfPkg/QemuVideoDxe/QemuVideoDxe.inf
   INF OvmfPkg/PlatformDxe/Platform.inf