diff --git a/VERSION b/VERSION
index 85b7c69..c81aa44 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.9.6
+0.9.7
diff --git a/dmi.pb b/dmi.pb
index bbdf289..00c6cce 100644
--- a/dmi.pb
+++ b/dmi.pb
Binary files differ
diff --git a/go.sum b/go.sum
index 27d4862..6dd8a8f 100644
--- a/go.sum
+++ b/go.sum
@@ -38,6 +38,7 @@
 golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
+golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU=
 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 golang.org/x/text v0.3.0 h1:g61tztE5qeGQ89tm6NTjjM9VPIm088od1l6aSorWRWg=
 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
diff --git a/go/dmi/commons.pb.go b/go/dmi/commons.pb.go
index 1b3b9da..d30c79c 100644
--- a/go/dmi/commons.pb.go
+++ b/go/dmi/commons.pb.go
@@ -48,59 +48,6 @@
 	return fileDescriptor_74aedf0dda1205d8, []int{0}
 }
 
-// Reason for the failure of request
-type Reason int32
-
-const (
-	Reason_UNDEFINED_REASON                Reason = 0
-	Reason_UNKNOWN_DEVICE                  Reason = 1
-	Reason_INTERNAL_ERROR                  Reason = 2
-	Reason_WRONG_METRIC                    Reason = 3
-	Reason_WRONG_EVENT                     Reason = 4
-	Reason_LOGGING_ENDPOINT_ERROR          Reason = 5
-	Reason_LOGGING_ENDPOINT_PROTOCOL_ERROR Reason = 6
-	Reason_KAFKA_ENDPOINT_ERROR            Reason = 7
-	Reason_UNKNOWN_LOG_ENTITY              Reason = 8
-	Reason_ERROR_FETCHING_CONFIG           Reason = 9
-	Reason_INVALID_CONFIG                  Reason = 10
-)
-
-var Reason_name = map[int32]string{
-	0:  "UNDEFINED_REASON",
-	1:  "UNKNOWN_DEVICE",
-	2:  "INTERNAL_ERROR",
-	3:  "WRONG_METRIC",
-	4:  "WRONG_EVENT",
-	5:  "LOGGING_ENDPOINT_ERROR",
-	6:  "LOGGING_ENDPOINT_PROTOCOL_ERROR",
-	7:  "KAFKA_ENDPOINT_ERROR",
-	8:  "UNKNOWN_LOG_ENTITY",
-	9:  "ERROR_FETCHING_CONFIG",
-	10: "INVALID_CONFIG",
-}
-
-var Reason_value = map[string]int32{
-	"UNDEFINED_REASON":                0,
-	"UNKNOWN_DEVICE":                  1,
-	"INTERNAL_ERROR":                  2,
-	"WRONG_METRIC":                    3,
-	"WRONG_EVENT":                     4,
-	"LOGGING_ENDPOINT_ERROR":          5,
-	"LOGGING_ENDPOINT_PROTOCOL_ERROR": 6,
-	"KAFKA_ENDPOINT_ERROR":            7,
-	"UNKNOWN_LOG_ENTITY":              8,
-	"ERROR_FETCHING_CONFIG":           9,
-	"INVALID_CONFIG":                  10,
-}
-
-func (x Reason) String() string {
-	return proto.EnumName(Reason_name, int32(x))
-}
-
-func (Reason) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_74aedf0dda1205d8, []int{1}
-}
-
 //Log Level
 type LogLevel int32
 
@@ -133,41 +80,30 @@
 }
 
 func (LogLevel) EnumDescriptor() ([]byte, []int) {
-	return fileDescriptor_74aedf0dda1205d8, []int{2}
+	return fileDescriptor_74aedf0dda1205d8, []int{1}
 }
 
 func init() {
 	proto.RegisterEnum("dmi.Status", Status_name, Status_value)
-	proto.RegisterEnum("dmi.Reason", Reason_name, Reason_value)
 	proto.RegisterEnum("dmi.LogLevel", LogLevel_name, LogLevel_value)
 }
 
 func init() { proto.RegisterFile("dmi/commons.proto", fileDescriptor_74aedf0dda1205d8) }
 
 var fileDescriptor_74aedf0dda1205d8 = []byte{
-	// 373 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x91, 0xcf, 0x6f, 0xd3, 0x30,
-	0x14, 0xc7, 0xdb, 0xb4, 0x0b, 0xed, 0xe3, 0x97, 0xb1, 0xc6, 0x04, 0x5c, 0x38, 0x70, 0xab, 0xb4,
-	0xe5, 0xb0, 0x13, 0xe2, 0x30, 0x79, 0x89, 0x13, 0xac, 0x04, 0x7b, 0x72, 0x9c, 0x56, 0x70, 0x89,
-	0xb2, 0xc4, 0x84, 0x48, 0x38, 0x9e, 0xda, 0xac, 0xff, 0x04, 0xff, 0x34, 0x72, 0x43, 0x0e, 0xc0,
-	0xed, 0xf9, 0xf3, 0xf4, 0x3e, 0x7e, 0x5f, 0x3d, 0x78, 0xd5, 0x98, 0x2e, 0xa8, 0xad, 0x31, 0xb6,
-	0x3f, 0x5c, 0x3d, 0xec, 0xed, 0x60, 0xf1, 0xa2, 0x31, 0xdd, 0xe6, 0x06, 0xfc, 0x7c, 0xa8, 0x86,
-	0xc7, 0x03, 0x3e, 0x07, 0x54, 0xf0, 0x88, 0xc6, 0x8c, 0xd3, 0xa8, 0xcc, 0x15, 0x51, 0x45, 0x8e,
-	0x66, 0xf8, 0x39, 0xac, 0x45, 0x3a, 0x3d, 0xe7, 0x18, 0xc1, 0x33, 0x2a, 0xa5, 0x90, 0x13, 0xf1,
-	0x36, 0xbf, 0x3c, 0xf0, 0xa5, 0xae, 0x0e, 0xb6, 0xff, 0xdb, 0x20, 0x29, 0xc9, 0x05, 0x47, 0x33,
-	0x8c, 0xe1, 0x45, 0xc1, 0x53, 0x2e, 0x76, 0xbc, 0x8c, 0xe8, 0x96, 0x85, 0x14, 0xcd, 0x1d, 0x63,
-	0x5c, 0x51, 0xc9, 0x49, 0x56, 0x9e, 0x7c, 0xc8, 0x73, 0xea, 0x9d, 0x14, 0x3c, 0x29, 0xbf, 0x50,
-	0x25, 0x59, 0x88, 0x16, 0xf8, 0x25, 0x3c, 0x1d, 0x09, 0xdd, 0x52, 0xae, 0xd0, 0x12, 0xbf, 0x83,
-	0x8b, 0x4c, 0x24, 0x09, 0x73, 0x88, 0x47, 0x77, 0x82, 0x71, 0xf5, 0x67, 0xfc, 0x0c, 0x7f, 0x80,
-	0xf7, 0xff, 0xf5, 0xee, 0xa4, 0x50, 0x22, 0x14, 0xd3, 0x1f, 0x3e, 0x7e, 0x03, 0xe7, 0x29, 0x89,
-	0x53, 0xf2, 0xef, 0xf8, 0x13, 0x7c, 0x01, 0x78, 0xda, 0x32, 0x13, 0x4e, 0xa1, 0x98, 0xfa, 0x8a,
-	0x56, 0xf8, 0x2d, 0xbc, 0x1e, 0x03, 0xc7, 0x54, 0x85, 0x9f, 0x9d, 0x3d, 0x14, 0x3c, 0x66, 0x09,
-	0x5a, 0x8f, 0x21, 0xb6, 0x24, 0x63, 0xd1, 0xc4, 0x60, 0x73, 0x03, 0xab, 0xcc, 0xb6, 0x99, 0x3e,
-	0xea, 0x9f, 0x78, 0x0d, 0x67, 0x4a, 0x92, 0x90, 0xa2, 0x99, 0x2b, 0x23, 0x7a, 0x5b, 0x24, 0x68,
-	0x8e, 0x57, 0xb0, 0x64, 0x3c, 0x16, 0xc8, 0x73, 0xd5, 0x8e, 0x48, 0x8e, 0x16, 0xae, 0x3d, 0xee,
-	0xb1, 0xbc, 0xfd, 0xf4, 0xed, 0x63, 0xdb, 0x0d, 0x3f, 0x1e, 0xef, 0xaf, 0x6a, 0x6b, 0x02, 0xfb,
-	0xa0, 0xfb, 0xda, 0xee, 0x9b, 0xa0, 0xd1, 0xc7, 0xae, 0xd6, 0x97, 0xa6, 0xea, 0xab, 0x56, 0x1b,
-	0xdd, 0x0f, 0x97, 0x5d, 0x3f, 0xe8, 0xfd, 0xf7, 0xaa, 0xd6, 0xc1, 0xf1, 0x3a, 0x68, 0x6d, 0xd0,
-	0x98, 0xee, 0xde, 0x3f, 0x1d, 0xf6, 0xfa, 0x77, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc8, 0xb6, 0xed,
-	0xcf, 0xed, 0x01, 0x00, 0x00,
+	// 217 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x34, 0x8f, 0x5f, 0x6b, 0xc2, 0x30,
+	0x14, 0xc5, 0xfd, 0x37, 0xd1, 0xb0, 0xc1, 0x5d, 0xd8, 0xa7, 0x10, 0x34, 0x0f, 0x3e, 0x8d, 0x3d,
+	0x48, 0x5d, 0xe3, 0x90, 0x49, 0x0b, 0x69, 0xcb, 0x60, 0x2f, 0xa3, 0x26, 0x77, 0x5d, 0x60, 0x37,
+	0x57, 0x6a, 0xec, 0xe7, 0x97, 0x0a, 0xbe, 0xfd, 0xce, 0x39, 0x70, 0xe0, 0x27, 0x9e, 0x1d, 0x79,
+	0x65, 0x99, 0x88, 0xc3, 0x79, 0x75, 0x6a, 0x39, 0xb2, 0x1c, 0x3b, 0xf2, 0x8b, 0x8d, 0x98, 0x16,
+	0xb1, 0x8e, 0x97, 0xb3, 0x7c, 0x11, 0x50, 0x65, 0xa9, 0xde, 0xed, 0x33, 0x9d, 0xfe, 0x14, 0x65,
+	0x52, 0x56, 0x05, 0x0c, 0xe4, 0x93, 0x98, 0xe7, 0x9f, 0xf7, 0x38, 0x94, 0x20, 0x1e, 0xb5, 0x31,
+	0xb9, 0xb9, 0x37, 0xa3, 0xc5, 0x46, 0xcc, 0x0e, 0xdc, 0x1c, 0xb0, 0xc3, 0x7f, 0x39, 0x17, 0x0f,
+	0xa5, 0x49, 0xde, 0x35, 0x0c, 0x7a, 0x4c, 0xf5, 0xb6, 0xfa, 0x80, 0xa1, 0x9c, 0x89, 0xc9, 0x3e,
+	0xdb, 0xe5, 0x30, 0xea, 0xe9, 0x2b, 0x31, 0x19, 0x8c, 0xfb, 0xf9, 0xf6, 0x03, 0x93, 0xed, 0xdb,
+	0xf7, 0x6b, 0xe3, 0xe3, 0xdf, 0xe5, 0xb8, 0xb2, 0x4c, 0x8a, 0x4f, 0x18, 0x2c, 0xb7, 0x4e, 0x39,
+	0xec, 0xbc, 0xc5, 0x25, 0xd5, 0xa1, 0x6e, 0x90, 0x30, 0xc4, 0xa5, 0x0f, 0x11, 0xdb, 0xdf, 0xda,
+	0xa2, 0xea, 0xd6, 0xaa, 0x61, 0xe5, 0xc8, 0x1f, 0xa7, 0x37, 0x95, 0xf5, 0x35, 0x00, 0x00, 0xff,
+	0xff, 0x6b, 0x43, 0x1e, 0x6c, 0xdf, 0x00, 0x00, 0x00,
 }
diff --git a/go/dmi/hw_events_mgmt_service.pb.go b/go/dmi/hw_events_mgmt_service.pb.go
index f102422..5c3418b 100644
--- a/go/dmi/hw_events_mgmt_service.pb.go
+++ b/go/dmi/hw_events_mgmt_service.pb.go
@@ -173,6 +173,65 @@
 	return fileDescriptor_8962d785556e9979, []int{0}
 }
 
+type ListEventsResponse_Reason int32
+
+const (
+	ListEventsResponse_UNDEFINED_REASON ListEventsResponse_Reason = 0
+	ListEventsResponse_UNKNOWN_DEVICE   ListEventsResponse_Reason = 1
+	ListEventsResponse_INTERNAL_ERROR   ListEventsResponse_Reason = 2
+)
+
+var ListEventsResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+}
+
+var ListEventsResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+}
+
+func (x ListEventsResponse_Reason) String() string {
+	return proto.EnumName(ListEventsResponse_Reason_name, int32(x))
+}
+
+func (ListEventsResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_8962d785556e9979, []int{6, 0}
+}
+
+type EventsConfigurationResponse_Reason int32
+
+const (
+	EventsConfigurationResponse_UNDEFINED_REASON EventsConfigurationResponse_Reason = 0
+	EventsConfigurationResponse_UNKNOWN_DEVICE   EventsConfigurationResponse_Reason = 1
+	EventsConfigurationResponse_INTERNAL_ERROR   EventsConfigurationResponse_Reason = 2
+	EventsConfigurationResponse_INVALID_CONFIG   EventsConfigurationResponse_Reason = 3
+)
+
+var EventsConfigurationResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "INVALID_CONFIG",
+}
+
+var EventsConfigurationResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+	"INVALID_CONFIG":   3,
+}
+
+func (x EventsConfigurationResponse_Reason) String() string {
+	return proto.EnumName(EventsConfigurationResponse_Reason_name, int32(x))
+}
+
+func (EventsConfigurationResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_8962d785556e9979, []int{8, 0}
+}
+
 type ValueType struct {
 	// Types that are valid to be assigned to Val:
 	//	*ValueType_IntVal
@@ -538,12 +597,12 @@
 }
 
 type ListEventsResponse struct {
-	Status               Status     `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason     `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Events               *EventsCfg `protobuf:"bytes,3,opt,name=events,proto3" json:"events,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
-	XXX_unrecognized     []byte     `json:"-"`
-	XXX_sizecache        int32      `json:"-"`
+	Status               Status                    `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               ListEventsResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.ListEventsResponse_Reason" json:"reason,omitempty"`
+	Events               *EventsCfg                `protobuf:"bytes,3,opt,name=events,proto3" json:"events,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                  `json:"-"`
+	XXX_unrecognized     []byte                    `json:"-"`
+	XXX_sizecache        int32                     `json:"-"`
 }
 
 func (m *ListEventsResponse) Reset()         { *m = ListEventsResponse{} }
@@ -578,11 +637,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *ListEventsResponse) GetReason() Reason {
+func (m *ListEventsResponse) GetReason() ListEventsResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return ListEventsResponse_UNDEFINED_REASON
 }
 
 func (m *ListEventsResponse) GetEvents() *EventsCfg {
@@ -681,11 +740,11 @@
 }
 
 type EventsConfigurationResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                             `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               EventsConfigurationResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.EventsConfigurationResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
+	XXX_unrecognized     []byte                             `json:"-"`
+	XXX_sizecache        int32                              `json:"-"`
 }
 
 func (m *EventsConfigurationResponse) Reset()         { *m = EventsConfigurationResponse{} }
