Commit 42d83653 authored by Wesley W. Terpstra's avatar Wesley W. Terpstra

memory: add a new heap type sdb_scan_meta

parent 5d92d34a
......@@ -30,6 +30,12 @@
#include "../etherbone.h"
typedef EB_POINTER(eb_sdb_scan_meta) eb_sdb_scan_meta_t;
struct eb_sdb_scan_meta {
eb_address_t msi_base;
eb_address_t bus_base;
};
typedef EB_POINTER(eb_sdb_scan) eb_sdb_scan_t;
struct eb_sdb_scan {
eb_user_data_t user_data;
......
......@@ -67,6 +67,7 @@ eb_socket_aux_t eb_new_socket_aux (void) { return (eb_socket_aux_t)
eb_transport_t eb_new_transport (void) { return (eb_transport_t) eb_new_memory_item(); }
eb_link_t eb_new_link (void) { return (eb_link_t) eb_new_memory_item(); }
eb_sdb_scan_t eb_new_sdb_scan (void) { return (eb_sdb_scan_t) eb_new_memory_item(); }
eb_sdb_scan_meta_t eb_new_sdb_scan_meta (void) { return (eb_sdb_scan_meta_t) eb_new_memory_item(); }
eb_sdb_record_t eb_new_sdb_record (void) { return (eb_sdb_record_t) eb_new_memory_item(); }
void eb_free_operation (eb_operation_t x) { eb_free_memory_item(x); }
......@@ -80,6 +81,7 @@ void eb_free_socket_aux (eb_socket_aux_t x) { eb_free_memory_item(x);
void eb_free_transport (eb_transport_t x) { eb_free_memory_item(x); }
void eb_free_link (eb_link_t x) { eb_free_memory_item(x); }
void eb_free_sdb_scan (eb_sdb_scan_t x) { eb_free_memory_item(x); }
void eb_free_sdb_scan_meta (eb_sdb_scan_meta_t x) { eb_free_memory_item(x); }
void eb_free_sdb_record (eb_sdb_record_t x) { eb_free_memory_item(x); }
#endif
......@@ -44,6 +44,7 @@ eb_socket_aux_t eb_new_socket_aux (void) { return (eb_socket_aux_t)
eb_transport_t eb_new_transport (void) { return (eb_transport_t) malloc(sizeof(struct eb_transport)); }
eb_link_t eb_new_link (void) { return (eb_link_t) malloc(sizeof(struct eb_link)); }
eb_sdb_scan_t eb_new_sdb_scan (void) { return (eb_sdb_scan_t) malloc(sizeof(struct eb_sdb_scan)); }
eb_sdb_scan_meta_t eb_new_sdb_scan_meta (void) { return (eb_sdb_scan_meta_t) malloc(sizeof(struct eb_sdb_scan_meta)); }
eb_sdb_record_t eb_new_sdb_record (void) { return (eb_sdb_record_t) malloc(sizeof(struct eb_sdb_record)); }
void eb_free_operation (eb_operation_t x) { free(x); }
......@@ -57,6 +58,7 @@ void eb_free_socket_aux (eb_socket_aux_t x) { free(x); }
void eb_free_transport (eb_transport_t x) { free(x); }
void eb_free_link (eb_link_t x) { free(x); }
void eb_free_sdb_scan (eb_sdb_scan_t x) { free(x); }
void eb_free_sdb_scan_meta (eb_sdb_scan_meta_t x) { free(x); }
void eb_free_sdb_record (eb_sdb_record_t x) { free(x); }
#else
......
......@@ -47,6 +47,7 @@ union eb_memory_item {
struct eb_transport transport;
struct eb_link link;
struct eb_sdb_scan sdb_scan;
struct eb_sdb_scan_meta sdb_scan_meta;
struct eb_sdb_record sdb_record;
struct eb_free_item free_item;
};
......@@ -74,6 +75,7 @@ EB_PRIVATE int eb_expand_array(void);
#define EB_TRANSPORT(x) (&eb_memory_array[x].transport)
#define EB_LINK(x) (&eb_memory_array[x].link)
#define EB_SDB_SCAN(x) (&eb_memory_array[x].sdb_scan)
#define EB_SDB_SCAN_META(x) (&eb_memory_array[x].sdb_scan_meta)
#define EB_SDB_RECORD(x) (&eb_memory_array[x].sdb_record)
#endif
......
......@@ -41,6 +41,7 @@
#define EB_TRANSPORT(x) (x)
#define EB_LINK(x) (x)
#define EB_SDB_SCAN(x) (x)
#define EB_SDB_SCAN_META(x) (x)
#define EB_SDB_RECORD(x) (x)
#endif
......
......@@ -52,6 +52,7 @@ EB_PRIVATE eb_socket_aux_t eb_new_socket_aux(void);
EB_PRIVATE eb_transport_t eb_new_transport(void);
EB_PRIVATE eb_link_t eb_new_link(void);
EB_PRIVATE eb_sdb_scan_t eb_new_sdb_scan(void);
EB_PRIVATE eb_sdb_scan_meta_t eb_new_sdb_scan_meta(void);
EB_PRIVATE eb_sdb_record_t eb_new_sdb_record(void);
EB_PRIVATE void eb_free_operation(eb_operation_t x);
......@@ -65,6 +66,7 @@ EB_PRIVATE void eb_free_socket_aux(eb_socket_aux_t x);
EB_PRIVATE void eb_free_transport(eb_transport_t x);
EB_PRIVATE void eb_free_link(eb_link_t x);
EB_PRIVATE void eb_free_sdb_scan(eb_sdb_scan_t x);
EB_PRIVATE void eb_free_sdb_scan_meta(eb_sdb_scan_t x);
EB_PRIVATE void eb_free_sdb_record(eb_sdb_record_t x);
#endif
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment