All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joshua Daley <jdaley@linux.ibm.com>
To: Zhuoying Cai <zycai@linux.ibm.com>,
	qemu-devel@nongnu.org, qemu-s390x@nongnu.org
Cc: mst@redhat.com, jrossi@linux.ibm.com, borntraeger@linux.ibm.com,
	jjherne@linux.ibm.com, cohuck@redhat.com, farman@linux.ibm.com,
	mjrosato@linux.ibm.com, pasic@linux.ibm.com, farosas@suse.de,
	lvivier@redhat.com, pbonzini@redhat.com
Subject: Re: [PATCH v3 4/8] pc-bios/s390-ccw: Add support for virtio-net-pci IPL
Date: Tue, 22 Sep 2026 11:35:56 -0400	[thread overview]
Message-ID: <775ca6a7-18b3-437e-992d-cc366daa84d9@linux.ibm.com> (raw)
In-Reply-To: <20260914193438.526407-5-zycai@linux.ibm.com>

FYI, now that Jared's virtio-scsi-pci boot series is merged, this patch does not apply.

On 9/14/2026 3:34 PM, Zhuoying Cai wrote:
> Enable network booting via virtio-net-pci by implementing PCI transport
> support for virtio-net.
> 
> This patch also extends endianness handling for virtio PCI ring operations in
> little-endian to ensure correct behavior on s390x.
> 
> Signed-off-by: Zhuoying Cai <zycai@linux.ibm.com>
> Reviewed-by: Jared Rossi <jrossi@linux.ibm.com>
> ---
>   pc-bios/s390-ccw/main.c       |  1 +
>   pc-bios/s390-ccw/netmain.c    |  9 +++++++-
>   pc-bios/s390-ccw/virtio-net.c | 41 ++++++++++++++++++++++++++++-------
>   pc-bios/s390-ccw/virtio-pci.c | 20 +++++++++++++++++
>   4 files changed, 62 insertions(+), 9 deletions(-)
> 
> diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c
> index 8fc1cbf653..28cab3b411 100644
> --- a/pc-bios/s390-ccw/main.c
> +++ b/pc-bios/s390-ccw/main.c
> @@ -332,6 +332,7 @@ static void ipl_pci_device(void)
>       }
>   
>       switch (vdev->dev_type) {
> +    case VIRTIO_ID_NET:
>       case VIRTIO_ID_BLOCK:
>           if (virtio_setup() == 0) {
>               zipl_load(); /* only return on error */
case VIRTIO_ID_SCSI has been added here

..snip...

> diff --git a/pc-bios/s390-ccw/virtio-pci.c b/pc-bios/s390-ccw/virtio-pci.c
> index f501252c81..fd794bad8f 100644
> --- a/pc-bios/s390-ccw/virtio-pci.c
> +++ b/pc-bios/s390-ccw/virtio-pci.c
> @@ -52,6 +52,10 @@ void virtio_pci_id2type(VDev *vdev, uint16_t device_id)
>       case 0x1001:
>           vdev->dev_type = VIRTIO_ID_BLOCK;
>           break;
> +    case 0x1041:
> +    case 0x1000:
> +        vdev->dev_type = VIRTIO_ID_NET;
> +        break;
>       default:
>           vdev->dev_type = 0;
>       }
some new cases were added here also

> @@ -199,6 +203,17 @@ static int virtio_pci_get_blk_config(void)
>       return rc;
>   }
>   
> +static int virtio_pci_get_net_config(void)
> +{
> +    VirtioNetConfig *cfg = &virtio_get_device()->config.net;
> +
> +    /*
> +     * Byte-swapping is not needed as only the MAC address (byte array)
> +     * is used here. Byte-swap if other fields are added.
> +     */
> +    return vpci_read_flex(d_cap.off, d_cap.bar, cfg, sizeof(VirtioNetConfig));
> +}
> +
>   static int virtio_pci_negotiate(void)
>   {
>       int i, rc;
> @@ -330,6 +345,7 @@ bool virtio_pci_is_supported(VDev *vdev)
>       if (vdev->vendor_id == PCI_VENDOR_VIRTIO) {
>           switch (vdev->dev_type) {
>           case VIRTIO_ID_BLOCK:
> +        case VIRTIO_ID_NET:
>               return true;
>           default:
>               return false;
here also

> @@ -384,6 +400,10 @@ int virtio_pci_setup(VDev *vdev)
>           vdev->cmd_vr_idx = 0;
>           virtio_pci_get_blk_config();
>           break;
> +    case VIRTIO_ID_NET:
> +        vdev->nr_vqs = 2;
> +        virtio_pci_get_net_config();
> +        break;
>       default:
>           puts("Unsupported virtio device");
>           return -ENODEV;
here also


  reply	other threads:[~2026-09-22 15:36 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-14 19:34 [PATCH v3 0/8] s390x: Add support for virtio-net-pci boot device Zhuoying Cai
2026-09-14 19:34 ` [PATCH v3 1/8] pc-bios/s390-ccw: Move CCW net setup to virtio-ccw Zhuoying Cai
2026-09-14 19:34 ` [PATCH v3 2/8] pc-bios/s390-ccw: Add dynamic net header size handling Zhuoying Cai
2026-09-18  7:50   ` Christian Borntraeger
2026-09-21 13:47   ` Jared Rossi
2026-09-22 21:34   ` Matthew Rosato
2026-09-14 19:34 ` [PATCH v3 3/8] pc-bios/s390-ccw: Introduce virtio_tswap helpers Zhuoying Cai
2026-09-14 19:34 ` [PATCH v3 4/8] pc-bios/s390-ccw: Add support for virtio-net-pci IPL Zhuoying Cai
2026-09-22 15:35   ` Joshua Daley [this message]
2026-09-22 15:51     ` Zhuoying Cai
2026-09-22 21:35   ` Matthew Rosato
2026-09-23 13:04     ` Jared Rossi
2026-09-14 19:34 ` [PATCH v3 5/8] hw/virtio: Add "loadparm" property to virtio net PCI devices booting on s390x Zhuoying Cai
2026-09-22 22:03   ` Matthew Rosato
2026-09-14 19:34 ` [PATCH v3 6/8] tests/qtest: Check s390x boot device support in pxe-test.c Zhuoying Cai
2026-09-22 19:34   ` Joshua Daley
2026-09-23  0:27   ` Matthew Rosato
2026-09-14 19:34 ` [PATCH v3 7/8] tests/qtest: Add s390x virtio net PCI test to pxe-test.c Zhuoying Cai
2026-09-22 16:06   ` Joshua Daley
2026-09-22 19:37   ` Joshua Daley
2026-09-23  0:27   ` Matthew Rosato
2026-09-14 19:34 ` [PATCH v3 8/8] tests/functional/s390x: Add tests for virtio net PCI in test_pxelinux.py Zhuoying Cai
2026-09-23  1:01   ` Matthew Rosato
2026-09-22 21:33 ` [PATCH v3 0/8] s390x: Add support for virtio-net-pci boot device Matthew Rosato
2026-09-23  1:01   ` Matthew Rosato
2026-09-23 14:20     ` Zhuoying Cai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=775ca6a7-18b3-437e-992d-cc366daa84d9@linux.ibm.com \
    --to=jdaley@linux.ibm.com \
    --cc=borntraeger@linux.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=farman@linux.ibm.com \
    --cc=farosas@suse.de \
    --cc=jjherne@linux.ibm.com \
    --cc=jrossi@linux.ibm.com \
    --cc=lvivier@redhat.com \
    --cc=mjrosato@linux.ibm.com \
    --cc=mst@redhat.com \
    --cc=pasic@linux.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=zycai@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.