summaryrefslogtreecommitdiff
path: root/src/umr.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/umr.h')
-rw-r--r--src/umr.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/umr.h b/src/umr.h
index a318ec7..bf33a27 100644
--- a/src/umr.h
+++ b/src/umr.h
@@ -122,6 +122,13 @@ struct umr_gfx_config {
unsigned external_rev_id;
};
+struct umr_pci_config {
+ unsigned device;
+ unsigned revision;
+ unsigned subsystem_device;
+ unsigned subsystem_vendor;
+};
+
struct umr_fw_config {
char name[16];
uint32_t feature_version,
@@ -165,6 +172,7 @@ struct umr_asic {
struct {
struct umr_gfx_config gfx;
struct umr_fw_config fw[UMR_MAX_FW];
+ struct umr_pci_config pci;
} config;
struct {
int mmio,
@@ -183,6 +191,10 @@ struct umr_asic {
int region;
} pci;
struct umr_options options;
+ struct {
+ struct umr_ip_block **iplist;
+ struct umr_reg **reglist;
+ } mmio_accel;
};
struct umr_wave_status {
@@ -387,7 +399,8 @@ struct umr_asic *umr_create_verde(struct umr_options *options);
struct umr_asic *umr_discover_asic(struct umr_options *options);
struct umr_asic *umr_discover_asic_by_did(struct umr_options *options, long did);
struct umr_asic *umr_discover_asic_by_name(struct umr_options *options, char *name);
-void umr_close_asic(struct umr_asic *asic);
+void umr_free_asic(struct umr_asic *asic);
+void umr_close_asic(struct umr_asic *asic); // call this to close a fully open asic
int umr_query_drm(struct umr_asic *asic, int field, uint64_t *ret);
void umr_enumerate_devices(void);
@@ -405,6 +418,7 @@ uint32_t umr_read_reg_by_name(struct umr_asic *asic, char *name);
int umr_write_reg_by_name(struct umr_asic *asic, char *name, uint32_t value);
uint32_t umr_bitslice_reg(struct umr_asic *asic, struct umr_reg *reg, char *bitname, uint32_t regvalue);
uint32_t umr_bitslice_reg_by_name(struct umr_asic *asic, char *regname, char *bitname, uint32_t regvalue);
+int umr_create_mmio_accel(struct umr_asic *asic);
/* IB/ring decoding/dumping/etc */
void umr_print_decode(struct umr_asic *asic, struct umr_ring_decoder *decoder, uint32_t ib);