[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH 6/8] ppc4xx: Pass array index to function instead
From: |
David Gibson |
Subject: |
Re: [Qemu-ppc] [PATCH 6/8] ppc4xx: Pass array index to function instead of pointer into the array |
Date: |
Wed, 2 Jan 2019 15:17:31 +1100 |
User-agent: |
Mutt/1.10.1 (2018-07-13) |
On Wed, Jan 02, 2019 at 03:06:38AM +0100, BALATON Zoltan wrote:
> The sdram_set_bcr() function in ppc440_uc.c takes a pointer into an
> array then calculates its index from that. It's simpler and easier to
> just pass the index which simplifies both the function and its callers.
>
> Signed-off-by: BALATON Zoltan <address@hidden>
Reviewed-by: David Gibson <address@hidden>
> ---
> hw/ppc/ppc440_uc.c | 36 ++++++++++++++++--------------------
> 1 file changed, 16 insertions(+), 20 deletions(-)
>
> diff --git a/hw/ppc/ppc440_uc.c b/hw/ppc/ppc440_uc.c
> index e46f59fba8..60dbb35eee 100644
> --- a/hw/ppc/ppc440_uc.c
> +++ b/hw/ppc/ppc440_uc.c
> @@ -564,28 +564,26 @@ static target_ulong sdram_size(uint32_t bcr)
> return size;
> }
>
> -static void sdram_set_bcr(ppc440_sdram_t *sdram,
> - uint32_t *bcrp, uint32_t bcr, int enabled)
> +static void sdram_set_bcr(ppc440_sdram_t *sdram, int i,
> + uint32_t bcr, int enabled)
> {
> - unsigned n = bcrp - sdram->bcr;
> -
> - if (*bcrp & 1) {
> - /* Unmap RAM */
> + if (sdram->bcr[i] & 1) {
> + /* First unmap RAM if enabled */
> memory_region_del_subregion(get_system_memory(),
> - &sdram->containers[n]);
> - memory_region_del_subregion(&sdram->containers[n],
> - &sdram->ram_memories[n]);
> - object_unparent(OBJECT(&sdram->containers[n]));
> + &sdram->containers[i]);
> + memory_region_del_subregion(&sdram->containers[i],
> + &sdram->ram_memories[i]);
> + object_unparent(OBJECT(&sdram->containers[i]));
> }
> - *bcrp = bcr & 0xFFDEE001;
> + sdram->bcr[i] = bcr & 0xFFDEE001;
> if (enabled && (bcr & 1)) {
> - memory_region_init(&sdram->containers[n], NULL, "sdram-containers",
> + memory_region_init(&sdram->containers[i], NULL, "sdram-containers",
> sdram_size(bcr));
> - memory_region_add_subregion(&sdram->containers[n], 0,
> - &sdram->ram_memories[n]);
> + memory_region_add_subregion(&sdram->containers[i], 0,
> + &sdram->ram_memories[i]);
> memory_region_add_subregion(get_system_memory(),
> sdram_base(bcr),
> - &sdram->containers[n]);
> + &sdram->containers[i]);
> }
> }
>
> @@ -595,12 +593,10 @@ static void sdram_map_bcr(ppc440_sdram_t *sdram)
>
> for (i = 0; i < sdram->nbanks; i++) {
> if (sdram->ram_sizes[i] != 0) {
> - sdram_set_bcr(sdram,
> - &sdram->bcr[i],
> - sdram_bcr(sdram->ram_bases[i],
> sdram->ram_sizes[i]),
> - 1);
> + sdram_set_bcr(sdram, i, sdram_bcr(sdram->ram_bases[i],
> + sdram->ram_sizes[i]), 1);
> } else {
> - sdram_set_bcr(sdram, &sdram->bcr[i], 0, 0);
> + sdram_set_bcr(sdram, i, 0, 0);
> }
> }
> }
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
signature.asc
Description: PGP signature
- [Qemu-ppc] [PATCH 4/8] ppc4xx: Use ram_addr_t in ppc4xx_sdram_adjust(), (continued)
[Qemu-ppc] [PATCH 8/8] MAINTAINERS: Add more files to sam460ex, BALATON Zoltan, 2019/01/01
[Qemu-ppc] [PATCH 3/8] ppc4xx: Disable debug logging by default, BALATON Zoltan, 2019/01/01
[Qemu-ppc] [PATCH 6/8] ppc4xx: Pass array index to function instead of pointer into the array, BALATON Zoltan, 2019/01/01
- Re: [Qemu-ppc] [PATCH 6/8] ppc4xx: Pass array index to function instead of pointer into the array,
David Gibson <=
[Qemu-ppc] [PATCH 7/8] sam460ex: Fix support for memory larger than 1GB, BALATON Zoltan, 2019/01/01
[Qemu-ppc] [PATCH 2/8] sam460ex: Clean up SPD EEPROM creation, BALATON Zoltan, 2019/01/01
[Qemu-ppc] [PATCH 1/8] smbus: Add a helper to generate SPD EEPROM data, BALATON Zoltan, 2019/01/01