On 3/5/19 5:42 PM, Markus Armbruster wrote:
> Philippe Mathieu-Daudé <phi...@redhat.com> writes:
> 
>> Hi Markus,
>>
>> On 2/26/19 8:34 PM, Markus Armbruster wrote:
>>> QOMification left parameter @size unused in pflash_cfi01_register()
>>> and pflash_cfi02_register().  Obviously, @size should match
>>> @sector_len and @nb_blocs, i.e. size == sector_len * nb_blocs.  All
>>> callers satisfy this.
>>>
>>> Remove @nb_blocs and compute it from @size and @sector_len.
>>
>> The pflash devices are simplistically modelled has having a single
>> sector size. This is not true for real hw (pflash have different sector
>> sizes). It is however true for the unofficial VirtPFlash device, which
>> doesn't have any spec.
>>
>> The only valid parameter is @size. The @sector_len and @nb_blocs don't
>> match the hardwares. QEMU @sector_len is currently "The biggest
>> sector_size the device has" and QEMU @nb_blocs is really "@size /
>> @sector_len", although it doesn't match the nb_blocs the hardware has.
>>
>> I don't disagree with the patch content, but the description is not
>> accurate. We can indeed drop the @nb_blocs argument because we model an
>> unique sector size, thus we can calculate "@nb_blocs = @size /
>> @sector_len" in the model.
>>
>> With the patch description fixed:
>> Reviewed-by: Philippe Mathieu-Daudé <phi...@redhat.com>
>> Tested-by: Philippe Mathieu-Daudé <phi...@redhat.com>
> 
> Let me try to fix it.
> 
>     Our pflash devices are simplistically modelled has having
>     "num-blocks" sectors of equal size "sector-length".  Real hardware
>     commonly has sectors of different sizes.  How our "sector-length"
>     property is related to the physical device's multiple sector sizes
>     is unclear.
> 
>     Helper functions pflash_cfi01_register() and pflash_cfi02_register()
>     create a pflash device, set properties including "sector-length" and
>     "num-blocks", and realize.  They take parameters @size, @sector_len
>     and @nb_blocs.
> 
>     QOMification left parameter @size unused.  Obviously, @size should
>     match @sector_len and @nb_blocs, i.e. size == sector_len * nb_blocs.
>     All callers satisfy this.
> 
>     Remove @nb_blocs and compute it from @size and @sector_len.
> 
> D'accord?

Oui, parfait!

Reply via email to