Hi Philippe, On [2019 Jul 05] Fri 17:08:49, Philippe Mathieu-Daudé wrote: > In the next commit we will implement the write_with_attrs() > handler. To avoid using different APIs, convert the read() > handler first. > > Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> > --- > hw/ssi/xilinx_spips.c | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/hw/ssi/xilinx_spips.c b/hw/ssi/xilinx_spips.c > index 8115bb6d46..e80619aece 100644 > --- a/hw/ssi/xilinx_spips.c > +++ b/hw/ssi/xilinx_spips.c > @@ -1202,27 +1202,27 @@ static void lqspi_load_cache(void *opaque, hwaddr > addr) > } > } > > -static uint64_t > -lqspi_read(void *opaque, hwaddr addr, unsigned int size) > +static MemTxResult lqspi_read(void *opaque, hwaddr addr, uint64_t *value, > + unsigned size, MemTxAttrs attrs) > { > - XilinxQSPIPS *q = opaque; > - uint32_t ret; > + XilinxQSPIPS *q = XILINX_QSPIPS(opaque); > > if (addr >= q->lqspi_cached_addr && > addr <= q->lqspi_cached_addr + LQSPI_CACHE_SIZE - 4) { > uint8_t *retp = &q->lqspi_buf[addr - q->lqspi_cached_addr]; > - ret = cpu_to_le32(*(uint32_t *)retp); > - DB_PRINT_L(1, "addr: %08x, data: %08x\n", (unsigned)addr, > - (unsigned)ret); > - return ret; > + *value = cpu_to_le32(*(uint32_t *)retp); > + DB_PRINT_L(1, "addr: %08" HWADDR_PRIx ", data: %08" PRIx64 "\n", > + addr, *value); > } else { > lqspi_load_cache(opaque, addr); > - return lqspi_read(opaque, addr, size); > + lqspi_read(opaque, addr, value, size, attrs);
If you don't want to leave the return value floating you can always keep the 'return' (I'm unsure if coverity will complain about that). Either way: Reviewed-by: Francisco Iglesias <frasse.igles...@gmail.com> > } > + > + return MEMTX_OK; > } > > static const MemoryRegionOps lqspi_ops = { > - .read = lqspi_read, > + .read_with_attrs = lqspi_read, > .endianness = DEVICE_NATIVE_ENDIAN, > .valid = { > .min_access_size = 1, > -- > 2.20.1 >