@@ -720,11 +779,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *EventsConfigurationResponse) GetReason() Reason {
+func (m *EventsConfigurationResponse) GetReason() EventsConfigurationResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return EventsConfigurationResponse_UNDEFINED_REASON
 }
 
 type EventMetaData struct {
@@ -858,6 +917,8 @@
 
 func init() {
 	proto.RegisterEnum("dmi.EventIds", EventIds_name, EventIds_value)
+	proto.RegisterEnum("dmi.ListEventsResponse_Reason", ListEventsResponse_Reason_name, ListEventsResponse_Reason_value)
+	proto.RegisterEnum("dmi.EventsConfigurationResponse_Reason", EventsConfigurationResponse_Reason_name, EventsConfigurationResponse_Reason_value)
 	proto.RegisterType((*ValueType)(nil), "dmi.ValueType")
 	proto.RegisterType((*WaterMarks)(nil), "dmi.WaterMarks")
 	proto.RegisterType((*Thresholds)(nil), "dmi.Thresholds")
@@ -874,90 +935,95 @@
 func init() { proto.RegisterFile("dmi/hw_events_mgmt_service.proto", fileDescriptor_8962d785556e9979) }
 
 var fileDescriptor_8962d785556e9979 = []byte{
-	// 1313 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x4b, 0x73, 0x1a, 0x47,
-	0x17, 0x15, 0x8c, 0x25, 0xc1, 0x95, 0xe1, 0xc3, 0x5d, 0xfe, 0x62, 0x09, 0x97, 0x63, 0x82, 0x12,
-	0x5b, 0x56, 0x22, 0xb0, 0xa5, 0xc4, 0x8e, 0xcb, 0x9b, 0x20, 0x18, 0x19, 0xaa, 0x10, 0xa8, 0x5a,
-	0x03, 0x4a, 0x65, 0x91, 0xa9, 0x16, 0xd3, 0x0c, 0x13, 0x31, 0xd3, 0x78, 0xa6, 0x07, 0xc5, 0x49,
-	0x55, 0x16, 0x59, 0x64, 0x91, 0x55, 0x5e, 0x3f, 0x23, 0x4e, 0x96, 0xf9, 0x0b, 0x79, 0xac, 0xf2,
-	0x5f, 0xf2, 0x5a, 0xa6, 0xa6, 0x67, 0x80, 0x11, 0x4f, 0xb9, 0x2a, 0x3b, 0xcd, 0x3d, 0xe7, 0xdc,
-	0x73, 0xba, 0xb9, 0xdd, 0xd5, 0x82, 0x8c, 0x66, 0x1a, 0xf9, 0xce, 0xb9, 0x4a, 0xfb, 0xd4, 0xe2,
-	0x8e, 0x6a, 0xea, 0x26, 0x57, 0x1d, 0x6a, 0xf7, 0x8d, 0x16, 0xcd, 0xf5, 0x6c, 0xc6, 0x19, 0x92,
-	0x34, 0xd3, 0x48, 0x5f, 0xf3, 0x68, 0x2d, 0x66, 0x9a, 0xcc, 0x72, 0xfc, 0x7a, 0xfa, 0xaa, 0xaf,
-	0x0c, 0xbe, 0x6e, 0xeb, 0x8c, 0xe9, 0x5d, 0x9a, 0x17, 0x5f, 0xa7, 0x6e, 0x3b, 0xcf, 0x0d, 0x93,
-	0x3a, 0x9c, 0x98, 0x3d, 0x9f, 0x90, 0x35, 0x20, 0xde, 0x24, 0x5d, 0x97, 0x2a, 0xcf, 0x7b, 0x14,
-	0x6d, 0xc0, 0xaa, 0x61, 0x71, 0xb5, 0x4f, 0xba, 0xeb, 0x91, 0x4c, 0x64, 0x4b, 0x2a, 0x2f, 0xe1,
-	0x15, 0xc3, 0xe2, 0x4d, 0xd2, 0x45, 0x37, 0x21, 0xe6, 0x0e, 0xb0, 0x68, 0x26, 0xb2, 0x75, 0xa5,
-	0xbc, 0x84, 0x57, 0xdd, 0x00, 0xbc, 0x05, 0xf1, 0x76, 0x97, 0x11, 0x1f, 0x95, 0x32, 0x91, 0xad,
-	0x68, 0x79, 0x09, 0xc7, 0x44, 0xa9, 0x49, 0xba, 0xfb, 0xcb, 0x20, 0xf5, 0x49, 0x37, 0x8b, 0x01,
-	0x4e, 0x08, 0xa7, 0xf6, 0x21, 0xb1, 0xcf, 0x1c, 0x94, 0x85, 0x2b, 0x1d, 0x43, 0xef, 0x08, 0xa3,
-	0xb5, 0xdd, 0x64, 0x4e, 0x33, 0x8d, 0xdc, 0x30, 0x09, 0x16, 0x18, 0xca, 0x80, 0xd4, 0x65, 0xe7,
-	0xc2, 0x6f, 0x92, 0xe2, 0x41, 0xd9, 0x33, 0x00, 0xa5, 0x63, 0x53, 0xa7, 0xc3, 0xba, 0x9a, 0x83,
-	0xee, 0xc2, 0xb2, 0xdb, 0xeb, 0x51, 0x3b, 0x68, 0xfa, 0x3f, 0xa1, 0x18, 0x79, 0x96, 0x97, 0xb0,
-	0x8f, 0x7b, 0xc4, 0x2e, 0x3b, 0xa7, 0x76, 0xd0, 0x7a, 0x1a, 0x51, 0xe0, 0xfb, 0x6b, 0x10, 0xe7,
-	0x83, 0xfe, 0xd9, 0xcf, 0xe0, 0xfa, 0xd0, 0xac, 0x62, 0xb5, 0x99, 0x6d, 0x12, 0x6e, 0x30, 0x0b,
-	0xbd, 0x03, 0x49, 0x76, 0xea, 0xfd, 0x3a, 0x54, 0xf3, 0x76, 0xc0, 0xa5, 0x33, 0x16, 0x95, 0x18,
-	0xb0, 0x44, 0x09, 0xe5, 0x01, 0x86, 0xbd, 0x9d, 0x0b, 0x49, 0x46, 0x4b, 0xc2, 0x21, 0x4a, 0xf6,
-	0xcb, 0x08, 0xc4, 0x64, 0x6f, 0x20, 0x8a, 0x6d, 0x1d, 0x6d, 0x41, 0x4c, 0x0c, 0x87, 0x6a, 0x68,
-	0xc2, 0x2e, 0xb9, 0x9b, 0x10, 0x5a, 0x41, 0xa8, 0x68, 0x0e, 0x5e, 0xa5, 0xfe, 0x5f, 0x68, 0x13,
-	0x12, 0x86, 0xa3, 0xb6, 0x98, 0xd5, 0x36, 0x74, 0xd7, 0xa6, 0x9a, 0xb0, 0x8a, 0xe1, 0xab, 0x86,
-	0x53, 0x1c, 0xd6, 0xc6, 0xc2, 0x48, 0x8b, 0xc3, 0xdc, 0x87, 0xb8, 0xb0, 0x72, 0xbc, 0x30, 0x9b,
-	0xb0, 0x6c, 0x70, 0x6a, 0x3a, 0xeb, 0x91, 0x8c, 0xb4, 0xb5, 0x16, 0x4e, 0x52, 0x6c, 0xeb, 0xd8,
-	0xc7, 0xb2, 0x5f, 0x44, 0x00, 0x55, 0x0d, 0x87, 0xfb, 0x32, 0x4c, 0x9d, 0x1e, 0xb3, 0x1c, 0x8a,
-	0x36, 0x61, 0xc5, 0xe1, 0x84, 0xbb, 0x4e, 0xb0, 0x8c, 0x35, 0x21, 0x3e, 0x16, 0x25, 0x1c, 0x40,
-	0x1e, 0xc9, 0xa6, 0xc4, 0x61, 0x96, 0x08, 0x3f, 0x20, 0x61, 0x51, 0xc2, 0x01, 0x84, 0xee, 0xc0,
-	0x8a, 0x7f, 0x5e, 0x82, 0xfc, 0xc9, 0x51, 0x0c, 0x2f, 0x25, 0x0e, 0xd0, 0xec, 0x8b, 0x08, 0xa4,
-	0x83, 0x6a, 0xb0, 0x01, 0xe2, 0x77, 0xc4, 0xf4, 0x99, 0x4b, 0x1d, 0x8e, 0xb6, 0x61, 0x4d, 0xa3,
-	0xde, 0x49, 0x53, 0x5d, 0x37, 0xd8, 0xdc, 0xb5, 0xdd, 0xb8, 0xe8, 0xd5, 0x70, 0x0d, 0x0d, 0x83,
-	0x8f, 0x7a, 0x7f, 0xa3, 0x6d, 0x58, 0x6d, 0x75, 0x88, 0xa5, 0x53, 0xe7, 0xc2, 0x94, 0x0e, 0x3d,
-	0xbd, 0x53, 0x12, 0x10, 0xd0, 0x36, 0xa4, 0x6c, 0xea, 0x50, 0xae, 0x72, 0xa6, 0x6a, 0xb4, 0x4d,
-	0xdc, 0x2e, 0x17, 0x41, 0x63, 0xe5, 0x25, 0x9c, 0x14, 0x88, 0xc2, 0x4a, 0x7e, 0xdd, 0x9b, 0x3b,
-	0xd6, 0xa3, 0x7e, 0xae, 0xac, 0x0e, 0x37, 0xa7, 0xc6, 0xfd, 0xaf, 0x37, 0x30, 0xfb, 0x5d, 0x04,
-	0x12, 0xc2, 0xe9, 0x90, 0x72, 0x52, 0x22, 0x9c, 0xbc, 0xd4, 0x5e, 0xdc, 0x87, 0x64, 0x8b, 0x99,
-	0x3d, 0x66, 0x79, 0x53, 0x29, 0xe8, 0xd1, 0x71, 0x7a, 0x62, 0x48, 0x10, 0x8a, 0x37, 0xc2, 0x0a,
-	0x8b, 0x98, 0x54, 0xec, 0x47, 0x3c, 0x44, 0xab, 0x11, 0x93, 0x66, 0x3f, 0x8f, 0xc2, 0xb2, 0x88,
-	0x85, 0x1e, 0x43, 0xd2, 0x1f, 0x7a, 0x93, 0x72, 0xa2, 0x11, 0x4e, 0x82, 0x44, 0x68, 0xb4, 0xeb,
-	0x83, 0xe8, 0x38, 0x41, 0x07, 0x9f, 0x1e, 0xf1, 0xc2, 0x79, 0x89, 0xce, 0x3d, 0x2f, 0x8f, 0x20,
-	0x6e, 0x13, 0xc3, 0xa1, 0x9a, 0x3a, 0x9c, 0xa4, 0x74, 0xce, 0xbf, 0x47, 0x73, 0x83, 0x7b, 0x34,
-	0xa7, 0x0c, 0xee, 0x51, 0x1c, 0xf3, 0xc9, 0x8a, 0x83, 0xde, 0x83, 0xe4, 0xf0, 0x80, 0xa8, 0x86,
-	0xd5, 0x66, 0xeb, 0x57, 0x84, 0x7a, 0xe3, 0xe2, 0x39, 0x0a, 0x5d, 0x1d, 0x38, 0xc1, 0xc3, 0x55,
-	0xb4, 0x01, 0x31, 0xa2, 0x05, 0xda, 0x65, 0xb1, 0x15, 0xab, 0x44, 0x13, 0xd0, 0xf6, 0xef, 0xc9,
-	0xe0, 0xf0, 0x57, 0x34, 0x07, 0xad, 0xc3, 0x75, 0xb9, 0x29, 0xd7, 0x14, 0xb5, 0x56, 0x38, 0x94,
-	0xd5, 0x46, 0xad, 0x24, 0x1f, 0x54, 0x6a, 0x72, 0x29, 0xb5, 0x84, 0x5e, 0x85, 0xb4, 0x8f, 0x28,
-	0xb8, 0x50, 0x3b, 0x2e, 0xca, 0x95, 0xa6, 0x8c, 0xd5, 0xa3, 0x6a, 0xe3, 0xa9, 0x5a, 0x6f, 0x28,
-	0x29, 0x0d, 0xdd, 0x82, 0x8d, 0x19, 0x78, 0xa5, 0x96, 0xa2, 0x68, 0x07, 0xee, 0x4d, 0xc2, 0xcd,
-	0x7a, 0x55, 0x29, 0x3c, 0x95, 0xd5, 0xc2, 0x7e, 0xbd, 0x29, 0xab, 0x4a, 0x19, 0xcb, 0xc7, 0xe5,
-	0x7a, 0xb5, 0x94, 0x6a, 0xcf, 0xa7, 0xef, 0xcb, 0xd5, 0xfa, 0x49, 0x88, 0xae, 0xa3, 0x07, 0xb0,
-	0x33, 0x49, 0x57, 0xe4, 0xc3, 0x23, 0x19, 0x17, 0x94, 0x06, 0x9e, 0x74, 0xe8, 0x2c, 0x96, 0x8c,
-	0xbb, 0x18, 0xd3, 0x43, 0x15, 0x1b, 0x18, 0x7b, 0xb5, 0x71, 0x87, 0x8f, 0xe6, 0xd3, 0xc7, 0xbb,
-	0x9f, 0xa1, 0x1c, 0x6c, 0x4f, 0xd2, 0xf1, 0xfb, 0xea, 0x51, 0xfd, 0x44, 0xc6, 0x13, 0xed, 0xbb,
-	0x0b, 0xf8, 0xe3, 0xfd, 0xcd, 0xe9, 0x7c, 0x65, 0x56, 0x7f, 0x6b, 0x01, 0x7f, 0xbc, 0x3f, 0x9b,
-	0x3e, 0x00, 0x07, 0x85, 0x4a, 0xb5, 0x81, 0xe5, 0x54, 0x0f, 0x3d, 0x82, 0xbd, 0x4b, 0x0f, 0x80,
-	0x8a, 0xe5, 0x62, 0xbd, 0x29, 0x63, 0xb9, 0x94, 0x7a, 0x36, 0x5f, 0x38, 0x16, 0x23, 0x24, 0xb4,
-	0xd1, 0x13, 0x78, 0xf4, 0x52, 0x43, 0x11, 0x12, 0x3b, 0x8b, 0xc5, 0xb3, 0x9d, 0xf9, 0xf4, 0xc8,
-	0x33, 0x06, 0x25, 0x24, 0x74, 0xe7, 0x0b, 0x67, 0x3b, 0xf6, 0xd1, 0xbb, 0xf0, 0xf6, 0xe5, 0x87,
-	0x27, 0xa4, 0x3c, 0x5f, 0xa0, 0x9c, 0xed, 0xf9, 0xf1, 0x74, 0xa5, 0xb2, 0xd8, 0xf3, 0xf9, 0x02,
-	0xe5, 0x6c, 0xcf, 0x4f, 0xd0, 0x5d, 0xd8, 0x9c, 0x39, 0x64, 0x21, 0xe2, 0xa7, 0xe8, 0x06, 0x20,
-	0x9f, 0x78, 0x74, 0xdc, 0x18, 0x5d, 0x53, 0x3f, 0x47, 0xd0, 0x2b, 0x70, 0x6d, 0x0c, 0xa8, 0xd4,
-	0x52, 0xbf, 0x8c, 0xd5, 0x07, 0x63, 0xfb, 0x6b, 0x04, 0x65, 0xe0, 0xe6, 0x44, 0x3d, 0xe4, 0xf4,
-	0x5b, 0x48, 0x79, 0x50, 0xa8, 0x0d, 0x95, 0xdf, 0x47, 0x47, 0x11, 0xbc, 0xfa, 0x30, 0xc2, 0x8b,
-	0xe8, 0x45, 0xc1, 0x20, 0xc2, 0x0f, 0xd1, 0x91, 0x55, 0xa8, 0x51, 0xc8, 0xea, 0xc7, 0x28, 0xba,
-	0x07, 0xaf, 0xfb, 0x8c, 0xe2, 0x51, 0x63, 0xca, 0x28, 0x17, 0x71, 0x45, 0xa9, 0x14, 0x0b, 0xd5,
-	0xd4, 0x57, 0x12, 0xba, 0x03, 0xaf, 0xcd, 0xa3, 0x1e, 0x14, 0x94, 0x42, 0x35, 0xf5, 0xb5, 0x84,
-	0xf6, 0x20, 0x77, 0x99, 0x96, 0xa1, 0x1c, 0xdf, 0x48, 0xe8, 0x3e, 0xbc, 0xb9, 0xb0, 0x79, 0x48,
-	0xf1, 0xad, 0x84, 0xd2, 0xf0, 0x7f, 0x5f, 0x51, 0x3e, 0x51, 0x4b, 0x72, 0xb3, 0x52, 0xf4, 0x56,
-	0x76, 0x2c, 0x2b, 0xa9, 0x3f, 0x24, 0x94, 0x1f, 0xdc, 0x34, 0x23, 0x6c, 0xce, 0xda, 0xfe, 0x94,
-	0xd0, 0x5b, 0x70, 0x77, 0xb1, 0xc0, 0x5f, 0xe1, 0x5f, 0x12, 0x7a, 0x3c, 0x98, 0xb6, 0xcb, 0xb4,
-	0x0f, 0xa5, 0xfe, 0x5b, 0x42, 0x0f, 0xe1, 0xc1, 0x25, 0x8d, 0x42, 0xba, 0x7f, 0xa4, 0xdd, 0x9f,
-	0x22, 0x70, 0xab, 0x46, 0xb8, 0xd1, 0xa7, 0xfe, 0xfb, 0xea, 0x90, 0x58, 0x44, 0xa7, 0x26, 0xb5,
-	0xf8, 0xb1, 0xff, 0xbf, 0x16, 0x7a, 0x08, 0x30, 0x7a, 0xb2, 0x22, 0xff, 0x41, 0x5c, 0x26, 0xb6,
-	0x76, 0x4e, 0x6c, 0x5a, 0x29, 0xa5, 0x6f, 0x88, 0xc2, 0x94, 0x47, 0xed, 0x87, 0xb0, 0xd1, 0xe8,
-	0x69, 0x84, 0xd3, 0x29, 0x0f, 0x37, 0x74, 0x3b, 0xfc, 0x46, 0x9c, 0xf2, 0x02, 0x4d, 0x67, 0x66,
-	0x13, 0xfc, 0xfe, 0xfb, 0x4f, 0x3e, 0x78, 0xac, 0x1b, 0xbc, 0xe3, 0x9e, 0xe6, 0x5a, 0xcc, 0xcc,
-	0xb3, 0x1e, 0xb5, 0x5a, 0xcc, 0xd6, 0xf2, 0xfe, 0x6b, 0x6c, 0xc7, 0x1c, 0xae, 0x63, 0xc7, 0xb0,
-	0x38, 0xb5, 0xdb, 0xa4, 0x45, 0xf3, 0xfd, 0xbd, 0xbc, 0xce, 0xf2, 0x9a, 0x69, 0x9c, 0xae, 0x88,
-	0x57, 0xcc, 0xde, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x86, 0xc2, 0xf7, 0x19, 0x65, 0x0e, 0x00,
-	0x00,
+	// 1402 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x57, 0x5d, 0x73, 0xdb, 0x44,
+	0x17, 0x8e, 0xac, 0x26, 0x71, 0x4e, 0x1a, 0xbf, 0xea, 0x4e, 0xdf, 0xb7, 0x89, 0x3b, 0x6d, 0xfd,
+	0x3a, 0xd0, 0xa4, 0x81, 0xd8, 0x6d, 0x02, 0x2d, 0x9d, 0x5e, 0x80, 0x63, 0x2b, 0xb5, 0x06, 0x47,
+	0xce, 0x6c, 0x64, 0x87, 0xe9, 0x05, 0x9a, 0x8d, 0xb5, 0xb6, 0x45, 0x2d, 0xc9, 0x95, 0x56, 0x09,
+	0x85, 0x19, 0x2e, 0xb8, 0xe4, 0x8a, 0xaf, 0x9f, 0x41, 0xe1, 0x92, 0xbf, 0xc0, 0xc7, 0x15, 0xbf,
+	0x80, 0xe1, 0x3f, 0xf0, 0x75, 0xc9, 0x68, 0x25, 0xdb, 0x8a, 0x3f, 0xd3, 0x19, 0xee, 0xac, 0x73,
+	0x9e, 0xe7, 0x3c, 0xcf, 0x6a, 0xcf, 0xae, 0x8e, 0x21, 0x63, 0x58, 0x66, 0xbe, 0x7d, 0xa6, 0xd3,
+	0x53, 0x6a, 0x33, 0x4f, 0xb7, 0x5a, 0x16, 0xd3, 0x3d, 0xea, 0x9e, 0x9a, 0x0d, 0x9a, 0xeb, 0xba,
+	0x0e, 0x73, 0x90, 0x68, 0x58, 0x66, 0xfa, 0x4a, 0x00, 0x6b, 0x38, 0x96, 0xe5, 0xd8, 0x5e, 0x18,
+	0x4f, 0x5f, 0x0e, 0x99, 0xd1, 0xd3, 0xad, 0x96, 0xe3, 0xb4, 0x3a, 0x34, 0xcf, 0x9f, 0x4e, 0xfc,
+	0x66, 0x9e, 0x99, 0x16, 0xf5, 0x18, 0xb1, 0xba, 0x21, 0x20, 0x6b, 0xc2, 0x52, 0x9d, 0x74, 0x7c,
+	0xaa, 0x3d, 0xef, 0x52, 0xb4, 0x06, 0x8b, 0xa6, 0xcd, 0xf4, 0x53, 0xd2, 0x59, 0x15, 0x32, 0xc2,
+	0xa6, 0x58, 0x9e, 0xc3, 0x0b, 0xa6, 0xcd, 0xea, 0xa4, 0x83, 0xae, 0x43, 0xd2, 0xef, 0xe5, 0x12,
+	0x19, 0x61, 0xf3, 0x52, 0x79, 0x0e, 0x2f, 0xfa, 0x51, 0xf2, 0x06, 0x2c, 0x35, 0x3b, 0x0e, 0x09,
+	0xb3, 0x62, 0x46, 0xd8, 0x4c, 0x94, 0xe7, 0x70, 0x92, 0x87, 0xea, 0xa4, 0xb3, 0x37, 0x0f, 0xe2,
+	0x29, 0xe9, 0x64, 0x31, 0xc0, 0x31, 0x61, 0xd4, 0x3d, 0x20, 0xee, 0x53, 0x0f, 0x65, 0xe1, 0x52,
+	0xdb, 0x6c, 0xb5, 0xb9, 0xd0, 0xf2, 0x4e, 0x2a, 0x67, 0x58, 0x66, 0xae, 0xef, 0x04, 0xf3, 0x1c,
+	0xca, 0x80, 0xd8, 0x71, 0xce, 0xb8, 0xde, 0x28, 0x24, 0x48, 0x65, 0x9f, 0x02, 0x68, 0x6d, 0x97,
+	0x7a, 0x6d, 0xa7, 0x63, 0x78, 0x68, 0x03, 0xe6, 0xfd, 0x6e, 0x97, 0xba, 0x51, 0xd1, 0xff, 0x70,
+	0xc6, 0x40, 0xb3, 0x3c, 0x87, 0xc3, 0x7c, 0x00, 0xec, 0x38, 0x67, 0xd4, 0x8d, 0x4a, 0x8f, 0x03,
+	0xf2, 0xfc, 0xde, 0x32, 0x2c, 0xb1, 0x5e, 0xfd, 0xec, 0x27, 0x70, 0xb5, 0x2f, 0xa6, 0xd8, 0x4d,
+	0xc7, 0xb5, 0x08, 0x33, 0x1d, 0x1b, 0xbd, 0x09, 0x29, 0xe7, 0x24, 0xd8, 0x1d, 0x6a, 0x04, 0x6f,
+	0xc0, 0xa7, 0x13, 0x16, 0xb5, 0xd2, 0x43, 0xf1, 0x10, 0xca, 0x03, 0xf4, 0x6b, 0x7b, 0xe7, 0x9c,
+	0x0c, 0x96, 0x84, 0x63, 0x90, 0xec, 0x67, 0x02, 0x24, 0xe5, 0xa0, 0x21, 0x8a, 0xcd, 0x16, 0xda,
+	0x84, 0x24, 0x6f, 0x0e, 0xdd, 0x34, 0xb8, 0x5c, 0x6a, 0x67, 0x85, 0x73, 0x39, 0x40, 0x31, 0x3c,
+	0xbc, 0x48, 0xc3, 0x5f, 0x68, 0x1d, 0x56, 0x4c, 0x4f, 0x6f, 0x38, 0x76, 0xd3, 0x6c, 0xf9, 0x2e,
+	0x35, 0xb8, 0x54, 0x12, 0x5f, 0x36, 0xbd, 0x62, 0x3f, 0x36, 0x64, 0x46, 0x9c, 0x6d, 0xe6, 0x2e,
+	0x2c, 0x71, 0x29, 0x2f, 0x30, 0xb3, 0x0e, 0xf3, 0x26, 0xa3, 0x96, 0xb7, 0x2a, 0x64, 0xc4, 0xcd,
+	0xe5, 0xb8, 0x93, 0x62, 0xb3, 0x85, 0xc3, 0x5c, 0xf6, 0x37, 0x01, 0x50, 0xc5, 0xf4, 0x58, 0x48,
+	0xc3, 0xd4, 0xeb, 0x3a, 0xb6, 0x47, 0xd1, 0x3a, 0x2c, 0x78, 0x8c, 0x30, 0xdf, 0x8b, 0x96, 0xb1,
+	0xcc, 0xc9, 0x47, 0x3c, 0x84, 0xa3, 0x14, 0xba, 0x0f, 0x0b, 0x2e, 0x25, 0x9e, 0x63, 0x73, 0xf3,
+	0xa9, 0x9d, 0x9b, 0x1c, 0x34, 0x5a, 0x2d, 0x87, 0x39, 0x0a, 0x47, 0x68, 0x74, 0x1b, 0x16, 0xc2,
+	0x23, 0x14, 0x2d, 0x29, 0x35, 0x70, 0x16, 0x18, 0xc7, 0x51, 0x36, 0xbb, 0x0f, 0x0b, 0x21, 0x13,
+	0x5d, 0x05, 0xa9, 0xa6, 0x96, 0xe4, 0x7d, 0x45, 0x95, 0x4b, 0x3a, 0x96, 0x0b, 0x47, 0x55, 0x55,
+	0x9a, 0x43, 0x08, 0x52, 0x35, 0xf5, 0x5d, 0xb5, 0x7a, 0xac, 0xea, 0x25, 0xb9, 0xae, 0x14, 0x65,
+	0x49, 0x08, 0x62, 0x8a, 0xaa, 0xc9, 0x58, 0x2d, 0x54, 0x74, 0x19, 0xe3, 0x2a, 0x96, 0x12, 0xd9,
+	0x17, 0x02, 0xa4, 0xa3, 0xea, 0xd1, 0xbb, 0xe5, 0x2d, 0x82, 0xe9, 0x33, 0x9f, 0x7a, 0x0c, 0x6d,
+	0xc1, 0xb2, 0x41, 0x83, 0x43, 0xac, 0xfb, 0x7e, 0xb4, 0x6f, 0xcb, 0x3b, 0x4b, 0xdc, 0x53, 0xcd,
+	0x37, 0x0d, 0x0c, 0x61, 0x36, 0xf8, 0x8d, 0xb6, 0x60, 0xb1, 0xd1, 0x26, 0x76, 0x8b, 0x7a, 0xe7,
+	0x0e, 0x40, 0xdf, 0x7b, 0x70, 0x00, 0x23, 0x00, 0xda, 0x02, 0xc9, 0xa5, 0x1e, 0x65, 0x3a, 0x73,
+	0x74, 0x83, 0x36, 0x89, 0xdf, 0x61, 0x7c, 0xc1, 0xc9, 0xf2, 0x1c, 0x4e, 0xf1, 0x8c, 0xe6, 0x94,
+	0xc2, 0x78, 0xd0, 0xd2, 0x4e, 0x97, 0x86, 0xbe, 0xb2, 0xbf, 0x0a, 0x70, 0x7d, 0xac, 0xdf, 0x97,
+	0xd9, 0x9c, 0xb7, 0x87, 0x36, 0x67, 0x23, 0x6e, 0x74, 0x5c, 0xd9, 0xa1, 0x5d, 0xca, 0x3e, 0xf9,
+	0x77, 0xde, 0x7e, 0x18, 0xab, 0x17, 0x2a, 0x4a, 0x49, 0x2f, 0x56, 0xd5, 0x7d, 0xe5, 0xb1, 0x24,
+	0x66, 0xbf, 0x16, 0x60, 0x85, 0x5b, 0x39, 0xa0, 0x8c, 0x94, 0x08, 0x23, 0x2f, 0xb5, 0x09, 0x77,
+	0x21, 0xd5, 0x70, 0xac, 0xae, 0x63, 0x07, 0x27, 0x8d, 0xc3, 0x13, 0xc3, 0xf0, 0x95, 0x3e, 0x80,
+	0x33, 0x5e, 0x8d, 0x33, 0x6c, 0x62, 0x51, 0xbe, 0x11, 0x4b, 0x31, 0x98, 0x4a, 0x2c, 0x9a, 0xfd,
+	0x34, 0x01, 0xf3, 0xdc, 0x16, 0x7a, 0x08, 0xa9, 0xf0, 0x20, 0x5b, 0x94, 0x11, 0x83, 0x30, 0x12,
+	0x39, 0x42, 0x83, 0xb7, 0xd8, 0xb3, 0x8e, 0x57, 0x68, 0xef, 0x31, 0x00, 0x9e, 0xbb, 0x03, 0x12,
+	0x53, 0xef, 0x80, 0x07, 0xb0, 0xe4, 0x12, 0xd3, 0xa3, 0x86, 0xde, 0x3f, 0x0a, 0xe9, 0x5c, 0xf8,
+	0x6d, 0xc8, 0xf5, 0xbe, 0x0d, 0x39, 0xad, 0xf7, 0x6d, 0xc0, 0xc9, 0x10, 0xac, 0x79, 0xe8, 0x1d,
+	0x48, 0xf5, 0x0f, 0xbd, 0x6e, 0xda, 0x4d, 0x67, 0xf5, 0x12, 0x67, 0xaf, 0x9d, 0xbf, 0x1b, 0x62,
+	0xd7, 0x21, 0x5e, 0x61, 0xf1, 0x28, 0x5a, 0x83, 0x24, 0x31, 0x22, 0xee, 0x3c, 0x7f, 0x15, 0x8b,
+	0xc4, 0xe0, 0xa9, 0xad, 0x5f, 0x52, 0xd1, 0x85, 0xa6, 0x18, 0x1e, 0x5a, 0x85, 0xab, 0x72, 0x5d,
+	0x56, 0x35, 0x5d, 0x2d, 0x1c, 0xc8, 0x7a, 0xbf, 0x0b, 0xa4, 0x39, 0x74, 0x13, 0xd2, 0x61, 0x46,
+	0xc3, 0x05, 0xf5, 0xa8, 0x28, 0x2b, 0x75, 0x19, 0xeb, 0x87, 0x95, 0xda, 0x63, 0xbd, 0x5a, 0xd3,
+	0x24, 0x03, 0xdd, 0x80, 0xb5, 0x09, 0x79, 0x45, 0x95, 0x28, 0xda, 0x86, 0x3b, 0xa3, 0xe9, 0x7a,
+	0xb5, 0xa2, 0x15, 0x1e, 0xcb, 0x7a, 0x61, 0xaf, 0x5a, 0x97, 0x75, 0xad, 0x8c, 0xe5, 0xa3, 0x72,
+	0xb5, 0x52, 0x92, 0x9a, 0xd3, 0xe1, 0x7b, 0x72, 0xa5, 0x7a, 0x1c, 0x83, 0xb7, 0xd0, 0x3d, 0xd8,
+	0x1e, 0x85, 0x6b, 0xf2, 0xc1, 0xa1, 0x8c, 0x0b, 0x5a, 0x0d, 0x8f, 0x2a, 0xb4, 0x67, 0x53, 0x86,
+	0x55, 0xcc, 0xf1, 0xa6, 0x8a, 0x35, 0x8c, 0x83, 0xd8, 0xb0, 0xc2, 0x07, 0xd3, 0xe1, 0xc3, 0xd5,
+	0x9f, 0xa2, 0x1c, 0x6c, 0x8d, 0xc2, 0xf1, 0x7b, 0xfa, 0x61, 0xf5, 0x58, 0xc6, 0x23, 0xe5, 0x3b,
+	0x33, 0xf0, 0xc3, 0xf5, 0xad, 0xf1, 0x78, 0x6d, 0x52, 0x7d, 0x7b, 0x06, 0x7e, 0xb8, 0xbe, 0x33,
+	0xbe, 0x01, 0xf6, 0x0b, 0x4a, 0xa5, 0x86, 0x65, 0xa9, 0x8b, 0x1e, 0xc0, 0xee, 0x85, 0x1b, 0x40,
+	0xc7, 0x72, 0xb1, 0x5a, 0x97, 0xb1, 0x5c, 0x92, 0x9e, 0x4d, 0x27, 0x0e, 0xd9, 0x88, 0x11, 0x5d,
+	0xf4, 0x08, 0x1e, 0xbc, 0x54, 0x53, 0xc4, 0xc8, 0xde, 0x6c, 0xf2, 0x64, 0x65, 0x36, 0xde, 0xf2,
+	0x84, 0x46, 0x89, 0x11, 0xfd, 0xe9, 0xc4, 0xc9, 0x8a, 0xa7, 0xe8, 0x2d, 0x78, 0xe3, 0xe2, 0xcd,
+	0x13, 0x63, 0x9e, 0xcd, 0x60, 0x4e, 0xd6, 0xfc, 0x70, 0x3c, 0x53, 0x9b, 0xad, 0xf9, 0x7c, 0x06,
+	0x73, 0xb2, 0xe6, 0x47, 0x68, 0x03, 0xd6, 0x27, 0x36, 0x59, 0x0c, 0xf8, 0x31, 0xba, 0x06, 0x28,
+	0x04, 0x1e, 0x1e, 0xd5, 0x06, 0xd7, 0xd4, 0x0f, 0x02, 0xfa, 0x1f, 0x5c, 0x19, 0x4a, 0x28, 0xaa,
+	0xf4, 0xe3, 0x50, 0xbc, 0xd7, 0xb6, 0x3f, 0x09, 0x28, 0x03, 0xd7, 0x47, 0xe2, 0x31, 0xa5, 0x9f,
+	0x63, 0xcc, 0xfd, 0x82, 0xda, 0x67, 0x7e, 0x93, 0x18, 0x58, 0x08, 0xe2, 0x7d, 0x0b, 0x2f, 0x12,
+	0xe7, 0x09, 0x3d, 0x0b, 0xdf, 0x26, 0x06, 0x52, 0xb1, 0x42, 0x31, 0xa9, 0xef, 0x12, 0xe8, 0x0e,
+	0xbc, 0x12, 0x22, 0x8a, 0x87, 0xb5, 0x31, 0xad, 0x5c, 0xc4, 0x8a, 0xa6, 0x14, 0x0b, 0x15, 0xe9,
+	0x73, 0x11, 0xdd, 0x86, 0xff, 0x4f, 0x83, 0xee, 0x17, 0xb4, 0x42, 0x45, 0xfa, 0x42, 0x44, 0xbb,
+	0x90, 0xbb, 0x48, 0xc9, 0x98, 0x8f, 0x2f, 0x45, 0x74, 0x17, 0x5e, 0x9b, 0x59, 0x3c, 0xc6, 0xf8,
+	0x4a, 0x44, 0x69, 0xf8, 0x6f, 0xc8, 0x28, 0x1f, 0x47, 0xe3, 0x83, 0x8e, 0xe5, 0x23, 0x59, 0x93,
+	0x7e, 0x17, 0x51, 0xbe, 0x77, 0xd3, 0x0c, 0x72, 0x53, 0xd6, 0xf6, 0x87, 0x88, 0x5e, 0x87, 0x8d,
+	0xd9, 0x84, 0x70, 0x85, 0x7f, 0x8a, 0xe8, 0x61, 0xaf, 0xdb, 0x2e, 0x52, 0x3e, 0xe6, 0xfa, 0x2f,
+	0x11, 0xdd, 0x87, 0x7b, 0x17, 0x14, 0x8a, 0xf1, 0xfe, 0x16, 0x77, 0xbe, 0x17, 0xe0, 0x86, 0x4a,
+	0x98, 0x79, 0x4a, 0xc3, 0x01, 0xec, 0x80, 0xd8, 0xa4, 0x45, 0x2d, 0x6a, 0xb3, 0xa3, 0xf0, 0xff,
+	0x23, 0xba, 0x0f, 0x30, 0x18, 0x9c, 0x51, 0x38, 0xe4, 0x97, 0x89, 0x6b, 0x9c, 0x11, 0x97, 0x2a,
+	0xa5, 0xf4, 0xb5, 0x09, 0xa3, 0x35, 0x7a, 0x1f, 0xd6, 0x6a, 0x5d, 0x83, 0x30, 0x3a, 0x66, 0xb2,
+	0x43, 0xb7, 0x26, 0xcf, 0x7c, 0x7c, 0xf4, 0x4d, 0x67, 0x66, 0x0d, 0x85, 0x7b, 0x8f, 0x9e, 0x3c,
+	0x6c, 0x99, 0xac, 0xed, 0x9f, 0xe4, 0x1a, 0x8e, 0x95, 0x77, 0xba, 0xd4, 0x6e, 0x38, 0xae, 0x91,
+	0x0f, 0xa7, 0xb1, 0x6d, 0xab, 0xbf, 0x8e, 0x6d, 0xd3, 0x66, 0xd4, 0x6d, 0x92, 0x06, 0xcd, 0x9f,
+	0xee, 0xe6, 0x5b, 0x4e, 0xde, 0xb0, 0xcc, 0x93, 0x05, 0x3e, 0xc5, 0xec, 0xfe, 0x13, 0x00, 0x00,
+	0xff, 0xff, 0x8c, 0x06, 0xe5, 0x08, 0x39, 0x0f, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
diff --git a/go/dmi/hw_management_service.pb.go b/go/dmi/hw_management_service.pb.go
index dded8f3..454c98b 100644
--- a/go/dmi/hw_management_service.pb.go
+++ b/go/dmi/hw_management_service.pb.go
@@ -23,6 +23,316 @@
 // proto package needs to be updated.
 const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
+type PhysicalInventoryResponse_Reason int32
+
+const (
+	PhysicalInventoryResponse_UNDEFINED_REASON PhysicalInventoryResponse_Reason = 0
+	PhysicalInventoryResponse_UNKNOWN_DEVICE   PhysicalInventoryResponse_Reason = 1
+	PhysicalInventoryResponse_INTERNAL_ERROR   PhysicalInventoryResponse_Reason = 2
+)
+
+var PhysicalInventoryResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+}
+
+var PhysicalInventoryResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+}
+
+func (x PhysicalInventoryResponse_Reason) String() string {
+	return proto.EnumName(PhysicalInventoryResponse_Reason_name, int32(x))
+}
+
+func (PhysicalInventoryResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{1, 0}
+}
+
+type HWComponentInfoGetResponse_Reason int32
+
+const (
+	HWComponentInfoGetResponse_UNDEFINED_REASON  HWComponentInfoGetResponse_Reason = 0
+	HWComponentInfoGetResponse_UNKNOWN_DEVICE    HWComponentInfoGetResponse_Reason = 1
+	HWComponentInfoGetResponse_UNKNOWN_COMPONENT HWComponentInfoGetResponse_Reason = 2
+	HWComponentInfoGetResponse_INTERNAL_ERROR    HWComponentInfoGetResponse_Reason = 3
+)
+
+var HWComponentInfoGetResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "UNKNOWN_COMPONENT",
+	3: "INTERNAL_ERROR",
+}
+
+var HWComponentInfoGetResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":  0,
+	"UNKNOWN_DEVICE":    1,
+	"UNKNOWN_COMPONENT": 2,
+	"INTERNAL_ERROR":    3,
+}
+
+func (x HWComponentInfoGetResponse_Reason) String() string {
+	return proto.EnumName(HWComponentInfoGetResponse_Reason_name, int32(x))
+}
+
+func (HWComponentInfoGetResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{3, 0}
+}
+
+type HWComponentInfoSetResponse_Reason int32
+
+const (
+	HWComponentInfoSetResponse_UNDEFINED_REASON  HWComponentInfoSetResponse_Reason = 0
+	HWComponentInfoSetResponse_UNKNOWN_DEVICE    HWComponentInfoSetResponse_Reason = 1
+	HWComponentInfoSetResponse_UNKNOWN_COMPONENT HWComponentInfoSetResponse_Reason = 2
+	HWComponentInfoSetResponse_INVALID_PARAMS    HWComponentInfoSetResponse_Reason = 3
+	HWComponentInfoSetResponse_INTERNAL_ERROR    HWComponentInfoSetResponse_Reason = 4
+)
+
+var HWComponentInfoSetResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "UNKNOWN_COMPONENT",
+	3: "INVALID_PARAMS",
+	4: "INTERNAL_ERROR",
+}
+
+var HWComponentInfoSetResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":  0,
+	"UNKNOWN_DEVICE":    1,
+	"UNKNOWN_COMPONENT": 2,
+	"INVALID_PARAMS":    3,
+	"INTERNAL_ERROR":    4,
+}
+
+func (x HWComponentInfoSetResponse_Reason) String() string {
+	return proto.EnumName(HWComponentInfoSetResponse_Reason_name, int32(x))
+}
+
+func (HWComponentInfoSetResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{5, 0}
+}
+
+type StartManagingDeviceResponse_Reason int32
+
+const (
+	StartManagingDeviceResponse_UNDEFINED_REASON StartManagingDeviceResponse_Reason = 0
+	// DEVICE_ALREADY_MANAGED is returned when StartManagingDevice is called again for the same name AFTER a previously
+	// successful StartManagingDevice operation
+	StartManagingDeviceResponse_DEVICE_ALREADY_MANAGED StartManagingDeviceResponse_Reason = 1
+	// OPERATION_ALREADY_IN_PROGRESS is returned when StartManagingDevice is called again for the same name BEFORE
+	// a previous StartManagingDevice operation has completed
+	StartManagingDeviceResponse_OPERATION_ALREADY_IN_PROGRESS StartManagingDeviceResponse_Reason = 2
+	StartManagingDeviceResponse_INVALID_PARAMS                StartManagingDeviceResponse_Reason = 3
+	StartManagingDeviceResponse_INTERNAL_ERROR                StartManagingDeviceResponse_Reason = 4
+)
+
+var StartManagingDeviceResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "DEVICE_ALREADY_MANAGED",
+	2: "OPERATION_ALREADY_IN_PROGRESS",
+	3: "INVALID_PARAMS",
+	4: "INTERNAL_ERROR",
+}
+
+var StartManagingDeviceResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":              0,
+	"DEVICE_ALREADY_MANAGED":        1,
+	"OPERATION_ALREADY_IN_PROGRESS": 2,
+	"INVALID_PARAMS":                3,
+	"INTERNAL_ERROR":                4,
+}
+
+func (x StartManagingDeviceResponse_Reason) String() string {
+	return proto.EnumName(StartManagingDeviceResponse_Reason_name, int32(x))
+}
+
+func (StartManagingDeviceResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{6, 0}
+}
+
+// The only case in which an error is expected is if the name of the
+// device to be stopped is not found
+type StopManagingDeviceResponse_Reason int32
+
+const (
+	StopManagingDeviceResponse_UNDEFINED_REASON StopManagingDeviceResponse_Reason = 0
+	StopManagingDeviceResponse_UNKNOWN_DEVICE   StopManagingDeviceResponse_Reason = 1
+)
+
+var StopManagingDeviceResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+}
+
+var StopManagingDeviceResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+}
+
+func (x StopManagingDeviceResponse_Reason) String() string {
+	return proto.EnumName(StopManagingDeviceResponse_Reason_name, int32(x))
+}
+
+func (StopManagingDeviceResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{8, 0}
+}
+
+type SetRemoteEndpointResponse_Reason int32
+
+const (
+	SetRemoteEndpointResponse_UNDEFINED_REASON                SetRemoteEndpointResponse_Reason = 0
+	SetRemoteEndpointResponse_UNKNOWN_DEVICE                  SetRemoteEndpointResponse_Reason = 1
+	SetRemoteEndpointResponse_INTERNAL_ERROR                  SetRemoteEndpointResponse_Reason = 2
+	SetRemoteEndpointResponse_LOGGING_ENDPOINT_ERROR          SetRemoteEndpointResponse_Reason = 3
+	SetRemoteEndpointResponse_LOGGING_ENDPOINT_PROTOCOL_ERROR SetRemoteEndpointResponse_Reason = 4
+	SetRemoteEndpointResponse_MSGBUS_ENDPOINT_ERROR           SetRemoteEndpointResponse_Reason = 5
+)
+
+var SetRemoteEndpointResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "LOGGING_ENDPOINT_ERROR",
+	4: "LOGGING_ENDPOINT_PROTOCOL_ERROR",
+	5: "MSGBUS_ENDPOINT_ERROR",
+}
+
+var SetRemoteEndpointResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":                0,
+	"UNKNOWN_DEVICE":                  1,
+	"INTERNAL_ERROR":                  2,
+	"LOGGING_ENDPOINT_ERROR":          3,
+	"LOGGING_ENDPOINT_PROTOCOL_ERROR": 4,
+	"MSGBUS_ENDPOINT_ERROR":           5,
+}
+
+func (x SetRemoteEndpointResponse_Reason) String() string {
+	return proto.EnumName(SetRemoteEndpointResponse_Reason_name, int32(x))
+}
+
+func (SetRemoteEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{11, 0}
+}
+
+type GetLoggingEndpointResponse_Reason int32
+
+const (
+	GetLoggingEndpointResponse_UNDEFINED_REASON GetLoggingEndpointResponse_Reason = 0
+	GetLoggingEndpointResponse_UNKNOWN_DEVICE   GetLoggingEndpointResponse_Reason = 1
+	GetLoggingEndpointResponse_INTERNAL_ERROR   GetLoggingEndpointResponse_Reason = 2
+)
+
+var GetLoggingEndpointResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+}
+
+var GetLoggingEndpointResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+}
+
+func (x GetLoggingEndpointResponse_Reason) String() string {
+	return proto.EnumName(GetLoggingEndpointResponse_Reason_name, int32(x))
+}
+
+func (GetLoggingEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{12, 0}
+}
+
+type GetMsgBusEndpointResponse_Reason int32
+
+const (
+	GetMsgBusEndpointResponse_UNDEFINED_REASON GetMsgBusEndpointResponse_Reason = 0
+	GetMsgBusEndpointResponse_INTERNAL_ERROR   GetMsgBusEndpointResponse_Reason = 1
+)
+
+var GetMsgBusEndpointResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "INTERNAL_ERROR",
+}
+
+var GetMsgBusEndpointResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"INTERNAL_ERROR":   1,
+}
+
+func (x GetMsgBusEndpointResponse_Reason) String() string {
+	return proto.EnumName(GetMsgBusEndpointResponse_Reason_name, int32(x))
+}
+
+func (GetMsgBusEndpointResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{14, 0}
+}
+
+type SetLogLevelResponse_Reason int32
+
+const (
+	SetLogLevelResponse_UNDEFINED_REASON   SetLogLevelResponse_Reason = 0
+	SetLogLevelResponse_UNKNOWN_DEVICE     SetLogLevelResponse_Reason = 1
+	SetLogLevelResponse_INTERNAL_ERROR     SetLogLevelResponse_Reason = 2
+	SetLogLevelResponse_UNKNOWN_LOG_ENTITY SetLogLevelResponse_Reason = 3
+)
+
+var SetLogLevelResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "UNKNOWN_LOG_ENTITY",
+}
+
+var SetLogLevelResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":   0,
+	"UNKNOWN_DEVICE":     1,
+	"INTERNAL_ERROR":     2,
+	"UNKNOWN_LOG_ENTITY": 3,
+}
+
+func (x SetLogLevelResponse_Reason) String() string {
+	return proto.EnumName(SetLogLevelResponse_Reason_name, int32(x))
+}
+
+func (SetLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{17, 0}
+}
+
+type GetLogLevelResponse_Reason int32
+
+const (
+	GetLogLevelResponse_UNDEFINED_REASON   GetLogLevelResponse_Reason = 0
+	GetLogLevelResponse_UNKNOWN_DEVICE     GetLogLevelResponse_Reason = 1
+	GetLogLevelResponse_INTERNAL_ERROR     GetLogLevelResponse_Reason = 2
+	GetLogLevelResponse_UNKNOWN_LOG_ENTITY GetLogLevelResponse_Reason = 3
+)
+
+var GetLogLevelResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "UNKNOWN_LOG_ENTITY",
+}
+
+var GetLogLevelResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":   0,
+	"UNKNOWN_DEVICE":     1,
+	"INTERNAL_ERROR":     2,
+	"UNKNOWN_LOG_ENTITY": 3,
+}
+
+func (x GetLogLevelResponse_Reason) String() string {
+	return proto.EnumName(GetLogLevelResponse_Reason_name, int32(x))
+}
+
+func (GetLogLevelResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_eae902e73066286d, []int{19, 0}
+}
+
 type PhysicalInventoryRequest struct {
 	DeviceUuid           *Uuid    `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
 	XXX_NoUnkeyedLiteral struct{} `json:"-"`
@@ -63,12 +373,12 @@
 }
 
 type PhysicalInventoryResponse struct {
-	Status               Status    `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason    `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Inventory            *Hardware `protobuf:"bytes,3,opt,name=inventory,proto3" json:"inventory,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}  `json:"-"`
-	XXX_unrecognized     []byte    `json:"-"`
-	XXX_sizecache        int32     `json:"-"`
+	Status               Status                           `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               PhysicalInventoryResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.PhysicalInventoryResponse_Reason" json:"reason,omitempty"`
+	Inventory            *Hardware                        `protobuf:"bytes,3,opt,name=inventory,proto3" json:"inventory,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
+	XXX_unrecognized     []byte                           `json:"-"`
+	XXX_sizecache        int32                            `json:"-"`
 }
 
 func (m *PhysicalInventoryResponse) Reset()         { *m = PhysicalInventoryResponse{} }
@@ -103,11 +413,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *PhysicalInventoryResponse) GetReason() Reason {
+func (m *PhysicalInventoryResponse) GetReason() PhysicalInventoryResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return PhysicalInventoryResponse_UNDEFINED_REASON
 }
 
 func (m *PhysicalInventoryResponse) GetInventory() *Hardware {
@@ -173,12 +483,12 @@
 }
 
 type HWComponentInfoGetResponse struct {
-	Status               Status     `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason     `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Component            *Component `protobuf:"bytes,3,opt,name=component,proto3" json:"component,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
-	XXX_unrecognized     []byte     `json:"-"`
-	XXX_sizecache        int32      `json:"-"`
+	Status               Status                            `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               HWComponentInfoGetResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.HWComponentInfoGetResponse_Reason" json:"reason,omitempty"`
+	Component            *Component                        `protobuf:"bytes,3,opt,name=component,proto3" json:"component,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                          `json:"-"`
+	XXX_unrecognized     []byte                            `json:"-"`
+	XXX_sizecache        int32                             `json:"-"`
 }
 
 func (m *HWComponentInfoGetResponse) Reset()         { *m = HWComponentInfoGetResponse{} }
@@ -213,11 +523,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *HWComponentInfoGetResponse) GetReason() Reason {
+func (m *HWComponentInfoGetResponse) GetReason() HWComponentInfoGetResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return HWComponentInfoGetResponse_UNDEFINED_REASON
 }
 
 func (m *HWComponentInfoGetResponse) GetComponent() *Component {
@@ -291,11 +601,11 @@
 }
 
 type HWComponentInfoSetResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                            `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               HWComponentInfoSetResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.HWComponentInfoSetResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                          `json:"-"`
+	XXX_unrecognized     []byte                            `json:"-"`
+	XXX_sizecache        int32                             `json:"-"`
 }
 
 func (m *HWComponentInfoSetResponse) Reset()         { *m = HWComponentInfoSetResponse{} }
@@ -330,20 +640,20 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *HWComponentInfoSetResponse) GetReason() Reason {
+func (m *HWComponentInfoSetResponse) GetReason() HWComponentInfoSetResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return HWComponentInfoSetResponse_UNDEFINED_REASON
 }
 
 type StartManagingDeviceResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	DeviceUuid           *Uuid    `protobuf:"bytes,3,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                             `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               StartManagingDeviceResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.StartManagingDeviceResponse_Reason" json:"reason,omitempty"`
