On 2/27/19 12:28 PM, Alex Bennée wrote:
> Markus Armbruster <arm...@redhat.com> writes:
> 
>> pflash_cfi01_register() takes a size in bytes, a block size in bytes
>> and a number of blocks.  mips_malta_init() passes BIOS_SIZE, 65536,
>> FLASH_SIZE >> 16.  Actually consistent only because BIOS_SIZE (defined
>> in include/hw/mips/bios.h as (4 * MiB)) matches FLASH_SIZE (defined
>> locally as 0x400000).  Confusing all the same.
>>
>> Pass FLASH_SIZE instead of BIOS_SIZE.
>>
>> There are more uses of BIOS_SIZE, but I don't sufficiently understand
>> them to attempt cleanup.
>>
>> Cc: Aurelien Jarno <aurel...@aurel32.net>
>> Cc: Aleksandar Rikalo <arik...@wavecomp.com>
>> Signed-off-by: Markus Armbruster <arm...@redhat.com>
>> ---
>>  hw/mips/mips_malta.c | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/hw/mips/mips_malta.c b/hw/mips/mips_malta.c
>> index 172ee033af..c2a5c65a24 100644
>> --- a/hw/mips/mips_malta.c
>> +++ b/hw/mips/mips_malta.c
>> @@ -1269,12 +1269,12 @@ void mips_malta_init(MachineState *machine)
>>      if (dinfo) {
>>          printf("Register parallel flash %d size " TARGET_FMT_lx " at "
>>                 "addr %08llx '%s' %x\n",
>> -               fl_idx, bios_size, FLASH_ADDRESS,
>> +               fl_idx, FLASH_SIZE, FLASH_ADDRESS,
> 
> bios_size == FLASH_SIZE at this point, but is then overwritten later in
> the function *if* the flash is loaded (and not already set via a dinfo).
> I'd say you could move bios_size down to were it's used but then you
> confused the byte swapping machinery which expects something to be set.
> 
> All that said these changes so far are not wrong:
> 
> Reviewed-by: Alex Bennée <alex.ben...@linaro.org>

I reworked Markus patch and sent as a new series:
https://lists.gnu.org/archive/html/qemu-devel/2019-03/msg01149.html
but forgot to Cc you, and forgot your R-b :/

> 
> 
>>                 blk_name(dinfo->bdrv), fl_sectors);
>>      }
>>  #endif
>>      fl = pflash_cfi01_register(FLASH_ADDRESS, NULL, "mips_malta.bios",
>> -                               BIOS_SIZE,
>> +                               FLASH_SIZE,
>>                                 dinfo ? blk_by_legacy_dinfo(dinfo) : NULL,
>>                                 65536, fl_sectors,
>>                                 4, 0x0000, 0x0000, 0x0000, 0x0000, be);
> 
> 
> --
> Alex Bennée
> 

Reply via email to