+-- On Fri, 5 Jul 2019, Philippe Mathieu-Daudé wrote --+ | +static bool lqspi_accepts(void *opaque, hwaddr addr, | + unsigned size, bool is_write, | + MemTxAttrs attrs) | +{ | + /* | + * From UG1085, Chapter 24 (Quad-SPI controllers): | + * - Writes are ignored | + * - AXI writes generate an external AXI slave error (SLVERR) | + */ | + return !is_write; | +} | + | static uint64_t | lqspi_read(void *opaque, hwaddr addr, unsigned int size) | { | @@ -1225,6 +1237,7 @@ static const MemoryRegionOps lqspi_ops = { | .read = lqspi_read, | .endianness = DEVICE_NATIVE_ENDIAN, | .valid = { | + .accepts = lqspi_accepts, | .min_access_size = 1, | .max_access_size = 4 | }
Looks okay. To confirm, When lqspi_accepts() returns false, guest will see an error/exception? Reviewed-by: Prasad J Pandit <p...@fedoraproject.org> Thank you. -- Prasad J Pandit / Red Hat Product Security Team 47AF CE69 3A90 54AA 9045 1053 DD13 3D32 FE5B 041F