| 54 | } |
| 55 | |
| 56 | static __rte_always_inline uint64_t |
| 57 | rte_read64_relaxed(const volatile void *addr) |
| 58 | { |
| 59 | uint64_t val; |
| 60 | |
| 61 | asm volatile( |
| 62 | "ldr %x[val], [%x[addr]]" |
| 63 | : [val] "=r" (val) |
| 64 | : [addr] "r" (addr)); |
| 65 | return val; |
| 66 | } |
| 67 | |
| 68 | static __rte_always_inline void |
| 69 | rte_write8_relaxed(uint8_t val, volatile void *addr) |