diff mbox series

[3/4] dma: Let st*_dma() propagate MemTxResult

Message ID 20211218145111.1540114-4-philmd@redhat.com (mailing list archive)
State New, archived
Headers show
Series hw: Have DMA API take MemTxAttrs arg & propagate MemTxResult (part 3) | expand

Commit Message

Philippe Mathieu-Daudé Dec. 18, 2021, 2:51 p.m. UTC
dma_memory_write() returns a MemTxResult type. Do not discard
it, return it to the caller.

Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
 include/sysemu/dma.h | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

Comments

Richard Henderson Dec. 21, 2021, 11:07 p.m. UTC | #1
On 12/18/21 6:51 AM, Philippe Mathieu-Daudé wrote:
> dma_memory_write() returns a MemTxResult type. Do not discard
> it, return it to the caller.
> 
> Signed-off-by: Philippe Mathieu-Daudé<philmd@redhat.com>
> ---
>   include/sysemu/dma.h | 20 ++++++++++----------
>   1 file changed, 10 insertions(+), 10 deletions(-)

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

r~
Cédric Le Goater Dec. 22, 2021, 6:45 a.m. UTC | #2
On 12/18/21 15:51, Philippe Mathieu-Daudé wrote:
> dma_memory_write() returns a MemTxResult type. Do not discard
> it, return it to the caller.
> 
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>

Reviewed-by: Cédric Le Goater <clg@kaod.org>

Thanks,

C.
     

> ---
>   include/sysemu/dma.h | 20 ++++++++++----------
>   1 file changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/include/sysemu/dma.h b/include/sysemu/dma.h
> index b711d390a4f..191cf0b271a 100644
> --- a/include/sysemu/dma.h
> +++ b/include/sysemu/dma.h
> @@ -249,13 +249,13 @@ static inline void dma_memory_unmap(AddressSpace *as,
>           dma_memory_read(as, addr, &val, (_bits) / 8, attrs); \
>           return _end##_bits##_to_cpu(val);                               \
>       }                                                                   \
> -    static inline void st##_sname##_##_end##_dma(AddressSpace *as,      \
> -                                                 dma_addr_t addr,       \
> -                                                 uint##_bits##_t val,   \
> -                                                 MemTxAttrs attrs)      \
> -    {                                                                   \
> -        val = cpu_to_##_end##_bits(val);                                \
> -        dma_memory_write(as, addr, &val, (_bits) / 8, attrs);           \
> +    static inline MemTxResult st##_sname##_##_end##_dma(AddressSpace *as, \
> +                                                        dma_addr_t addr, \
> +                                                        uint##_bits##_t val, \
> +                                                        MemTxAttrs attrs) \
> +    { \
> +        val = cpu_to_##_end##_bits(val); \
> +        return dma_memory_write(as, addr, &val, (_bits) / 8, attrs); \
>       }
>   
>   static inline uint8_t ldub_dma(AddressSpace *as, dma_addr_t addr, MemTxAttrs attrs)
> @@ -266,10 +266,10 @@ static inline uint8_t ldub_dma(AddressSpace *as, dma_addr_t addr, MemTxAttrs att
>       return val;
>   }
>   
> -static inline void stb_dma(AddressSpace *as, dma_addr_t addr,
> -                           uint8_t val, MemTxAttrs attrs)
> +static inline MemTxResult stb_dma(AddressSpace *as, dma_addr_t addr,
> +                                  uint8_t val, MemTxAttrs attrs)
>   {
> -    dma_memory_write(as, addr, &val, 1, attrs);
> +    return dma_memory_write(as, addr, &val, 1, attrs);
>   }
>   
>   DEFINE_LDST_DMA(uw, w, 16, le);
>
diff mbox series

Patch

diff --git a/include/sysemu/dma.h b/include/sysemu/dma.h
index b711d390a4f..191cf0b271a 100644
--- a/include/sysemu/dma.h
+++ b/include/sysemu/dma.h
@@ -249,13 +249,13 @@  static inline void dma_memory_unmap(AddressSpace *as,
         dma_memory_read(as, addr, &val, (_bits) / 8, attrs); \
         return _end##_bits##_to_cpu(val);                               \
     }                                                                   \
-    static inline void st##_sname##_##_end##_dma(AddressSpace *as,      \
-                                                 dma_addr_t addr,       \
-                                                 uint##_bits##_t val,   \
-                                                 MemTxAttrs attrs)      \
-    {                                                                   \
-        val = cpu_to_##_end##_bits(val);                                \
-        dma_memory_write(as, addr, &val, (_bits) / 8, attrs);           \
+    static inline MemTxResult st##_sname##_##_end##_dma(AddressSpace *as, \
+                                                        dma_addr_t addr, \
+                                                        uint##_bits##_t val, \
+                                                        MemTxAttrs attrs) \
+    { \
+        val = cpu_to_##_end##_bits(val); \
+        return dma_memory_write(as, addr, &val, (_bits) / 8, attrs); \
     }
 
 static inline uint8_t ldub_dma(AddressSpace *as, dma_addr_t addr, MemTxAttrs attrs)
@@ -266,10 +266,10 @@  static inline uint8_t ldub_dma(AddressSpace *as, dma_addr_t addr, MemTxAttrs att
     return val;
 }
 
-static inline void stb_dma(AddressSpace *as, dma_addr_t addr,
-                           uint8_t val, MemTxAttrs attrs)
+static inline MemTxResult stb_dma(AddressSpace *as, dma_addr_t addr,
+                                  uint8_t val, MemTxAttrs attrs)
 {
-    dma_memory_write(as, addr, &val, 1, attrs);
+    return dma_memory_write(as, addr, &val, 1, attrs);
 }
 
 DEFINE_LDST_DMA(uw, w, 16, le);