[PATCH 1/9] virtio: align virtio_config_ops::generation return type with Linux
Sascha Hauer
sha at pengutronix.de
Mon Mar 1 16:29:47 GMT 2021
On Sun, Feb 28, 2021 at 08:08:28PM +0100, Ahmad Fatoum wrote:
> The U-Boot return type for the function differs from Linux. We use
> the Linux API elsewhere, so use it here as well.
>
> Signed-off-by: Ahmad Fatoum <ahmad at a3f.at>
> ---
> drivers/virtio/virtio_mmio.c | 8 +++-----
> include/linux/virtio_config.h | 9 ++++-----
> 2 files changed, 7 insertions(+), 10 deletions(-)
Applied, thanks
Sascha
>
> diff --git a/drivers/virtio/virtio_mmio.c b/drivers/virtio/virtio_mmio.c
> index 821b43871a04..4a689495b8df 100644
> --- a/drivers/virtio/virtio_mmio.c
> +++ b/drivers/virtio/virtio_mmio.c
> @@ -141,16 +141,14 @@ static int virtio_mmio_set_config(struct virtio_device *vdev, unsigned int offse
> return 0;
> }
>
> -static int virtio_mmio_generation(struct virtio_device *vdev, u32 *counter)
> +static u32 virtio_mmio_generation(struct virtio_device *vdev)
> {
> struct virtio_mmio_device *priv = to_virtio_mmio_device(vdev);
>
> if (priv->version == 1)
> - *counter = 0;
> - else
> - *counter = readl(priv->base + VIRTIO_MMIO_CONFIG_GENERATION);
> + return 0;
>
> - return 0;
> + return readl(priv->base + VIRTIO_MMIO_CONFIG_GENERATION);
> }
>
> static int virtio_mmio_get_status(struct virtio_device *vdev)
> diff --git a/include/linux/virtio_config.h b/include/linux/virtio_config.h
> index 5ee0807fb098..3ed7001f4800 100644
> --- a/include/linux/virtio_config.h
> +++ b/include/linux/virtio_config.h
> @@ -49,10 +49,9 @@ struct virtio_config_ops {
> * generation() - config generation counter
> *
> * @vdev: the real virtio device
> - * @counter: the returned config generation counter
> - * @return 0 if OK, -ve on error
> + * @return the config generation counter
> */
> - int (*generation)(struct virtio_device *vdev, u32 *counter);
> + u32 (*generation)(struct virtio_device *vdev);
> /**
> * get_status() - read the status byte
> *
> @@ -311,7 +310,7 @@ static inline void __virtio_cread_many(struct virtio_device *vdev,
> int i;
>
> /* no need to check return value as generation can be optional */
> - vdev->config->generation(vdev, &gen);
> + gen = vdev->config->generation(vdev);
> do {
> old = gen;
>
> @@ -319,7 +318,7 @@ static inline void __virtio_cread_many(struct virtio_device *vdev,
> virtio_get_config(vdev, offset + bytes * i,
> buf + i * bytes, bytes);
>
> - vdev->config->generation(vdev, &gen);
> + gen = vdev->config->generation(vdev);
> } while (gen != old);
> }
>
> --
> 2.30.0
>
>
> _______________________________________________
> barebox mailing list
> barebox at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/barebox
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the barebox
mailing list