+	DeviceUuid           *Uuid                              `protobuf:"bytes,3,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                           `json:"-"`
+	XXX_unrecognized     []byte                             `json:"-"`
+	XXX_sizecache        int32                              `json:"-"`
 }
 
 func (m *StartManagingDeviceResponse) Reset()         { *m = StartManagingDeviceResponse{} }
@@ -378,11 +688,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *StartManagingDeviceResponse) GetReason() Reason {
+func (m *StartManagingDeviceResponse) GetReason() StartManagingDeviceResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return StartManagingDeviceResponse_UNDEFINED_REASON
 }
 
 func (m *StartManagingDeviceResponse) GetDeviceUuid() *Uuid {
@@ -432,11 +742,11 @@
 }
 
 type StopManagingDeviceResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                            `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               StopManagingDeviceResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.StopManagingDeviceResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                          `json:"-"`
+	XXX_unrecognized     []byte                            `json:"-"`
+	XXX_sizecache        int32                             `json:"-"`
 }
 
 func (m *StopManagingDeviceResponse) Reset()         { *m = StopManagingDeviceResponse{} }
@@ -471,11 +781,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *StopManagingDeviceResponse) GetReason() Reason {
+func (m *StopManagingDeviceResponse) GetReason() StopManagingDeviceResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return StopManagingDeviceResponse_UNDEFINED_REASON
 }
 
 type ManagedDevicesResponse struct {
@@ -573,11 +883,11 @@
 }
 
 type SetRemoteEndpointResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                           `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               SetRemoteEndpointResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.SetRemoteEndpointResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
+	XXX_unrecognized     []byte                           `json:"-"`
+	XXX_sizecache        int32                            `json:"-"`
 }
 
 func (m *SetRemoteEndpointResponse) Reset()         { *m = SetRemoteEndpointResponse{} }
@@ -612,21 +922,21 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *SetRemoteEndpointResponse) GetReason() Reason {
+func (m *SetRemoteEndpointResponse) GetReason() SetRemoteEndpointResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return SetRemoteEndpointResponse_UNDEFINED_REASON
 }
 
 type GetLoggingEndpointResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	LoggingEndpoint      string   `protobuf:"bytes,3,opt,name=logging_endpoint,json=loggingEndpoint,proto3" json:"logging_endpoint,omitempty"`
-	LoggingProtocol      string   `protobuf:"bytes,4,opt,name=logging_protocol,json=loggingProtocol,proto3" json:"logging_protocol,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                            `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetLoggingEndpointResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.GetLoggingEndpointResponse_Reason" json:"reason,omitempty"`
+	LoggingEndpoint      string                            `protobuf:"bytes,3,opt,name=logging_endpoint,json=loggingEndpoint,proto3" json:"logging_endpoint,omitempty"`
+	LoggingProtocol      string                            `protobuf:"bytes,4,opt,name=logging_protocol,json=loggingProtocol,proto3" json:"logging_protocol,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                          `json:"-"`
+	XXX_unrecognized     []byte                            `json:"-"`
+	XXX_sizecache        int32                             `json:"-"`
 }
 
 func (m *GetLoggingEndpointResponse) Reset()         { *m = GetLoggingEndpointResponse{} }
@@ -661,11 +971,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *GetLoggingEndpointResponse) GetReason() Reason {
+func (m *GetLoggingEndpointResponse) GetReason() GetLoggingEndpointResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return GetLoggingEndpointResponse_UNDEFINED_REASON
 }
 
 func (m *GetLoggingEndpointResponse) GetLoggingEndpoint() string {
@@ -722,12 +1032,12 @@
 }
 
 type GetMsgBusEndpointResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	MsgbusEndpoint       string   `protobuf:"bytes,3,opt,name=msgbus_endpoint,json=msgbusEndpoint,proto3" json:"msgbus_endpoint,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                           `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetMsgBusEndpointResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.GetMsgBusEndpointResponse_Reason" json:"reason,omitempty"`
+	MsgbusEndpoint       string                           `protobuf:"bytes,3,opt,name=msgbus_endpoint,json=msgbusEndpoint,proto3" json:"msgbus_endpoint,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
+	XXX_unrecognized     []byte                           `json:"-"`
+	XXX_sizecache        int32                            `json:"-"`
 }
 
 func (m *GetMsgBusEndpointResponse) Reset()         { *m = GetMsgBusEndpointResponse{} }
@@ -762,11 +1072,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *GetMsgBusEndpointResponse) GetReason() Reason {
+func (m *GetMsgBusEndpointResponse) GetReason() GetMsgBusEndpointResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return GetMsgBusEndpointResponse_UNDEFINED_REASON
 }
 
 func (m *GetMsgBusEndpointResponse) GetMsgbusEndpoint() string {
@@ -871,12 +1181,12 @@
 }
 
 type SetLogLevelResponse struct {
-	DeviceUuid           *Uuid    `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
-	Status               Status   `protobuf:"varint,2,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,3,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	DeviceUuid           *Uuid                      `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	Status               Status                     `protobuf:"varint,2,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               SetLogLevelResponse_Reason `protobuf:"varint,3,opt,name=reason,proto3,enum=dmi.SetLogLevelResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
+	XXX_unrecognized     []byte                     `json:"-"`
+	XXX_sizecache        int32                      `json:"-"`
 }
 
 func (m *SetLogLevelResponse) Reset()         { *m = SetLogLevelResponse{} }
@@ -918,11 +1228,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *SetLogLevelResponse) GetReason() Reason {
+func (m *SetLogLevelResponse) GetReason() SetLogLevelResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return SetLogLevelResponse_UNDEFINED_REASON
 }
 
 type GetLogLevelRequest struct {
@@ -973,13 +1283,13 @@
 }
 
 type GetLogLevelResponse struct {
-	DeviceUuid           *Uuid               `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
-	LogLevels            []*EntitiesLogLevel `protobuf:"bytes,2,rep,name=logLevels,proto3" json:"logLevels,omitempty"`
-	Status               Status              `protobuf:"varint,3,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason              `protobuf:"varint,4,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}            `json:"-"`
-	XXX_unrecognized     []byte              `json:"-"`
-	XXX_sizecache        int32               `json:"-"`
+	DeviceUuid           *Uuid                      `protobuf:"bytes,1,opt,name=device_uuid,json=deviceUuid,proto3" json:"device_uuid,omitempty"`
+	LogLevels            []*EntitiesLogLevel        `protobuf:"bytes,2,rep,name=logLevels,proto3" json:"logLevels,omitempty"`
+	Status               Status                     `protobuf:"varint,3,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetLogLevelResponse_Reason `protobuf:"varint,4,opt,name=reason,proto3,enum=dmi.GetLogLevelResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
+	XXX_unrecognized     []byte                     `json:"-"`
+	XXX_sizecache        int32                      `json:"-"`
 }
 
 func (m *GetLogLevelResponse) Reset()         { *m = GetLogLevelResponse{} }
@@ -1028,11 +1338,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *GetLogLevelResponse) GetReason() Reason {
+func (m *GetLogLevelResponse) GetReason() GetLogLevelResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return GetLogLevelResponse_UNDEFINED_REASON
 }
 
 type GetLoggableEntitiesRequest struct {
@@ -1075,6 +1385,16 @@
 }
 
 func init() {
+	proto.RegisterEnum("dmi.PhysicalInventoryResponse_Reason", PhysicalInventoryResponse_Reason_name, PhysicalInventoryResponse_Reason_value)
+	proto.RegisterEnum("dmi.HWComponentInfoGetResponse_Reason", HWComponentInfoGetResponse_Reason_name, HWComponentInfoGetResponse_Reason_value)
+	proto.RegisterEnum("dmi.HWComponentInfoSetResponse_Reason", HWComponentInfoSetResponse_Reason_name, HWComponentInfoSetResponse_Reason_value)
+	proto.RegisterEnum("dmi.StartManagingDeviceResponse_Reason", StartManagingDeviceResponse_Reason_name, StartManagingDeviceResponse_Reason_value)
+	proto.RegisterEnum("dmi.StopManagingDeviceResponse_Reason", StopManagingDeviceResponse_Reason_name, StopManagingDeviceResponse_Reason_value)
+	proto.RegisterEnum("dmi.SetRemoteEndpointResponse_Reason", SetRemoteEndpointResponse_Reason_name, SetRemoteEndpointResponse_Reason_value)
+	proto.RegisterEnum("dmi.GetLoggingEndpointResponse_Reason", GetLoggingEndpointResponse_Reason_name, GetLoggingEndpointResponse_Reason_value)
+	proto.RegisterEnum("dmi.GetMsgBusEndpointResponse_Reason", GetMsgBusEndpointResponse_Reason_name, GetMsgBusEndpointResponse_Reason_value)
+	proto.RegisterEnum("dmi.SetLogLevelResponse_Reason", SetLogLevelResponse_Reason_name, SetLogLevelResponse_Reason_value)
+	proto.RegisterEnum("dmi.GetLogLevelResponse_Reason", GetLogLevelResponse_Reason_name, GetLogLevelResponse_Reason_value)
 	proto.RegisterType((*PhysicalInventoryRequest)(nil), "dmi.PhysicalInventoryRequest")
 	proto.RegisterType((*PhysicalInventoryResponse)(nil), "dmi.PhysicalInventoryResponse")
 	proto.RegisterType((*HWComponentInfoGetRequest)(nil), "dmi.HWComponentInfoGetRequest")
@@ -1101,69 +1421,89 @@
 func init() { proto.RegisterFile("dmi/hw_management_service.proto", fileDescriptor_eae902e73066286d) }
 
 var fileDescriptor_eae902e73066286d = []byte{
-	// 988 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0x51, 0x6f, 0xe3, 0x44,
-	0x10, 0x96, 0x9b, 0xea, 0xae, 0x99, 0x70, 0xed, 0x75, 0x0b, 0x47, 0xe2, 0x8a, 0x5e, 0x65, 0x84,
-	0xb8, 0x03, 0x2e, 0x39, 0xa5, 0x4f, 0x88, 0x17, 0x74, 0x77, 0xbd, 0xa4, 0x22, 0x3d, 0x55, 0x36,
-	0xa7, 0x0a, 0x84, 0x54, 0x39, 0xf1, 0xc4, 0x5d, 0xc9, 0xde, 0x0d, 0xf1, 0x3a, 0xa7, 0xfe, 0x06,
-	0x24, 0x1e, 0x80, 0x57, 0x24, 0xfe, 0x01, 0x7f, 0x80, 0x07, 0x7e, 0x04, 0x3f, 0x08, 0x79, 0x77,
-	0xed, 0xd8, 0x89, 0xdd, 0x0b, 0xbd, 0x54, 0xe2, 0x2d, 0xf6, 0x7e, 0xfb, 0xcd, 0xcc, 0x37, 0xe3,
-	0x99, 0x09, 0x3c, 0xf4, 0x42, 0xda, 0xb9, 0x7c, 0x73, 0x11, 0xba, 0xcc, 0xf5, 0x31, 0x44, 0x26,
-	0x2e, 0x22, 0x9c, 0xce, 0xe8, 0x08, 0xdb, 0x93, 0x29, 0x17, 0x9c, 0xd4, 0xbc, 0x90, 0x9a, 0xbb,
-	0x09, 0x6a, 0xc4, 0xc3, 0x90, 0xb3, 0x48, 0xbd, 0x37, 0xdf, 0x53, 0x17, 0xf5, 0xd3, 0xbe, 0xcf,
-	0xb9, 0x1f, 0x60, 0x47, 0x3e, 0x0d, 0xe3, 0x71, 0x07, 0xc3, 0x89, 0xb8, 0x52, 0x87, 0xd6, 0x4b,
-	0x68, 0x9e, 0x5d, 0x5e, 0x45, 0x74, 0xe4, 0x06, 0x27, 0x6c, 0x86, 0x4c, 0xf0, 0xe9, 0x95, 0x8d,
-	0x3f, 0xc6, 0x18, 0x09, 0xf2, 0x19, 0x34, 0x3c, 0x4c, 0xcc, 0x5d, 0xc4, 0x31, 0xf5, 0x9a, 0xc6,
-	0xa1, 0xf1, 0xa8, 0xd1, 0xad, 0xb7, 0xbd, 0x90, 0xb6, 0x5f, 0xc7, 0xd4, 0xb3, 0x41, 0x9d, 0x26,
-	0xbf, 0xad, 0x5f, 0x0c, 0x68, 0x95, 0x10, 0x45, 0x13, 0xce, 0x22, 0x24, 0x1f, 0xc3, 0x9d, 0x48,
-	0xb8, 0x22, 0x8e, 0x24, 0xc9, 0x76, 0xb7, 0x21, 0x49, 0x1c, 0xf9, 0xca, 0xd6, 0x47, 0x09, 0x68,
-	0x8a, 0x6e, 0xc4, 0x59, 0x73, 0x23, 0x07, 0xb2, 0xe5, 0x2b, 0x5b, 0x1f, 0x91, 0xcf, 0xa1, 0x4e,
-	0x53, 0xfa, 0x66, 0x4d, 0x7a, 0x74, 0x4f, 0xe2, 0xfa, 0xee, 0xd4, 0x7b, 0xe3, 0x4e, 0xd1, 0x9e,
-	0x9f, 0x5b, 0x7f, 0x18, 0xd0, 0xea, 0x9f, 0x3f, 0xe7, 0xe1, 0x84, 0x33, 0x64, 0xe2, 0x84, 0x8d,
-	0x79, 0x0f, 0xc5, 0x0d, 0xc2, 0x23, 0x4f, 0x61, 0x7b, 0x94, 0xd2, 0x28, 0xf8, 0xc6, 0x22, 0xfc,
-	0x5e, 0x06, 0x90, 0x37, 0x3e, 0xc9, 0xdf, 0x60, 0x6e, 0x88, 0xd2, 0xdb, 0x7a, 0x0e, 0xf6, 0xca,
-	0x0d, 0xd1, 0xfa, 0xcd, 0x00, 0xb3, 0xcc, 0xc5, 0xb5, 0x0b, 0xf7, 0x05, 0xd4, 0x33, 0xcb, 0x5a,
-	0xb8, 0x6d, 0x89, 0xcb, 0x6c, 0xdb, 0x73, 0x80, 0xf5, 0xcf, 0xb2, 0x72, 0xce, 0xff, 0x4b, 0x39,
-	0xd2, 0x85, 0xbb, 0xa3, 0x4b, 0x97, 0xf9, 0x18, 0x35, 0x37, 0x25, 0x63, 0x53, 0x32, 0x9e, 0x72,
-	0x8f, 0x8e, 0xa9, 0x3b, 0x0c, 0x70, 0x1e, 0x58, 0x0a, 0xb4, 0xc6, 0x4b, 0x62, 0x3b, 0xb7, 0x21,
-	0xb6, 0xf5, 0xab, 0x01, 0xfb, 0x8e, 0x70, 0xa7, 0xe2, 0x34, 0xf9, 0x74, 0x29, 0xf3, 0x5f, 0x48,
-	0x41, 0x6e, 0x21, 0xad, 0x0b, 0xa9, 0xa8, 0x5d, 0xf7, 0x8d, 0x76, 0xa0, 0xe5, 0x08, 0x3e, 0x59,
-	0xf4, 0x49, 0xe5, 0x94, 0xc0, 0xa6, 0xd4, 0xda, 0x90, 0x5a, 0xcb, 0xdf, 0x89, 0x5c, 0x65, 0x17,
-	0xd6, 0x2e, 0xd7, 0x00, 0x1e, 0x48, 0x1b, 0xe8, 0x29, 0x13, 0x51, 0x66, 0xa3, 0x0b, 0x77, 0x55,
-	0x00, 0x89, 0x91, 0xda, 0xf5, 0x49, 0xd6, 0x40, 0xeb, 0x77, 0x03, 0x5a, 0x0e, 0x8a, 0x01, 0xf7,
-	0x13, 0xa7, 0x8f, 0x99, 0x37, 0xe1, 0x94, 0xdd, 0xa8, 0x76, 0x1f, 0xc3, 0xfd, 0x40, 0xb1, 0x5c,
-	0xa0, 0xa6, 0x91, 0x61, 0xd4, 0xed, 0x9d, 0xa0, 0xc8, 0x9e, 0x87, 0xca, 0xc6, 0x3a, 0xe2, 0x81,
-	0x2e, 0xdb, 0x14, 0x7a, 0xa6, 0x5f, 0x5b, 0x28, 0xdd, 0xb3, 0x31, 0xe4, 0x02, 0xe7, 0xde, 0xad,
-	0x5d, 0xd4, 0xbf, 0x0c, 0x30, 0x7b, 0x25, 0x32, 0xac, 0xbd, 0x04, 0xcb, 0x54, 0xaa, 0xad, 0xae,
-	0xd2, 0x66, 0xb9, 0x4a, 0xcf, 0xa1, 0xe9, 0xa0, 0x38, 0x8d, 0xfc, 0x67, 0x71, 0xb4, 0x98, 0xc3,
-	0x4f, 0x61, 0x27, 0x8c, 0xfc, 0x61, 0x1c, 0xcd, 0x0d, 0xaa, 0xb2, 0xdd, 0x56, 0xaf, 0x53, 0xbc,
-	0xf5, 0xb3, 0x01, 0xad, 0xde, 0x32, 0xcb, 0xda, 0x25, 0x28, 0x71, 0xa8, 0x56, 0xea, 0xd0, 0x77,
-	0x70, 0xff, 0x98, 0x09, 0x2a, 0x28, 0x46, 0x03, 0xee, 0x0f, 0x70, 0x86, 0x01, 0x79, 0x0c, 0x5b,
-	0x81, 0xfe, 0xad, 0x1d, 0x51, 0x13, 0x2d, 0x05, 0xd8, 0xd9, 0x31, 0x31, 0x61, 0x0b, 0xf5, 0xf5,
-	0xe6, 0xc6, 0x61, 0xed, 0x51, 0xdd, 0xce, 0x9e, 0xad, 0x18, 0x88, 0xaa, 0x7a, 0x75, 0xe9, 0x06,
-	0xe5, 0x7e, 0x04, 0xf5, 0x20, 0xd9, 0x14, 0x66, 0x18, 0x28, 0xfa, 0x46, 0xf7, 0x03, 0x89, 0x5c,
-	0x74, 0xd9, 0x9e, 0xe3, 0xac, 0x9f, 0x0c, 0xd8, 0x2b, 0xd8, 0xd5, 0xe2, 0xfe, 0x17, 0xc3, 0xf3,
-	0x44, 0x6c, 0xac, 0x92, 0x88, 0x5a, 0x75, 0xd1, 0xff, 0x00, 0xa4, 0xf7, 0x6e, 0x22, 0x5c, 0x27,
-	0xf1, 0xdf, 0x06, 0xec, 0xf5, 0xde, 0x31, 0x56, 0x25, 0xf2, 0x60, 0x45, 0x91, 0x15, 0x2e, 0x27,
-	0x50, 0x6d, 0x15, 0x81, 0x36, 0xab, 0x05, 0xea, 0x67, 0x4d, 0x21, 0xe9, 0x9e, 0xa9, 0xcd, 0x1b,
-	0x08, 0xd5, 0xfd, 0x73, 0x0b, 0x5a, 0xaf, 0x5c, 0x41, 0x67, 0xd8, 0x3f, 0x3f, 0xcd, 0x36, 0x54,
-	0x47, 0x2d, 0xa8, 0xc4, 0x81, 0xbd, 0x92, 0x01, 0x48, 0x2a, 0xdb, 0xb7, 0x79, 0x98, 0x86, 0x54,
-	0x35, 0x34, 0x9f, 0x1a, 0xe4, 0x35, 0x90, 0xe5, 0x79, 0x44, 0x0e, 0xf4, 0xcd, 0x8a, 0xc9, 0x66,
-	0x3e, 0xac, 0x3c, 0xd7, 0xe9, 0xeb, 0xc3, 0x6e, 0xd2, 0x24, 0x0a, 0x13, 0x88, 0x3c, 0x68, 0xab,
-	0xb5, 0xb9, 0x9d, 0xae, 0xcd, 0xed, 0xe3, 0x64, 0x6d, 0x36, 0xf7, 0x55, 0x04, 0xe5, 0xe3, 0xea,
-	0x1c, 0xde, 0xef, 0xa1, 0x58, 0xda, 0x83, 0xc9, 0x47, 0xf2, 0x52, 0xd5, 0xa2, 0x6d, 0x1e, 0x54,
-	0x1d, 0x67, 0x91, 0x9f, 0xcb, 0xba, 0x5e, 0xd8, 0x5d, 0x74, 0xe4, 0x95, 0x1b, 0xae, 0x8e, 0xbc,
-	0x7a, 0xbd, 0xd4, 0x92, 0xae, 0x48, 0xec, 0xbc, 0x85, 0x38, 0xbf, 0x4a, 0x7d, 0x9b, 0x36, 0xa3,
-	0x42, 0xfb, 0xd7, 0x99, 0xaa, 0x9a, 0xcd, 0x66, 0x76, 0x5e, 0x31, 0x1c, 0x5f, 0xa6, 0x5f, 0x77,
-	0x81, 0x75, 0xa7, 0xb0, 0xff, 0x9f, 0xbc, 0xd0, 0xde, 0x5d, 0x33, 0xfb, 0x6c, 0xd8, 0x5d, 0x9a,
-	0x2d, 0x3a, 0x47, 0x55, 0x33, 0xe7, 0xad, 0xbe, 0x7d, 0xa3, 0x8a, 0xa8, 0xc8, 0x59, 0x55, 0x44,
-	0x07, 0xa9, 0x87, 0x15, 0x93, 0xe9, 0x2c, 0xed, 0x33, 0x85, 0xaf, 0x94, 0x14, 0x02, 0x2b, 0xf9,
-	0x7e, 0xcd, 0x66, 0x0e, 0x50, 0x6c, 0x51, 0x5f, 0x43, 0x23, 0xd7, 0xa5, 0xc9, 0x87, 0xb9, 0x4c,
-	0xe4, 0x5b, 0xa5, 0x66, 0x70, 0xca, 0x19, 0x7a, 0x4b, 0x0c, 0xbd, 0x2a, 0x86, 0x12, 0x1f, 0x9e,
-	0x7d, 0xf5, 0xfd, 0x97, 0x3e, 0x15, 0x97, 0xf1, 0xb0, 0x3d, 0xe2, 0x61, 0x87, 0x4f, 0x90, 0x8d,
-	0xf8, 0xd4, 0xeb, 0xa8, 0x9e, 0xf2, 0x64, 0xfe, 0x2f, 0xf7, 0x09, 0x65, 0x02, 0xa7, 0x63, 0x77,
-	0x84, 0x9d, 0xd9, 0x51, 0xc7, 0xe7, 0x1d, 0x2f, 0xa4, 0xc3, 0x3b, 0x52, 0xc2, 0xa3, 0x7f, 0x03,
-	0x00, 0x00, 0xff, 0xff, 0x3a, 0x27, 0xf3, 0x9c, 0x15, 0x0f, 0x00, 0x00,
+	// 1298 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0x5f, 0x6f, 0xdb, 0x54,
+	0x14, 0xc7, 0x71, 0xe9, 0x96, 0x53, 0xd6, 0xa5, 0x77, 0x5b, 0x49, 0x3c, 0xad, 0x1d, 0x9e, 0xc6,
+	0x36, 0x60, 0xc9, 0x94, 0x3d, 0x20, 0x84, 0xf8, 0x93, 0x35, 0xae, 0x6b, 0x2d, 0xb1, 0xa3, 0xeb,
+	0x74, 0xd5, 0x10, 0x60, 0xb9, 0xf1, 0x6d, 0x6a, 0x29, 0xb6, 0xb3, 0xd8, 0xc9, 0xb4, 0x0f, 0xc0,
+	0x2b, 0xdf, 0x00, 0x81, 0x10, 0xef, 0xbc, 0x80, 0xf8, 0x22, 0x3c, 0xf2, 0x31, 0x78, 0x07, 0xf9,
+	0x5e, 0x3b, 0x7f, 0x1c, 0x3b, 0x69, 0x9b, 0x4a, 0xf0, 0x16, 0xfb, 0x9e, 0xfb, 0xf3, 0x39, 0xe7,
+	0x77, 0xee, 0xef, 0x9e, 0x13, 0xd8, 0xb5, 0x1c, 0xbb, 0x72, 0xfa, 0xda, 0x70, 0x4c, 0xd7, 0xec,
+	0x12, 0x87, 0xb8, 0x81, 0xe1, 0x93, 0xc1, 0xc8, 0xee, 0x90, 0x72, 0x7f, 0xe0, 0x05, 0x1e, 0xe2,
+	0x2d, 0xc7, 0x16, 0xb6, 0x42, 0xab, 0x8e, 0xe7, 0x38, 0x9e, 0xeb, 0xb3, 0xf7, 0xc2, 0x3b, 0x6c,
+	0x63, 0xf4, 0x74, 0xbb, 0xeb, 0x79, 0xdd, 0x1e, 0xa9, 0xd0, 0xa7, 0xe3, 0xe1, 0x49, 0x85, 0x38,
+	0xfd, 0xe0, 0x0d, 0x5b, 0x14, 0xf7, 0xa1, 0xd8, 0x3a, 0x7d, 0xe3, 0xdb, 0x1d, 0xb3, 0xa7, 0xb8,
+	0x23, 0xe2, 0x06, 0xde, 0xe0, 0x0d, 0x26, 0xaf, 0x86, 0xc4, 0x0f, 0xd0, 0x07, 0xb0, 0x61, 0x91,
+	0xf0, 0x73, 0xc6, 0x70, 0x68, 0x5b, 0x45, 0xee, 0x2e, 0xf7, 0x70, 0xa3, 0x9a, 0x2f, 0x5b, 0x8e,
+	0x5d, 0x3e, 0x1c, 0xda, 0x16, 0x06, 0xb6, 0x1a, 0xfe, 0x16, 0xff, 0xe6, 0xa0, 0x94, 0x02, 0xe4,
+	0xf7, 0x3d, 0xd7, 0x27, 0xe8, 0x1e, 0xac, 0xfb, 0x81, 0x19, 0x0c, 0x7d, 0x0a, 0xb2, 0x59, 0xdd,
+	0xa0, 0x20, 0x3a, 0x7d, 0x85, 0xa3, 0x25, 0xf4, 0x19, 0xac, 0x0f, 0x88, 0xe9, 0x7b, 0x6e, 0x31,
+	0x47, 0x8d, 0xee, 0x53, 0xa3, 0x4c, 0xd0, 0x32, 0xa6, 0xc6, 0x38, 0xda, 0x84, 0x3e, 0x84, 0xbc,
+	0x1d, 0xdb, 0x14, 0x79, 0xea, 0xeb, 0x35, 0x8a, 0x70, 0x60, 0x0e, 0xac, 0xd7, 0xe6, 0x80, 0xe0,
+	0xc9, 0xba, 0xb8, 0x0f, 0xeb, 0x6c, 0x3b, 0xba, 0x09, 0x85, 0x43, 0xb5, 0x2e, 0xed, 0x2b, 0xaa,
+	0x54, 0x37, 0xb0, 0x54, 0xd3, 0x35, 0xb5, 0xf0, 0x16, 0x42, 0xb0, 0x79, 0xa8, 0x3e, 0x57, 0xb5,
+	0x23, 0xd5, 0xa8, 0x4b, 0x2f, 0x94, 0x3d, 0xa9, 0xc0, 0x85, 0xef, 0x14, 0xb5, 0x2d, 0x61, 0xb5,
+	0xd6, 0x30, 0x24, 0x8c, 0x35, 0x5c, 0xc8, 0x89, 0x3f, 0x71, 0x50, 0x3a, 0x38, 0xda, 0xf3, 0x9c,
+	0xbe, 0xe7, 0x12, 0x37, 0x50, 0xdc, 0x13, 0x4f, 0x26, 0xc1, 0x05, 0x12, 0x88, 0x9e, 0xc0, 0x66,
+	0x27, 0x86, 0x61, 0xe6, 0xb9, 0xa4, 0xf9, 0xb5, 0xb1, 0x01, 0xdd, 0x71, 0x7f, 0x7a, 0x87, 0x6b,
+	0x3a, 0x84, 0x46, 0x9d, 0x9f, 0x32, 0x53, 0x4d, 0x87, 0x88, 0xdf, 0xe7, 0x40, 0x48, 0x73, 0xf1,
+	0x3c, 0xd4, 0x7c, 0x9e, 0xa0, 0xe6, 0x7d, 0x96, 0xd8, 0x4c, 0xd4, 0x24, 0x37, 0x1f, 0x41, 0x7e,
+	0xec, 0x54, 0xc4, 0xcd, 0x26, 0x85, 0x18, 0x03, 0xe0, 0x89, 0x81, 0xf8, 0xcd, 0x05, 0xc8, 0xb9,
+	0x05, 0x5b, 0xf1, 0xbb, 0x3d, 0xad, 0xd9, 0xd2, 0x54, 0x49, 0x6d, 0x17, 0x72, 0x29, 0x9c, 0xf1,
+	0xe2, 0x9f, 0xf3, 0x9c, 0xe9, 0xff, 0x2f, 0xce, 0x50, 0x15, 0xae, 0x74, 0x4e, 0x4d, 0xb7, 0x4b,
+	0xfc, 0xe2, 0x1a, 0x45, 0x2c, 0x52, 0xc4, 0xa6, 0x67, 0xd9, 0x27, 0xb6, 0x79, 0xdc, 0x23, 0x93,
+	0xbc, 0xc5, 0x86, 0xe1, 0x09, 0x14, 0xd2, 0xc2, 0xba, 0x74, 0x9e, 0xf5, 0x4c, 0x9e, 0xc5, 0x57,
+	0x97, 0xcc, 0xdc, 0x8b, 0x5a, 0x43, 0xa9, 0x1b, 0xad, 0x1a, 0xae, 0x35, 0xf5, 0x02, 0x9f, 0xc2,
+	0xe6, 0x9a, 0xf8, 0x47, 0x0e, 0x6e, 0xeb, 0x81, 0x39, 0x08, 0x9a, 0xa1, 0x4a, 0xda, 0x6e, 0xb7,
+	0x4e, 0xf9, 0x39, 0x5f, 0xdc, 0x5f, 0x24, 0xe2, 0x7e, 0x10, 0x1b, 0x65, 0xc1, 0x26, 0x0b, 0x3c,
+	0x51, 0x35, 0xfc, 0x22, 0xa9, 0xfc, 0x8e, 0x5b, 0x92, 0x25, 0x01, 0xb6, 0x59, 0x76, 0x8c, 0x5a,
+	0x03, 0x4b, 0xb5, 0xfa, 0x4b, 0xa3, 0x59, 0x53, 0x6b, 0xb2, 0x54, 0x2f, 0x70, 0xe8, 0x3d, 0xb8,
+	0xa3, 0xb5, 0x24, 0x5c, 0x6b, 0x2b, 0x9a, 0x3a, 0x5e, 0x56, 0x54, 0xa3, 0x85, 0x35, 0x19, 0x4b,
+	0xba, 0x7e, 0x8e, 0xcc, 0x55, 0xa0, 0xa4, 0x07, 0x5e, 0x3f, 0x19, 0x20, 0x3b, 0x06, 0x08, 0xd6,
+	0x68, 0x79, 0x72, 0xb4, 0x3c, 0xe9, 0x6f, 0xf1, 0x77, 0x0e, 0x84, 0xb4, 0x1d, 0xab, 0x57, 0x58,
+	0x36, 0x6a, 0xb2, 0xc2, 0xaa, 0xe7, 0xaf, 0x30, 0xb1, 0x01, 0xdb, 0x14, 0x9c, 0x58, 0x0c, 0xdb,
+	0x1f, 0xbb, 0x5c, 0x85, 0x2b, 0x8c, 0x98, 0xd0, 0x67, 0x7e, 0xf1, 0x39, 0x8b, 0x0c, 0xc5, 0x1f,
+	0x38, 0x28, 0xe9, 0x24, 0x68, 0x78, 0xdd, 0xd0, 0x5b, 0xc9, 0xb5, 0xfa, 0x9e, 0xed, 0x5e, 0x48,
+	0x3e, 0x1e, 0x41, 0xa1, 0xc7, 0x50, 0x0c, 0x12, 0xc1, 0xd0, 0xac, 0xe4, 0xf1, 0xf5, 0xde, 0x2c,
+	0xfa, 0xb4, 0x29, 0xbd, 0xb7, 0x3b, 0x5e, 0x2f, 0x52, 0x8e, 0xd8, 0xb4, 0x15, 0xbd, 0x16, 0x7f,
+	0xc9, 0x51, 0xff, 0x30, 0x71, 0xbc, 0x80, 0x4c, 0xdc, 0x5b, 0xfd, 0x26, 0xce, 0x04, 0x4d, 0x72,
+	0xf4, 0x33, 0x77, 0x39, 0xb7, 0x6b, 0x78, 0x10, 0x1a, 0x9a, 0x2c, 0x2b, 0xaa, 0x6c, 0x48, 0x6a,
+	0xbd, 0xa5, 0x29, 0x6a, 0x3b, 0x56, 0x71, 0x74, 0x0f, 0x76, 0xe7, 0xd6, 0x5a, 0x58, 0x6b, 0x6b,
+	0x7b, 0xda, 0xb8, 0xc4, 0x51, 0x09, 0x6e, 0x35, 0x75, 0xf9, 0xd9, 0xa1, 0x9e, 0xdc, 0xff, 0xb6,
+	0xf8, 0x63, 0x0e, 0x04, 0x39, 0x85, 0xc6, 0xd5, 0x8b, 0x39, 0x1b, 0x35, 0xa9, 0x1a, 0x69, 0x05,
+	0xc0, 0x9f, 0xbd, 0x00, 0xd6, 0xd2, 0x0b, 0xe0, 0xb2, 0x7a, 0x9b, 0x3d, 0x28, 0xea, 0x24, 0x68,
+	0xfa, 0xdd, 0x67, 0x43, 0x3f, 0x59, 0xe6, 0x0f, 0xe0, 0xba, 0xe3, 0x77, 0x8f, 0x87, 0xfe, 0xc4,
+	0x71, 0xa6, 0x14, 0x9b, 0xec, 0x75, 0x6c, 0x2f, 0xfe, 0xc5, 0x41, 0x49, 0x9e, 0x47, 0x59, 0xbd,
+	0x1a, 0x33, 0x41, 0x93, 0x49, 0x4e, 0x71, 0x95, 0x4f, 0x75, 0xf5, 0x0c, 0xd2, 0x92, 0xc8, 0x11,
+	0x27, 0xbe, 0x84, 0x82, 0xe4, 0x06, 0x76, 0x60, 0x13, 0xbf, 0xe1, 0x75, 0x1b, 0x64, 0x44, 0x7a,
+	0xe8, 0x11, 0x5c, 0xed, 0x45, 0xbf, 0xa3, 0xb0, 0x58, 0x1f, 0x1a, 0x1b, 0xe0, 0xf1, 0x32, 0x12,
+	0xe0, 0x2a, 0x89, 0xb6, 0x17, 0x73, 0x77, 0xf9, 0x87, 0x79, 0x3c, 0x7e, 0x16, 0x87, 0x80, 0x98,
+	0xcc, 0xb0, 0x4d, 0x17, 0xd0, 0x97, 0xa7, 0x90, 0xef, 0x85, 0x9d, 0xff, 0x88, 0xf4, 0x18, 0xfc,
+	0x46, 0xf5, 0x16, 0xb5, 0x4c, 0xba, 0x8c, 0x27, 0x76, 0xe2, 0x3f, 0x1c, 0xdc, 0x98, 0xf9, 0x6e,
+	0x44, 0xd5, 0x79, 0x3e, 0x3c, 0xa1, 0x35, 0x97, 0x4d, 0xeb, 0xc7, 0x63, 0x5a, 0x79, 0x6a, 0xb4,
+	0x1b, 0x8b, 0x4c, 0xf2, 0xd3, 0x49, 0x79, 0xf9, 0xf6, 0x92, 0xd4, 0x65, 0x1b, 0x50, 0x6c, 0xd7,
+	0xd0, 0x42, 0x15, 0x69, 0x2b, 0xed, 0x97, 0x05, 0x5e, 0xfc, 0x1a, 0x90, 0xbc, 0x5a, 0xe2, 0x17,
+	0xd1, 0xfa, 0x5b, 0x0e, 0x6e, 0xc8, 0x2b, 0xe6, 0x97, 0x11, 0xdb, 0x38, 0x23, 0xb1, 0xcc, 0x6e,
+	0x8a, 0x14, 0xfe, 0x2c, 0xa4, 0xac, 0x4d, 0x91, 0x22, 0xff, 0xf7, 0xa4, 0x1c, 0x8c, 0xd5, 0x3a,
+	0xbc, 0x96, 0xe3, 0x38, 0x2f, 0x40, 0x4e, 0xf5, 0xd7, 0xab, 0x50, 0x52, 0xcd, 0xc0, 0x1e, 0x91,
+	0x83, 0xa3, 0xe6, 0x78, 0xb2, 0xd6, 0xd9, 0x60, 0x8d, 0x74, 0xb8, 0x91, 0xd2, 0xf6, 0xa1, 0xcc,
+	0xbe, 0x40, 0xb8, 0xbb, 0xac, 0x55, 0x7c, 0xc2, 0xa1, 0x43, 0x40, 0xf3, 0x1d, 0x0e, 0xda, 0xc9,
+	0x6c, 0x7d, 0x68, 0x50, 0xc2, 0xee, 0x92, 0xd6, 0x08, 0x1d, 0xc0, 0x56, 0xa8, 0x82, 0x33, 0xad,
+	0x0d, 0xda, 0x2e, 0xb3, 0x71, 0xbf, 0x1c, 0x8f, 0xfb, 0x65, 0x29, 0x1c, 0xf7, 0x85, 0xdb, 0x2c,
+	0x82, 0xf4, 0x3e, 0xe8, 0x08, 0x6e, 0xca, 0x24, 0x98, 0x1b, 0xb5, 0xd1, 0x9d, 0xac, 0x11, 0x9c,
+	0x79, 0xb8, 0xb3, 0x78, 0x42, 0x7f, 0xc2, 0xa1, 0x23, 0x7a, 0x96, 0x12, 0x03, 0x44, 0x14, 0x79,
+	0xe6, 0xdc, 0x1c, 0x45, 0x9e, 0x3d, 0x5e, 0x46, 0x29, 0x3d, 0x23, 0xb0, 0xbe, 0x04, 0x78, 0x7a,
+	0x4a, 0x6a, 0xc7, 0xa2, 0x3b, 0x73, 0xf9, 0xee, 0x4c, 0x49, 0x53, 0x4a, 0xd3, 0x27, 0xec, 0x2c,
+	0xee, 0x8f, 0xd0, 0x7e, 0xac, 0x28, 0x33, 0xa8, 0xd7, 0x67, 0xfe, 0x9d, 0x50, 0xea, 0xc2, 0xee,
+	0x92, 0xf6, 0x01, 0x61, 0xd8, 0x9a, 0xbb, 0x91, 0x23, 0x8e, 0xb2, 0x6e, 0xea, 0xa5, 0xbe, 0x3d,
+	0x67, 0x45, 0x34, 0x8b, 0x99, 0x55, 0x44, 0x3b, 0x8b, 0xaf, 0x5e, 0xd4, 0x8a, 0xb5, 0x6d, 0xe6,
+	0x94, 0xa2, 0x99, 0xc0, 0x52, 0xce, 0xaf, 0x50, 0xcc, 0x92, 0x19, 0xf4, 0x25, 0x6c, 0x4c, 0x5d,
+	0x09, 0xe8, 0xdd, 0xf9, 0x4b, 0x62, 0x1a, 0x41, 0x4f, 0x47, 0x90, 0xe7, 0x10, 0xe4, 0x2c, 0x84,
+	0x14, 0x1f, 0x9e, 0x7d, 0xfa, 0xd5, 0x27, 0x5d, 0x3b, 0x38, 0x1d, 0x1e, 0x97, 0x3b, 0x9e, 0x53,
+	0xf1, 0xfa, 0xc4, 0xed, 0x78, 0x03, 0xab, 0xc2, 0x34, 0xe5, 0xf1, 0xe4, 0xdf, 0xb9, 0xc7, 0xb6,
+	0x1b, 0x90, 0xc1, 0x89, 0xd9, 0x21, 0x95, 0xd1, 0xd3, 0x4a, 0xd7, 0xab, 0x58, 0x8e, 0x7d, 0xbc,
+	0x4e, 0x53, 0xf8, 0xf4, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xd9, 0x06, 0x92, 0xce, 0xcd, 0x13,
+	0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
@@ -1189,6 +1529,8 @@
 	// uri = IP Address of the Hardware;
 	StartManagingDevice(ctx context.Context, in *ModifiableComponent, opts ...grpc.CallOption) (NativeHWManagementService_StartManagingDeviceClient, error)
 	// Stop management of a device and clean up any context and caches for that device
+	// This rpc can be called at any time, even before the StartManagingDevice operation
+	// has completed, and should be able to cleanup.
 	StopManagingDevice(ctx context.Context, in *StopManagingDeviceRequest, opts ...grpc.CallOption) (*StopManagingDeviceResponse, error)
 	// Returns an object containing a list of devices managed by this entity
 	GetManagedDevices(ctx context.Context, in *empty.Empty, opts ...grpc.CallOption) (*ManagedDevicesResponse, error)
@@ -1426,6 +1768,8 @@
 	// uri = IP Address of the Hardware;
 	StartManagingDevice(*ModifiableComponent, NativeHWManagementService_StartManagingDeviceServer) error
 	// Stop management of a device and clean up any context and caches for that device
+	// This rpc can be called at any time, even before the StartManagingDevice operation
+	// has completed, and should be able to cleanup.
 	StopManagingDevice(context.Context, *StopManagingDeviceRequest) (*StopManagingDeviceResponse, error)
 	// Returns an object containing a list of devices managed by this entity
 	GetManagedDevices(context.Context, *empty.Empty) (*ManagedDevicesResponse, error)
diff --git a/go/dmi/hw_metrics_mgmt_service.pb.go b/go/dmi/hw_metrics_mgmt_service.pb.go
index 5d41dc2..fa48653 100644
--- a/go/dmi/hw_metrics_mgmt_service.pb.go
+++ b/go/dmi/hw_metrics_mgmt_service.pb.go
@@ -120,6 +120,102 @@
 	return fileDescriptor_6b6c2f1384c11ff5, []int{0}
 }
 
+type ListMetricsResponse_Reason int32
+
+const (
+	ListMetricsResponse_UNDEFINED_REASON ListMetricsResponse_Reason = 0
+	ListMetricsResponse_UNKNOWN_DEVICE   ListMetricsResponse_Reason = 1
+	ListMetricsResponse_INTERNAL_ERROR   ListMetricsResponse_Reason = 2
+)
+
+var ListMetricsResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+}
+
+var ListMetricsResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+}
+
+func (x ListMetricsResponse_Reason) String() string {
+	return proto.EnumName(ListMetricsResponse_Reason_name, int32(x))
+}
+
+func (ListMetricsResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_6b6c2f1384c11ff5, []int{2, 0}
+}
+
+type MetricsConfigurationResponse_Reason int32
+
+const (
+	MetricsConfigurationResponse_UNDEFINED_REASON          MetricsConfigurationResponse_Reason = 0
+	MetricsConfigurationResponse_UNKNOWN_DEVICE            MetricsConfigurationResponse_Reason = 1
+	MetricsConfigurationResponse_INTERNAL_ERROR            MetricsConfigurationResponse_Reason = 2
+	MetricsConfigurationResponse_POLL_INTERVAL_UNSUPPORTED MetricsConfigurationResponse_Reason = 3
+	MetricsConfigurationResponse_INVALID_METRIC            MetricsConfigurationResponse_Reason = 4
+)
+
+var MetricsConfigurationResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "POLL_INTERVAL_UNSUPPORTED",
+	4: "INVALID_METRIC",
+}
+
+var MetricsConfigurationResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":          0,
+	"UNKNOWN_DEVICE":            1,
+	"INTERNAL_ERROR":            2,
+	"POLL_INTERVAL_UNSUPPORTED": 3,
+	"INVALID_METRIC":            4,
+}
+
+func (x MetricsConfigurationResponse_Reason) String() string {
+	return proto.EnumName(MetricsConfigurationResponse_Reason_name, int32(x))
+}
+
+func (MetricsConfigurationResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_6b6c2f1384c11ff5, []int{4, 0}
+}
+
+type GetMetricResponse_Reason int32
+
+const (
+	GetMetricResponse_UNDEFINED_REASON  GetMetricResponse_Reason = 0
+	GetMetricResponse_UNKNOWN_DEVICE    GetMetricResponse_Reason = 1
+	GetMetricResponse_UNKNOWN_COMPONENT GetMetricResponse_Reason = 2
+	GetMetricResponse_INTERNAL_ERROR    GetMetricResponse_Reason = 3
+	GetMetricResponse_INVALID_METRIC    GetMetricResponse_Reason = 4
+)
+
+var GetMetricResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "UNKNOWN_COMPONENT",
+	3: "INTERNAL_ERROR",
+	4: "INVALID_METRIC",
+}
+
+var GetMetricResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":  0,
+	"UNKNOWN_DEVICE":    1,
+	"UNKNOWN_COMPONENT": 2,
+	"INTERNAL_ERROR":    3,
+	"INVALID_METRIC":    4,
+}
+
+func (x GetMetricResponse_Reason) String() string {
+	return proto.EnumName(GetMetricResponse_Reason_name, int32(x))
+}
+
+func (GetMetricResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_6b6c2f1384c11ff5, []int{8, 0}
+}
+
 type MetricConfig struct {
 	MetricId MetricNames `protobuf:"varint,1,opt,name=metric_id,json=metricId,proto3,enum=dmi.MetricNames" json:"metric_id,omitempty"`
 	// Whether the device manager is collecting and reporting this metric or not
@@ -219,12 +315,12 @@
 }
 
 type ListMetricsResponse struct {
-	Status               Status         `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason         `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Metrics              *MetricsConfig `protobuf:"bytes,3,opt,name=metrics,proto3" json:"metrics,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}       `json:"-"`
-	XXX_unrecognized     []byte         `json:"-"`
-	XXX_sizecache        int32          `json:"-"`
+	Status               Status                     `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               ListMetricsResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.ListMetricsResponse_Reason" json:"reason,omitempty"`
+	Metrics              *MetricsConfig             `protobuf:"bytes,3,opt,name=metrics,proto3" json:"metrics,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                   `json:"-"`
+	XXX_unrecognized     []byte                     `json:"-"`
+	XXX_sizecache        int32                      `json:"-"`
 }
 
 func (m *ListMetricsResponse) Reset()         { *m = ListMetricsResponse{} }
@@ -259,11 +355,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *ListMetricsResponse) GetReason() Reason {
+func (m *ListMetricsResponse) GetReason() ListMetricsResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return ListMetricsResponse_UNDEFINED_REASON
 }
 
 func (m *ListMetricsResponse) GetMetrics() *MetricsConfig {
@@ -362,11 +458,11 @@
 }
 
 type MetricsConfigurationResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                              `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               MetricsConfigurationResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.MetricsConfigurationResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                            `json:"-"`
+	XXX_unrecognized     []byte                              `json:"-"`
+	XXX_sizecache        int32                               `json:"-"`
 }
 
 func (m *MetricsConfigurationResponse) Reset()         { *m = MetricsConfigurationResponse{} }
