[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 04/16] register: Add support for decoding informa
From: |
Alistair Francis |
Subject: |
[Qemu-devel] [PATCH v3 04/16] register: Add support for decoding information |
Date: |
Fri, 29 Jan 2016 17:00:52 -0800 |
From: Peter Crosthwaite <address@hidden>
Allow defining of optional address decoding information in register
definitions. This is useful for clients that want to associate
registers with specific addresses.
Signed-off-by: Peter Crosthwaite <address@hidden>
Signed-off-by: Alistair Francis <address@hidden>
---
V3:
- Remove unused flags option
include/hw/register.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/include/hw/register.h b/include/hw/register.h
index 285d4a3..307a880 100644
--- a/include/hw/register.h
+++ b/include/hw/register.h
@@ -54,6 +54,11 @@ typedef struct RegisterAccessError {
* allowing this function to modify the value before return to the client.
*/
+#define REG_DECODE_READ (1 << 0)
+#define REG_DECODE_WRITE (1 << 1)
+#define REG_DECODE_EXECUTE (1 << 2)
+#define REG_DECODE_RW (REG_DECODE_READ | REG_DECODE_WRITE)
+
struct RegisterAccessInfo {
const char *name;
uint64_t ro;
@@ -71,6 +76,10 @@ struct RegisterAccessInfo {
void (*post_write)(RegisterInfo *reg, uint64_t val);
uint64_t (*post_read)(RegisterInfo *reg, uint64_t val);
+
+ struct {
+ hwaddr addr;
+ } decode;
};
/**
--
2.5.0
- [Qemu-devel] [PATCH v3 00/16] data-driven device registers, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 01/16] memory: Allow subregions to not be printed by info mtree, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 02/16] register: Add Register API, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 04/16] register: Add support for decoding information,
Alistair Francis <=
- [Qemu-devel] [PATCH v3 03/16] register: Add Memory API glue, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 05/16] register: Define REG and FIELD macros, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 07/16] register: Add block initialise helper, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 06/16] register: QOMify, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 08/16] bitops: Add ONES macro, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 10/16] xilinx_zynq: add devcfg to machine model, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 11/16] qdev: Define qdev_get_gpio_out, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 09/16] dma: Add Xilinx Zynq devcfg device model, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 12/16] qdev: Add qdev_pass_all_gpios API, Alistair Francis, 2016/01/29
- [Qemu-devel] [PATCH v3 13/16] irq: Add opaque setter routine, Alistair Francis, 2016/01/29