VOL-5452 define proto definitions for ONU SN disable

Change-Id: I3fba22f94914ffa3f0fe2a8b537353e9f5f231b9
Signed-off-by: Abhilash laxmeshwar <abhilash.laxmeshwar@radisys.com>
diff --git a/protos/voltha_protos/openolt.proto b/protos/voltha_protos/openolt.proto
index 67a09f9..bc47791 100755
--- a/protos/voltha_protos/openolt.proto
+++ b/protos/voltha_protos/openolt.proto
@@ -288,6 +288,52 @@
           body: "*"
         };
     }
+
+
+    /*
+     * Disable ONU serailnumber, disable device at PLOAM.
+     * Takes input as intfid, onuid, sn of the ONU.
+     * Returns success if the call towards the device is success, error otherwise.
+     */
+    rpc DisableOnu (InterfaceOnuSerialNumberOnuId) returns (Empty) {
+       option (google.api.http) = {
+         post: "/v1/DisableOnu"
+       };
+    }
+
+    /*
+     * Enables ONU serailnumber, enable device at PLOAM.
+     * Takes input as intfid, onuid, sn of the ONU.
+     * Returns success if the call towards the device is success, error otherwise.
+     */
+    rpc EnableOnu (InterfaceOnuSerialNumberOnuId) returns (Empty) {
+       option (google.api.http) = {
+         post: "/v1/EnableOnu"
+       };
+    }
+
+
+    /*
+     * Disable ONU serailnumber, disable device at PLOAM
+     * Takes input as intfid and sn of the ONU. Generally used when the onu is not present in the OLT.
+     * Returns success if the call towards the device is success, error otherwise.
+     */
+    rpc DisableOnuSerialNumber(InterfaceOnuSerialNumber) returns (Empty) {
+       option (google.api.http) = {
+         post: "/v1/DisableOnuSerialNumber"
+       };
+    }
+
+    /* 
+     * Enables ONU serailnumber, enable device at PLOAM
+     * Takes input as intfid and sn of the ONU. Generally used when the onu is not present in the OLT.
+     * Returns success if the call towards the device is success, error otherwise.
+     */
+    rpc EnableOnuSerialNumber(InterfaceOnuSerialNumber) returns (Empty) {
+       option (google.api.http) = {
+         post: "/v1/EnableOnuSerialNumber"
+       };
+    }
 }
 
 message Indication {
@@ -302,6 +348,8 @@
         common.PortStatistics port_stats = 8;
         FlowStatistics flow_stats = 9;
         AlarmIndication alarm_ind= 10;
+        OnuDisabledIndication  onu_disabled_ind = 11;
+        OnuEnabledIndication   onu_enabled_ind = 12;
     }
 }
 
@@ -363,6 +411,19 @@
 
 }
 
+message OnuDisabledIndication {
+    fixed32 intf_id = 1;
+    fixed32 onu_id = 2;
+    SerialNumber serial_number = 4;
+}
+
+message OnuEnabledIndication {
+    fixed32 intf_id = 1;
+    fixed32 onu_id = 2;
+    SerialNumber serial_number = 4;
+}
+
+
 message IntfOperIndication {
     string type = 1;		// nni, pon
     fixed32 intf_id = 2;
@@ -864,4 +925,16 @@
     AlarmState   los = 4;
 }
 
+/*
+ * Message used for disabling device by serialnumber, disable at PLOAM
+ */
+message InterfaceOnuSerialNumberOnuId {
+    InterfaceOnuSerialNumber intf_id_serial_num = 1;
+    fixed32          onu_id = 2;
+}
+
+message InterfaceOnuSerialNumber {
+    fixed32          intf_id = 1;
+    SerialNumber     onu_serial_number = 2;
+}
 message Empty {}