@@ -401,11 +497,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *MetricsConfigurationResponse) GetReason() Reason {
+func (m *MetricsConfigurationResponse) GetReason() MetricsConfigurationResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return MetricsConfigurationResponse_UNDEFINED_REASON
 }
 
 type MetricMetaData struct {
@@ -570,12 +666,12 @@
 }
 
 type GetMetricResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Metric               *Metric  `protobuf:"bytes,3,opt,name=metric,proto3" json:"metric,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetMetricResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.GetMetricResponse_Reason" json:"reason,omitempty"`
+	Metric               *Metric                  `protobuf:"bytes,3,opt,name=metric,proto3" json:"metric,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                 `json:"-"`
+	XXX_unrecognized     []byte                   `json:"-"`
+	XXX_sizecache        int32                    `json:"-"`
 }
 
 func (m *GetMetricResponse) Reset()         { *m = GetMetricResponse{} }
@@ -610,11 +706,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *GetMetricResponse) GetReason() Reason {
+func (m *GetMetricResponse) GetReason() GetMetricResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return GetMetricResponse_UNDEFINED_REASON
 }
 
 func (m *GetMetricResponse) GetMetric() *Metric {
@@ -626,6 +722,9 @@
 
 func init() {
 	proto.RegisterEnum("dmi.MetricNames", MetricNames_name, MetricNames_value)
+	proto.RegisterEnum("dmi.ListMetricsResponse_Reason", ListMetricsResponse_Reason_name, ListMetricsResponse_Reason_value)
+	proto.RegisterEnum("dmi.MetricsConfigurationResponse_Reason", MetricsConfigurationResponse_Reason_name, MetricsConfigurationResponse_Reason_value)
+	proto.RegisterEnum("dmi.GetMetricResponse_Reason", GetMetricResponse_Reason_name, GetMetricResponse_Reason_value)
 	proto.RegisterType((*MetricConfig)(nil), "dmi.MetricConfig")
 	proto.RegisterType((*MetricsConfig)(nil), "dmi.MetricsConfig")
 	proto.RegisterType((*ListMetricsResponse)(nil), "dmi.ListMetricsResponse")
@@ -640,70 +739,79 @@
 func init() { proto.RegisterFile("dmi/hw_metrics_mgmt_service.proto", fileDescriptor_6b6c2f1384c11ff5) }
 
 var fileDescriptor_6b6c2f1384c11ff5 = []byte{
-	// 1008 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x96, 0x4b, 0x6f, 0xdb, 0x46,
-	0x10, 0xc7, 0x4d, 0xa9, 0x71, 0xec, 0x91, 0x1f, 0xf4, 0xda, 0x4e, 0x14, 0xc5, 0x6d, 0x64, 0x19,
-	0x2d, 0x0c, 0xb7, 0x96, 0x02, 0xe7, 0xd2, 0x47, 0x2e, 0xb4, 0x44, 0xdb, 0x44, 0x25, 0x5a, 0x58,
-	0x51, 0x76, 0xd2, 0xcb, 0x62, 0x23, 0xae, 0x65, 0x02, 0x26, 0xa9, 0x92, 0x4b, 0xe7, 0xde, 0x4b,
-	0x4f, 0x05, 0xfa, 0x40, 0x3f, 0x42, 0x6f, 0x7d, 0x7f, 0x8a, 0x3e, 0xef, 0xed, 0xf7, 0x68, 0x0b,
-	0xf4, 0x56, 0x70, 0x97, 0x62, 0x57, 0x8e, 0xdc, 0x22, 0x40, 0x6e, 0xd2, 0x7f, 0x7e, 0xb3, 0xf3,
-	0xdf, 0xe1, 0x72, 0x96, 0xb0, 0xe9, 0xfa, 0x5e, 0xe3, 0xfc, 0x29, 0xf1, 0x19, 0x8f, 0xbc, 0x41,
-	0x4c, 0xfc, 0xa1, 0xcf, 0x49, 0xcc, 0xa2, 0x4b, 0x6f, 0xc0, 0xea, 0xa3, 0x28, 0xe4, 0x21, 0x2a,
-	0xba, 0xbe, 0x57, 0x59, 0x49, 0xb9, 0x41, 0xe8, 0xfb, 0x61, 0x10, 0x4b, 0xbd, 0xb2, 0x20, 0x53,
-	0xe5, 0xbf, 0xda, 0x87, 0x1a, 0x2c, 0x74, 0xc4, 0x22, 0xcd, 0x30, 0x38, 0xf3, 0x86, 0x68, 0x17,
-	0xe6, 0xe5, 0xa2, 0xc4, 0x73, 0xcb, 0x5a, 0x55, 0xdb, 0x5e, 0xda, 0xd3, 0xeb, 0xae, 0xef, 0xd5,
-	0x25, 0x65, 0x53, 0x9f, 0xc5, 0x78, 0x4e, 0x22, 0x96, 0x8b, 0xb6, 0x60, 0xd1, 0x8b, 0xc9, 0x40,
-	0xe4, 0x26, 0x11, 0x73, 0xcb, 0x85, 0xaa, 0xb6, 0x3d, 0x87, 0x17, 0xbc, 0xb8, 0x99, 0x6b, 0x29,
-	0x34, 0x0a, 0x2f, 0x2e, 0x88, 0x17, 0x70, 0x16, 0x5d, 0xd2, 0x8b, 0x72, 0xb1, 0xaa, 0x6d, 0x2f,
-	0xe2, 0x85, 0x54, 0xb4, 0x32, 0xad, 0xf6, 0x10, 0x16, 0x65, 0x89, 0x2c, 0x13, 0xbd, 0x0e, 0x37,
-	0xb3, 0xed, 0x95, 0xb5, 0x6a, 0x71, 0xbb, 0xb4, 0xb7, 0xa2, 0xf8, 0x90, 0x0c, 0x1e, 0x13, 0xb5,
-	0x8f, 0x34, 0x58, 0x6d, 0x7b, 0x31, 0xcf, 0x96, 0xc0, 0x2c, 0x1e, 0x85, 0x41, 0xcc, 0xd0, 0x16,
-	0xcc, 0xc6, 0x9c, 0xf2, 0x24, 0xce, 0xf6, 0x52, 0x12, 0x6b, 0xf4, 0x84, 0x84, 0xb3, 0x50, 0x0a,
-	0x45, 0x8c, 0xc6, 0x61, 0x20, 0xdc, 0x8f, 0x21, 0x2c, 0x24, 0x9c, 0x85, 0xd0, 0x1b, 0xff, 0xda,
-	0x49, 0xed, 0x97, 0xf6, 0x90, 0x62, 0x27, 0xbe, 0xea, 0xe7, 0x7b, 0x0d, 0xee, 0x4e, 0x84, 0x92,
-	0x88, 0x72, 0x2f, 0x0c, 0x30, 0x7b, 0x3f, 0x61, 0x31, 0x47, 0x3b, 0x50, 0x72, 0x59, 0xfa, 0xb4,
-	0x48, 0x92, 0x64, 0x8d, 0x2e, 0xed, 0xcd, 0x8b, 0x15, 0xfb, 0x89, 0xe7, 0x62, 0x90, 0xd1, 0xf4,
-	0x37, 0xaa, 0xc3, 0xcd, 0xc1, 0x39, 0x0d, 0x86, 0x2c, 0x16, 0xfe, 0xa6, 0x56, 0x3e, 0x9a, 0xc1,
-	0x63, 0x08, 0xed, 0x80, 0x1e, 0xb1, 0x98, 0x71, 0xc2, 0x43, 0xe2, 0xb2, 0x33, 0x9a, 0x5c, 0x70,
-	0x61, 0x79, 0xee, 0x68, 0x06, 0x2f, 0x89, 0x88, 0x13, 0xb6, 0xa4, 0xbe, 0x5f, 0x82, 0xf9, 0x70,
-	0xc4, 0xa4, 0xb7, 0xda, 0x39, 0x6c, 0x4c, 0xf7, 0xfc, 0xa2, 0x9b, 0x59, 0xfb, 0x5c, 0x83, 0x25,
-	0x59, 0xaa, 0xc3, 0x38, 0x6d, 0x51, 0x4e, 0x9f, 0xab, 0x23, 0xf7, 0x61, 0x69, 0x10, 0xfa, 0xa3,
-	0x30, 0x60, 0x01, 0x97, 0x78, 0xe1, 0x2a, 0xbe, 0x98, 0x03, 0x22, 0xe3, 0x55, 0x35, 0x23, 0xa0,
-	0x3e, 0x13, 0x1d, 0x99, 0x57, 0xb0, 0xf4, 0x64, 0xd7, 0xbe, 0xd0, 0x60, 0x56, 0xfa, 0x7a, 0xde,
-	0x17, 0xe1, 0x21, 0x2c, 0x67, 0xb8, 0xcf, 0x38, 0x75, 0x29, 0xa7, 0x99, 0xa7, 0x55, 0x25, 0x69,
-	0xbc, 0x59, 0xbc, 0xe4, 0xe7, 0xff, 0x53, 0x14, 0xd5, 0xe1, 0xc6, 0x25, 0xbd, 0x48, 0x58, 0x76,
-	0xb4, 0xca, 0x22, 0xa7, 0x39, 0xb6, 0xd6, 0x63, 0x41, 0x1c, 0x46, 0x22, 0x51, 0x62, 0xb5, 0x18,
-	0xf4, 0x43, 0x96, 0x1d, 0xf6, 0xf1, 0x91, 0xba, 0x2f, 0x0c, 0x53, 0x22, 0x6a, 0x6b, 0xd7, 0xd7,
-	0x4e, 0x3d, 0xcb, 0x96, 0x4f, 0x6c, 0xb1, 0xf0, 0x7f, 0x5b, 0xac, 0x7d, 0xa0, 0xc1, 0x8a, 0x52,
-	0xf5, 0x85, 0xbf, 0x61, 0x5b, 0x30, 0x2b, 0x6b, 0x65, 0x5d, 0x28, 0x29, 0x5e, 0x70, 0x16, 0xda,
-	0xf9, 0xfd, 0x06, 0x94, 0x14, 0x7b, 0xe8, 0x0e, 0xac, 0x77, 0x4c, 0x07, 0x5b, 0x4d, 0x62, 0x1b,
-	0x1d, 0x93, 0xf4, 0xed, 0x96, 0x79, 0x60, 0xd9, 0x66, 0x4b, 0x9f, 0x41, 0x6b, 0xa0, 0x67, 0xa1,
-	0x03, 0xc3, 0x26, 0xbd, 0xae, 0x69, 0xb6, 0x74, 0x0d, 0xad, 0xc2, 0x72, 0xa6, 0x36, 0xbb, 0x7d,
-	0xe2, 0x98, 0x9d, 0xae, 0xee, 0xa2, 0x7b, 0x70, 0x57, 0x11, 0xfb, 0x3d, 0xe3, 0xd0, 0x24, 0x5d,
-	0x13, 0x37, 0x4d, 0xdb, 0x31, 0x0e, 0x4d, 0x9d, 0xa1, 0x0d, 0xb8, 0x9d, 0x01, 0x0e, 0x36, 0xec,
-	0x5e, 0xd3, 0xb4, 0x4e, 0x4c, 0x2c, 0xb3, 0x7f, 0xd0, 0xd0, 0x3d, 0xa8, 0x4c, 0x89, 0x9e, 0x1c,
-	0xb7, 0x45, 0xf6, 0x8f, 0xda, 0x35, 0xe9, 0xfb, 0x96, 0xd1, 0xd3, 0x7f, 0xd2, 0x50, 0x35, 0xaf,
-	0xae, 0x46, 0xf1, 0x23, 0xd2, 0x3d, 0x3e, 0x35, 0xb1, 0xfe, 0xf3, 0x75, 0x84, 0x33, 0x26, 0x7e,
-	0xd1, 0x50, 0x0d, 0x5e, 0x9e, 0x42, 0x9c, 0x1a, 0x27, 0x66, 0xdb, 0xb4, 0x0f, 0x9d, 0x23, 0xfd,
-	0x57, 0x0d, 0xad, 0xe7, 0x0d, 0x69, 0x59, 0xbd, 0x77, 0xa5, 0xfb, 0x2f, 0x0b, 0xe8, 0x0e, 0xac,
-	0xa9, 0x72, 0xd3, 0xe8, 0x1a, 0x4d, 0xcb, 0x79, 0xac, 0x7f, 0x55, 0x40, 0xb7, 0x60, 0x45, 0x0d,
-	0x89, 0xc6, 0xe8, 0x5f, 0x17, 0xd0, 0x26, 0x6c, 0x3c, 0xa3, 0xab, 0x0d, 0xfb, 0xa6, 0x80, 0x5e,
-	0x83, 0x4d, 0x15, 0xc1, 0xa6, 0xd1, 0x22, 0xa7, 0xd8, 0x72, 0x26, 0xb8, 0x6f, 0x0b, 0x68, 0x1b,
-	0xb6, 0x54, 0xee, 0xc0, 0xe8, 0xb7, 0x9d, 0xc7, 0xa4, 0x69, 0xb6, 0xdb, 0x3d, 0x95, 0xfc, 0xae,
-	0x80, 0xd6, 0xf2, 0x27, 0x87, 0x8d, 0x8e, 0x74, 0xff, 0x71, 0x11, 0x95, 0x61, 0x55, 0x51, 0x73,
-	0xf3, 0x9f, 0x14, 0x95, 0xed, 0xa6, 0x11, 0xe9, 0xfd, 0xd3, 0xa2, 0xd2, 0xcb, 0x5c, 0x56, 0x0b,
-	0x7d, 0xa6, 0x26, 0x8a, 0xf6, 0x92, 0x8e, 0xf1, 0x48, 0xff, 0xa3, 0x88, 0x6e, 0x03, 0x9a, 0x90,
-	0xe5, 0x8a, 0x7f, 0x16, 0x95, 0xde, 0x2b, 0x01, 0x75, 0xcd, 0xbf, 0x54, 0xc6, 0xb2, 0x6d, 0x13,
-	0x93, 0x5e, 0x1f, 0xe3, 0xe3, 0xbe, 0xdd, 0xb2, 0xec, 0x43, 0xb9, 0x95, 0xdf, 0x5e, 0xda, 0xfb,
-	0x5b, 0x83, 0x57, 0x6c, 0xca, 0xbd, 0x4b, 0x96, 0x8d, 0xe1, 0x0e, 0x0d, 0xe8, 0x90, 0xf9, 0x62,
-	0x04, 0x88, 0xbb, 0x1d, 0xbd, 0x09, 0x25, 0xe5, 0x9a, 0x43, 0xcb, 0xe2, 0x15, 0x39, 0xa2, 0x91,
-	0xfb, 0x94, 0x46, 0xcc, 0x6a, 0x55, 0xe4, 0xe4, 0x98, 0x76, 0x13, 0x52, 0xa8, 0xf4, 0x47, 0x2e,
-	0xe5, 0x6c, 0xda, 0x88, 0x47, 0xd5, 0x67, 0xaf, 0x94, 0xc9, 0x1b, 0xab, 0xb2, 0xf9, 0x1f, 0x44,
-	0x56, 0xe2, 0x6d, 0x98, 0xcf, 0xe7, 0x03, 0x5a, 0x17, 0xfc, 0xd5, 0x29, 0x55, 0xb9, 0x75, 0x55,
-	0x96, 0xb9, 0xfb, 0xef, 0xbc, 0xf7, 0xd6, 0xd0, 0xe3, 0xe7, 0xc9, 0x93, 0xfa, 0x20, 0xf4, 0x1b,
-	0xe1, 0x88, 0x05, 0x83, 0x30, 0x72, 0x1b, 0x72, 0xe8, 0xef, 0xfa, 0x79, 0x23, 0x76, 0xc5, 0x47,
-	0xc4, 0x19, 0x1d, 0xb0, 0xc6, 0xe5, 0x83, 0xc6, 0x30, 0x6c, 0xb8, 0xbe, 0xf7, 0x64, 0x56, 0x7c,
-	0xcc, 0x3c, 0xf8, 0x27, 0x00, 0x00, 0xff, 0xff, 0xfc, 0x65, 0x9d, 0xfb, 0x17, 0x09, 0x00, 0x00,
+	// 1147 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x56, 0x4b, 0x6f, 0xdb, 0x46,
+	0x10, 0x36, 0xa9, 0x44, 0x89, 0x57, 0xb6, 0x42, 0xaf, 0xf3, 0x50, 0x94, 0xa4, 0x91, 0x69, 0xb4,
+	0x10, 0xd2, 0x46, 0x0a, 0x14, 0x14, 0x7d, 0xe5, 0x50, 0x86, 0x5c, 0xdb, 0x44, 0x24, 0x4a, 0x58,
+	0x51, 0x72, 0xd2, 0xcb, 0x62, 0x23, 0x6e, 0x14, 0x02, 0x26, 0xa9, 0x90, 0x94, 0x83, 0xde, 0x7a,
+	0xcb, 0xb5, 0x0f, 0xf4, 0x27, 0xf4, 0xd6, 0xf7, 0xaf, 0xe8, 0xf3, 0xde, 0xfe, 0x84, 0xde, 0xdb,
+	0x02, 0xbd, 0x15, 0xdc, 0xa5, 0xd4, 0xb5, 0x22, 0x37, 0x70, 0xd1, 0x1b, 0xf9, 0xcd, 0x37, 0x33,
+	0xdf, 0xcc, 0xec, 0x0b, 0x6c, 0x79, 0x81, 0xdf, 0x7c, 0xfc, 0x94, 0x04, 0x2c, 0x8d, 0xfd, 0x51,
+	0x42, 0x82, 0x71, 0x90, 0x92, 0x84, 0xc5, 0x87, 0xfe, 0x88, 0x35, 0x26, 0x71, 0x94, 0x46, 0xb0,
+	0xe0, 0x05, 0x7e, 0x75, 0x23, 0xe3, 0x8d, 0xa2, 0x20, 0x88, 0xc2, 0x44, 0xe0, 0xd5, 0x35, 0xe1,
+	0x2a, 0xfe, 0xf4, 0x67, 0x0a, 0x58, 0xeb, 0xf0, 0x20, 0x66, 0x14, 0x3e, 0xf2, 0xc7, 0xf0, 0x26,
+	0x58, 0x15, 0x41, 0x89, 0xef, 0x55, 0x94, 0x9a, 0x52, 0x2f, 0xb7, 0xb4, 0x86, 0x17, 0xf8, 0x0d,
+	0xc1, 0x72, 0x68, 0xc0, 0x12, 0x7c, 0x56, 0x50, 0x6c, 0x0f, 0x6e, 0x83, 0x75, 0x3f, 0x21, 0x23,
+	0xee, 0x3b, 0x8d, 0x99, 0x57, 0x51, 0x6b, 0x4a, 0xfd, 0x2c, 0x5e, 0xf3, 0x13, 0x73, 0x8e, 0x65,
+	0xa4, 0x49, 0x74, 0x70, 0x40, 0xfc, 0x30, 0x65, 0xf1, 0x21, 0x3d, 0xa8, 0x14, 0x6a, 0x4a, 0x7d,
+	0x1d, 0xaf, 0x65, 0xa0, 0x9d, 0x63, 0xfa, 0x1d, 0xb0, 0x2e, 0x52, 0xe4, 0x9e, 0xf0, 0x55, 0x70,
+	0x26, 0x2f, 0xaf, 0xa2, 0xd4, 0x0a, 0xf5, 0x52, 0x6b, 0x43, 0xd2, 0x21, 0x38, 0x78, 0xc6, 0xd0,
+	0x7f, 0x53, 0xc0, 0x66, 0xdb, 0x4f, 0xd2, 0x3c, 0x04, 0x66, 0xc9, 0x24, 0x0a, 0x13, 0x06, 0xb7,
+	0x41, 0x31, 0x49, 0x69, 0x3a, 0x4d, 0xf2, 0x5a, 0x4a, 0x3c, 0x46, 0x9f, 0x43, 0x38, 0x37, 0xc1,
+	0x37, 0x40, 0x31, 0x66, 0x34, 0x89, 0x42, 0xae, 0xbe, 0xdc, 0xba, 0xce, 0x49, 0x4b, 0xc2, 0x35,
+	0x30, 0xa7, 0xe1, 0x9c, 0x0e, 0x5f, 0xfb, 0x47, 0x62, 0x56, 0x52, 0xa9, 0x05, 0x25, 0x89, 0xc9,
+	0xa2, 0xc6, 0x1d, 0x50, 0x14, 0xfe, 0xf0, 0x3c, 0xd0, 0x06, 0x8e, 0x85, 0x76, 0x6c, 0x07, 0x59,
+	0x04, 0x23, 0xa3, 0xdf, 0x75, 0xb4, 0x15, 0x08, 0x41, 0x79, 0xe0, 0xdc, 0x73, 0xba, 0xfb, 0x0e,
+	0xb1, 0xd0, 0xd0, 0x36, 0x91, 0xa6, 0x64, 0x98, 0xed, 0xb8, 0x08, 0x3b, 0x46, 0x9b, 0x20, 0x8c,
+	0xbb, 0x58, 0x53, 0xf5, 0x6f, 0x15, 0x70, 0xe5, 0x48, 0x8a, 0x69, 0x4c, 0x53, 0x3f, 0x0a, 0x31,
+	0x7b, 0x32, 0x65, 0x49, 0x0a, 0x6f, 0x80, 0x92, 0xc7, 0xb2, 0x95, 0x40, 0xa6, 0xd3, 0x7c, 0x88,
+	0xa5, 0xd6, 0x2a, 0x57, 0x36, 0x98, 0xfa, 0x1e, 0x06, 0xc2, 0x9a, 0x7d, 0xc3, 0x06, 0x38, 0x33,
+	0x7a, 0x4c, 0xc3, 0x31, 0x4b, 0x78, 0xed, 0x4b, 0x2b, 0xd8, 0x5b, 0xc1, 0x33, 0x12, 0xbc, 0x01,
+	0xb4, 0x98, 0x25, 0x2c, 0x25, 0x69, 0x44, 0x3c, 0xf6, 0x88, 0x4e, 0x0f, 0x52, 0x5e, 0xfa, 0xd9,
+	0xbd, 0x15, 0x5c, 0xe6, 0x16, 0x37, 0xb2, 0x04, 0x7e, 0xb7, 0x04, 0x56, 0xa3, 0x09, 0x13, 0xda,
+	0xf4, 0x0f, 0x54, 0x70, 0x75, 0xb9, 0xe8, 0x93, 0x4c, 0xea, 0xdd, 0x85, 0x49, 0xd5, 0x9f, 0x57,
+	0xbb, 0x10, 0x77, 0x61, 0x64, 0xfa, 0xfb, 0xff, 0xcf, 0x10, 0xe0, 0x35, 0x70, 0xb9, 0xd7, 0x6d,
+	0xb7, 0x09, 0x37, 0x0c, 0x8d, 0x36, 0x19, 0x38, 0xfd, 0x41, 0xaf, 0xd7, 0xc5, 0x2e, 0xb2, 0xb4,
+	0x82, 0x70, 0x19, 0x1a, 0x6d, 0xdb, 0x22, 0x1d, 0xe4, 0x62, 0xdb, 0xd4, 0x4e, 0xe9, 0x9f, 0x2a,
+	0xa0, 0x2c, 0xa4, 0x76, 0x58, 0x4a, 0x2d, 0x9a, 0xd2, 0x13, 0x8d, 0xea, 0x16, 0x28, 0x8f, 0xa2,
+	0x60, 0x12, 0x85, 0x2c, 0x4c, 0x05, 0x5d, 0x5d, 0xa4, 0xaf, 0xcf, 0x09, 0xdc, 0xe3, 0x65, 0xd9,
+	0x23, 0xa4, 0x01, 0xe3, 0xa3, 0x5a, 0x95, 0x68, 0xd9, 0x76, 0xd6, 0x3f, 0x53, 0x40, 0x51, 0xe8,
+	0x3a, 0xe9, 0xee, 0xbf, 0x03, 0xce, 0xe5, 0xf4, 0x80, 0xa5, 0xd4, 0xa3, 0x29, 0xcd, 0x35, 0x6d,
+	0x4a, 0x4e, 0xb3, 0x62, 0x71, 0x39, 0x98, 0xff, 0x67, 0x54, 0xd8, 0x00, 0xa7, 0x0f, 0xe9, 0xc1,
+	0x94, 0xe5, 0x7b, 0xa7, 0xc2, 0x7d, 0xcc, 0x99, 0xb4, 0x3e, 0x0b, 0x93, 0x28, 0xe6, 0x8e, 0x82,
+	0xa6, 0x27, 0x40, 0xdb, 0x65, 0xf9, 0x96, 0x9c, 0xad, 0xf5, 0x5b, 0x5c, 0x30, 0x25, 0x3c, 0xb7,
+	0x72, 0x7c, 0xee, 0x4c, 0xb3, 0x68, 0xf9, 0x91, 0x12, 0xd5, 0x17, 0x95, 0xa8, 0x3f, 0x53, 0xc1,
+	0x86, 0x94, 0xf5, 0x24, 0x8b, 0xf5, 0xf5, 0x85, 0xc5, 0x7a, 0x8d, 0x93, 0x9e, 0x0b, 0xb6, 0x78,
+	0xa8, 0x6c, 0x83, 0xa2, 0xc8, 0x9e, 0xf7, 0xa5, 0x24, 0xa9, 0xc3, 0xb9, 0x49, 0x7f, 0xf2, 0x1f,
+	0x96, 0xf1, 0x05, 0xb0, 0x31, 0xc3, 0xcc, 0x6e, 0xa7, 0xd7, 0x75, 0x90, 0xe3, 0x6a, 0xea, 0x92,
+	0xd5, 0xbd, 0x74, 0xf9, 0xde, 0xf8, 0xf5, 0x34, 0x28, 0x49, 0x3d, 0x82, 0x97, 0xc1, 0x05, 0x61,
+	0x23, 0x8e, 0xd1, 0x41, 0x64, 0x2e, 0x42, 0x5b, 0xc9, 0x34, 0xe5, 0xa6, 0x1d, 0xc3, 0x21, 0xfd,
+	0x1e, 0x42, 0x96, 0xa6, 0xc0, 0x4d, 0x70, 0x2e, 0x47, 0xcd, 0xde, 0x80, 0xb8, 0xa8, 0xd3, 0xd3,
+	0x3c, 0x78, 0x1d, 0x5c, 0x91, 0xc0, 0x41, 0xdf, 0xd8, 0x45, 0xa4, 0x87, 0xb0, 0x89, 0x1c, 0xd7,
+	0xd8, 0x45, 0x1a, 0x83, 0x57, 0xc1, 0xa5, 0x9c, 0xe0, 0x62, 0xc3, 0xe9, 0x9b, 0xc8, 0x1e, 0x22,
+	0x2c, 0xbc, 0xbf, 0x53, 0xe0, 0x75, 0x50, 0x5d, 0x62, 0x1d, 0x76, 0xdb, 0xdc, 0xfb, 0x7b, 0xe5,
+	0x18, 0xf7, 0xbb, 0xb6, 0xd1, 0xd7, 0x7e, 0x50, 0x60, 0x6d, 0x9e, 0x5d, 0xb6, 0xe2, 0xfb, 0xa4,
+	0xd7, 0xdd, 0x47, 0x58, 0xfb, 0xf1, 0x38, 0x86, 0x3b, 0x63, 0xfc, 0xa4, 0x40, 0x1d, 0x5c, 0x5b,
+	0xc2, 0xd8, 0x37, 0x86, 0xa8, 0x8d, 0x9c, 0x5d, 0x77, 0x4f, 0xfb, 0x39, 0x6b, 0xfd, 0xac, 0x21,
+	0x96, 0xdd, 0xbf, 0x27, 0xd4, 0x7f, 0xae, 0xc2, 0xcb, 0xe0, 0xbc, 0x0c, 0x9b, 0x46, 0xcf, 0x30,
+	0x6d, 0xf7, 0x81, 0xf6, 0x85, 0x0a, 0x2f, 0x82, 0x0d, 0xd9, 0xc4, 0x1b, 0xa3, 0x7d, 0xa9, 0xc2,
+	0x2d, 0x70, 0xf5, 0x39, 0x5c, 0x6e, 0xd8, 0x57, 0x2a, 0x7c, 0x05, 0x6c, 0xc9, 0x14, 0x8c, 0x0c,
+	0x8b, 0xec, 0x63, 0xdb, 0x3d, 0xc2, 0xfb, 0x5a, 0x85, 0x75, 0xb0, 0x2d, 0xf3, 0x76, 0x8c, 0x41,
+	0xdb, 0x7d, 0x40, 0x4c, 0xd4, 0x6e, 0xf7, 0x65, 0xe6, 0x37, 0x2a, 0x3c, 0x3f, 0x9f, 0x1c, 0x36,
+	0x3a, 0x42, 0xfd, 0x87, 0x05, 0x58, 0x01, 0x9b, 0x12, 0x3a, 0x17, 0xff, 0x51, 0x41, 0x2a, 0x37,
+	0xb3, 0x08, 0xed, 0x1f, 0x17, 0xa4, 0x5e, 0xce, 0x61, 0x39, 0xd1, 0x27, 0xb2, 0x23, 0x6f, 0x2f,
+	0xe9, 0x18, 0xf7, 0xb5, 0xdf, 0x0b, 0xf0, 0x12, 0x80, 0x47, 0x60, 0x11, 0xf1, 0x8f, 0x82, 0xd4,
+	0x7b, 0xc9, 0x20, 0xc7, 0xfc, 0x53, 0xe6, 0xd8, 0x8e, 0x83, 0x30, 0xe9, 0x0f, 0x30, 0xee, 0x0e,
+	0x1c, 0xcb, 0x76, 0x76, 0x45, 0x29, 0xbf, 0x9c, 0x6a, 0xfd, 0xa5, 0x80, 0x97, 0x1c, 0x9a, 0xfa,
+	0x87, 0x2c, 0xbf, 0x4b, 0x3a, 0x34, 0xa4, 0x63, 0x16, 0xf0, 0x73, 0x88, 0xbf, 0xaa, 0xe0, 0x9b,
+	0xa0, 0x24, 0xbd, 0x08, 0xe0, 0x39, 0xbe, 0x2b, 0xf7, 0x68, 0xec, 0x3d, 0xa5, 0x31, 0xb3, 0xad,
+	0x6a, 0xe5, 0xb8, 0x47, 0x03, 0xa4, 0xa0, 0x3a, 0x98, 0x78, 0x34, 0x65, 0xcb, 0xee, 0x29, 0x58,
+	0xfb, 0x97, 0x2b, 0x8c, 0x9f, 0x71, 0xd5, 0xad, 0x17, 0x5e, 0x72, 0xf0, 0x6d, 0xb0, 0x3a, 0x3f,
+	0x57, 0xe0, 0x85, 0xc5, 0x73, 0x46, 0x84, 0xb9, 0xb8, 0xfc, 0xf8, 0xb9, 0xfb, 0xce, 0x7b, 0x6f,
+	0x8d, 0xfd, 0xf4, 0xf1, 0xf4, 0x61, 0x63, 0x14, 0x05, 0xcd, 0x68, 0xc2, 0xc2, 0x51, 0x14, 0x7b,
+	0x4d, 0x71, 0xf3, 0xdc, 0x0c, 0xe6, 0x8d, 0xb8, 0xc9, 0x9f, 0x6f, 0x8f, 0xe8, 0x88, 0x35, 0x0f,
+	0x6f, 0x37, 0xc7, 0x51, 0xd3, 0x0b, 0xfc, 0x87, 0x45, 0xfe, 0x8c, 0xbc, 0xfd, 0x77, 0x00, 0x00,
+	0x00, 0xff, 0xff, 0xbd, 0x20, 0xee, 0x31, 0x91, 0x0a, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
diff --git a/go/dmi/sw_image.pb.go b/go/dmi/sw_image.pb.go
index c62b587..28f6c50 100644
--- a/go/dmi/sw_image.pb.go
+++ b/go/dmi/sw_image.pb.go
@@ -69,12 +69,17 @@
 type ImageStatus_Reason int32
 
 const (
-	ImageStatus_UNDEFINED_REASON      ImageStatus_Reason = 0
-	ImageStatus_ERROR_IN_REQUEST      ImageStatus_Reason = 1
-	ImageStatus_INTERNAL_ERROR        ImageStatus_Reason = 2
-	ImageStatus_DEVICE_IN_WRONG_STATE ImageStatus_Reason = 3
-	ImageStatus_INVALID_IMAGE         ImageStatus_Reason = 4
-	ImageStatus_WRONG_IMAGE_CHECKSUM  ImageStatus_Reason = 5
+	ImageStatus_UNDEFINED_REASON              ImageStatus_Reason = 0
+	ImageStatus_ERROR_IN_REQUEST              ImageStatus_Reason = 1
+	ImageStatus_INTERNAL_ERROR                ImageStatus_Reason = 2
+	ImageStatus_DEVICE_IN_WRONG_STATE         ImageStatus_Reason = 3
+	ImageStatus_INVALID_IMAGE                 ImageStatus_Reason = 4
+	ImageStatus_WRONG_IMAGE_CHECKSUM          ImageStatus_Reason = 5
+	ImageStatus_OPERATION_ALREADY_IN_PROGRESS ImageStatus_Reason = 6
+	ImageStatus_UNKNOWN_DEVICE                ImageStatus_Reason = 7
+	// The DM implementations should have retry mechanisms (timeout values dependant on specific implementations)
+	// and even after those if the operation cannot be completed/reached then return error with reason as DEVICE_NOT_REACHABLE
+	ImageStatus_DEVICE_NOT_REACHABLE ImageStatus_Reason = 8
 )
 
 var ImageStatus_Reason_name = map[int32]string{
@@ -84,15 +89,21 @@
 	3: "DEVICE_IN_WRONG_STATE",
 	4: "INVALID_IMAGE",
 	5: "WRONG_IMAGE_CHECKSUM",
+	6: "OPERATION_ALREADY_IN_PROGRESS",
+	7: "UNKNOWN_DEVICE",
+	8: "DEVICE_NOT_REACHABLE",
 }
 
 var ImageStatus_Reason_value = map[string]int32{
-	"UNDEFINED_REASON":      0,
-	"ERROR_IN_REQUEST":      1,
-	"INTERNAL_ERROR":        2,
-	"DEVICE_IN_WRONG_STATE": 3,
-	"INVALID_IMAGE":         4,
-	"WRONG_IMAGE_CHECKSUM":  5,
+	"UNDEFINED_REASON":              0,
+	"ERROR_IN_REQUEST":              1,
+	"INTERNAL_ERROR":                2,
+	"DEVICE_IN_WRONG_STATE":         3,
+	"INVALID_IMAGE":                 4,
+	"WRONG_IMAGE_CHECKSUM":          5,
+	"OPERATION_ALREADY_IN_PROGRESS": 6,
+	"UNKNOWN_DEVICE":                7,
+	"DEVICE_NOT_REACHABLE":          8,
 }
 
 func (x ImageStatus_Reason) String() string {
@@ -294,41 +305,44 @@
 func init() { proto.RegisterFile("dmi/sw_image.proto", fileDescriptor_3d058607a829baf4) }
 
 var fileDescriptor_3d058607a829baf4 = []byte{
-	// 572 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x93, 0xcf, 0x6e, 0xd3, 0x4c,
-	0x14, 0xc5, 0xeb, 0xe6, 0x4f, 0xdb, 0x9b, 0xef, 0x0b, 0xce, 0xb4, 0x55, 0x03, 0x05, 0xa9, 0x0a,
-	0x0b, 0xd8, 0x34, 0x86, 0x54, 0x20, 0x21, 0x56, 0xae, 0x33, 0x0d, 0x23, 0x92, 0x71, 0x19, 0x3b,
-	0x41, 0xb0, 0xb1, 0x5c, 0x7b, 0x9a, 0x8e, 0x94, 0xb1, 0x2b, 0xdb, 0x29, 0xaf, 0xc1, 0x13, 0xb0,
-	0xe6, 0x71, 0x78, 0x24, 0x34, 0x33, 0x6e, 0x53, 0x89, 0xdd, 0xf8, 0x77, 0xce, 0xbd, 0xf7, 0xdc,
-	0x2b, 0x19, 0x50, 0x2a, 0x85, 0x53, 0xfe, 0x88, 0x84, 0x8c, 0x97, 0x7c, 0x78, 0x5b, 0xe4, 0x55,
-	0x8e, 0x1a, 0xa9, 0x14, 0xcf, 0x7a, 0x4a, 0x48, 0x72, 0x29, 0xf3, 0xac, 0x34, 0x7c, 0x30, 0x81,
-	0xff, 0x88, 0xb2, 0x2d, 0x78, 0x51, 0x8a, 0x3c, 0x43, 0x2f, 0x00, 0x74, 0x59, 0x94, 0xc5, 0x92,
-	0xf7, 0xad, 0x13, 0xeb, 0xf5, 0x1e, 0xdb, 0xd3, 0x84, 0xc6, 0x92, 0xa3, 0x3e, 0xec, 0xdc, 0x19,
-	0x67, 0x7f, 0x5b, 0x6b, 0xf7, 0x9f, 0x83, 0xdf, 0x16, 0xd8, 0xba, 0x13, 0xc9, 0xae, 0xf3, 0x42,
-	0xc6, 0x95, 0xea, 0xf6, 0x0a, 0x5a, 0xba, 0x56, 0x37, 0xea, 0x8c, 0x7a, 0xc3, 0x54, 0x8a, 0xe1,
-	0xe3, 0x79, 0xcc, 0xe8, 0xe8, 0x0d, 0x1c, 0x98, 0xb1, 0x22, 0x2b, 0xab, 0x78, 0xb5, 0x8a, 0xca,
-	0xa4, 0x10, 0xb7, 0x55, 0x3d, 0x04, 0x09, 0xd3, 0x58, 0x4b, 0x81, 0x56, 0xd0, 0x31, 0x98, 0x58,
-	0xd1, 0xba, 0x58, 0xf5, 0x1b, 0xda, 0xb6, 0xab, 0xc1, 0xbc, 0x58, 0xa1, 0xe7, 0xb0, 0x57, 0xde,
-	0xc4, 0xa3, 0x77, 0xef, 0xcb, 0xb5, 0xec, 0xb7, 0xcc, 0x12, 0x0f, 0x60, 0xf0, 0xab, 0x09, 0x1d,
-	0x1d, 0x22, 0xa8, 0xe2, 0x6a, 0x5d, 0xa2, 0x97, 0xd0, 0x2e, 0xf5, 0x4b, 0xc7, 0xec, 0x8e, 0x3a,
-	0x3a, 0xa6, 0x11, 0x59, 0x2d, 0x21, 0x07, 0xda, 0x05, 0x8f, 0xcb, 0x7a, 0xf1, 0xee, 0xe8, 0x68,
-	0xb3, 0x8b, 0x71, 0x0e, 0x99, 0x96, 0x59, 0x6d, 0x43, 0x6f, 0xa1, 0xa5, 0x4a, 0xb9, 0x0e, 0xd7,
-	0x1d, 0x1d, 0xff, 0xe3, 0x7f, 0x78, 0x73, 0x66, 0x9c, 0xe8, 0x04, 0x3a, 0x29, 0x37, 0x9b, 0xab,
-	0x0b, 0x37, 0x75, 0xf0, 0xc7, 0x68, 0xf0, 0xc7, 0x02, 0xd8, 0xd4, 0xa1, 0x7d, 0x78, 0x32, 0xa7,
-	0x63, 0x7c, 0x41, 0x28, 0x1e, 0x47, 0x41, 0xe8, 0x86, 0xd8, 0xde, 0x42, 0x3d, 0xf8, 0xdf, 0xf3,
-	0x2f, 0xbf, 0x11, 0x3a, 0x89, 0xc8, 0xcc, 0x9d, 0x60, 0xdb, 0x42, 0x07, 0x60, 0x13, 0x1a, 0x84,
-	0xee, 0x74, 0xba, 0xa1, 0xdb, 0x8a, 0x7a, 0xfe, 0x6c, 0x46, 0xc2, 0x70, 0x43, 0x1b, 0x8a, 0x32,
-	0x7c, 0xee, 0xfb, 0x1a, 0x8e, 0xf1, 0x82, 0x78, 0xd8, 0x6e, 0x2a, 0x3a, 0xbf, 0x9c, 0x30, 0x77,
-	0x8c, 0x23, 0xcf, 0x9f, 0x5d, 0x4e, 0x71, 0x88, 0xed, 0x16, 0x42, 0xd0, 0xbd, 0xa7, 0x17, 0x2e,
-	0x99, 0xe2, 0xb1, 0xdd, 0x46, 0x47, 0xb0, 0xef, 0x7a, 0x21, 0x59, 0xb8, 0x21, 0xf1, 0xe9, 0xc6,
-	0xbc, 0x83, 0x0e, 0xa1, 0xf7, 0x48, 0xa8, 0xfd, 0xbb, 0x83, 0x9f, 0x16, 0xb4, 0xcd, 0xe9, 0xf4,
-	0x90, 0x87, 0x75, 0x18, 0x76, 0x03, 0x9f, 0xda, 0x5b, 0x8a, 0x62, 0xc6, 0x7c, 0x16, 0x11, 0x1a,
-	0x31, 0xfc, 0x65, 0x8e, 0x83, 0xd0, 0xb6, 0xd4, 0x68, 0x42, 0x43, 0xcc, 0xa8, 0x3b, 0x8d, 0xb4,
-	0x6c, 0x6f, 0xa3, 0xa7, 0x70, 0x68, 0x02, 0x2b, 0xeb, 0x57, 0xe6, 0xd3, 0x49, 0x7d, 0x94, 0x86,
-	0x3a, 0x0a, 0xa1, 0x0b, 0x77, 0x4a, 0xc6, 0xf5, 0xa2, 0x4d, 0xd4, 0x87, 0x03, 0xe3, 0xd1, 0x20,
-	0xf2, 0x3e, 0x61, 0xef, 0x73, 0x30, 0x9f, 0xd9, 0xad, 0xf3, 0x8f, 0xdf, 0x3f, 0x2c, 0x45, 0x75,
-	0xb3, 0xbe, 0x1a, 0x26, 0xb9, 0x74, 0xf2, 0x5b, 0x9e, 0x25, 0x79, 0x91, 0x3a, 0x29, 0xbf, 0x13,
-	0x09, 0x3f, 0x95, 0x71, 0x16, 0x2f, 0xb9, 0xe4, 0x59, 0x75, 0x2a, 0xb2, 0x8a, 0x17, 0xd7, 0x71,
-	0xc2, 0x9d, 0xbb, 0x33, 0x67, 0x99, 0x3b, 0xa9, 0x14, 0x57, 0x6d, 0xfd, 0x63, 0x9d, 0xfd, 0x0d,
-	0x00, 0x00, 0xff, 0xff, 0x43, 0x5f, 0xa7, 0xa1, 0x86, 0x03, 0x00, 0x00,
+	// 619 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x64, 0x93, 0xdf, 0x4e, 0xdb, 0x4c,
+	0x10, 0xc5, 0x09, 0xf9, 0x03, 0x4c, 0xbe, 0x2f, 0x75, 0x16, 0x10, 0x69, 0x29, 0x12, 0x4d, 0x2f,
+	0xda, 0x1b, 0xe2, 0x36, 0xa8, 0x95, 0xaa, 0x5e, 0x19, 0x7b, 0x09, 0x2b, 0x9c, 0x75, 0xba, 0x76,
+	0x82, 0xe8, 0x8d, 0x65, 0xe2, 0x25, 0x58, 0xca, 0xda, 0xc8, 0x76, 0xe8, 0x2b, 0xf5, 0x71, 0xfa,
+	0x0a, 0x7d, 0x82, 0xbe, 0x42, 0xb5, 0xbb, 0x86, 0x20, 0xf5, 0x6e, 0xfd, 0x3b, 0x67, 0x66, 0xce,
+	0x8c, 0x64, 0x40, 0xb1, 0x48, 0xcc, 0xe2, 0x47, 0x98, 0x88, 0x68, 0xc1, 0x07, 0xf7, 0x79, 0x56,
+	0x66, 0xa8, 0x1e, 0x8b, 0xe4, 0x55, 0x57, 0x0a, 0xf3, 0x4c, 0x88, 0x2c, 0x2d, 0x34, 0xef, 0x8f,
+	0xe0, 0x3f, 0x22, 0x6d, 0x33, 0x9e, 0x17, 0x49, 0x96, 0xa2, 0x23, 0x00, 0x55, 0x16, 0xa6, 0x91,
+	0xe0, 0xbd, 0xda, 0x71, 0xed, 0xfd, 0x0e, 0xdb, 0x51, 0x84, 0x46, 0x82, 0xa3, 0x1e, 0x6c, 0x3d,
+	0x68, 0x67, 0x6f, 0x53, 0x69, 0x8f, 0x9f, 0xfd, 0x9f, 0x35, 0x30, 0x54, 0x27, 0x92, 0xde, 0x66,
+	0xb9, 0x88, 0x4a, 0xd9, 0xed, 0x1d, 0x34, 0x55, 0xad, 0x6a, 0xd4, 0x1e, 0x76, 0x07, 0xb1, 0x48,
+	0x06, 0xcf, 0xe7, 0x31, 0xad, 0xa3, 0x0f, 0xb0, 0xa7, 0xc7, 0x26, 0x69, 0x51, 0x46, 0xcb, 0x65,
+	0x58, 0xcc, 0xf3, 0xe4, 0xbe, 0xac, 0x86, 0xa0, 0x44, 0x37, 0x56, 0x92, 0xaf, 0x14, 0x74, 0x08,
+	0x3a, 0x56, 0xb8, 0xca, 0x97, 0xbd, 0xba, 0xb2, 0x6d, 0x2b, 0x30, 0xcd, 0x97, 0xe8, 0x35, 0xec,
+	0x14, 0x77, 0xd1, 0xf0, 0xd3, 0xe7, 0x62, 0x25, 0x7a, 0x4d, 0xbd, 0xc4, 0x13, 0xe8, 0xff, 0x69,
+	0x40, 0x5b, 0x85, 0xf0, 0xcb, 0xa8, 0x5c, 0x15, 0xe8, 0x2d, 0xb4, 0x0a, 0xf5, 0x52, 0x31, 0x3b,
+	0xc3, 0xb6, 0x8a, 0xa9, 0x45, 0x56, 0x49, 0xc8, 0x84, 0x56, 0xce, 0xa3, 0xa2, 0x5a, 0xbc, 0x33,
+	0x3c, 0x58, 0xef, 0xa2, 0x9d, 0x03, 0xa6, 0x64, 0x56, 0xd9, 0xd0, 0x47, 0x68, 0xca, 0x52, 0xae,
+	0xc2, 0x75, 0x86, 0x87, 0xff, 0xf8, 0x9f, 0xde, 0x9c, 0x69, 0x27, 0x3a, 0x86, 0x76, 0xcc, 0xf5,
+	0xe6, 0xf2, 0xc2, 0x0d, 0x15, 0xfc, 0x39, 0xea, 0xff, 0xaa, 0x01, 0xac, 0xeb, 0xd0, 0x2e, 0xbc,
+	0x98, 0x52, 0x07, 0x9f, 0x13, 0x8a, 0x9d, 0xd0, 0x0f, 0xac, 0x00, 0x1b, 0x1b, 0xa8, 0x0b, 0xff,
+	0xdb, 0xde, 0xe4, 0x9a, 0xd0, 0x51, 0x48, 0xc6, 0xd6, 0x08, 0x1b, 0x35, 0xb4, 0x07, 0x06, 0xa1,
+	0x7e, 0x60, 0xb9, 0xee, 0x9a, 0x6e, 0x4a, 0x6a, 0x7b, 0xe3, 0x31, 0x09, 0x82, 0x35, 0xad, 0x4b,
+	0xca, 0xf0, 0x99, 0xe7, 0x29, 0xe8, 0xe0, 0x19, 0xb1, 0xb1, 0xd1, 0x90, 0x74, 0x3a, 0x19, 0x31,
+	0xcb, 0xc1, 0xa1, 0xed, 0x8d, 0x27, 0x2e, 0x0e, 0xb0, 0xd1, 0x44, 0x08, 0x3a, 0x8f, 0xf4, 0xdc,
+	0x22, 0x2e, 0x76, 0x8c, 0x16, 0x3a, 0x80, 0x5d, 0xcb, 0x0e, 0xc8, 0xcc, 0x0a, 0x88, 0x47, 0xd7,
+	0xe6, 0x2d, 0xb4, 0x0f, 0xdd, 0x67, 0x42, 0xe5, 0xdf, 0xee, 0xff, 0xae, 0x41, 0x4b, 0x9f, 0x4e,
+	0x0d, 0x79, 0x5a, 0x87, 0x61, 0xcb, 0xf7, 0xa8, 0xb1, 0x21, 0x29, 0x66, 0xcc, 0x63, 0x21, 0xa1,
+	0x21, 0xc3, 0xdf, 0xa6, 0xd8, 0x0f, 0x8c, 0x9a, 0x1c, 0x4d, 0x68, 0x80, 0x19, 0xb5, 0xdc, 0x50,
+	0xc9, 0xc6, 0x26, 0x7a, 0x09, 0xfb, 0x3a, 0xb0, 0xb4, 0x5e, 0x31, 0x8f, 0x8e, 0xaa, 0xa3, 0xd4,
+	0xe5, 0x51, 0x08, 0x9d, 0x59, 0x2e, 0x71, 0xaa, 0x45, 0x1b, 0xa8, 0x07, 0x7b, 0xda, 0xa3, 0x40,
+	0x68, 0x5f, 0x60, 0xfb, 0xd2, 0x9f, 0x8e, 0x8d, 0x26, 0x7a, 0x03, 0x47, 0xde, 0x04, 0x33, 0x1d,
+	0xd4, 0x72, 0x19, 0xb6, 0x9c, 0x6b, 0xd9, 0x72, 0xc2, 0xbc, 0x11, 0xc3, 0xbe, 0x6f, 0xb4, 0xd4,
+	0xe6, 0xf4, 0x92, 0x7a, 0x57, 0xf4, 0xf1, 0x46, 0x5b, 0xb2, 0x61, 0x35, 0x9e, 0x7a, 0x81, 0xcc,
+	0x6f, 0x5f, 0x58, 0x67, 0x2e, 0x36, 0xb6, 0xcf, 0xbe, 0x7e, 0xff, 0xb2, 0x48, 0xca, 0xbb, 0xd5,
+	0xcd, 0x60, 0x9e, 0x09, 0x33, 0xbb, 0xe7, 0xe9, 0x3c, 0xcb, 0x63, 0x33, 0xe6, 0x0f, 0xc9, 0x9c,
+	0x9f, 0x88, 0x28, 0x8d, 0x16, 0x5c, 0xf0, 0xb4, 0x3c, 0x49, 0xd2, 0x92, 0xe7, 0xb7, 0xd1, 0x9c,
+	0x9b, 0x0f, 0xa7, 0xe6, 0x22, 0x33, 0x63, 0x91, 0xdc, 0xb4, 0xd4, 0x9f, 0x7a, 0xfa, 0x37, 0x00,
+	0x00, 0xff, 0xff, 0x14, 0xd5, 0x87, 0xaf, 0xd7, 0x03, 0x00, 0x00,
 }
diff --git a/go/dmi/sw_management_service.pb.go b/go/dmi/sw_management_service.pb.go
index c3c2718..d61b85b 100644
--- a/go/dmi/sw_management_service.pb.go
+++ b/go/dmi/sw_management_service.pb.go
@@ -22,6 +22,71 @@
 // proto package needs to be updated.
 const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package
 
+type GetSoftwareVersionInformationResponse_Reason int32
+
+const (
+	GetSoftwareVersionInformationResponse_UNDEFINED_REASON GetSoftwareVersionInformationResponse_Reason = 0
+	GetSoftwareVersionInformationResponse_UNKNOWN_DEVICE   GetSoftwareVersionInformationResponse_Reason = 1
+	GetSoftwareVersionInformationResponse_INTERNAL_ERROR   GetSoftwareVersionInformationResponse_Reason = 2
+)
+
+var GetSoftwareVersionInformationResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+}
+
+var GetSoftwareVersionInformationResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON": 0,
+	"UNKNOWN_DEVICE":   1,
+	"INTERNAL_ERROR":   2,
+}
+
+func (x GetSoftwareVersionInformationResponse_Reason) String() string {
+	return proto.EnumName(GetSoftwareVersionInformationResponse_Reason_name, int32(x))
+}
+
+func (GetSoftwareVersionInformationResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{1, 0}
+}
+
+type ConfigResponse_Reason int32
+
+const (
+	ConfigResponse_UNDEFINED_REASON              ConfigResponse_Reason = 0
+	ConfigResponse_UNKNOWN_DEVICE                ConfigResponse_Reason = 1
+	ConfigResponse_INTERNAL_ERROR                ConfigResponse_Reason = 2
+	ConfigResponse_ERROR_FETCHING_CONFIG         ConfigResponse_Reason = 3
+	ConfigResponse_INVALID_CONFIG                ConfigResponse_Reason = 4
+	ConfigResponse_OPERATION_ALREADY_IN_PROGRESS ConfigResponse_Reason = 5
+)
+
+var ConfigResponse_Reason_name = map[int32]string{
+	0: "UNDEFINED_REASON",
+	1: "UNKNOWN_DEVICE",
+	2: "INTERNAL_ERROR",
+	3: "ERROR_FETCHING_CONFIG",
+	4: "INVALID_CONFIG",
+	5: "OPERATION_ALREADY_IN_PROGRESS",
+}
+
+var ConfigResponse_Reason_value = map[string]int32{
+	"UNDEFINED_REASON":              0,
+	"UNKNOWN_DEVICE":                1,
+	"INTERNAL_ERROR":                2,
+	"ERROR_FETCHING_CONFIG":         3,
+	"INVALID_CONFIG":                4,
+	"OPERATION_ALREADY_IN_PROGRESS": 5,
+}
+
+func (x ConfigResponse_Reason) String() string {
+	return proto.EnumName(ConfigResponse_Reason_name, int32(x))
+}
+
+func (ConfigResponse_Reason) EnumDescriptor() ([]byte, []int) {
+	return fileDescriptor_000929e4bec891d7, []int{4, 0}
+}
+
 type SoftwareVersionInformation struct {
 	ActiveVersions       []*ImageVersion `protobuf:"bytes,1,rep,name=active_versions,json=activeVersions,proto3" json:"active_versions,omitempty"`
 	StandbyVersions      []*ImageVersion `protobuf:"bytes,2,rep,name=standby_versions,json=standbyVersions,proto3" json:"standby_versions,omitempty"`
@@ -70,12 +135,12 @@
 }
 
 type GetSoftwareVersionInformationResponse struct {
-	Status               Status                      `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason                      `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	Info                 *SoftwareVersionInformation `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"`
-	XXX_NoUnkeyedLiteral struct{}                    `json:"-"`
-	XXX_unrecognized     []byte                      `json:"-"`
-	XXX_sizecache        int32                       `json:"-"`
+	Status               Status                                       `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               GetSoftwareVersionInformationResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.GetSoftwareVersionInformationResponse_Reason" json:"reason,omitempty"`
+	Info                 *SoftwareVersionInformation                  `protobuf:"bytes,3,opt,name=info,proto3" json:"info,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}                                     `json:"-"`
+	XXX_unrecognized     []byte                                       `json:"-"`
+	XXX_sizecache        int32                                        `json:"-"`
 }
 
 func (m *GetSoftwareVersionInformationResponse) Reset()         { *m = GetSoftwareVersionInformationResponse{} }
@@ -110,11 +175,11 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *GetSoftwareVersionInformationResponse) GetReason() Reason {
+func (m *GetSoftwareVersionInformationResponse) GetReason() GetSoftwareVersionInformationResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return GetSoftwareVersionInformationResponse_UNDEFINED_REASON
 }
 
 func (m *GetSoftwareVersionInformationResponse) GetInfo() *SoftwareVersionInformation {
@@ -222,11 +287,11 @@
 }
 
 type ConfigResponse struct {
-	Status               Status   `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
-	Reason               Reason   `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.Reason" json:"reason,omitempty"`
-	XXX_NoUnkeyedLiteral struct{} `json:"-"`
-	XXX_unrecognized     []byte   `json:"-"`
-	XXX_sizecache        int32    `json:"-"`
+	Status               Status                `protobuf:"varint,1,opt,name=status,proto3,enum=dmi.Status" json:"status,omitempty"`
+	Reason               ConfigResponse_Reason `protobuf:"varint,2,opt,name=reason,proto3,enum=dmi.ConfigResponse_Reason" json:"reason,omitempty"`
+	XXX_NoUnkeyedLiteral struct{}              `json:"-"`
+	XXX_unrecognized     []byte                `json:"-"`
+	XXX_sizecache        int32                 `json:"-"`
 }
 
 func (m *ConfigResponse) Reset()         { *m = ConfigResponse{} }
