VOL-1221: OpenOLT Adapter/Driver will use a Technology Profile Instance to create the OLT Upstream and Downstream Queuing and Scheduling Constructs for a Bidirectional Flow.
Change-Id: I8106182a280ee24147e2b19da583d95c254c69ad
diff --git a/agent/common/core.h b/agent/common/core.h
index 812a9b5..840d0c8 100644
--- a/agent/common/core.h
+++ b/agent/common/core.h
@@ -30,13 +30,11 @@
Status Enable_(int argc, char *argv[]);
Status ActivateOnu_(uint32_t intf_id, uint32_t onu_id,
- const char *vendor_id, const char *vendor_specific, uint32_t pir,
- uint32_t alloc_id);
+ const char *vendor_id, const char *vendor_specific, uint32_t pir);
Status DeactivateOnu_(uint32_t intf_id, uint32_t onu_id,
const char *vendor_id, const char *vendor_specific);
Status DeleteOnu_(uint32_t intf_id, uint32_t onu_id,
- const char *vendor_id, const char *vendor_specific,
- uint32_t alloc_id);
+ const char *vendor_id, const char *vendor_specific);
Status EnablePonIf_(uint32_t intf_id);
Status DisablePonIf_(uint32_t intf_id);
Status EnableUplinkIf_(uint32_t intf_id);
@@ -48,17 +46,17 @@
Status ProbeDeviceCapabilities_();
Status ProbePonIfTechnology_();
Status UplinkPacketOut_(uint32_t intf_id, const std::string pkt);
-Status FlowAdd_(int32_t onu_id,
+Status FlowAdd_(int32_t access_intf_id, int32_t onu_id,
uint32_t flow_id, const std::string flow_type,
- int32_t access_intf_id, int32_t network_intf_id,
- uint32_t gemport_id, uint32_t sched_id,
- int32_t priority_value,
- const ::openolt::Classifier& classifier,
- const ::openolt::Action& action);
+ int32_t alloc_id, int32_t network_intf_id,
+ int32_t gemport_id, const ::openolt::Classifier& classifier,
+ const ::openolt::Action& action, int32_t priority_value);
Status FlowRemove_(uint32_t flow_id, const std::string flow_type);
Status Disable_();
Status Reenable_();
Status GetDeviceInfo_(openolt::DeviceInfo* device_info);
+Status CreateTconts_(const openolt::Tconts *tconts);
+Status RemoveTconts_(const openolt::Tconts *tconts);
void stats_collection();
#endif
diff --git a/agent/common/server.cc b/agent/common/server.cc
index e40f0cf..b556e06 100644
--- a/agent/common/server.cc
+++ b/agent/common/server.cc
@@ -67,8 +67,7 @@
request->intf_id(),
request->onu_id(),
((request->serial_number()).vendor_id()).c_str(),
- ((request->serial_number()).vendor_specific()).c_str(),
- request->pir(), request->alloc_id());
+ ((request->serial_number()).vendor_specific()).c_str(), request->pir());
}
Status DeactivateOnu(
@@ -90,8 +89,7 @@
request->intf_id(),
request->onu_id(),
((request->serial_number()).vendor_id()).c_str(),
- ((request->serial_number()).vendor_specific()).c_str(),
- request->alloc_id());
+ ((request->serial_number()).vendor_specific()).c_str());
}
Status OmciMsgOut(
@@ -128,16 +126,16 @@
const openolt::Flow* request,
openolt::Empty* response) override {
return FlowAdd_(
+ request->access_intf_id(),
request->onu_id(),
request->flow_id(),
request->flow_type(),
- request->access_intf_id(),
+ request->alloc_id(),
request->network_intf_id(),
request->gemport_id(),
- request->alloc_id(),
- request->priority(),
request->classifier(),
- request->action());
+ request->action(),
+ request->priority());
}
Status FlowRemove(
@@ -256,7 +254,23 @@
}
+ Status CreateTconts(
+ ServerContext* context,
+ const openolt::Tconts* request,
+ openolt::Empty* response) override {
+ std::cout << "create tconts";
+ CreateTconts_(request);
+ return Status::OK;
+ };
+ Status RemoveTconts(
+ ServerContext* context,
+ const openolt::Tconts* request,
+ openolt::Empty* response) override {
+ std::cout << "remove tconts";
+ RemoveTconts_(request);
+ return Status::OK;
+ };
};