Igor Mitsyanko <i.mitsya...@samsung.com> wrote: > Convert variables descr, src and dest from type target_phys_addr_t to > uint32_t, > use VMSTATE_UINT32 instead of VMSTATE_UINTTL for these variables. > We can do it safely because: > 1) pxa2xx has 32-bit physical address; > 2) rest of the code in this file treats these variables as uint32_t; > 3) we shouldn't have used VMSTATE_UINTTL in the first place because this macro > is for target_ulong type (which can be different from target_phys_addr_t).
This is an incompatible change, we need to bump the version. Looking at pxa2xx_dma_descriptor_fetch() it looks like your change is enough: uint32_t desc[4]; .... s->chan[ch].descr = desc[DDADR]; s->chan[ch].src = desc[DSADR]; s->chan[ch].dest = desc[DTADR]; s->chan[ch].cmd = desc[DCMD]; i.e. we always asign from a 32bit register. In general change is not valid. As I don't know if this device can appear as 64bit hardware, I don't know if the change is valid and let it to the ARM gurus. Later, Juan.