@@ -261,14 +326,16 @@
 	return Status_UNDEFINED_STATUS
 }
 
-func (m *ConfigResponse) GetReason() Reason {
+func (m *ConfigResponse) GetReason() ConfigResponse_Reason {
 	if m != nil {
 		return m.Reason
 	}
-	return Reason_UNDEFINED_REASON
+	return ConfigResponse_UNDEFINED_REASON
 }
 
 func init() {
+	proto.RegisterEnum("dmi.GetSoftwareVersionInformationResponse_Reason", GetSoftwareVersionInformationResponse_Reason_name, GetSoftwareVersionInformationResponse_Reason_value)
+	proto.RegisterEnum("dmi.ConfigResponse_Reason", ConfigResponse_Reason_name, ConfigResponse_Reason_value)
 	proto.RegisterType((*SoftwareVersionInformation)(nil), "dmi.SoftwareVersionInformation")
 	proto.RegisterType((*GetSoftwareVersionInformationResponse)(nil), "dmi.GetSoftwareVersionInformationResponse")
 	proto.RegisterType((*DownloadImageRequest)(nil), "dmi.DownloadImageRequest")
@@ -279,40 +346,49 @@
 func init() { proto.RegisterFile("dmi/sw_management_service.proto", fileDescriptor_000929e4bec891d7) }
 
 var fileDescriptor_000929e4bec891d7 = []byte{
-	// 528 bytes of a gzipped FileDescriptorProto
-	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0xd1, 0x8a, 0x13, 0x3d,
-	0x14, 0x66, 0xda, 0x9f, 0x85, 0x9e, 0xfe, 0x6d, 0x77, 0xe3, 0x0a, 0x75, 0x40, 0xba, 0x54, 0x84,
-	0xb2, 0xb0, 0x9d, 0xa5, 0xdd, 0x1b, 0x5d, 0x11, 0xd4, 0x85, 0xb5, 0x17, 0x0a, 0x4e, 0xad, 0x17,
-	0xbd, 0x19, 0xd2, 0x49, 0x3a, 0x1b, 0x68, 0x92, 0x31, 0xc9, 0x4c, 0xf5, 0x45, 0x7c, 0x04, 0x9f,
-	0xcf, 0x47, 0x90, 0x24, 0x53, 0xbb, 0x65, 0xb7, 0xa0, 0xe2, 0xdd, 0xe4, 0x3b, 0xe7, 0xfb, 0xce,
-	0xc9, 0x39, 0xdf, 0x04, 0x7a, 0x84, 0xb3, 0x48, 0xaf, 0x13, 0x8e, 0x05, 0xce, 0x28, 0xa7, 0xc2,
-	0x24, 0x9a, 0xaa, 0x92, 0xa5, 0x74, 0x98, 0x2b, 0x69, 0x24, 0xaa, 0x13, 0xce, 0xc2, 0x23, 0x9b,
-	0x95, 0x4a, 0xce, 0xa5, 0xd0, 0x1e, 0x0f, 0xff, 0xb7, 0xd0, 0xcd, 0xba, 0x3a, 0xa1, 0x4a, 0x86,
-	0x71, 0x9c, 0x55, 0xcc, 0xfe, 0xb7, 0x00, 0xc2, 0xa9, 0x5c, 0x9a, 0x35, 0x56, 0xf4, 0x13, 0x55,
-	0x9a, 0x49, 0x31, 0x11, 0x4b, 0xa9, 0x38, 0x36, 0x4c, 0x0a, 0xf4, 0x1c, 0x3a, 0x38, 0x35, 0xac,
-	0xa4, 0x49, 0xe9, 0x83, 0xba, 0x1b, 0x9c, 0xd4, 0x07, 0xcd, 0xd1, 0xd1, 0x90, 0x70, 0x36, 0x9c,
-	0x58, 0xa5, 0x8a, 0x16, 0xb7, 0x7d, 0x66, 0x75, 0xd4, 0xe8, 0x05, 0x1c, 0x6a, 0x83, 0x05, 0x59,
-	0x7c, 0xdd, 0x92, 0x6b, 0xfb, 0xc8, 0x9d, 0x2a, 0x75, 0xc3, 0xee, 0x7f, 0x0f, 0xe0, 0xe9, 0x35,
-	0x35, 0xfb, 0x7b, 0x8b, 0xa9, 0xce, 0xa5, 0xd0, 0x14, 0x3d, 0x81, 0x03, 0x6d, 0xb0, 0x29, 0x6c,
-	0x6b, 0xc1, 0xa0, 0x3d, 0x6a, 0x3a, 0xf5, 0xa9, 0x83, 0xe2, 0x2a, 0x64, 0x93, 0x14, 0xc5, 0x5a,
-	0x8a, 0x6e, 0xed, 0x56, 0x52, 0xec, 0xa0, 0xb8, 0x0a, 0xa1, 0x31, 0xfc, 0xc7, 0xc4, 0x52, 0x76,
-	0xeb, 0x27, 0xc1, 0xa0, 0x39, 0xea, 0x79, 0x9d, 0xfd, 0x0d, 0xb8, 0xe4, 0xfe, 0x17, 0x38, 0xbe,
-	0x92, 0x6b, 0xb1, 0x92, 0x98, 0xb8, 0x1b, 0xc5, 0xf4, 0x73, 0x41, 0xb5, 0x41, 0xa7, 0xd0, 0x24,
-	0xd4, 0xee, 0x28, 0x29, 0x0a, 0x46, 0x5c, 0x6f, 0xcd, 0x51, 0xc3, 0x69, 0xce, 0x0a, 0x46, 0x62,
-	0xf0, 0x51, 0xfb, 0x8d, 0x2e, 0x00, 0xdc, 0x52, 0x12, 0x57, 0xbe, 0xe6, 0x52, 0x1f, 0x6e, 0x87,
-	0x74, 0xbb, 0x68, 0x83, 0x6d, 0x90, 0xfe, 0x1c, 0x5a, 0x6f, 0xa4, 0x58, 0xb2, 0xec, 0x6f, 0x4a,
-	0x3e, 0x06, 0x48, 0x1d, 0x39, 0x29, 0xd4, 0xca, 0x95, 0x6c, 0xc4, 0x0d, 0x8f, 0xcc, 0xd4, 0xaa,
-	0x3f, 0x87, 0xf6, 0x46, 0xfb, 0x5f, 0x8f, 0x79, 0xf4, 0xa3, 0x06, 0xbd, 0xf7, 0xd8, 0x7a, 0x65,
-	0x33, 0xdc, 0x77, 0xbf, 0x8c, 0x3d, 0xf5, 0xbe, 0x46, 0x1f, 0x00, 0xdd, 0xdd, 0x3e, 0xea, 0x38,
-	0xb9, 0xb7, 0x58, 0x11, 0x8b, 0x4e, 0xae, 0xc2, 0x53, 0x07, 0xfc, 0x9e, 0x4f, 0x5e, 0x42, 0x6b,
-	0x67, 0x51, 0xe8, 0x91, 0x23, 0xdf, 0xb7, 0xbc, 0xf0, 0x70, 0x3b, 0x7c, 0x7f, 0xc3, 0xf3, 0x00,
-	0x5d, 0x40, 0xeb, 0x95, 0x75, 0x38, 0x36, 0xd4, 0xf3, 0xef, 0x74, 0x73, 0x1f, 0xeb, 0x12, 0x8e,
-	0x63, 0x5a, 0x52, 0x65, 0x3e, 0xca, 0xa9, 0xb7, 0xf8, 0x1f, 0x90, 0xaf, 0x21, 0x9c, 0xe5, 0x04,
-	0x1b, 0x8b, 0x28, 0x53, 0xe4, 0x7e, 0x25, 0x85, 0xf2, 0x3f, 0x27, 0x72, 0x8c, 0x1d, 0x0b, 0x84,
-	0x0f, 0x76, 0x30, 0x7f, 0xf3, 0xf3, 0xe0, 0xf5, 0xe5, 0xfc, 0x59, 0xc6, 0xcc, 0x4d, 0xb1, 0x18,
-	0xa6, 0x92, 0x47, 0x32, 0xa7, 0x22, 0x95, 0x8a, 0x44, 0xde, 0x0f, 0x67, 0xdb, 0x77, 0xe5, 0x8c,
-	0x09, 0x43, 0xd5, 0x12, 0xa7, 0x34, 0x2a, 0xc7, 0x51, 0x26, 0x23, 0xc2, 0xd9, 0xe2, 0xc0, 0x3d,
-	0x15, 0xe3, 0x9f, 0x01, 0x00, 0x00, 0xff, 0xff, 0x9c, 0xd0, 0x0a, 0x81, 0x87, 0x04, 0x00, 0x00,
+	// 671 bytes of a gzipped FileDescriptorProto
+	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x54, 0x5f, 0x4f, 0x13, 0x4f,
+	0x14, 0xfd, 0x6d, 0xcb, 0xaf, 0x49, 0x6f, 0xa5, 0x2c, 0x23, 0x24, 0xd0, 0x84, 0x80, 0x35, 0x26,
+	0x84, 0x84, 0x16, 0x0b, 0x2f, 0x8a, 0x31, 0xa9, 0xed, 0xb6, 0x6c, 0xc4, 0x2d, 0x4e, 0x5b, 0x8c,
+	0xbc, 0x6c, 0x86, 0xee, 0xb4, 0x4c, 0xc2, 0xce, 0xd4, 0xd9, 0xd9, 0x56, 0xdf, 0xfd, 0x08, 0xc6,
+	0xf8, 0x31, 0xfd, 0x08, 0x66, 0x67, 0xb6, 0x56, 0xfe, 0x25, 0x60, 0x7c, 0xdb, 0x3d, 0x73, 0xce,
+	0xb9, 0x77, 0xf7, 0x9e, 0x3b, 0xb0, 0x19, 0x84, 0xac, 0x1a, 0x4d, 0xfd, 0x90, 0x70, 0x32, 0xa2,
+	0x21, 0xe5, 0xca, 0x8f, 0xa8, 0x9c, 0xb0, 0x01, 0xad, 0x8c, 0xa5, 0x50, 0x02, 0x65, 0x83, 0x90,
+	0x95, 0x96, 0x13, 0xd6, 0x40, 0x84, 0xa1, 0xe0, 0x91, 0xc1, 0x4b, 0x8f, 0x12, 0xe8, 0x62, 0x9a,
+	0xbe, 0xa1, 0xd4, 0x86, 0x85, 0x64, 0x94, 0x2a, 0xcb, 0xdf, 0x2d, 0x28, 0x75, 0xc5, 0x50, 0x4d,
+	0x89, 0xa4, 0xa7, 0x54, 0x46, 0x4c, 0x70, 0x97, 0x0f, 0x85, 0x0c, 0x89, 0x62, 0x82, 0xa3, 0x97,
+	0xb0, 0x44, 0x06, 0x8a, 0x4d, 0xa8, 0x3f, 0x31, 0x87, 0xd1, 0x9a, 0xb5, 0x95, 0xdd, 0x2e, 0xd4,
+	0x96, 0x2b, 0x41, 0xc8, 0x2a, 0x6e, 0xe2, 0x94, 0xca, 0x70, 0xd1, 0x30, 0xd3, 0xd7, 0x08, 0xbd,
+	0x02, 0x3b, 0x52, 0x84, 0x07, 0xe7, 0x5f, 0xe6, 0xe2, 0xcc, 0x5d, 0xe2, 0xa5, 0x94, 0x3a, 0x53,
+	0x97, 0xbf, 0x65, 0xe0, 0x59, 0x9b, 0xaa, 0xbb, 0x7b, 0xc3, 0x34, 0x1a, 0x0b, 0x1e, 0x51, 0xf4,
+	0x14, 0x72, 0x91, 0x22, 0x2a, 0x4e, 0x5a, 0xb3, 0xb6, 0x8b, 0xb5, 0x82, 0x76, 0xef, 0x6a, 0x08,
+	0xa7, 0x47, 0xc8, 0x85, 0x9c, 0xa4, 0x24, 0x12, 0x7c, 0x2d, 0xa3, 0x49, 0xcf, 0x35, 0xe9, 0x5e,
+	0x05, 0x2a, 0x58, 0x0b, 0x71, 0x6a, 0x80, 0xf6, 0x61, 0x81, 0xf1, 0xa1, 0x58, 0xcb, 0x6e, 0x59,
+	0xdb, 0x85, 0xda, 0xa6, 0xa9, 0x76, 0xb7, 0x8b, 0x26, 0x97, 0x5b, 0x90, 0x33, 0x36, 0x68, 0x05,
+	0xec, 0xbe, 0xd7, 0x74, 0x5a, 0xae, 0xe7, 0x34, 0x7d, 0xec, 0xd4, 0xbb, 0x1d, 0xcf, 0xfe, 0x0f,
+	0x21, 0x28, 0xf6, 0xbd, 0xb7, 0x5e, 0xe7, 0x83, 0xe7, 0x37, 0x9d, 0x53, 0xb7, 0xe1, 0xd8, 0x56,
+	0x82, 0xb9, 0x5e, 0xcf, 0xc1, 0x5e, 0xfd, 0xd8, 0x77, 0x30, 0xee, 0x60, 0x3b, 0x53, 0xfe, 0x0c,
+	0x2b, 0x4d, 0x31, 0xe5, 0x97, 0x82, 0x04, 0xfa, 0xff, 0x61, 0xfa, 0x29, 0xa6, 0x91, 0x42, 0x3b,
+	0x50, 0x08, 0x68, 0x92, 0x08, 0x3f, 0x8e, 0x59, 0xa0, 0xff, 0x44, 0xa1, 0x96, 0xd7, 0xbd, 0xf5,
+	0x63, 0x16, 0x60, 0x30, 0xa7, 0xc9, 0x33, 0x3a, 0x00, 0xd0, 0x11, 0xf0, 0xf5, 0x67, 0x64, 0x34,
+	0x75, 0x75, 0x3e, 0x92, 0x3f, 0x9b, 0xcf, 0xb3, 0x19, 0x52, 0x3e, 0x83, 0xc5, 0x86, 0xe0, 0x43,
+	0x36, 0xfa, 0x9b, 0x92, 0x1b, 0x00, 0x03, 0x2d, 0xf6, 0x63, 0x79, 0xa9, 0x4b, 0xe6, 0x71, 0xde,
+	0x20, 0x7d, 0x79, 0x59, 0xfe, 0x9a, 0x81, 0xe2, 0xcc, 0xfc, 0x21, 0x53, 0xad, 0x5d, 0x9b, 0x6a,
+	0x49, 0x93, 0xae, 0x3a, 0x5d, 0x1b, 0x5f, 0xf9, 0x87, 0xf5, 0x6f, 0x46, 0x81, 0xd6, 0x61, 0x55,
+	0x3f, 0xfa, 0x2d, 0xa7, 0xd7, 0x38, 0x72, 0xbd, 0xb6, 0xdf, 0xe8, 0x78, 0x2d, 0xb7, 0x6d, 0x67,
+	0x0d, 0xfd, 0xb4, 0x7e, 0xec, 0x36, 0x67, 0xd8, 0x02, 0x7a, 0x02, 0x1b, 0x9d, 0x13, 0x07, 0xd7,
+	0x7b, 0x6e, 0xc7, 0xf3, 0xeb, 0xc7, 0xd8, 0xa9, 0x37, 0x3f, 0xfa, 0xae, 0xe7, 0x9f, 0xe0, 0x4e,
+	0x1b, 0x3b, 0xdd, 0xae, 0xfd, 0x7f, 0xed, 0x67, 0x06, 0x36, 0x3d, 0x92, 0x2c, 0xd1, 0x2c, 0x4f,
+	0xef, 0x7e, 0x6f, 0x7c, 0xd7, 0x2c, 0x3c, 0x7a, 0x0f, 0xe8, 0x66, 0x6a, 0xd1, 0x92, 0xfe, 0xf0,
+	0x23, 0x22, 0x83, 0x04, 0x75, 0x9b, 0xa5, 0x9d, 0xfb, 0xe7, 0x1b, 0xbd, 0x86, 0xc5, 0x2b, 0x99,
+	0x42, 0xeb, 0x5a, 0x7c, 0x5b, 0xce, 0x4a, 0xf6, 0x3c, 0x27, 0x66, 0x16, 0x7b, 0x16, 0x3a, 0x80,
+	0xc5, 0x7a, 0xb2, 0xfa, 0x44, 0x51, 0xa3, 0xbf, 0xd1, 0xcd, 0x6d, 0xaa, 0x43, 0x58, 0xc1, 0x74,
+	0x42, 0xa5, 0xea, 0x89, 0xae, 0xd9, 0xfd, 0x07, 0x88, 0xdb, 0x50, 0xea, 0x8f, 0x03, 0xa2, 0x12,
+	0x44, 0xaa, 0x78, 0x6c, 0x46, 0x1e, 0x4b, 0x73, 0x6b, 0xa1, 0x2b, 0x31, 0x30, 0x8d, 0x3f, 0xbe,
+	0x25, 0x1a, 0x7b, 0xd6, 0x9b, 0xc3, 0xb3, 0x17, 0x23, 0xa6, 0x2e, 0xe2, 0xf3, 0xca, 0x40, 0x84,
+	0x55, 0x31, 0xa6, 0x7c, 0x20, 0x64, 0x50, 0x35, 0xd1, 0xdd, 0x9d, 0x5f, 0xb8, 0xbb, 0x8c, 0x2b,
+	0x2a, 0x87, 0x64, 0x40, 0xab, 0x93, 0xfd, 0xea, 0x48, 0x54, 0x83, 0x90, 0x9d, 0xe7, 0xf4, 0x1d,
+	0xba, 0xff, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x55, 0x2e, 0xda, 0x40, 0xa0, 0x05, 0x00, 0x00,
 }
 
 // Reference imports to suppress errors if they are not otherwise used.
diff --git a/protos/dmi/commons.proto b/protos/dmi/commons.proto
index 4b9757b..d468bcd 100644
--- a/protos/dmi/commons.proto
+++ b/protos/dmi/commons.proto
@@ -11,21 +11,6 @@
     ERROR_STATUS = 2;
 }
 
-// Reason for the failure of request
-enum Reason {
-    UNDEFINED_REASON = 0;
-    UNKNOWN_DEVICE = 1;
-    INTERNAL_ERROR = 2;
-    WRONG_METRIC = 3;
-    WRONG_EVENT = 4;
-    LOGGING_ENDPOINT_ERROR = 5;
-    LOGGING_ENDPOINT_PROTOCOL_ERROR = 6;
-    KAFKA_ENDPOINT_ERROR = 7;
-    UNKNOWN_LOG_ENTITY = 8;
-    ERROR_FETCHING_CONFIG = 9;
-    INVALID_CONFIG = 10;
-}
-
 //Log Level
 enum LogLevel {
     TRACE = 0;
diff --git a/protos/dmi/hw_events_mgmt_service.proto b/protos/dmi/hw_events_mgmt_service.proto
index 2a53e3e..2387420 100644
--- a/protos/dmi/hw_events_mgmt_service.proto
+++ b/protos/dmi/hw_events_mgmt_service.proto
@@ -103,6 +103,11 @@
 }
 
 message ListEventsResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+    }
     Status status = 1;
     Reason reason = 2;
     EventsCfg events = 3;
