Hi Stefan,
thank you for your review!
>
> There is asymmetry here: uicr_read() doesn't check offset before
> indexing the array but uicr_write() does. Either the check is
> necessary or it's not.
>
> I think this check isn't necessary since the memory region is sized
> appropriately:
>
> memory_region_init_io(&s->uicr, NULL, &uicr_ops, s, "nrf51_soc.uicr",
> sizeof(s->uicr_content));
>
>> +static void nrf51_nvm_reset(DeviceState *dev)
>> +{
>> + Nrf51NVMState *s = NRF51_NVM(dev);
>> +
>> + memset(s->empty_page, 0xFF, s->page_size);
>> +}
>
> Can this be done in ->realize()? Nothing changes the contents of
> empty_page, so a ->reset() function seems unnecessary.
>
Addressed in next revision of this patch.
Steffen