diff mbox series

[v3] kconfig: Add PCIe devices to s390x machines

Message ID 20230705152301.2850086-1-clg@redhat.com
State New
Headers show
Series [v3] kconfig: Add PCIe devices to s390x machines | expand

Commit Message

Cédric Le Goater July 5, 2023, 3:23 p.m. UTC
It is useful to extend the number of available PCI devices to KVM guests
for passthrough scenarios and also to expose these models to a different
(big endian) architecture. Include models for Intel Ethernet adapters
and one USB controller, which all support MSI-X. Devices only supporting
INTx won't work on s390x.

Signed-off-by: Cédric Le Goater <clg@redhat.com>
---

 v3: PCI -> PCI_EXPRESS
 v2: select -> imply
  
 hw/s390x/Kconfig | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

Comments

Matthew Rosato July 5, 2023, 7:32 p.m. UTC | #1
On 7/5/23 11:23 AM, Cédric Le Goater wrote:
> It is useful to extend the number of available PCI devices to KVM guests
> for passthrough scenarios and also to expose these models to a different
> (big endian) architecture. Include models for Intel Ethernet adapters
> and one USB controller, which all support MSI-X. Devices only supporting
> INTx won't work on s390x.
> 
> Signed-off-by: Cédric Le Goater <clg@redhat.com>

Acked-by: Matthew Rosato <mjrosato@linux.ibm.com>

> ---
> 
>  v3: PCI -> PCI_EXPRESS
>  v2: select -> imply
>   
>  hw/s390x/Kconfig | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/s390x/Kconfig b/hw/s390x/Kconfig
> index 5e7d8a2bae8b..ab62c9120545 100644
> --- a/hw/s390x/Kconfig
> +++ b/hw/s390x/Kconfig
> @@ -5,8 +5,11 @@ config S390_CCW_VIRTIO
>      imply VFIO_AP
>      imply VFIO_CCW
>      imply WDT_DIAG288
> -    select PCI
> +    select PCI_EXPRESS
>      select S390_FLIC
>      select SCLPCONSOLE
>      select VIRTIO_CCW
>      select MSI_NONBROKEN
> +    imply E1000E_PCI_EXPRESS
> +    imply IGB_PCI_EXPRESS
> +    imply USB_XHCI_PCI
Philippe Mathieu-Daudé July 5, 2023, 8:25 p.m. UTC | #2
On 5/7/23 17:23, Cédric Le Goater wrote:
> It is useful to extend the number of available PCI devices to KVM guests
> for passthrough scenarios and also to expose these models to a different
> (big endian) architecture. Include models for Intel Ethernet adapters
> and one USB controller, which all support MSI-X. Devices only supporting
> INTx won't work on s390x.
> 
> Signed-off-by: Cédric Le Goater <clg@redhat.com>
> ---
> 
>   v3: PCI -> PCI_EXPRESS
>   v2: select -> imply
>    
>   hw/s390x/Kconfig | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Paolo Bonzini July 6, 2023, 9:38 a.m. UTC | #3
On 7/5/23 17:23, Cédric Le Goater wrote:
> +    imply E1000E_PCI_EXPRESS
> +    imply IGB_PCI_EXPRESS
> +    imply USB_XHCI_PCI

"imply" should only be used whenever the device can be created with the 
front-end/back-end combo command line options, and as far as I can see 
this is not the case here.

You could set CONFIG_PCIE_DEVICES=y in s390-softmmu.mak and make these 
three devices "default y if PCI_DEVICES || PCIE_DEVICES".

Paolo
Philippe Mathieu-Daudé July 6, 2023, 10:03 a.m. UTC | #4
On 6/7/23 11:38, Paolo Bonzini wrote:
> On 7/5/23 17:23, Cédric Le Goater wrote:
>> +    imply E1000E_PCI_EXPRESS
>> +    imply IGB_PCI_EXPRESS
>> +    imply USB_XHCI_PCI
> 
> "imply" should only be used whenever the device can be created with the 
> front-end/back-end combo command line options, and as far as I can see 
> this is not the case here.
> 
> You could set CONFIG_PCIE_DEVICES=y in s390-softmmu.mak and make these 
> three devices "default y if PCI_DEVICES || PCIE_DEVICES".

"default y if PCIE_DEVICES" for *_PCI_EXPRESS.
diff mbox series

Patch

diff --git a/hw/s390x/Kconfig b/hw/s390x/Kconfig
index 5e7d8a2bae8b..ab62c9120545 100644
--- a/hw/s390x/Kconfig
+++ b/hw/s390x/Kconfig
@@ -5,8 +5,11 @@  config S390_CCW_VIRTIO
     imply VFIO_AP
     imply VFIO_CCW
     imply WDT_DIAG288
-    select PCI
+    select PCI_EXPRESS
     select S390_FLIC
     select SCLPCONSOLE
     select VIRTIO_CCW
     select MSI_NONBROKEN
+    imply E1000E_PCI_EXPRESS
+    imply IGB_PCI_EXPRESS
+    imply USB_XHCI_PCI