@@ -117,6 +122,12 @@
 }
 
 message EventsConfigurationResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        INVALID_CONFIG = 3;
+    }
     Status status = 1;
     Reason reason = 2;
 }
diff --git a/protos/dmi/hw_management_service.proto b/protos/dmi/hw_management_service.proto
index 1ca65e7..cf713ba 100644
--- a/protos/dmi/hw_management_service.proto
+++ b/protos/dmi/hw_management_service.proto
@@ -14,6 +14,11 @@
 }
 
 message PhysicalInventoryResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+    }
     Status status = 1;
     Reason reason = 2;
     Hardware inventory = 3;
@@ -26,6 +31,12 @@
 }
 
 message HWComponentInfoGetResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        UNKNOWN_COMPONENT = 2;
+        INTERNAL_ERROR = 3;
+    }
     Status status = 1;
     Reason reason = 2;
     Component component = 3;
@@ -39,11 +50,29 @@
 }
 
 message HWComponentInfoSetResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        UNKNOWN_COMPONENT = 2;
+        INVALID_PARAMS = 3;
+        INTERNAL_ERROR = 4;
+    }
     Status status = 1;
     Reason reason = 2;
 }
 
 message StartManagingDeviceResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        // DEVICE_ALREADY_MANAGED is returned when StartManagingDevice is called again for the same name AFTER a previously
+        // successful StartManagingDevice operation
+        DEVICE_ALREADY_MANAGED = 1;
+        // OPERATION_ALREADY_IN_PROGRESS is returned when StartManagingDevice is called again for the same name BEFORE
+        // a previous StartManagingDevice operation has completed
+        OPERATION_ALREADY_IN_PROGRESS = 2;
+        INVALID_PARAMS = 3;
+        INTERNAL_ERROR = 4;
+    }
     Status status = 1;
     Reason reason = 2;
     Uuid device_uuid = 3;
@@ -54,6 +83,12 @@
 }
 
 message StopManagingDeviceResponse {
+    // The only case in which an error is expected is if the name of the
+    // device to be stopped is not found
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE= 1;
+    }
     Status status = 1;
     Reason reason = 2;
 }
@@ -69,11 +104,24 @@
 }
 
 message SetRemoteEndpointResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        LOGGING_ENDPOINT_ERROR = 3;
+        LOGGING_ENDPOINT_PROTOCOL_ERROR = 4;
+        MSGBUS_ENDPOINT_ERROR = 5;
+    }
     Status status = 1;
     Reason reason = 2;
 }
 
 message GetLoggingEndpointResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+    }
     Status status = 1;
     Reason reason = 2;
     string logging_endpoint = 3;
@@ -85,6 +133,10 @@
 }
 
 message GetMsgBusEndpointResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        INTERNAL_ERROR = 1;
+    }
     Status status = 1;
     Reason reason = 2;
     string msgbus_endpoint = 3;
@@ -101,6 +153,12 @@
 }
 
 message SetLogLevelResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        UNKNOWN_LOG_ENTITY = 3;
+    }
     Uuid device_uuid = 1;
     Status status = 2;
     Reason reason = 3;
@@ -112,6 +170,12 @@
 }
 
 message GetLogLevelResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        UNKNOWN_LOG_ENTITY = 3;
+    }
     Uuid device_uuid = 1;
     repeated EntitiesLogLevel logLevels = 2;
     Status status = 3;
@@ -122,8 +186,6 @@
     Uuid device_uuid = 1;
 }
 
-
-
 service NativeHWManagementService {
     // Initializes context for a device and sets up required states
     // In the call to StartManagingDevice, the fields of ModifiableComponent which are relevant
@@ -137,6 +199,8 @@
     rpc StartManagingDevice(ModifiableComponent) returns(stream StartManagingDeviceResponse);
 
     // Stop management of a device and clean up any context and caches for that device
+    // This rpc can be called at any time, even before the StartManagingDevice operation
+    // has completed, and should be able to cleanup.
     rpc StopManagingDevice(StopManagingDeviceRequest) returns(StopManagingDeviceResponse);
 
     // Returns an object containing a list of devices managed by this entity
diff --git a/protos/dmi/hw_metrics_mgmt_service.proto b/protos/dmi/hw_metrics_mgmt_service.proto
index adec0d3..2fc8078 100644
--- a/protos/dmi/hw_metrics_mgmt_service.proto
+++ b/protos/dmi/hw_metrics_mgmt_service.proto
@@ -67,6 +67,11 @@
 }
 
 message ListMetricsResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+    }
     Status status = 1;
     Reason reason = 2;
     MetricsConfig metrics = 3;
@@ -81,6 +86,13 @@
 }
 
 message MetricsConfigurationResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        POLL_INTERVAL_UNSUPPORTED = 3;
+        INVALID_METRIC = 4;
+    }
     Status status = 1;
     Reason reason = 2;
 }
@@ -107,6 +119,13 @@
 }
 
 message GetMetricResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        UNKNOWN_COMPONENT = 2;
+        INTERNAL_ERROR = 3;
+        INVALID_METRIC = 4;
+    }
     Status status = 1;
     Reason reason = 2;
     Metric metric = 3;
diff --git a/protos/dmi/sw_image.proto b/protos/dmi/sw_image.proto
index 3bb3b44..8013c8b 100644
--- a/protos/dmi/sw_image.proto
+++ b/protos/dmi/sw_image.proto
@@ -45,6 +45,11 @@
         DEVICE_IN_WRONG_STATE = 3;
         INVALID_IMAGE = 4;
         WRONG_IMAGE_CHECKSUM = 5;
+        OPERATION_ALREADY_IN_PROGRESS = 6;
+        UNKNOWN_DEVICE = 7;
+        // The DM implementations should have retry mechanisms (timeout values dependant on specific implementations)
+        // and even after those if the operation cannot be completed/reached then return error with reason as DEVICE_NOT_REACHABLE
+        DEVICE_NOT_REACHABLE = 8;
     }
 
     Status status  = 1;
diff --git a/protos/dmi/sw_management_service.proto b/protos/dmi/sw_management_service.proto
index 3dda39f..754a654 100644
--- a/protos/dmi/sw_management_service.proto
+++ b/protos/dmi/sw_management_service.proto
@@ -19,6 +19,11 @@
 }
 
 message GetSoftwareVersionInformationResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+    }
     Status status = 1;
     Reason reason = 2;
     SoftwareVersionInformation info = 3;
@@ -38,6 +43,14 @@
 }
 
 message ConfigResponse {
+    enum Reason {
+        UNDEFINED_REASON = 0;
+        UNKNOWN_DEVICE = 1;
+        INTERNAL_ERROR = 2;
+        ERROR_FETCHING_CONFIG = 3;
+        INVALID_CONFIG = 4;
+        OPERATION_ALREADY_IN_PROGRESS = 5;
+    }
     Status status = 1;
     Reason reason = 2;
 }
