Commit f9ff1af1 authored by Wesley W. Terpstra's avatar Wesley W. Terpstra

eca: use revised etherbone api

parent 51a1956b
......@@ -4,6 +4,9 @@ TARGETS = lib/version.h libeca.a eca-ctl eca-table
all: $(TARGETS)
install:
cp eca-ctl eca-table /usr/local/bin
clean:
rm -f $(TARGETS) *.o lib/*.o git.*
......
......@@ -48,7 +48,6 @@ status_t ActionChannel::refresh(Device dev) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -75,7 +74,6 @@ status_t ActionChannel::freeze(Device dev, bool freeze) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -98,7 +96,6 @@ status_t ActionChannel::drain(Device dev, bool drain) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -119,7 +116,6 @@ status_t ActionChannel::reset(Device dev) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -182,7 +182,6 @@ status_t ECA::refresh(Device dev) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -209,7 +208,6 @@ status_t ECA::disable(Device dev, bool d) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -232,7 +230,6 @@ status_t ECA::flipTables(Device dev) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -49,7 +49,6 @@ status_t EventStream::send(Device dev, Event event, Time time, Param param) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -48,7 +48,7 @@ static void trim(std::string& s) {
s.resize(x);
}
void eca_sdb_search(SearchRecord* record, Device dev, sdb_t sdb, status_t status) {
void eca_sdb_search(SearchRecord* record, Device dev, const struct sdb_table* sdb, status_t status) {
if (status != EB_OK) {
record->status = status;
record->done = 1;
......@@ -57,10 +57,10 @@ void eca_sdb_search(SearchRecord* record, Device dev, sdb_t sdb, status_t status
unsigned devices = sdb->interconnect.sdb_records - 1;
for (unsigned i = 0; i < devices; ++i) {
sdb_record_t des = &sdb->record[i];
const union sdb_record* des = &sdb->record[i];
switch (des->empty.record_type) {
case sdb_device: {
case sdb_record_device: {
if (des->device.sdb_component.product.vendor_id == GSI_VENDOR_ID) {
switch (des->device.sdb_component.product.device_id) {
case ECAE_DEVICE_ID: {
......@@ -91,7 +91,7 @@ void eca_sdb_search(SearchRecord* record, Device dev, sdb_t sdb, status_t status
}
break;
}
case sdb_bridge: {
case sdb_record_bridge: {
dev.sdb_scan_bus(&des->bridge, record, sdb_wrap_function_callback<SearchRecord, eca_sdb_search>);
record->done = 0;
......@@ -187,7 +187,6 @@ status_t ECA::load(Device dev, std::vector<ECA>& ecas) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -225,7 +224,6 @@ status_t ECA::load(Device dev, std::vector<ECA>& ecas) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......@@ -255,7 +253,6 @@ status_t ECA::load(Device dev, std::vector<ECA>& ecas) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -72,7 +72,6 @@ status_t ECA::loadQueue(Device dev, unsigned channel, std::vector<ActionEntry>&
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -61,7 +61,6 @@ status_t ECA::loadSearch(Device dev, bool active, std::vector<SearchEntry>& tabl
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -64,7 +64,6 @@ status_t ECA::loadWalk(Device dev, bool active, std::vector<WalkEntry>& table) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -67,7 +67,6 @@ status_t ECA::programSearch(Device dev, const std::vector<SearchEntry>& table) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
......@@ -63,7 +63,6 @@ status_t ECA::programWalk(Device dev, const std::vector<WalkEntry>& table) {
cycle.close();
done = 0;
dev.flush();
while (!done) dev.socket().run();
if (done < 0) return done;
if (done == 2) return EB_FAIL;
......
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