qemu-arm
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-arm] [Qemu-devel] [PATCH v5 10/28] hw/block/pflash_cfi02: Extr


From: Alistair Francis
Subject: Re: [Qemu-arm] [Qemu-devel] [PATCH v5 10/28] hw/block/pflash_cfi02: Extract the pflash_data_read() function
Date: Fri, 28 Jun 2019 09:17:05 -0700

On Thu, Jun 27, 2019 at 1:46 PM Philippe Mathieu-Daudé
<address@hidden> wrote:
>
> Extract the code block in a new function, remove a goto statement.
>
> Signed-off-by: Stephen Checkoway <address@hidden>
> Message-Id: <address@hidden>
> Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
> Tested-by: Philippe Mathieu-Daudé <address@hidden>
> [PMD: Extracted from bigger patch, remove the XXX tracing comment]
> Signed-off-by: Philippe Mathieu-Daudé <address@hidden>

Reviewed-by: Alistair Francis <address@hidden>

Alistair

> ---
>  hw/block/pflash_cfi02.c | 24 ++++++++++++++----------
>  1 file changed, 14 insertions(+), 10 deletions(-)
>
> diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c
> index 49afecb921..c079a63880 100644
> --- a/hw/block/pflash_cfi02.c
> +++ b/hw/block/pflash_cfi02.c
> @@ -165,12 +165,23 @@ static void pflash_timer (void *opaque)
>      pfl->cmd = 0;
>  }
>
> +/*
> + * Read data from flash.
> + */
> +static uint64_t pflash_data_read(PFlashCFI02 *pfl, hwaddr offset,
> +                                 unsigned int width)
> +{
> +    uint8_t *p = (uint8_t *)pfl->storage + offset;
> +    uint64_t ret = pfl->be ? ldn_be_p(p, width) : ldn_le_p(p, width);
> +    trace_pflash_data_read(offset, width << 1, ret);
> +    return ret;
> +}
> +
>  static uint32_t pflash_read(PFlashCFI02 *pfl, hwaddr offset,
>                              int width, int be)
>  {
>      hwaddr boff;
>      uint32_t ret;
> -    uint8_t *p;
>
>      ret = -1;
>      /* Lazy reset to ROMD mode after a certain amount of read accesses */
> @@ -194,15 +205,8 @@ static uint32_t pflash_read(PFlashCFI02 *pfl, hwaddr 
> offset,
>      case 0x80:
>          /* We accept reads during second unlock sequence... */
>      case 0x00:
> -    flash_read:
>          /* Flash area read */
> -        p = (uint8_t *)pfl->storage + offset;
> -        if (pfl->be) {
> -            ret = ldn_be_p(p, width);
> -        } else {
> -            ret = ldn_le_p(p, width);
> -        }
> -        trace_pflash_data_read(offset, width << 1, ret);
> +        ret = pflash_data_read(pfl, offset, width);
>          break;
>      case 0x90:
>          /* flash ID read */
> @@ -222,7 +226,7 @@ static uint32_t pflash_read(PFlashCFI02 *pfl, hwaddr 
> offset,
>              }
>              /* Fall through to data read. */
>          default:
> -            goto flash_read;
> +            ret = pflash_data_read(pfl, offset, width);
>          }
>          DPRINTF("%s: ID " TARGET_FMT_plx " %" PRIx32 "\n", __func__, boff, 
> ret);
>          break;
> --
> 2.20.1
>
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]