diff --git a/python/dmi/commons_pb2.py b/python/dmi/commons_pb2.py
index ce1e20b..65deceb 100644
--- a/python/dmi/commons_pb2.py
+++ b/python/dmi/commons_pb2.py
@@ -20,7 +20,7 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x11\x64mi/commons.proto\x12\x03\x64mi*?\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\r\n\tOK_STATUS\x10\x01\x12\x10\n\x0c\x45RROR_STATUS\x10\x02*\x8b\x02\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x10\n\x0cWRONG_METRIC\x10\x03\x12\x0f\n\x0bWRONG_EVENT\x10\x04\x12\x1a\n\x16LOGGING_ENDPOINT_ERROR\x10\x05\x12#\n\x1fLOGGING_ENDPOINT_PROTOCOL_ERROR\x10\x06\x12\x18\n\x14KAFKA_ENDPOINT_ERROR\x10\x07\x12\x16\n\x12UNKNOWN_LOG_ENTITY\x10\x08\x12\x19\n\x15\x45RROR_FETCHING_CONFIG\x10\t\x12\x12\n\x0eINVALID_CONFIG\x10\n*?\n\x08LogLevel\x12\t\n\x05TRACE\x10\x00\x12\t\n\x05\x44\x45\x42UG\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\x08\n\x04WARN\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n\x11\x64mi/commons.proto\x12\x03\x64mi*?\n\x06Status\x12\x14\n\x10UNDEFINED_STATUS\x10\x00\x12\r\n\tOK_STATUS\x10\x01\x12\x10\n\x0c\x45RROR_STATUS\x10\x02*?\n\x08LogLevel\x12\t\n\x05TRACE\x10\x00\x12\t\n\x05\x44\x45\x42UG\x10\x01\x12\x08\n\x04INFO\x10\x02\x12\x08\n\x04WARN\x10\x03\x12\t\n\x05\x45RROR\x10\x04\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
 )
 
 _STATUS = _descriptor.EnumDescriptor(
@@ -54,77 +54,6 @@
 _sym_db.RegisterEnumDescriptor(_STATUS)
 
 Status = enum_type_wrapper.EnumTypeWrapper(_STATUS)
-_REASON = _descriptor.EnumDescriptor(
-  name='Reason',
-  full_name='dmi.Reason',
-  filename=None,
-  file=DESCRIPTOR,
-  create_key=_descriptor._internal_create_key,
-  values=[
-    _descriptor.EnumValueDescriptor(
-      name='UNDEFINED_REASON', index=0, number=0,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='UNKNOWN_DEVICE', index=1, number=1,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='INTERNAL_ERROR', index=2, number=2,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='WRONG_METRIC', index=3, number=3,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='WRONG_EVENT', index=4, number=4,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='LOGGING_ENDPOINT_ERROR', index=5, number=5,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='LOGGING_ENDPOINT_PROTOCOL_ERROR', index=6, number=6,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='KAFKA_ENDPOINT_ERROR', index=7, number=7,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='UNKNOWN_LOG_ENTITY', index=8, number=8,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='ERROR_FETCHING_CONFIG', index=9, number=9,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-    _descriptor.EnumValueDescriptor(
-      name='INVALID_CONFIG', index=10, number=10,
-      serialized_options=None,
-      type=None,
-      create_key=_descriptor._internal_create_key),
-  ],
-  containing_type=None,
-  serialized_options=None,
-  serialized_start=92,
-  serialized_end=359,
-)
-_sym_db.RegisterEnumDescriptor(_REASON)
-
-Reason = enum_type_wrapper.EnumTypeWrapper(_REASON)
 _LOGLEVEL = _descriptor.EnumDescriptor(
   name='LogLevel',
   full_name='dmi.LogLevel',
@@ -160,8 +89,8 @@
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=361,
-  serialized_end=424,
+  serialized_start=91,
+  serialized_end=154,
 )
 _sym_db.RegisterEnumDescriptor(_LOGLEVEL)
 
@@ -169,17 +98,6 @@
 UNDEFINED_STATUS = 0
 OK_STATUS = 1
 ERROR_STATUS = 2
-UNDEFINED_REASON = 0
-UNKNOWN_DEVICE = 1
-INTERNAL_ERROR = 2
-WRONG_METRIC = 3
-WRONG_EVENT = 4
-LOGGING_ENDPOINT_ERROR = 5
-LOGGING_ENDPOINT_PROTOCOL_ERROR = 6
-KAFKA_ENDPOINT_ERROR = 7
-UNKNOWN_LOG_ENTITY = 8
-ERROR_FETCHING_CONFIG = 9
-INVALID_CONFIG = 10
 TRACE = 0
 DEBUG = 1
 INFO = 2
@@ -188,7 +106,6 @@
 
 
 DESCRIPTOR.enum_types_by_name['Status'] = _STATUS
-DESCRIPTOR.enum_types_by_name['Reason'] = _REASON
 DESCRIPTOR.enum_types_by_name['LogLevel'] = _LOGLEVEL
 _sym_db.RegisterFileDescriptor(DESCRIPTOR)
 
diff --git a/python/dmi/hw_events_mgmt_service_pb2.py b/python/dmi/hw_events_mgmt_service_pb2.py
index 3058c1f..6bfcb0f 100644
--- a/python/dmi/hw_events_mgmt_service_pb2.py
+++ b/python/dmi/hw_events_mgmt_service_pb2.py
@@ -23,7 +23,7 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n dmi/hw_events_mgmt_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"N\n\tValueType\x12\x11\n\x07int_val\x18\x01 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x02 \x01(\x04H\x00\x12\x13\n\tfloat_val\x18\x03 \x01(\x02H\x00\x42\x05\n\x03val\"G\n\nWaterMarks\x12\x1c\n\x04high\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12\x1b\n\x03low\x18\x02 \x01(\x0b\x32\x0e.dmi.ValueType\"]\n\nThresholds\x12 \n\x05upper\x18\x01 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x12 \n\x05lower\x18\x02 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x42\x0b\n\tthreshold\"c\n\x14ThresholdInformation\x12&\n\x0eobserved_value\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12#\n\nthresholds\x18\x02 \x01(\x0b\x32\x0f.dmi.Thresholds\"g\n\x08\x45ventCfg\x12\x1f\n\x08\x65vent_id\x18\x01 \x01(\x0e\x32\r.dmi.EventIds\x12\x15\n\ris_configured\x18\x02 \x01(\x08\x12#\n\nthresholds\x18\x03 \x01(\x0b\x32\x0f.dmi.Thresholds\")\n\tEventsCfg\x12\x1c\n\x05items\x18\x01 \x03(\x0b\x32\r.dmi.EventCfg\"n\n\x12ListEventsResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12\x1e\n\x06\x65vents\x18\x03 \x01(\x0b\x32\x0e.dmi.EventsCfg\"\x88\x01\n\x1a\x45ventsConfigurationRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x0e.dmi.EventsCfgH\x00\x12\x1a\n\x10reset_to_default\x18\x03 \x01(\x08H\x00\x42\x0b\n\toperation\"W\n\x1b\x45ventsConfigurationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\"j\n\rEventMetaData\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\xc8\x01\n\x05\x45vent\x12*\n\x0e\x65vent_metadata\x18\x01 \x01(\x0b\x32\x12.dmi.EventMetaData\x12\x1f\n\x08\x65vent_id\x18\x02 \x01(\x0e\x32\r.dmi.EventIds\x12-\n\traised_ts\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\x0ethreshold_info\x18\x04 \x01(\x0b\x32\x19.dmi.ThresholdInformation\x12\x10\n\x08\x61\x64\x64_info\x18\x05 \x01(\t*\xd1\x0e\n\x08\x45ventIds\x12\x18\n\x14\x45VENT_NAME_UNDEFINED\x10\x00\x12\x1e\n\x1a\x45VENT_TRANSCEIVER_PLUG_OUT\x10\x64\x12\x1d\n\x19\x45VENT_TRANSCEIVER_PLUG_IN\x10\x65\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD\x10\x66\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD\x10g\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD\x10h\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD\x10i\x12-\n)EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD\x10j\x12-\n)EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD\x10k\x12.\n*EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD\x10l\x12.\n*EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD\x10m\x12.\n*EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD\x10n\x12.\n*EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD\x10o\x12\x1d\n\x19\x45VENT_TRANSCEIVER_FAILURE\x10p\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD_RECOVERED\x10q\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD_RECOVERED\x10r\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD_RECOVERED\x10s\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD_RECOVERED\x10t\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD_RECOVERED\x10u\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD_RECOVERED\x10v\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD_RECOVERED\x10w\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD_RECOVERED\x10x\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD_RECOVERED\x10y\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD_RECOVERED\x10z\x12\'\n#EVENT_TRANSCEIVER_FAILURE_RECOVERED\x10{\x12\x17\n\x12\x45VENT_PSU_PLUG_OUT\x10\xc8\x01\x12\x16\n\x11\x45VENT_PSU_PLUG_IN\x10\xc9\x01\x12\x16\n\x11\x45VENT_PSU_FAILURE\x10\xca\x01\x12 \n\x1b\x45VENT_PSU_FAILURE_RECOVERED\x10\xcb\x01\x12\x16\n\x11\x45VENT_FAN_FAILURE\x10\xac\x02\x12\x17\n\x12\x45VENT_FAN_PLUG_OUT\x10\xad\x02\x12\x16\n\x11\x45VENT_FAN_PLUG_IN\x10\xae\x02\x12 \n\x1b\x45VENT_FAN_FAILURE_RECOVERED\x10\xaf\x02\x12)\n$EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL\x10\x90\x03\x12&\n!EVENT_CPU_TEMPERATURE_ABOVE_FATAL\x10\x91\x03\x12\x33\n.EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\x92\x03\x12\x30\n+EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\x93\x03\x12\x1a\n\x15\x45VENT_HW_DEVICE_RESET\x10\xf4\x03\x12/\n*EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL\x10\xf5\x03\x12,\n\'EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL\x10\xf6\x03\x12\x39\n4EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\xf7\x03\x12\x36\n1EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\xf8\x03\x32\xb7\x01\n\x1dNativeEventsManagementService\x12\x36\n\nListEvents\x12\x0f.dmi.HardwareID\x1a\x17.dmi.ListEventsResponse\x12^\n\x19UpdateEventsConfiguration\x12\x1f.dmi.EventsConfigurationRequest\x1a .dmi.EventsConfigurationResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n dmi/hw_events_mgmt_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"N\n\tValueType\x12\x11\n\x07int_val\x18\x01 \x01(\x03H\x00\x12\x12\n\x08uint_val\x18\x02 \x01(\x04H\x00\x12\x13\n\tfloat_val\x18\x03 \x01(\x02H\x00\x42\x05\n\x03val\"G\n\nWaterMarks\x12\x1c\n\x04high\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12\x1b\n\x03low\x18\x02 \x01(\x0b\x32\x0e.dmi.ValueType\"]\n\nThresholds\x12 \n\x05upper\x18\x01 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x12 \n\x05lower\x18\x02 \x01(\x0b\x32\x0f.dmi.WaterMarksH\x00\x42\x0b\n\tthreshold\"c\n\x14ThresholdInformation\x12&\n\x0eobserved_value\x18\x01 \x01(\x0b\x32\x0e.dmi.ValueType\x12#\n\nthresholds\x18\x02 \x01(\x0b\x32\x0f.dmi.Thresholds\"g\n\x08\x45ventCfg\x12\x1f\n\x08\x65vent_id\x18\x01 \x01(\x0e\x32\r.dmi.EventIds\x12\x15\n\ris_configured\x18\x02 \x01(\x08\x12#\n\nthresholds\x18\x03 \x01(\x0b\x32\x0f.dmi.Thresholds\")\n\tEventsCfg\x12\x1c\n\x05items\x18\x01 \x03(\x0b\x32\r.dmi.EventCfg\"\xc9\x01\n\x12ListEventsResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12.\n\x06reason\x18\x02 \x01(\x0e\x32\x1e.dmi.ListEventsResponse.Reason\x12\x1e\n\x06\x65vents\x18\x03 \x01(\x0b\x32\x0e.dmi.EventsCfg\"F\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\"\x88\x01\n\x1a\x45ventsConfigurationRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x0e.dmi.EventsCfgH\x00\x12\x1a\n\x10reset_to_default\x18\x03 \x01(\x08H\x00\x42\x0b\n\toperation\"\xcf\x01\n\x1b\x45ventsConfigurationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x37\n\x06reason\x18\x02 \x01(\x0e\x32\'.dmi.EventsConfigurationResponse.Reason\"Z\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x12\n\x0eINVALID_CONFIG\x10\x03\"j\n\rEventMetaData\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\xc8\x01\n\x05\x45vent\x12*\n\x0e\x65vent_metadata\x18\x01 \x01(\x0b\x32\x12.dmi.EventMetaData\x12\x1f\n\x08\x65vent_id\x18\x02 \x01(\x0e\x32\r.dmi.EventIds\x12-\n\traised_ts\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x31\n\x0ethreshold_info\x18\x04 \x01(\x0b\x32\x19.dmi.ThresholdInformation\x12\x10\n\x08\x61\x64\x64_info\x18\x05 \x01(\t*\xd1\x0e\n\x08\x45ventIds\x12\x18\n\x14\x45VENT_NAME_UNDEFINED\x10\x00\x12\x1e\n\x1a\x45VENT_TRANSCEIVER_PLUG_OUT\x10\x64\x12\x1d\n\x19\x45VENT_TRANSCEIVER_PLUG_IN\x10\x65\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD\x10\x66\x12-\n)EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD\x10g\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD\x10h\x12\x31\n-EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD\x10i\x12-\n)EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD\x10j\x12-\n)EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD\x10k\x12.\n*EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD\x10l\x12.\n*EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD\x10m\x12.\n*EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD\x10n\x12.\n*EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD\x10o\x12\x1d\n\x19\x45VENT_TRANSCEIVER_FAILURE\x10p\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_ABOVE_THRESHOLD_RECOVERED\x10q\x12\x37\n3EVENT_TRANSCEIVER_VOLTAGE_BELOW_THRESHOLD_RECOVERED\x10r\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_ABOVE_THRESHOLD_RECOVERED\x10s\x12;\n7EVENT_TRANSCEIVER_TEMPERATURE_BELOW_THRESHOLD_RECOVERED\x10t\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_ABOVE_THRESHOLD_RECOVERED\x10u\x12\x37\n3EVENT_TRANSCEIVER_CURRENT_BELOW_THRESHOLD_RECOVERED\x10v\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_ABOVE_THRESHOLD_RECOVERED\x10w\x12\x38\n4EVENT_TRANSCEIVER_RX_POWER_BELOW_THRESHOLD_RECOVERED\x10x\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_ABOVE_THRESHOLD_RECOVERED\x10y\x12\x38\n4EVENT_TRANSCEIVER_TX_POWER_BELOW_THRESHOLD_RECOVERED\x10z\x12\'\n#EVENT_TRANSCEIVER_FAILURE_RECOVERED\x10{\x12\x17\n\x12\x45VENT_PSU_PLUG_OUT\x10\xc8\x01\x12\x16\n\x11\x45VENT_PSU_PLUG_IN\x10\xc9\x01\x12\x16\n\x11\x45VENT_PSU_FAILURE\x10\xca\x01\x12 \n\x1b\x45VENT_PSU_FAILURE_RECOVERED\x10\xcb\x01\x12\x16\n\x11\x45VENT_FAN_FAILURE\x10\xac\x02\x12\x17\n\x12\x45VENT_FAN_PLUG_OUT\x10\xad\x02\x12\x16\n\x11\x45VENT_FAN_PLUG_IN\x10\xae\x02\x12 \n\x1b\x45VENT_FAN_FAILURE_RECOVERED\x10\xaf\x02\x12)\n$EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL\x10\x90\x03\x12&\n!EVENT_CPU_TEMPERATURE_ABOVE_FATAL\x10\x91\x03\x12\x33\n.EVENT_CPU_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\x92\x03\x12\x30\n+EVENT_CPU_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\x93\x03\x12\x1a\n\x15\x45VENT_HW_DEVICE_RESET\x10\xf4\x03\x12/\n*EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL\x10\xf5\x03\x12,\n\'EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL\x10\xf6\x03\x12\x39\n4EVENT_HW_DEVICE_TEMPERATURE_ABOVE_CRITICAL_RECOVERED\x10\xf7\x03\x12\x36\n1EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED\x10\xf8\x03\x32\xb7\x01\n\x1dNativeEventsManagementService\x12\x36\n\nListEvents\x12\x0f.dmi.HardwareID\x1a\x17.dmi.ListEventsResponse\x12^\n\x19UpdateEventsConfiguration\x12\x1f.dmi.EventsConfigurationRequest\x1a .dmi.EventsConfigurationResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
   ,
   dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,dmi_dot_hw__pb2.DESCRIPTOR,google_dot_protobuf_dot_timestamp__pb2.DESCRIPTOR,])
 
@@ -247,8 +247,8 @@
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=1256,
-  serialized_end=3129,
+  serialized_start=1469,
+  serialized_end=3342,
 )
 _sym_db.RegisterEnumDescriptor(_EVENTIDS)
 
@@ -297,6 +297,71 @@
 EVENT_HW_DEVICE_TEMPERATURE_ABOVE_FATAL_RECOVERED = 504
 
 
+_LISTEVENTSRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.ListEventsResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=736,
+  serialized_end=806,
+)
+_sym_db.RegisterEnumDescriptor(_LISTEVENTSRESPONSE_REASON)
+
+_EVENTSCONFIGURATIONRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.EventsConfigurationResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_CONFIG', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1065,
+  serialized_end=1155,
+)
+_sym_db.RegisterEnumDescriptor(_EVENTSCONFIGURATIONRESPONSE_REASON)
+
 
 _VALUETYPE = _descriptor.Descriptor(
   name='ValueType',
@@ -583,6 +648,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _LISTEVENTSRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -590,8 +656,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=604,
-  serialized_end=714,
+  serialized_start=605,
+  serialized_end=806,
 )
 
 
@@ -641,8 +707,8 @@
       create_key=_descriptor._internal_create_key,
     fields=[]),
   ],
-  serialized_start=717,
-  serialized_end=853,
+  serialized_start=809,
+  serialized_end=945,
 )
 
 
@@ -673,6 +739,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _EVENTSCONFIGURATIONRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -680,8 +747,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=855,
-  serialized_end=942,
+  serialized_start=948,
+  serialized_end=1155,
 )
 
 
@@ -726,8 +793,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=944,
-  serialized_end=1050,
+  serialized_start=1157,
+  serialized_end=1263,
 )
 
 
@@ -786,8 +853,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1053,
-  serialized_end=1253,
+  serialized_start=1266,
+  serialized_end=1466,
 )
 
 _VALUETYPE.oneofs_by_name['val'].fields.append(
@@ -815,8 +882,9 @@
 _EVENTCFG.fields_by_name['thresholds'].message_type = _THRESHOLDS
 _EVENTSCFG.fields_by_name['items'].message_type = _EVENTCFG
 _LISTEVENTSRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_LISTEVENTSRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_LISTEVENTSRESPONSE.fields_by_name['reason'].enum_type = _LISTEVENTSRESPONSE_REASON
 _LISTEVENTSRESPONSE.fields_by_name['events'].message_type = _EVENTSCFG
+_LISTEVENTSRESPONSE_REASON.containing_type = _LISTEVENTSRESPONSE
 _EVENTSCONFIGURATIONREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _EVENTSCONFIGURATIONREQUEST.fields_by_name['changes'].message_type = _EVENTSCFG
 _EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation'].fields.append(
@@ -826,7 +894,8 @@
   _EVENTSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'])
 _EVENTSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'].containing_oneof = _EVENTSCONFIGURATIONREQUEST.oneofs_by_name['operation']
 _EVENTSCONFIGURATIONRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_EVENTSCONFIGURATIONRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_EVENTSCONFIGURATIONRESPONSE.fields_by_name['reason'].enum_type = _EVENTSCONFIGURATIONRESPONSE_REASON
+_EVENTSCONFIGURATIONRESPONSE_REASON.containing_type = _EVENTSCONFIGURATIONRESPONSE
 _EVENTMETADATA.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _EVENTMETADATA.fields_by_name['component_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _EVENT.fields_by_name['event_metadata'].message_type = _EVENTMETADATA
@@ -934,8 +1003,8 @@
   index=0,
   serialized_options=None,
   create_key=_descriptor._internal_create_key,
-  serialized_start=3132,
-  serialized_end=3315,
+  serialized_start=3345,
+  serialized_end=3528,
   methods=[
   _descriptor.MethodDescriptor(
     name='ListEvents',
diff --git a/python/dmi/hw_management_service_pb2.py b/python/dmi/hw_management_service_pb2.py
index fce70a0..1944c15 100644
--- a/python/dmi/hw_management_service_pb2.py
+++ b/python/dmi/hw_management_service_pb2.py
@@ -22,12 +22,352 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x1f\x64mi/hw_management_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1bgoogle/protobuf/empty.proto\":\n\x18PhysicalInventoryRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"w\n\x19PhysicalInventoryResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12 \n\tinventory\x18\x03 \x01(\x0b\x32\r.dmi.Hardware\"v\n\x19HWComponentInfoGetRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"y\n\x1aHWComponentInfoGetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12!\n\tcomponent\x18\x03 \x01(\x0b\x32\x0e.dmi.Component\"\xa1\x01\n\x19HWComponentInfoSetRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\x12)\n\x07\x63hanges\x18\x04 \x01(\x0b\x32\x18.dmi.ModifiableComponent\"V\n\x1aHWComponentInfoSetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\"w\n\x1bStartManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x03 \x01(\x0b\x32\t.dmi.Uuid\")\n\x19StopManagingDeviceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"V\n\x1aStopManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\"C\n\x16ManagedDevicesResponse\x12)\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x18.dmi.ModifiableComponent\"o\n\x19SetLoggingEndpointRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x18\n\x10logging_endpoint\x18\x02 \x01(\t\x12\x18\n\x10logging_protocol\x18\x03 \x01(\t\"U\n\x19SetRemoteEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\"\x8a\x01\n\x1aGetLoggingEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12\x18\n\x10logging_endpoint\x18\x03 \x01(\t\x12\x18\n\x10logging_protocol\x18\x04 \x01(\t\"3\n\x18SetMsgBusEndpointRequest\x12\x17\n\x0fmsgbus_endpoint\x18\x01 \x01(\t\"n\n\x19GetMsgBusEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12\x17\n\x0fmsgbus_endpoint\x18\x03 \x01(\t\"E\n\x10\x45ntitiesLogLevel\x12\x1f\n\x08logLevel\x18\x01 \x01(\x0e\x32\r.dmi.LogLevel\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"^\n\x12SetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tloglevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\"o\n\x13SetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x1b\n\x06status\x18\x02 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x03 \x01(\x0e\x32\x0b.dmi.Reason\"F\n\x12GetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"\x99\x01\n\x13GetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tlogLevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\x12\x1b\n\x06status\x18\x03 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x04 \x01(\x0e\x32\x0b.dmi.Reason\"<\n\x1aGetLoggableEntitiesRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid2\xaf\x08\n\x19NativeHWManagementService\x12S\n\x13StartManagingDevice\x12\x18.dmi.ModifiableComponent\x1a .dmi.StartManagingDeviceResponse0\x01\x12U\n\x12StopManagingDevice\x12\x1e.dmi.StopManagingDeviceRequest\x1a\x1f.dmi.StopManagingDeviceResponse\x12H\n\x11GetManagedDevices\x12\x16.google.protobuf.Empty\x1a\x1b.dmi.ManagedDevicesResponse\x12W\n\x14GetPhysicalInventory\x12\x1d.dmi.PhysicalInventoryRequest\x1a\x1e.dmi.PhysicalInventoryResponse0\x01\x12W\n\x12GetHWComponentInfo\x12\x1e.dmi.HWComponentInfoGetRequest\x1a\x1f.dmi.HWComponentInfoGetResponse0\x01\x12U\n\x12SetHWComponentInfo\x12\x1e.dmi.HWComponentInfoSetRequest\x1a\x1f.dmi.HWComponentInfoSetResponse\x12T\n\x12SetLoggingEndpoint\x12\x1e.dmi.SetLoggingEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12\x46\n\x12GetLoggingEndpoint\x12\x0f.dmi.HardwareID\x1a\x1f.dmi.GetLoggingEndpointResponse\x12R\n\x11SetMsgBusEndpoint\x12\x1d.dmi.SetMsgBusEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12K\n\x11GetMsgBusEndpoint\x12\x16.google.protobuf.Empty\x1a\x1e.dmi.GetMsgBusEndpointResponse\x12P\n\x13GetLoggableEntities\x12\x1f.dmi.GetLoggableEntitiesRequest\x1a\x18.dmi.GetLogLevelResponse\x12@\n\x0bSetLogLevel\x12\x17.dmi.SetLogLevelRequest\x1a\x18.dmi.SetLogLevelResponse\x12@\n\x0bGetLogLevel\x12\x17.dmi.GetLogLevelRequest\x1a\x18.dmi.GetLogLevelResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n\x1f\x64mi/hw_management_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x1bgoogle/protobuf/empty.proto\":\n\x18PhysicalInventoryRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\"\xd9\x01\n\x19PhysicalInventoryResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.PhysicalInventoryResponse.Reason\x12 \n\tinventory\x18\x03 \x01(\x0b\x32\r.dmi.Hardware\"F\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\"v\n\x19HWComponentInfoGetRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\xf3\x01\n\x1aHWComponentInfoGetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.HWComponentInfoGetResponse.Reason\x12!\n\tcomponent\x18\x03 \x01(\x0b\x32\x0e.dmi.Component\"]\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x15\n\x11UNKNOWN_COMPONENT\x10\x02\x12\x12\n\x0eINTERNAL_ERROR\x10\x03\"\xa1\x01\n\x19HWComponentInfoSetRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\x12)\n\x07\x63hanges\x18\x04 \x01(\x0b\x32\x18.dmi.ModifiableComponent\"\xe4\x01\n\x1aHWComponentInfoSetResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.HWComponentInfoSetResponse.Reason\"q\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x15\n\x11UNKNOWN_COMPONENT\x10\x02\x12\x12\n\x0eINVALID_PARAMS\x10\x03\x12\x12\n\x0eINTERNAL_ERROR\x10\x04\"\x9b\x02\n\x1bStartManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x37\n\x06reason\x18\x02 \x01(\x0e\x32\'.dmi.StartManagingDeviceResponse.Reason\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x03 \x01(\x0b\x32\t.dmi.Uuid\"\x85\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x1a\n\x16\x44\x45VICE_ALREADY_MANAGED\x10\x01\x12!\n\x1dOPERATION_ALREADY_IN_PROGRESS\x10\x02\x12\x12\n\x0eINVALID_PARAMS\x10\x03\x12\x12\n\x0eINTERNAL_ERROR\x10\x04\")\n\x19StopManagingDeviceRequest\x12\x0c\n\x04name\x18\x01 \x01(\t\"\xa5\x01\n\x1aStopManagingDeviceResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.StopManagingDeviceResponse.Reason\"2\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\"C\n\x16ManagedDevicesResponse\x12)\n\x07\x64\x65vices\x18\x01 \x03(\x0b\x32\x18.dmi.ModifiableComponent\"o\n\x19SetLoggingEndpointRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x18\n\x10logging_endpoint\x18\x02 \x01(\t\x12\x18\n\x10logging_protocol\x18\x03 \x01(\t\"\x94\x02\n\x19SetRemoteEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.SetRemoteEndpointResponse.Reason\"\xa2\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x1a\n\x16LOGGING_ENDPOINT_ERROR\x10\x03\x12#\n\x1fLOGGING_ENDPOINT_PROTOCOL_ERROR\x10\x04\x12\x19\n\x15MSGBUS_ENDPOINT_ERROR\x10\x05\"\xed\x01\n\x1aGetLoggingEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x36\n\x06reason\x18\x02 \x01(\x0e\x32&.dmi.GetLoggingEndpointResponse.Reason\x12\x18\n\x10logging_endpoint\x18\x03 \x01(\t\x12\x18\n\x10logging_protocol\x18\x04 \x01(\t\"F\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\"3\n\x18SetMsgBusEndpointRequest\x12\x17\n\x0fmsgbus_endpoint\x18\x01 \x01(\t\"\xbc\x01\n\x19GetMsgBusEndpointResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x35\n\x06reason\x18\x02 \x01(\x0e\x32%.dmi.GetMsgBusEndpointResponse.Reason\x12\x17\n\x0fmsgbus_endpoint\x18\x03 \x01(\t\"2\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eINTERNAL_ERROR\x10\x01\"E\n\x10\x45ntitiesLogLevel\x12\x1f\n\x08logLevel\x18\x01 \x01(\x0e\x32\r.dmi.LogLevel\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"^\n\x12SetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tloglevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\"\xe3\x01\n\x13SetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x1b\n\x06status\x18\x02 \x01(\x0e\x32\x0b.dmi.Status\x12/\n\x06reason\x18\x03 \x01(\x0e\x32\x1f.dmi.SetLogLevelResponse.Reason\"^\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x16\n\x12UNKNOWN_LOG_ENTITY\x10\x03\"F\n\x12GetLogLevelRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x10\n\x08\x65ntities\x18\x02 \x03(\t\"\x8d\x02\n\x13GetLogLevelResponse\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12(\n\tlogLevels\x18\x02 \x03(\x0b\x32\x15.dmi.EntitiesLogLevel\x12\x1b\n\x06status\x18\x03 \x01(\x0e\x32\x0b.dmi.Status\x12/\n\x06reason\x18\x04 \x01(\x0e\x32\x1f.dmi.GetLogLevelResponse.Reason\"^\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x16\n\x12UNKNOWN_LOG_ENTITY\x10\x03\"<\n\x1aGetLoggableEntitiesRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid2\xaf\x08\n\x19NativeHWManagementService\x12S\n\x13StartManagingDevice\x12\x18.dmi.ModifiableComponent\x1a .dmi.StartManagingDeviceResponse0\x01\x12U\n\x12StopManagingDevice\x12\x1e.dmi.StopManagingDeviceRequest\x1a\x1f.dmi.StopManagingDeviceResponse\x12H\n\x11GetManagedDevices\x12\x16.google.protobuf.Empty\x1a\x1b.dmi.ManagedDevicesResponse\x12W\n\x14GetPhysicalInventory\x12\x1d.dmi.PhysicalInventoryRequest\x1a\x1e.dmi.PhysicalInventoryResponse0\x01\x12W\n\x12GetHWComponentInfo\x12\x1e.dmi.HWComponentInfoGetRequest\x1a\x1f.dmi.HWComponentInfoGetResponse0\x01\x12U\n\x12SetHWComponentInfo\x12\x1e.dmi.HWComponentInfoSetRequest\x1a\x1f.dmi.HWComponentInfoSetResponse\x12T\n\x12SetLoggingEndpoint\x12\x1e.dmi.SetLoggingEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12\x46\n\x12GetLoggingEndpoint\x12\x0f.dmi.HardwareID\x1a\x1f.dmi.GetLoggingEndpointResponse\x12R\n\x11SetMsgBusEndpoint\x12\x1d.dmi.SetMsgBusEndpointRequest\x1a\x1e.dmi.SetRemoteEndpointResponse\x12K\n\x11GetMsgBusEndpoint\x12\x16.google.protobuf.Empty\x1a\x1e.dmi.GetMsgBusEndpointResponse\x12P\n\x13GetLoggableEntities\x12\x1f.dmi.GetLoggableEntitiesRequest\x1a\x18.dmi.GetLogLevelResponse\x12@\n\x0bSetLogLevel\x12\x17.dmi.SetLogLevelRequest\x1a\x18.dmi.SetLogLevelResponse\x12@\n\x0bGetLogLevel\x12\x17.dmi.GetLogLevelRequest\x1a\x18.dmi.GetLogLevelResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
   ,
   dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,dmi_dot_hw__pb2.DESCRIPTOR,google_dot_protobuf_dot_empty__pb2.DESCRIPTOR,])
 
 
 
+_PHYSICALINVENTORYRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.PhysicalInventoryResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=310,
+  serialized_end=380,
+)
+_sym_db.RegisterEnumDescriptor(_PHYSICALINVENTORYRESPONSE_REASON)
+
+_HWCOMPONENTINFOGETRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.HWComponentInfoGetResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_COMPONENT', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=653,
+  serialized_end=746,
+)
+_sym_db.RegisterEnumDescriptor(_HWCOMPONENTINFOGETRESPONSE_REASON)
+
+_HWCOMPONENTINFOSETRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.HWComponentInfoSetResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_COMPONENT', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_PARAMS', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1028,
+  serialized_end=1141,
+)
+_sym_db.RegisterEnumDescriptor(_HWCOMPONENTINFOSETRESPONSE_REASON)
+
+_STARTMANAGINGDEVICERESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.StartManagingDeviceResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='DEVICE_ALREADY_MANAGED', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='OPERATION_ALREADY_IN_PROGRESS', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_PARAMS', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1294,
+  serialized_end=1427,
+)
+_sym_db.RegisterEnumDescriptor(_STARTMANAGINGDEVICERESPONSE_REASON)
+
+_STOPMANAGINGDEVICERESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.StopManagingDeviceResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=310,
+  serialized_end=360,
+)
+_sym_db.RegisterEnumDescriptor(_STOPMANAGINGDEVICERESPONSE_REASON)
+
+_SETREMOTEENDPOINTRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.SetRemoteEndpointResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='LOGGING_ENDPOINT_ERROR', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='LOGGING_ENDPOINT_PROTOCOL_ERROR', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='MSGBUS_ENDPOINT_ERROR', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1937,
+  serialized_end=2099,
+)
+_sym_db.RegisterEnumDescriptor(_SETREMOTEENDPOINTRESPONSE_REASON)
+
+_GETLOGGINGENDPOINTRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.GetLoggingEndpointResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=310,
+  serialized_end=380,
+)
+_sym_db.RegisterEnumDescriptor(_GETLOGGINGENDPOINTRESPONSE_REASON)
+
+_GETMSGBUSENDPOINTRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.GetMsgBusEndpointResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=2533,
+  serialized_end=2583,
+)
+_sym_db.RegisterEnumDescriptor(_GETMSGBUSENDPOINTRESPONSE_REASON)
+
+_SETLOGLEVELRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.SetLogLevelResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_LOG_ENTITY', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=2886,
+  serialized_end=2980,
+)
+_sym_db.RegisterEnumDescriptor(_SETLOGLEVELRESPONSE_REASON)
+
+_GETLOGLEVELRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.GetLogLevelResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_LOG_ENTITY', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=2886,
+  serialized_end=2980,
+)
+_sym_db.RegisterEnumDescriptor(_GETLOGLEVELRESPONSE_REASON)
+
 
 _PHYSICALINVENTORYREQUEST = _descriptor.Descriptor(
   name='PhysicalInventoryRequest',
@@ -95,6 +435,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _PHYSICALINVENTORYRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -102,8 +443,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=162,
-  serialized_end=281,
+  serialized_start=163,
+  serialized_end=380,
 )
 
 
@@ -148,8 +489,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=283,
-  serialized_end=401,
+  serialized_start=382,
+  serialized_end=500,
 )
 
 
@@ -187,6 +528,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _HWCOMPONENTINFOGETRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -194,8 +536,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=403,
-  serialized_end=524,
+  serialized_start=503,
+  serialized_end=746,
 )
 
 
@@ -247,8 +589,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=527,
-  serialized_end=688,
+  serialized_start=749,
+  serialized_end=910,
 )
 
 
@@ -279,6 +621,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _HWCOMPONENTINFOSETRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -286,8 +629,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=690,
-  serialized_end=776,
+  serialized_start=913,
+  serialized_end=1141,
 )
 
 
@@ -325,6 +668,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _STARTMANAGINGDEVICERESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -332,8 +676,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=778,
-  serialized_end=897,
+  serialized_start=1144,
+  serialized_end=1427,
 )
 
 
@@ -364,8 +708,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=899,
-  serialized_end=940,
+  serialized_start=1429,
+  serialized_end=1470,
 )
 
 
@@ -396,6 +740,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _STOPMANAGINGDEVICERESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -403,8 +748,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=942,
-  serialized_end=1028,
+  serialized_start=1473,
+  serialized_end=1638,
 )
 
 
@@ -435,8 +780,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1030,
-  serialized_end=1097,
+  serialized_start=1640,
+  serialized_end=1707,
 )
 
 
@@ -481,8 +826,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1099,
-  serialized_end=1210,
+  serialized_start=1709,
+  serialized_end=1820,
 )
 
 
@@ -513,6 +858,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _SETREMOTEENDPOINTRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -520,8 +866,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1212,
-  serialized_end=1297,
+  serialized_start=1823,
+  serialized_end=2099,
 )
 
 
@@ -566,6 +912,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _GETLOGGINGENDPOINTRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -573,8 +920,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1300,
-  serialized_end=1438,
+  serialized_start=2102,
+  serialized_end=2339,
 )
 
 
@@ -605,8 +952,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1440,
-  serialized_end=1491,
+  serialized_start=2341,
+  serialized_end=2392,
 )
 
 
@@ -644,6 +991,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _GETMSGBUSENDPOINTRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -651,8 +999,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1493,
-  serialized_end=1603,
+  serialized_start=2395,
+  serialized_end=2583,
 )
 
 
@@ -690,8 +1038,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1605,
-  serialized_end=1674,
+  serialized_start=2585,
+  serialized_end=2654,
 )
 
 
@@ -729,8 +1077,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1676,
-  serialized_end=1770,
+  serialized_start=2656,
+  serialized_end=2750,
 )
 
 
@@ -768,6 +1116,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _SETLOGLEVELRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -775,8 +1124,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1772,
-  serialized_end=1883,
+  serialized_start=2753,
+  serialized_end=2980,
 )
 
 
@@ -814,8 +1163,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1885,
-  serialized_end=1955,
+  serialized_start=2982,
+  serialized_end=3052,
 )
 
 
@@ -860,6 +1209,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _GETLOGLEVELRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -867,8 +1217,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=1958,
-  serialized_end=2111,
+  serialized_start=3055,
+  serialized_end=3324,
 )
 
 
@@ -899,48 +1249,58 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=2113,
-  serialized_end=2173,
+  serialized_start=3326,
+  serialized_end=3386,
 )
 
 _PHYSICALINVENTORYREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _PHYSICALINVENTORYRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_PHYSICALINVENTORYRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_PHYSICALINVENTORYRESPONSE.fields_by_name['reason'].enum_type = _PHYSICALINVENTORYRESPONSE_REASON
 _PHYSICALINVENTORYRESPONSE.fields_by_name['inventory'].message_type = dmi_dot_hw__pb2._HARDWARE
+_PHYSICALINVENTORYRESPONSE_REASON.containing_type = _PHYSICALINVENTORYRESPONSE
 _HWCOMPONENTINFOGETREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _HWCOMPONENTINFOGETREQUEST.fields_by_name['component_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _HWCOMPONENTINFOGETRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_HWCOMPONENTINFOGETRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_HWCOMPONENTINFOGETRESPONSE.fields_by_name['reason'].enum_type = _HWCOMPONENTINFOGETRESPONSE_REASON
 _HWCOMPONENTINFOGETRESPONSE.fields_by_name['component'].message_type = dmi_dot_hw__pb2._COMPONENT
+_HWCOMPONENTINFOGETRESPONSE_REASON.containing_type = _HWCOMPONENTINFOGETRESPONSE
 _HWCOMPONENTINFOSETREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _HWCOMPONENTINFOSETREQUEST.fields_by_name['component_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _HWCOMPONENTINFOSETREQUEST.fields_by_name['changes'].message_type = dmi_dot_hw__pb2._MODIFIABLECOMPONENT
 _HWCOMPONENTINFOSETRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_HWCOMPONENTINFOSETRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_HWCOMPONENTINFOSETRESPONSE.fields_by_name['reason'].enum_type = _HWCOMPONENTINFOSETRESPONSE_REASON
+_HWCOMPONENTINFOSETRESPONSE_REASON.containing_type = _HWCOMPONENTINFOSETRESPONSE
 _STARTMANAGINGDEVICERESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_STARTMANAGINGDEVICERESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_STARTMANAGINGDEVICERESPONSE.fields_by_name['reason'].enum_type = _STARTMANAGINGDEVICERESPONSE_REASON
 _STARTMANAGINGDEVICERESPONSE.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
+_STARTMANAGINGDEVICERESPONSE_REASON.containing_type = _STARTMANAGINGDEVICERESPONSE
 _STOPMANAGINGDEVICERESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_STOPMANAGINGDEVICERESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_STOPMANAGINGDEVICERESPONSE.fields_by_name['reason'].enum_type = _STOPMANAGINGDEVICERESPONSE_REASON
+_STOPMANAGINGDEVICERESPONSE_REASON.containing_type = _STOPMANAGINGDEVICERESPONSE
 _MANAGEDDEVICESRESPONSE.fields_by_name['devices'].message_type = dmi_dot_hw__pb2._MODIFIABLECOMPONENT
 _SETLOGGINGENDPOINTREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _SETREMOTEENDPOINTRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_SETREMOTEENDPOINTRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_SETREMOTEENDPOINTRESPONSE.fields_by_name['reason'].enum_type = _SETREMOTEENDPOINTRESPONSE_REASON
+_SETREMOTEENDPOINTRESPONSE_REASON.containing_type = _SETREMOTEENDPOINTRESPONSE
 _GETLOGGINGENDPOINTRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_GETLOGGINGENDPOINTRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_GETLOGGINGENDPOINTRESPONSE.fields_by_name['reason'].enum_type = _GETLOGGINGENDPOINTRESPONSE_REASON
+_GETLOGGINGENDPOINTRESPONSE_REASON.containing_type = _GETLOGGINGENDPOINTRESPONSE
 _GETMSGBUSENDPOINTRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_GETMSGBUSENDPOINTRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_GETMSGBUSENDPOINTRESPONSE.fields_by_name['reason'].enum_type = _GETMSGBUSENDPOINTRESPONSE_REASON
+_GETMSGBUSENDPOINTRESPONSE_REASON.containing_type = _GETMSGBUSENDPOINTRESPONSE
 _ENTITIESLOGLEVEL.fields_by_name['logLevel'].enum_type = dmi_dot_commons__pb2._LOGLEVEL
 _SETLOGLEVELREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _SETLOGLEVELREQUEST.fields_by_name['loglevels'].message_type = _ENTITIESLOGLEVEL
 _SETLOGLEVELRESPONSE.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _SETLOGLEVELRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_SETLOGLEVELRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_SETLOGLEVELRESPONSE.fields_by_name['reason'].enum_type = _SETLOGLEVELRESPONSE_REASON
+_SETLOGLEVELRESPONSE_REASON.containing_type = _SETLOGLEVELRESPONSE
 _GETLOGLEVELREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _GETLOGLEVELRESPONSE.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _GETLOGLEVELRESPONSE.fields_by_name['logLevels'].message_type = _ENTITIESLOGLEVEL
 _GETLOGLEVELRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_GETLOGLEVELRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_GETLOGLEVELRESPONSE.fields_by_name['reason'].enum_type = _GETLOGLEVELRESPONSE_REASON
+_GETLOGLEVELRESPONSE_REASON.containing_type = _GETLOGLEVELRESPONSE
 _GETLOGGABLEENTITIESREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 DESCRIPTOR.message_types_by_name['PhysicalInventoryRequest'] = _PHYSICALINVENTORYREQUEST
 DESCRIPTOR.message_types_by_name['PhysicalInventoryResponse'] = _PHYSICALINVENTORYRESPONSE
@@ -1122,8 +1482,8 @@
   index=0,
   serialized_options=None,
   create_key=_descriptor._internal_create_key,
-  serialized_start=2176,
-  serialized_end=3247,
+  serialized_start=3389,
+  serialized_end=4460,
   methods=[
   _descriptor.MethodDescriptor(
     name='StartManagingDevice',
diff --git a/python/dmi/hw_management_service_pb2_grpc.py b/python/dmi/hw_management_service_pb2_grpc.py
index ecc2011..9c25fe3 100644
--- a/python/dmi/hw_management_service_pb2_grpc.py
+++ b/python/dmi/hw_management_service_pb2_grpc.py
@@ -103,6 +103,8 @@
 
     def StopManagingDevice(self, request, context):
         """Stop management of a device and clean up any context and caches for that device
+        This rpc can be called at any time, even before the StartManagingDevice operation
+        has completed, and should be able to cleanup.
         """
         context.set_code(grpc.StatusCode.UNIMPLEMENTED)
         context.set_details('Method not implemented!')
diff --git a/python/dmi/hw_metrics_mgmt_service_pb2.py b/python/dmi/hw_metrics_mgmt_service_pb2.py
index b080bb8..4362c37 100644
--- a/python/dmi/hw_metrics_mgmt_service_pb2.py
+++ b/python/dmi/hw_metrics_mgmt_service_pb2.py
@@ -22,7 +22,7 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n!dmi/hw_metrics_mgmt_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\"a\n\x0cMetricConfig\x12#\n\tmetric_id\x18\x01 \x01(\x0e\x32\x10.dmi.MetricNames\x12\x15\n\ris_configured\x18\x02 \x01(\x08\x12\x15\n\rpoll_interval\x18\x03 \x01(\r\"3\n\rMetricsConfig\x12\"\n\x07metrics\x18\x01 \x03(\x0b\x32\x11.dmi.MetricConfig\"t\n\x13ListMetricsResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12#\n\x07metrics\x18\x03 \x01(\x0b\x32\x12.dmi.MetricsConfig\"\x8d\x01\n\x1bMetricsConfigurationRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12%\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x12.dmi.MetricsConfigH\x00\x12\x1a\n\x10reset_to_default\x18\x03 \x01(\x08H\x00\x42\x0b\n\toperation\"X\n\x1cMetricsConfigurationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\"k\n\x0eMetricMetaData\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\x84\x01\n\x06Metric\x12#\n\tmetric_id\x18\x01 \x01(\x0e\x32\x10.dmi.MetricNames\x12,\n\x0fmetric_metadata\x18\x02 \x01(\x0b\x32\x13.dmi.MetricMetaData\x12\'\n\x05value\x18\x03 \x01(\x0b\x32\x18.dmi.ComponentSensorData\"_\n\x10GetMetricRequest\x12&\n\tmeta_data\x18\x01 \x01(\x0b\x32\x13.dmi.MetricMetaData\x12#\n\tmetric_id\x18\x02 \x01(\x0e\x32\x10.dmi.MetricNames\"j\n\x11GetMetricResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12\x1b\n\x06metric\x18\x03 \x01(\x0b\x32\x0b.dmi.Metric*\xd9\x05\n\x0bMetricNames\x12\x19\n\x15METRIC_NAME_UNDEFINED\x10\x00\x12\x14\n\x10METRIC_FAN_SPEED\x10\x01\x12\x13\n\x0fMETRIC_CPU_TEMP\x10\x64\x12\x1f\n\x1bMETRIC_CPU_USAGE_PERCENTAGE\x10\x65\x12\x1c\n\x17METRIC_TRANSCEIVER_TEMP\x10\xc8\x01\x12\x1f\n\x1aMETRIC_TRANSCEIVER_VOLTAGE\x10\xc9\x01\x12\x1c\n\x17METRIC_TRANSCEIVER_BIAS\x10\xca\x01\x12 \n\x1bMETRIC_TRANSCEIVER_RX_POWER\x10\xcb\x01\x12 \n\x1bMETRIC_TRANSCEIVER_TX_POWER\x10\xcc\x01\x12\"\n\x1dMETRIC_TRANSCEIVER_WAVELENGTH\x10\xcd\x01\x12\x15\n\x10METRIC_DISK_TEMP\x10\xac\x02\x12\x19\n\x14METRIC_DISK_CAPACITY\x10\xad\x02\x12\x16\n\x11METRIC_DISK_USAGE\x10\xae\x02\x12!\n\x1cMETRIC_DISK_USAGE_PERCENTAGE\x10\xaf\x02\x12&\n!METRIC_DISK_READ_WRITE_PERCENTAGE\x10\xb0\x02\x12(\n#METRIC_DISK_FAULTY_CELLS_PERCENTAGE\x10\xb1\x02\x12\x14\n\x0fMETRIC_RAM_TEMP\x10\x90\x03\x12\x18\n\x13METRIC_RAM_CAPACITY\x10\x91\x03\x12\x15\n\x10METRIC_RAM_USAGE\x10\x92\x03\x12 \n\x1bMETRIC_RAM_USAGE_PERCENTAGE\x10\x93\x03\x12\x15\n\x10METRIC_POWER_MAX\x10\xf4\x03\x12\x17\n\x12METRIC_POWER_USAGE\x10\xf5\x03\x12\"\n\x1dMETRIC_POWER_USAGE_PERCENTAGE\x10\xf6\x03\x12\"\n\x1dMETRIC_INNER_SURROUNDING_TEMP\x10\xd8\x04\x32\xf9\x01\n\x1eNativeMetricsManagementService\x12\x38\n\x0bListMetrics\x12\x0f.dmi.HardwareID\x1a\x18.dmi.ListMetricsResponse\x12\x61\n\x1aUpdateMetricsConfiguration\x12 .dmi.MetricsConfigurationRequest\x1a!.dmi.MetricsConfigurationResponse\x12:\n\tGetMetric\x12\x15.dmi.GetMetricRequest\x1a\x16.dmi.GetMetricResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n!dmi/hw_metrics_mgmt_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\"a\n\x0cMetricConfig\x12#\n\tmetric_id\x18\x01 \x01(\x0e\x32\x10.dmi.MetricNames\x12\x15\n\ris_configured\x18\x02 \x01(\x08\x12\x15\n\rpoll_interval\x18\x03 \x01(\r\"3\n\rMetricsConfig\x12\"\n\x07metrics\x18\x01 \x03(\x0b\x32\x11.dmi.MetricConfig\"\xd0\x01\n\x13ListMetricsResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12/\n\x06reason\x18\x02 \x01(\x0e\x32\x1f.dmi.ListMetricsResponse.Reason\x12#\n\x07metrics\x18\x03 \x01(\x0b\x32\x12.dmi.MetricsConfig\"F\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\"\x8d\x01\n\x1bMetricsConfigurationRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12%\n\x07\x63hanges\x18\x02 \x01(\x0b\x32\x12.dmi.MetricsConfigH\x00\x12\x1a\n\x10reset_to_default\x18\x03 \x01(\x08H\x00\x42\x0b\n\toperation\"\xf0\x01\n\x1cMetricsConfigurationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x38\n\x06reason\x18\x02 \x01(\x0e\x32(.dmi.MetricsConfigurationResponse.Reason\"y\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x1d\n\x19POLL_INTERVAL_UNSUPPORTED\x10\x03\x12\x12\n\x0eINVALID_METRIC\x10\x04\"k\n\x0eMetricMetaData\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12!\n\x0e\x63omponent_uuid\x18\x02 \x01(\x0b\x32\t.dmi.Uuid\x12\x16\n\x0e\x63omponent_name\x18\x03 \x01(\t\"\x84\x01\n\x06Metric\x12#\n\tmetric_id\x18\x01 \x01(\x0e\x32\x10.dmi.MetricNames\x12,\n\x0fmetric_metadata\x18\x02 \x01(\x0b\x32\x13.dmi.MetricMetaData\x12\'\n\x05value\x18\x03 \x01(\x0b\x32\x18.dmi.ComponentSensorData\"_\n\x10GetMetricRequest\x12&\n\tmeta_data\x18\x01 \x01(\x0b\x32\x13.dmi.MetricMetaData\x12#\n\tmetric_id\x18\x02 \x01(\x0e\x32\x10.dmi.MetricNames\"\xef\x01\n\x11GetMetricResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12-\n\x06reason\x18\x02 \x01(\x0e\x32\x1d.dmi.GetMetricResponse.Reason\x12\x1b\n\x06metric\x18\x03 \x01(\x0b\x32\x0b.dmi.Metric\"q\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x15\n\x11UNKNOWN_COMPONENT\x10\x02\x12\x12\n\x0eINTERNAL_ERROR\x10\x03\x12\x12\n\x0eINVALID_METRIC\x10\x04*\xd9\x05\n\x0bMetricNames\x12\x19\n\x15METRIC_NAME_UNDEFINED\x10\x00\x12\x14\n\x10METRIC_FAN_SPEED\x10\x01\x12\x13\n\x0fMETRIC_CPU_TEMP\x10\x64\x12\x1f\n\x1bMETRIC_CPU_USAGE_PERCENTAGE\x10\x65\x12\x1c\n\x17METRIC_TRANSCEIVER_TEMP\x10\xc8\x01\x12\x1f\n\x1aMETRIC_TRANSCEIVER_VOLTAGE\x10\xc9\x01\x12\x1c\n\x17METRIC_TRANSCEIVER_BIAS\x10\xca\x01\x12 \n\x1bMETRIC_TRANSCEIVER_RX_POWER\x10\xcb\x01\x12 \n\x1bMETRIC_TRANSCEIVER_TX_POWER\x10\xcc\x01\x12\"\n\x1dMETRIC_TRANSCEIVER_WAVELENGTH\x10\xcd\x01\x12\x15\n\x10METRIC_DISK_TEMP\x10\xac\x02\x12\x19\n\x14METRIC_DISK_CAPACITY\x10\xad\x02\x12\x16\n\x11METRIC_DISK_USAGE\x10\xae\x02\x12!\n\x1cMETRIC_DISK_USAGE_PERCENTAGE\x10\xaf\x02\x12&\n!METRIC_DISK_READ_WRITE_PERCENTAGE\x10\xb0\x02\x12(\n#METRIC_DISK_FAULTY_CELLS_PERCENTAGE\x10\xb1\x02\x12\x14\n\x0fMETRIC_RAM_TEMP\x10\x90\x03\x12\x18\n\x13METRIC_RAM_CAPACITY\x10\x91\x03\x12\x15\n\x10METRIC_RAM_USAGE\x10\x92\x03\x12 \n\x1bMETRIC_RAM_USAGE_PERCENTAGE\x10\x93\x03\x12\x15\n\x10METRIC_POWER_MAX\x10\xf4\x03\x12\x17\n\x12METRIC_POWER_USAGE\x10\xf5\x03\x12\"\n\x1dMETRIC_POWER_USAGE_PERCENTAGE\x10\xf6\x03\x12\"\n\x1dMETRIC_INNER_SURROUNDING_TEMP\x10\xd8\x04\x32\xf9\x01\n\x1eNativeMetricsManagementService\x12\x38\n\x0bListMetrics\x12\x0f.dmi.HardwareID\x1a\x18.dmi.ListMetricsResponse\x12\x61\n\x1aUpdateMetricsConfiguration\x12 .dmi.MetricsConfigurationRequest\x1a!.dmi.MetricsConfigurationResponse\x12:\n\tGetMetric\x12\x15.dmi.GetMetricRequest\x1a\x16.dmi.GetMetricResponseB;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
   ,
   dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,dmi_dot_hw__pb2.DESCRIPTOR,])
 
@@ -156,8 +156,8 @@
   ],
   containing_type=None,
   serialized_options=None,
-  serialized_start=1029,
-  serialized_end=1758,
+  serialized_start=1409,
+  serialized_end=2138,
 )
 _sym_db.RegisterEnumDescriptor(_METRICNAMES)
 
@@ -188,6 +188,116 @@
 METRIC_INNER_SURROUNDING_TEMP = 600
 
 
+_LISTMETRICSRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.ListMetricsResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=366,
+  serialized_end=436,
+)
+_sym_db.RegisterEnumDescriptor(_LISTMETRICSRESPONSE_REASON)
+
+_METRICSCONFIGURATIONRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.MetricsConfigurationResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='POLL_INTERVAL_UNSUPPORTED', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_METRIC', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=702,
+  serialized_end=823,
+)
+_sym_db.RegisterEnumDescriptor(_METRICSCONFIGURATIONRESPONSE_REASON)
+
+_GETMETRICRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.GetMetricResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_COMPONENT', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_METRIC', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=1293,
+  serialized_end=1406,
+)
+_sym_db.RegisterEnumDescriptor(_GETMETRICRESPONSE_REASON)
+
 
 _METRICCONFIG = _descriptor.Descriptor(
   name='MetricConfig',
@@ -301,6 +411,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _LISTMETRICSRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -308,8 +419,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=227,
-  serialized_end=343,
+  serialized_start=228,
+  serialized_end=436,
 )
 
 
@@ -359,8 +470,8 @@
       create_key=_descriptor._internal_create_key,
     fields=[]),
   ],
-  serialized_start=346,
-  serialized_end=487,
+  serialized_start=439,
+  serialized_end=580,
 )
 
 
@@ -391,6 +502,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _METRICSCONFIGURATIONRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -398,8 +510,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=489,
-  serialized_end=577,
+  serialized_start=583,
+  serialized_end=823,
 )
 
 
@@ -444,8 +556,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=579,
-  serialized_end=686,
+  serialized_start=825,
+  serialized_end=932,
 )
 
 
@@ -490,8 +602,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=689,
-  serialized_end=821,
+  serialized_start=935,
+  serialized_end=1067,
 )
 
 
@@ -529,8 +641,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=823,
-  serialized_end=918,
+  serialized_start=1069,
+  serialized_end=1164,
 )
 
 
@@ -568,6 +680,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _GETMETRICRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -575,15 +688,16 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=920,
-  serialized_end=1026,
+  serialized_start=1167,
+  serialized_end=1406,
 )
 
 _METRICCONFIG.fields_by_name['metric_id'].enum_type = _METRICNAMES
 _METRICSCONFIG.fields_by_name['metrics'].message_type = _METRICCONFIG
 _LISTMETRICSRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_LISTMETRICSRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_LISTMETRICSRESPONSE.fields_by_name['reason'].enum_type = _LISTMETRICSRESPONSE_REASON
 _LISTMETRICSRESPONSE.fields_by_name['metrics'].message_type = _METRICSCONFIG
+_LISTMETRICSRESPONSE_REASON.containing_type = _LISTMETRICSRESPONSE
 _METRICSCONFIGURATIONREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _METRICSCONFIGURATIONREQUEST.fields_by_name['changes'].message_type = _METRICSCONFIG
 _METRICSCONFIGURATIONREQUEST.oneofs_by_name['operation'].fields.append(
@@ -593,7 +707,8 @@
   _METRICSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'])
 _METRICSCONFIGURATIONREQUEST.fields_by_name['reset_to_default'].containing_oneof = _METRICSCONFIGURATIONREQUEST.oneofs_by_name['operation']
 _METRICSCONFIGURATIONRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_METRICSCONFIGURATIONRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_METRICSCONFIGURATIONRESPONSE.fields_by_name['reason'].enum_type = _METRICSCONFIGURATIONRESPONSE_REASON
+_METRICSCONFIGURATIONRESPONSE_REASON.containing_type = _METRICSCONFIGURATIONRESPONSE
 _METRICMETADATA.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _METRICMETADATA.fields_by_name['component_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _METRIC.fields_by_name['metric_id'].enum_type = _METRICNAMES
@@ -602,8 +717,9 @@
 _GETMETRICREQUEST.fields_by_name['meta_data'].message_type = _METRICMETADATA
 _GETMETRICREQUEST.fields_by_name['metric_id'].enum_type = _METRICNAMES
 _GETMETRICRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_GETMETRICRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_GETMETRICRESPONSE.fields_by_name['reason'].enum_type = _GETMETRICRESPONSE_REASON
 _GETMETRICRESPONSE.fields_by_name['metric'].message_type = _METRIC
+_GETMETRICRESPONSE_REASON.containing_type = _GETMETRICRESPONSE
 DESCRIPTOR.message_types_by_name['MetricConfig'] = _METRICCONFIG
 DESCRIPTOR.message_types_by_name['MetricsConfig'] = _METRICSCONFIG
 DESCRIPTOR.message_types_by_name['ListMetricsResponse'] = _LISTMETRICSRESPONSE
@@ -689,8 +805,8 @@
   index=0,
   serialized_options=None,
   create_key=_descriptor._internal_create_key,
-  serialized_start=1761,
-  serialized_end=2010,
+  serialized_start=2141,
+  serialized_end=2390,
   methods=[
   _descriptor.MethodDescriptor(
     name='ListMetrics',
diff --git a/python/dmi/sw_image_pb2.py b/python/dmi/sw_image_pb2.py
index 4fa56dc..ffed2f9 100644
--- a/python/dmi/sw_image_pb2.py
+++ b/python/dmi/sw_image_pb2.py
@@ -20,7 +20,7 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x12\x64mi/sw_image.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\"3\n\x0cImageVersion\x12\x12\n\nimage_name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\"x\n\x10ImageInformation\x12 \n\x05image\x18\x01 \x01(\x0b\x32\x11.dmi.ImageVersion\x12\x1c\n\x14image_install_script\x18\x02 \x01(\t\x12\x11\n\timage_url\x18\x03 \x01(\t\x12\x11\n\tsha256sum\x18\x05 \x01(\t\"\xfa\x03\n\x0bImageStatus\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\'\n\x06reason\x18\x02 \x01(\x0e\x32\x17.dmi.ImageStatus.Reason\x12*\n\x05state\x18\x03 \x01(\x0e\x32\x1b.dmi.ImageStatus.ImageState\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\"\xd0\x01\n\nImageState\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x11\n\rCOPYING_IMAGE\x10\x01\x12\x14\n\x10INSTALLING_IMAGE\x10\x02\x12\x14\n\x10\x43OMMITTING_IMAGE\x10\x03\x12\x14\n\x10REBOOTING_DEVICE\x10\x04\x12\x14\n\x10UPGRADE_COMPLETE\x10\x05\x12\x12\n\x0eUPGRADE_FAILED\x10\x06\x12\x17\n\x13\x41\x43TIVATION_COMPLETE\x10\x07\x12\x15\n\x11\x41\x43TIVATION_FAILED\x10\x08\"\x90\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x14\n\x10\x45RROR_IN_REQUEST\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x19\n\x15\x44\x45VICE_IN_WRONG_STATE\x10\x03\x12\x11\n\rINVALID_IMAGE\x10\x04\x12\x18\n\x14WRONG_IMAGE_CHECKSUM\x10\x05\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n\x12\x64mi/sw_image.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\"3\n\x0cImageVersion\x12\x12\n\nimage_name\x18\x01 \x01(\t\x12\x0f\n\x07version\x18\x02 \x01(\t\"x\n\x10ImageInformation\x12 \n\x05image\x18\x01 \x01(\x0b\x32\x11.dmi.ImageVersion\x12\x1c\n\x14image_install_script\x18\x02 \x01(\t\x12\x11\n\timage_url\x18\x03 \x01(\t\x12\x11\n\tsha256sum\x18\x05 \x01(\t\"\xcb\x04\n\x0bImageStatus\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\'\n\x06reason\x18\x02 \x01(\x0e\x32\x17.dmi.ImageStatus.Reason\x12*\n\x05state\x18\x03 \x01(\x0e\x32\x1b.dmi.ImageStatus.ImageState\x12\x13\n\x0b\x64\x65scription\x18\x04 \x01(\t\"\xd0\x01\n\nImageState\x12\x13\n\x0fUNDEFINED_STATE\x10\x00\x12\x11\n\rCOPYING_IMAGE\x10\x01\x12\x14\n\x10INSTALLING_IMAGE\x10\x02\x12\x14\n\x10\x43OMMITTING_IMAGE\x10\x03\x12\x14\n\x10REBOOTING_DEVICE\x10\x04\x12\x14\n\x10UPGRADE_COMPLETE\x10\x05\x12\x12\n\x0eUPGRADE_FAILED\x10\x06\x12\x17\n\x13\x41\x43TIVATION_COMPLETE\x10\x07\x12\x15\n\x11\x41\x43TIVATION_FAILED\x10\x08\"\xe1\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x14\n\x10\x45RROR_IN_REQUEST\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x19\n\x15\x44\x45VICE_IN_WRONG_STATE\x10\x03\x12\x11\n\rINVALID_IMAGE\x10\x04\x12\x18\n\x14WRONG_IMAGE_CHECKSUM\x10\x05\x12!\n\x1dOPERATION_ALREADY_IN_PROGRESS\x10\x06\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x07\x12\x18\n\x14\x44\x45VICE_NOT_REACHABLE\x10\x08\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
   ,
   dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,])
 
@@ -123,11 +123,26 @@
       serialized_options=None,
       type=None,
       create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='OPERATION_ALREADY_IN_PROGRESS', index=6, number=6,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=7, number=7,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='DEVICE_NOT_REACHABLE', index=8, number=8,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
   ],
   containing_type=None,
   serialized_options=None,
   serialized_start=584,
-  serialized_end=728,
+  serialized_end=809,
 )
 _sym_db.RegisterEnumDescriptor(_IMAGESTATUS_REASON)
 
@@ -275,7 +290,7 @@
   oneofs=[
   ],
   serialized_start=222,
-  serialized_end=728,
+  serialized_end=809,
 )
 
 _IMAGEINFORMATION.fields_by_name['image'].message_type = _IMAGEVERSION
diff --git a/python/dmi/sw_management_service_pb2.py b/python/dmi/sw_management_service_pb2.py
index a21d9cb..f795b76 100644
--- a/python/dmi/sw_management_service_pb2.py
+++ b/python/dmi/sw_management_service_pb2.py
@@ -22,12 +22,87 @@
   syntax='proto3',
   serialized_options=b'Z9github.com/opencord/device-management-interface/v3/go/dmi',
   create_key=_descriptor._internal_create_key,
-  serialized_pb=b'\n\x1f\x64mi/sw_management_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x12\x64mi/sw_image.proto\"u\n\x1aSoftwareVersionInformation\x12*\n\x0f\x61\x63tive_versions\x18\x01 \x03(\x0b\x32\x11.dmi.ImageVersion\x12+\n\x10standby_versions\x18\x02 \x03(\x0b\x32\x11.dmi.ImageVersion\"\x90\x01\n%GetSoftwareVersionInformationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason\x12-\n\x04info\x18\x03 \x01(\x0b\x32\x1f.dmi.SoftwareVersionInformation\"a\n\x14\x44ownloadImageRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12)\n\nimage_info\x18\x02 \x01(\x0b\x32\x15.dmi.ImageInformation\"C\n\rConfigRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x12\n\nconfig_url\x18\x02 \x01(\t\"J\n\x0e\x43onfigResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x1b\n\x06reason\x18\x02 \x01(\x0e\x32\x0b.dmi.Reason2\xf0\x02\n\x1fNativeSoftwareManagementService\x12Q\n\x12GetSoftwareVersion\x12\x0f.dmi.HardwareID\x1a*.dmi.GetSoftwareVersionInformationResponse\x12>\n\rDownloadImage\x12\x19.dmi.DownloadImageRequest\x1a\x10.dmi.ImageStatus0\x01\x12\x34\n\rActivateImage\x12\x0f.dmi.HardwareID\x1a\x10.dmi.ImageStatus0\x01\x12;\n\x14RevertToStandbyImage\x12\x0f.dmi.HardwareID\x1a\x10.dmi.ImageStatus0\x01\x12G\n\x1aUpdateStartupConfiguration\x12\x12.dmi.ConfigRequest\x1a\x13.dmi.ConfigResponse0\x01\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
+  serialized_pb=b'\n\x1f\x64mi/sw_management_service.proto\x12\x03\x64mi\x1a\x11\x64mi/commons.proto\x1a\x0c\x64mi/hw.proto\x1a\x12\x64mi/sw_image.proto\"u\n\x1aSoftwareVersionInformation\x12*\n\x0f\x61\x63tive_versions\x18\x01 \x03(\x0b\x32\x11.dmi.ImageVersion\x12+\n\x10standby_versions\x18\x02 \x03(\x0b\x32\x11.dmi.ImageVersion\"\xfe\x01\n%GetSoftwareVersionInformationResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12\x41\n\x06reason\x18\x02 \x01(\x0e\x32\x31.dmi.GetSoftwareVersionInformationResponse.Reason\x12-\n\x04info\x18\x03 \x01(\x0b\x32\x1f.dmi.SoftwareVersionInformation\"F\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\"a\n\x14\x44ownloadImageRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12)\n\nimage_info\x18\x02 \x01(\x0b\x32\x15.dmi.ImageInformation\"C\n\rConfigRequest\x12\x1e\n\x0b\x64\x65vice_uuid\x18\x01 \x01(\x0b\x32\t.dmi.Uuid\x12\x12\n\nconfig_url\x18\x02 \x01(\t\"\xf4\x01\n\x0e\x43onfigResponse\x12\x1b\n\x06status\x18\x01 \x01(\x0e\x32\x0b.dmi.Status\x12*\n\x06reason\x18\x02 \x01(\x0e\x32\x1a.dmi.ConfigResponse.Reason\"\x98\x01\n\x06Reason\x12\x14\n\x10UNDEFINED_REASON\x10\x00\x12\x12\n\x0eUNKNOWN_DEVICE\x10\x01\x12\x12\n\x0eINTERNAL_ERROR\x10\x02\x12\x19\n\x15\x45RROR_FETCHING_CONFIG\x10\x03\x12\x12\n\x0eINVALID_CONFIG\x10\x04\x12!\n\x1dOPERATION_ALREADY_IN_PROGRESS\x10\x05\x32\xf0\x02\n\x1fNativeSoftwareManagementService\x12Q\n\x12GetSoftwareVersion\x12\x0f.dmi.HardwareID\x1a*.dmi.GetSoftwareVersionInformationResponse\x12>\n\rDownloadImage\x12\x19.dmi.DownloadImageRequest\x1a\x10.dmi.ImageStatus0\x01\x12\x34\n\rActivateImage\x12\x0f.dmi.HardwareID\x1a\x10.dmi.ImageStatus0\x01\x12;\n\x14RevertToStandbyImage\x12\x0f.dmi.HardwareID\x1a\x10.dmi.ImageStatus0\x01\x12G\n\x1aUpdateStartupConfiguration\x12\x12.dmi.ConfigRequest\x1a\x13.dmi.ConfigResponse0\x01\x42;Z9github.com/opencord/device-management-interface/v3/go/dmib\x06proto3'
   ,
   dependencies=[dmi_dot_commons__pb2.DESCRIPTOR,dmi_dot_hw__pb2.DESCRIPTOR,dmi_dot_sw__image__pb2.DESCRIPTOR,])
 
 
 
+_GETSOFTWAREVERSIONINFORMATIONRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.GetSoftwareVersionInformationResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=397,
+  serialized_end=467,
+)
+_sym_db.RegisterEnumDescriptor(_GETSOFTWAREVERSIONINFORMATIONRESPONSE_REASON)
+
+_CONFIGRESPONSE_REASON = _descriptor.EnumDescriptor(
+  name='Reason',
+  full_name='dmi.ConfigResponse.Reason',
+  filename=None,
+  file=DESCRIPTOR,
+  create_key=_descriptor._internal_create_key,
+  values=[
+    _descriptor.EnumValueDescriptor(
+      name='UNDEFINED_REASON', index=0, number=0,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='UNKNOWN_DEVICE', index=1, number=1,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INTERNAL_ERROR', index=2, number=2,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='ERROR_FETCHING_CONFIG', index=3, number=3,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='INVALID_CONFIG', index=4, number=4,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+    _descriptor.EnumValueDescriptor(
+      name='OPERATION_ALREADY_IN_PROGRESS', index=5, number=5,
+      serialized_options=None,
+      type=None,
+      create_key=_descriptor._internal_create_key),
+  ],
+  containing_type=None,
+  serialized_options=None,
+  serialized_start=730,
+  serialized_end=882,
+)
+_sym_db.RegisterEnumDescriptor(_CONFIGRESPONSE_REASON)
+
 
 _SOFTWAREVERSIONINFORMATION = _descriptor.Descriptor(
   name='SoftwareVersionInformation',
@@ -102,6 +177,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _GETSOFTWAREVERSIONINFORMATIONRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -110,7 +186,7 @@
   oneofs=[
   ],
   serialized_start=213,
-  serialized_end=357,
+  serialized_end=467,
 )
 
 
@@ -148,8 +224,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=359,
-  serialized_end=456,
+  serialized_start=469,
+  serialized_end=566,
 )
 
 
@@ -187,8 +263,8 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=458,
-  serialized_end=525,
+  serialized_start=568,
+  serialized_end=635,
 )
 
 
@@ -219,6 +295,7 @@
   ],
   nested_types=[],
   enum_types=[
+    _CONFIGRESPONSE_REASON,
   ],
   serialized_options=None,
   is_extendable=False,
@@ -226,20 +303,22 @@
   extension_ranges=[],
   oneofs=[
   ],
-  serialized_start=527,
-  serialized_end=601,
+  serialized_start=638,
+  serialized_end=882,
 )
 
 _SOFTWAREVERSIONINFORMATION.fields_by_name['active_versions'].message_type = dmi_dot_sw__image__pb2._IMAGEVERSION
 _SOFTWAREVERSIONINFORMATION.fields_by_name['standby_versions'].message_type = dmi_dot_sw__image__pb2._IMAGEVERSION
 _GETSOFTWAREVERSIONINFORMATIONRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_GETSOFTWAREVERSIONINFORMATIONRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_GETSOFTWAREVERSIONINFORMATIONRESPONSE.fields_by_name['reason'].enum_type = _GETSOFTWAREVERSIONINFORMATIONRESPONSE_REASON
 _GETSOFTWAREVERSIONINFORMATIONRESPONSE.fields_by_name['info'].message_type = _SOFTWAREVERSIONINFORMATION
+_GETSOFTWAREVERSIONINFORMATIONRESPONSE_REASON.containing_type = _GETSOFTWAREVERSIONINFORMATIONRESPONSE
 _DOWNLOADIMAGEREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _DOWNLOADIMAGEREQUEST.fields_by_name['image_info'].message_type = dmi_dot_sw__image__pb2._IMAGEINFORMATION
 _CONFIGREQUEST.fields_by_name['device_uuid'].message_type = dmi_dot_hw__pb2._UUID
 _CONFIGRESPONSE.fields_by_name['status'].enum_type = dmi_dot_commons__pb2._STATUS
-_CONFIGRESPONSE.fields_by_name['reason'].enum_type = dmi_dot_commons__pb2._REASON
+_CONFIGRESPONSE.fields_by_name['reason'].enum_type = _CONFIGRESPONSE_REASON
+_CONFIGRESPONSE_REASON.containing_type = _CONFIGRESPONSE
 DESCRIPTOR.message_types_by_name['SoftwareVersionInformation'] = _SOFTWAREVERSIONINFORMATION
 DESCRIPTOR.message_types_by_name['GetSoftwareVersionInformationResponse'] = _GETSOFTWAREVERSIONINFORMATIONRESPONSE
 DESCRIPTOR.message_types_by_name['DownloadImageRequest'] = _DOWNLOADIMAGEREQUEST
@@ -292,8 +371,8 @@
   index=0,
   serialized_options=None,
   create_key=_descriptor._internal_create_key,
-  serialized_start=604,
-  serialized_end=972,
+  serialized_start=885,
+  serialized_end=1253,
   methods=[
   _descriptor.MethodDescriptor(
     name='GetSoftwareVersion',
