[VOL-4371] Voltha protos cleanup

Change-Id: If17761734c21223a9340fea10ca46a10b22a5d00
diff --git a/internal/pkg/core/device_handler.go b/internal/pkg/core/device_handler.go
index 02bc895..b9f1e2e 100644
--- a/internal/pkg/core/device_handler.go
+++ b/internal/pkg/core/device_handler.go
@@ -32,7 +32,6 @@
 
 	"github.com/golang/protobuf/ptypes/empty"
 	vgrpc "github.com/opencord/voltha-lib-go/v7/pkg/grpc"
-	"github.com/opencord/voltha-protos/v5/go/adapter_services"
 
 	"github.com/cenkalti/backoff/v3"
 	"github.com/gogo/protobuf/proto"
@@ -49,8 +48,11 @@
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/olterrors"
 	rsrcMgr "github.com/opencord/voltha-openolt-adapter/internal/pkg/resourcemanager"
 	"github.com/opencord/voltha-protos/v5/go/common"
+	ca "github.com/opencord/voltha-protos/v5/go/core_adapter"
 	"github.com/opencord/voltha-protos/v5/go/extension"
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	"github.com/opencord/voltha-protos/v5/go/health"
+	ia "github.com/opencord/voltha-protos/v5/go/inter_adapter"
+	"github.com/opencord/voltha-protos/v5/go/onu_inter_adapter_service"
 	of "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	oop "github.com/opencord/voltha-protos/v5/go/openolt"
 	"github.com/opencord/voltha-protos/v5/go/voltha"
@@ -146,11 +148,11 @@
 //There are MaxNumOfGroupHandlerChannels number of mcastFlowOrGroupChannelHandlerRoutine routines which monitor for any incoming mcast flow/group messages
 //and process them serially. The mcast flow/group are assigned these routines based on formula (group-id modulo MaxNumOfGroupHandlerChannels)
 type McastFlowOrGroupControlBlock struct {
-	ctx               context.Context       // Flow/group handler context
-	flowOrGroupAction string                // one of McastFlowOrGroupAdd, McastFlowOrGroupModify or McastFlowOrGroupDelete
-	flow              *voltha.OfpFlowStats  // Flow message (can be nil or valid flow)
-	group             *voltha.OfpGroupEntry // Group message (can be nil or valid group)
-	errChan           *chan error           // channel to report the mcast Flow/group handling error
+	ctx               context.Context   // Flow/group handler context
+	flowOrGroupAction string            // one of McastFlowOrGroupAdd, McastFlowOrGroupModify or McastFlowOrGroupDelete
+	flow              *of.OfpFlowStats  // Flow message (can be nil or valid flow)
+	group             *of.OfpGroupEntry // Group message (can be nil or valid group)
+	errChan           *chan error       // channel to report the mcast Flow/group handling error
 }
 
 var pmNames = []string{
@@ -332,13 +334,13 @@
 	}
 
 	// Check if port exists
-	port, err := dh.getPortFromCore(ctx, &ic.PortFilter{
+	port, err := dh.getPortFromCore(ctx, &ca.PortFilter{
 		DeviceId: dh.device.Id,
 		Port:     portNum,
 	})
 	if err == nil && port.Type == portType {
 		logger.Debug(ctx, "port-already-exists-updating-oper-status-of-port")
-		err = dh.updatePortStateInCore(ctx, &ic.PortState{
+		err = dh.updatePortStateInCore(ctx, &ca.PortState{
 			DeviceId:   dh.device.Id,
 			PortType:   portType,
 			PortNo:     portNum,
@@ -683,7 +685,7 @@
 	}
 
 	// Synchronous call to update device state - this method is run in its own go routine
-	if err := dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+	if err := dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 		DeviceId:   dh.device.Id,
 		OperStatus: voltha.OperStatus_ACTIVE,
 		ConnStatus: voltha.ConnectStatus_REACHABLE,
@@ -730,7 +732,7 @@
 	dh.device = cloned
 	dh.lockDevice.Unlock()
 
-	if err = dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+	if err = dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 		DeviceId:   cloned.Id,
 		OperStatus: cloned.OperStatus,
 		ConnStatus: cloned.ConnectStatus,
@@ -753,7 +755,7 @@
 			return err
 		}
 		subCtx, cancel := context.WithTimeout(log.WithSpanFromContext(context.Background(), ctx), dh.cfg.RPCTimeout)
-		_, err = ogClient.OnuIndication(subCtx, &ic.OnuIndicationMessage{
+		_, err = ogClient.OnuIndication(subCtx, &ia.OnuIndicationMessage{
 			DeviceId:      onuDevice.Id,
 			OnuIndication: &onuInd,
 		})
@@ -837,7 +839,7 @@
 		cloned.OperStatus = voltha.OperStatus_UNKNOWN
 		dh.device = cloned
 
-		if err = dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+		if err = dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 			DeviceId:   cloned.Id,
 			OperStatus: cloned.OperStatus,
 			ConnStatus: cloned.ConnectStatus,
@@ -1048,8 +1050,8 @@
 }
 
 //GetOfpDeviceInfo Gets the Ofp information of the given device
-func (dh *DeviceHandler) GetOfpDeviceInfo(device *voltha.Device) (*ic.SwitchCapability, error) {
-	return &ic.SwitchCapability{
+func (dh *DeviceHandler) GetOfpDeviceInfo(device *voltha.Device) (*ca.SwitchCapability, error) {
+	return &ca.SwitchCapability{
 		Desc: &of.OfpDesc{
 			MfrDesc:   "VOLTHA Project",
 			HwDesc:    "open_pon",
@@ -1068,7 +1070,7 @@
 }
 
 // GetTechProfileDownloadMessage fetches the TechProfileDownloadMessage for the caller.
-func (dh *DeviceHandler) GetTechProfileDownloadMessage(ctx context.Context, request *ic.TechProfileInstanceRequestMessage) (*ic.TechProfileDownloadMessage, error) {
+func (dh *DeviceHandler) GetTechProfileDownloadMessage(ctx context.Context, request *ia.TechProfileInstanceRequestMessage) (*ia.TechProfileDownloadMessage, error) {
 	ifID, err := plt.IntfIDFromPonPortNum(ctx, request.ParentPonPort)
 	if err != nil {
 		return nil, err
@@ -1096,7 +1098,7 @@
 		logger.Debugw(ctx, "omci-indication-for-a-device-not-in-cache.", log.Fields{"intf-id": omciInd.IntfId, "onu-id": omciInd.OnuId, "device-id": dh.device.Id})
 		ponPort := plt.IntfIDToPortNo(omciInd.GetIntfId(), voltha.Port_PON_OLT)
 
-		onuDevice, err := dh.getChildDeviceFromCore(ctx, &ic.ChildDeviceFilter{
+		onuDevice, err := dh.getChildDeviceFromCore(ctx, &ca.ChildDeviceFilter{
 			ParentId:     dh.device.Id,
 			OnuId:        omciInd.OnuId,
 			ParentPortNo: ponPort,
@@ -1121,7 +1123,7 @@
 		childAdapterEndpoint = onuInCache.(*OnuDevice).adapterEndpoint
 	}
 
-	if err := dh.sendOmciIndicationToChildAdapter(ctx, childAdapterEndpoint, &ic.OmciMessage{
+	if err := dh.sendOmciIndicationToChildAdapter(ctx, childAdapterEndpoint, &ia.OmciMessage{
 		ParentDeviceId: proxyDeviceID,
 		ChildDeviceId:  deviceID,
 		Message:        omciInd.Pkt,
@@ -1139,16 +1141,16 @@
 // //ProcessInterAdapterMessage sends the proxied messages to the target device
 // // If the proxy address is not found in the unmarshalled message, it first fetches the onu device for which the message
 // // is meant, and then send the unmarshalled omci message to this onu
-// func (dh *DeviceHandler) ProcessInterAdapterMessage(ctx context.Context, msg *ic.InterAdapterMessage) error {
+// func (dh *DeviceHandler) ProcessInterAdapterMessage(ctx context.Context, msg *ca.InterAdapterMessage) error {
 // 	logger.Debugw(ctx, "process-inter-adapter-message", log.Fields{"msgID": msg.Header.Id})
-// 	if msg.Header.Type == ic.InterAdapterMessageType_OMCI_REQUEST {
+// 	if msg.Header.Type == ca.InterAdapterMessageType_OMCI_REQUEST {
 // 		return dh.handleInterAdapterOmciMsg(ctx, msg)
 // 	}
 // 	return olterrors.NewErrInvalidValue(log.Fields{"inter-adapter-message-type": msg.Header.Type}, nil)
 // }
 
 // ProxyOmciMessage sends the proxied OMCI message to the target device
-func (dh *DeviceHandler) ProxyOmciMessage(ctx context.Context, omciMsg *ic.OmciMessage) error {
+func (dh *DeviceHandler) ProxyOmciMessage(ctx context.Context, omciMsg *ia.OmciMessage) error {
 	logger.Debugw(ctx, "proxy-omci-message", log.Fields{"parent-device-id": omciMsg.ParentDeviceId, "child-device-id": omciMsg.ChildDeviceId, "proxy-address": omciMsg.ProxyAddress, "connect-status": omciMsg.ConnectStatus})
 
 	if omciMsg.GetProxyAddress() == nil {
@@ -1175,7 +1177,7 @@
 	return nil
 }
 
-func (dh *DeviceHandler) sendProxiedMessage(ctx context.Context, onuDevice *voltha.Device, omciMsg *ic.OmciMessage) error {
+func (dh *DeviceHandler) sendProxiedMessage(ctx context.Context, onuDevice *voltha.Device, omciMsg *ia.OmciMessage) error {
 	var intfID uint32
 	var onuID uint32
 	var connectStatus common.ConnectStatus_Types
@@ -1284,7 +1286,7 @@
 
 	// check the ONU is already know to the OLT
 	// NOTE the second time the ONU is discovered this should return a device
-	onuDevice, err := dh.getChildDeviceFromCore(ctx, &ic.ChildDeviceFilter{
+	onuDevice, err := dh.getChildDeviceFromCore(ctx, &ca.ChildDeviceFilter{
 		ParentId:     dh.device.Id,
 		SerialNumber: sn,
 	})
@@ -1323,7 +1325,7 @@
 				"serial-number": sn}, err)
 		}
 
-		if onuDevice, err = dh.sendChildDeviceDetectedToCore(ctx, &ic.DeviceDiscovery{
+		if onuDevice, err = dh.sendChildDeviceDetectedToCore(ctx, &ca.DeviceDiscovery{
 			ParentId:     dh.device.Id,
 			ParentPortNo: parentPortNo,
 			ChannelId:    channelID,
@@ -1371,7 +1373,7 @@
 		log.Fields{"onu": onuDev,
 			"sn": sn})
 
-	if err := dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+	if err := dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 		DeviceId:       onuDevice.Id,
 		ParentDeviceId: dh.device.Id,
 		OperStatus:     common.OperStatus_DISCOVERED,
@@ -1420,7 +1422,7 @@
 			errFields["onu-id"] = onuInd.OnuId
 			errFields["parent-port-no"] = ponPort
 		}
-		onuDevice, err = dh.getChildDeviceFromCore(ctx, &ic.ChildDeviceFilter{
+		onuDevice, err = dh.getChildDeviceFromCore(ctx, &ca.ChildDeviceFilter{
 			ParentId:     dh.device.Id,
 			SerialNumber: serialNumber,
 			OnuId:        onuInd.OnuId,
@@ -1479,7 +1481,7 @@
 	case "up", "down":
 		logger.Debugw(ctx, "sending-interadapter-onu-indication", log.Fields{"onuIndication": onuInd, "device-id": onuDevice.Id, "operStatus": onuDevice.OperStatus, "adminStatus": onuDevice.AdminState})
 
-		err := dh.sendOnuIndicationToChildAdapter(ctx, onuDevice.AdapterEndpoint, &ic.OnuIndicationMessage{
+		err := dh.sendOnuIndicationToChildAdapter(ctx, onuDevice.AdapterEndpoint, &ia.OnuIndicationMessage{
 			DeviceId:      onuDevice.Id,
 			OnuIndication: onuInd,
 		})
@@ -1540,7 +1542,7 @@
 			"onu-id":    onuID,
 			"device-id": dh.device.Id})
 
-	onuDevice, err := dh.getChildDeviceFromCore(ctx, &ic.ChildDeviceFilter{
+	onuDevice, err := dh.getChildDeviceFromCore(ctx, &ca.ChildDeviceFilter{
 		ParentId:     dh.device.Id,
 		OnuId:        onuID,
 		ParentPortNo: parentPort,
@@ -1567,7 +1569,7 @@
 		})
 	}
 
-	if err := dh.sendPacketToCore(ctx, &ic.PacketIn{
+	if err := dh.sendPacketToCore(ctx, &ca.PacketIn{
 		DeviceId: dh.device.Id,
 		Port:     logicalPort,
 		Packet:   packetPayload,
@@ -1606,7 +1608,7 @@
 	}
 }
 
-func (dh *DeviceHandler) handleFlows(ctx context.Context, device *voltha.Device, flows *of.FlowChanges, flowMetadata *voltha.FlowMetadata) []error {
+func (dh *DeviceHandler) handleFlows(ctx context.Context, device *voltha.Device, flows *of.FlowChanges, flowMetadata *of.FlowMetadata) []error {
 	var err error
 	var errorsList []error
 
@@ -1687,7 +1689,7 @@
 }
 
 //UpdateFlowsIncrementally updates the device flow
-func (dh *DeviceHandler) UpdateFlowsIncrementally(ctx context.Context, device *voltha.Device, flows *of.FlowChanges, groups *of.FlowGroupChanges, flowMetadata *voltha.FlowMetadata) error {
+func (dh *DeviceHandler) UpdateFlowsIncrementally(ctx context.Context, device *voltha.Device, flows *of.FlowChanges, groups *of.FlowGroupChanges, flowMetadata *of.FlowMetadata) error {
 
 	var errorsList []error
 
@@ -1738,7 +1740,7 @@
 	dh.device = cloned
 
 	// Update the all pon ports state on that device to disable and NNI remains active as NNI remains active in openolt agent.
-	if err := dh.updatePortsStateInCore(ctx, &ic.PortStateFilter{
+	if err := dh.updatePortsStateInCore(ctx, &ca.PortStateFilter{
 		DeviceId:       cloned.Id,
 		PortTypeFilter: ^uint32(1 << voltha.Port_PON_OLT),
 		OperStatus:     voltha.OperStatus_UNKNOWN,
@@ -1761,7 +1763,7 @@
 	}
 	if onuDevices != nil {
 		for _, onuDevice := range onuDevices.Items {
-			err := dh.sendOnuIndicationToChildAdapter(ctx, onuDevice.AdapterEndpoint, &ic.OnuIndicationMessage{
+			err := dh.sendOnuIndicationToChildAdapter(ctx, onuDevice.AdapterEndpoint, &ia.OnuIndicationMessage{
 				DeviceId:      onuDevice.Id,
 				OnuIndication: &onuInd,
 			})
@@ -1807,7 +1809,7 @@
 	}
 	dh.device = device
 
-	if err := dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+	if err := dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 		DeviceId:   device.Id,
 		OperStatus: device.OperStatus,
 		ConnStatus: device.ConnectStatus,
@@ -1962,7 +1964,7 @@
 		})
 	}
 
-	if err := dh.sendPacketToCore(ctx, &ic.PacketIn{
+	if err := dh.sendPacketToCore(ctx, &ca.PacketIn{
 		DeviceId: dh.device.Id,
 		Port:     logicalPortNum,
 		Packet:   packetIn.Pkt,
@@ -2156,7 +2158,7 @@
 	logger.Debugw(ctx, "update-state-unreachable", log.Fields{"device-id": dh.device.Id, "connect-status": device.ConnectStatus,
 		"admin-state": device.AdminState, "oper-status": device.OperStatus})
 	if device.ConnectStatus == voltha.ConnectStatus_REACHABLE {
-		if err = dh.updateDeviceStateInCore(ctx, &ic.DeviceStateFilter{
+		if err = dh.updateDeviceStateInCore(ctx, &ca.DeviceStateFilter{
 			DeviceId:   dh.device.Id,
 			OperStatus: voltha.OperStatus_UNKNOWN,
 			ConnStatus: voltha.ConnectStatus_UNREACHABLE,
@@ -2164,7 +2166,7 @@
 			_ = olterrors.NewErrAdapter("device-state-update-failed", log.Fields{"device-id": dh.device.Id}, err).LogAt(log.ErrorLevel)
 		}
 
-		if err = dh.updatePortsStateInCore(ctx, &ic.PortStateFilter{
+		if err = dh.updatePortsStateInCore(ctx, &ca.PortStateFilter{
 			DeviceId:       dh.device.Id,
 			PortTypeFilter: 0,
 			OperStatus:     voltha.OperStatus_UNKNOWN,
@@ -2260,7 +2262,7 @@
 		dh.activePorts.Store(ponID, false)
 		logger.Infow(ctx, "disabled-pon-port", log.Fields{"out": out, "device-id": dh.device, "Port": port})
 	}
-	if err := dh.updatePortStateInCore(ctx, &ic.PortState{
+	if err := dh.updatePortStateInCore(ctx, &ca.PortState{
 		DeviceId:   dh.device.Id,
 		PortType:   voltha.Port_PON_OLT,
 		PortNo:     port.PortNo,
@@ -2438,11 +2440,11 @@
 	dh.onus.Store(onuKey, onuDevice)
 }
 
-func (dh *DeviceHandler) getExtValue(ctx context.Context, device *voltha.Device, value voltha.ValueType_Type) (*voltha.ReturnValues, error) {
+func (dh *DeviceHandler) getExtValue(ctx context.Context, device *voltha.Device, value extension.ValueType_Type) (*extension.ReturnValues, error) {
 	var err error
 	var sn *oop.SerialNumber
 	var ID uint32
-	resp := new(voltha.ReturnValues)
+	resp := new(extension.ReturnValues)
 	valueparam := new(oop.ValueParam)
 	ctx = log.WithSpanFromContext(context.Background(), ctx)
 	logger.Infow(ctx, "getExtValue", log.Fields{"onu-id": device.Id, "pon-intf": device.ParentPortNo})
@@ -2552,7 +2554,7 @@
 
 // RouteMcastFlowOrGroupMsgToChannel routes incoming mcast flow or group to a channel to be handled by the a specific
 // instance of mcastFlowOrGroupChannelHandlerRoutine meant to handle messages for that group.
-func (dh *DeviceHandler) RouteMcastFlowOrGroupMsgToChannel(ctx context.Context, flow *voltha.OfpFlowStats, group *voltha.OfpGroupEntry, action string) error {
+func (dh *DeviceHandler) RouteMcastFlowOrGroupMsgToChannel(ctx context.Context, flow *of.OfpFlowStats, group *of.OfpGroupEntry, action string) error {
 	// Step1 : Fill McastFlowOrGroupControlBlock
 	// Step2 : Push the McastFlowOrGroupControlBlock to appropriate channel
 	// Step3 : Wait on response channel for response
@@ -2835,7 +2837,7 @@
 	return cClient.GetDevice(subCtx, &common.ID{Id: deviceID})
 }
 
-func (dh *DeviceHandler) getChildDeviceFromCore(ctx context.Context, childDeviceFilter *ic.ChildDeviceFilter) (*voltha.Device, error) {
+func (dh *DeviceHandler) getChildDeviceFromCore(ctx context.Context, childDeviceFilter *ca.ChildDeviceFilter) (*voltha.Device, error) {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return nil, err
@@ -2845,7 +2847,7 @@
 	return cClient.GetChildDevice(subCtx, childDeviceFilter)
 }
 
-func (dh *DeviceHandler) updateDeviceStateInCore(ctx context.Context, deviceStateFilter *ic.DeviceStateFilter) error {
+func (dh *DeviceHandler) updateDeviceStateInCore(ctx context.Context, deviceStateFilter *ca.DeviceStateFilter) error {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return err
@@ -2887,7 +2889,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) sendChildDeviceDetectedToCore(ctx context.Context, deviceDiscoveryInfo *ic.DeviceDiscovery) (*voltha.Device, error) {
+func (dh *DeviceHandler) sendChildDeviceDetectedToCore(ctx context.Context, deviceDiscoveryInfo *ca.DeviceDiscovery) (*voltha.Device, error) {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return nil, err
@@ -2897,7 +2899,7 @@
 	return cClient.ChildDeviceDetected(subCtx, deviceDiscoveryInfo)
 }
 
-func (dh *DeviceHandler) sendPacketToCore(ctx context.Context, pkt *ic.PacketIn) error {
+func (dh *DeviceHandler) sendPacketToCore(ctx context.Context, pkt *ca.PacketIn) error {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return err
@@ -2919,7 +2921,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) updatePortsStateInCore(ctx context.Context, portFilter *ic.PortStateFilter) error {
+func (dh *DeviceHandler) updatePortsStateInCore(ctx context.Context, portFilter *ca.PortStateFilter) error {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return err
@@ -2930,7 +2932,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) updatePortStateInCore(ctx context.Context, portState *ic.PortState) error {
+func (dh *DeviceHandler) updatePortStateInCore(ctx context.Context, portState *ca.PortState) error {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return err
@@ -2941,7 +2943,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) getPortFromCore(ctx context.Context, portFilter *ic.PortFilter) (*voltha.Port, error) {
+func (dh *DeviceHandler) getPortFromCore(ctx context.Context, portFilter *ca.PortFilter) (*voltha.Port, error) {
 	cClient, err := dh.coreClient.GetCoreServiceClient()
 	if err != nil || cClient == nil {
 		return nil, err
@@ -2955,7 +2957,7 @@
 Helper functions to communicate with child adapter
 */
 
-func (dh *DeviceHandler) sendOmciIndicationToChildAdapter(ctx context.Context, childEndpoint string, response *ic.OmciMessage) error {
+func (dh *DeviceHandler) sendOmciIndicationToChildAdapter(ctx context.Context, childEndpoint string, response *ia.OmciMessage) error {
 	aClient, err := dh.getChildAdapterServiceClient(childEndpoint)
 	if err != nil || aClient == nil {
 		return err
@@ -2967,7 +2969,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) sendOnuIndicationToChildAdapter(ctx context.Context, childEndpoint string, onuInd *ic.OnuIndicationMessage) error {
+func (dh *DeviceHandler) sendOnuIndicationToChildAdapter(ctx context.Context, childEndpoint string, onuInd *ia.OnuIndicationMessage) error {
 	aClient, err := dh.getChildAdapterServiceClient(childEndpoint)
 	if err != nil || aClient == nil {
 		return err
@@ -2979,7 +2981,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) sendDeleteTContToChildAdapter(ctx context.Context, childEndpoint string, tContInfo *ic.DeleteTcontMessage) error {
+func (dh *DeviceHandler) sendDeleteTContToChildAdapter(ctx context.Context, childEndpoint string, tContInfo *ia.DeleteTcontMessage) error {
 	aClient, err := dh.getChildAdapterServiceClient(childEndpoint)
 	if err != nil || aClient == nil {
 		return err
@@ -2991,7 +2993,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) sendDeleteGemPortToChildAdapter(ctx context.Context, childEndpoint string, gemPortInfo *ic.DeleteGemPortMessage) error {
+func (dh *DeviceHandler) sendDeleteGemPortToChildAdapter(ctx context.Context, childEndpoint string, gemPortInfo *ia.DeleteGemPortMessage) error {
 	aClient, err := dh.getChildAdapterServiceClient(childEndpoint)
 	if err != nil || aClient == nil {
 		return err
@@ -3003,7 +3005,7 @@
 	return err
 }
 
-func (dh *DeviceHandler) sendDownloadTechProfileToChildAdapter(ctx context.Context, childEndpoint string, tpDownloadInfo *ic.TechProfileDownloadMessage) error {
+func (dh *DeviceHandler) sendDownloadTechProfileToChildAdapter(ctx context.Context, childEndpoint string, tpDownloadInfo *ia.TechProfileDownloadMessage) error {
 	aClient, err := dh.getChildAdapterServiceClient(childEndpoint)
 	if err != nil || aClient == nil {
 		return err
@@ -3061,16 +3063,7 @@
 	return nil
 }
 
-// func (dh *DeviceHandler) getChildAdapterServiceClient(endpoint string) (adapter_services.OnuInterAdapterServiceClient, error) {
-// 	dh.lockChildAdapterClients.RLock()
-// 	defer dh.lockChildAdapterClients.RUnlock()
-// 	if cgClient, ok := dh.childAdapterClients[endpoint]; ok {
-// 		return cgClient.GetOnuInterAdapterServiceClient()
-// 	}
-// 	return nil, fmt.Errorf("no-client-for-endpoint-%s", endpoint)
-// }
-
-func (dh *DeviceHandler) getChildAdapterServiceClient(endpoint string) (adapter_services.OnuInterAdapterServiceClient, error) {
+func (dh *DeviceHandler) getChildAdapterServiceClient(endpoint string) (onu_inter_adapter_service.OnuInterAdapterServiceClient, error) {
 
 	// First check from cache
 	dh.lockChildAdapterClients.RLock()
@@ -3114,8 +3107,8 @@
 
 // setAndTestAdapterServiceHandler is used to test whether the remote gRPC service is up
 func setAndTestAdapterServiceHandler(ctx context.Context, conn *grpc.ClientConn) interface{} {
-	svc := adapter_services.NewOnuInterAdapterServiceClient(conn)
-	if h, err := svc.GetHealthStatus(ctx, &empty.Empty{}); err != nil || h.State != voltha.HealthStatus_HEALTHY {
+	svc := onu_inter_adapter_service.NewOnuInterAdapterServiceClient(conn)
+	if h, err := svc.GetHealthStatus(ctx, &empty.Empty{}); err != nil || h.State != health.HealthStatus_HEALTHY {
 		return nil
 	}
 	return svc
diff --git a/internal/pkg/core/device_handler_test.go b/internal/pkg/core/device_handler_test.go
index 6595315..108fd4c 100644
--- a/internal/pkg/core/device_handler_test.go
+++ b/internal/pkg/core/device_handler_test.go
@@ -37,7 +37,7 @@
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/olterrors"
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/resourcemanager"
 	"github.com/opencord/voltha-openolt-adapter/pkg/mocks"
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	ia "github.com/opencord/voltha-protos/v5/go/inter_adapter"
 	of "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	ofp "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	oop "github.com/opencord/voltha-protos/v5/go/openolt"
@@ -471,15 +471,15 @@
 // 	ctx := context.Background()
 // 	dh := newMockDeviceHandler()
 // 	proxyAddr := dh.device.ProxyAddress
-// 	body := &ic.InterAdapterOmciMessage{
+// 	body := &ca.InterAdapterOmciMessage{
 // 		Message:      []byte("asdfasdfasdfasdfas"),
 // 		ProxyAddress: proxyAddr,
 // 	}
-// 	body2 := &ic.InterAdapterOmciMessage{
+// 	body2 := &ca.InterAdapterOmciMessage{
 // 		Message: []byte("asdfasdfasdfasdfas"),
 // 		//ProxyAddress: &voltha.Device_ProxyAddress{},
 // 	}
-// 	body3 := &ic.InterAdapterTechProfileDownloadMessage{}
+// 	body3 := &ca.InterAdapterTechProfileDownloadMessage{}
 // 	var marshalledData *any.Any
 // 	var err error
 
@@ -498,7 +498,7 @@
 // 		logger.Errorw(ctx, "cannot-marshal-request", log.Fields{"err": err})
 // 	}
 // 	type args struct {
-// 		msg *ic.InterAdapterMessage
+// 		msg *ca.InterAdapterMessage
 // 	}
 // 	invalid := reflect.TypeOf(&olterrors.ErrInvalidValue{})
 // 	tests := []struct {
@@ -506,73 +506,73 @@
 // 		args    args
 // 		wantErr reflect.Type
 // 	}{
-// 		{"ProcessInterAdapterMessage-1", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-1", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_FLOW_REQUEST,
+// 				Type: ca.InterAdapterMessageType_FLOW_REQUEST,
 // 			},
 // 			Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-2", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-2", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_FLOW_RESPONSE,
+// 				Type: ca.InterAdapterMessageType_FLOW_RESPONSE,
 // 			},
 // 			Body: marshalledData1,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-3", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-3", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_OMCI_REQUEST,
+// 				Type: ca.InterAdapterMessageType_OMCI_REQUEST,
 // 			},
 // 			Body: marshalledData,
 // 		}}, reflect.TypeOf(&olterrors.ErrCommunication{})},
-// 		{"ProcessInterAdapterMessage-4", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-4", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_OMCI_RESPONSE,
+// 				Type: ca.InterAdapterMessageType_OMCI_RESPONSE,
 // 			}, Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-5", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-5", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_METRICS_REQUEST,
+// 				Type: ca.InterAdapterMessageType_METRICS_REQUEST,
 // 			}, Body: marshalledData1,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-6", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-6", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_METRICS_RESPONSE,
+// 				Type: ca.InterAdapterMessageType_METRICS_RESPONSE,
 // 			}, Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-7", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-7", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_ONU_IND_REQUEST,
+// 				Type: ca.InterAdapterMessageType_ONU_IND_REQUEST,
 // 			}, Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-8", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-8", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_ONU_IND_RESPONSE,
+// 				Type: ca.InterAdapterMessageType_ONU_IND_RESPONSE,
 // 			}, Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-9", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-9", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_TECH_PROFILE_DOWNLOAD_REQUEST,
+// 				Type: ca.InterAdapterMessageType_TECH_PROFILE_DOWNLOAD_REQUEST,
 // 			}, Body: marshalledData,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-10", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-10", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_DELETE_GEM_PORT_REQUEST,
+// 				Type: ca.InterAdapterMessageType_DELETE_GEM_PORT_REQUEST,
 // 			}, Body: marshalledData2,
 // 		}}, invalid},
-// 		{"ProcessInterAdapterMessage-11", args{msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
+// 		{"ProcessInterAdapterMessage-11", args{msg: &ca.InterAdapterMessage{
+// 			Header: &ca.InterAdapterHeader{
 // 				Id:   "012345",
-// 				Type: ic.InterAdapterMessageType_DELETE_TCONT_REQUEST,
+// 				Type: ca.InterAdapterMessageType_DELETE_TCONT_REQUEST,
 // 			}, Body: marshalledData2,
 // 		}}, invalid},
 // 	}
@@ -604,7 +604,7 @@
 	}
 	device2 := device1
 	device2.ConnectStatus = 2
-	iaomciMsg1 := &ic.OmciMessage{
+	iaomciMsg1 := &ia.OmciMessage{
 		ProxyAddress: &voltha.Device_ProxyAddress{
 			DeviceId:       "onu2",
 			DeviceType:     "onu",
@@ -613,7 +613,7 @@
 		},
 		ConnectStatus: 1,
 	}
-	iaomciMsg2 := &ic.OmciMessage{
+	iaomciMsg2 := &ia.OmciMessage{
 		ProxyAddress: &voltha.Device_ProxyAddress{
 			DeviceId:       "onu3",
 			DeviceType:     "onu",
@@ -624,19 +624,19 @@
 	}
 	type args struct {
 		onuDevice *voltha.Device
-		omciMsg   *ic.OmciMessage
+		omciMsg   *ia.OmciMessage
 	}
 	tests := []struct {
 		name          string
 		devicehandler *DeviceHandler
 		args          args
 	}{
-		{"sendProxiedMessage-1", dh1, args{onuDevice: device1, omciMsg: &ic.OmciMessage{}}},
-		{"sendProxiedMessage-2", dh1, args{onuDevice: device2, omciMsg: &ic.OmciMessage{}}},
+		{"sendProxiedMessage-1", dh1, args{onuDevice: device1, omciMsg: &ia.OmciMessage{}}},
+		{"sendProxiedMessage-2", dh1, args{onuDevice: device2, omciMsg: &ia.OmciMessage{}}},
 		{"sendProxiedMessage-3", dh1, args{onuDevice: nil, omciMsg: iaomciMsg1}},
 		{"sendProxiedMessage-4", dh1, args{onuDevice: nil, omciMsg: iaomciMsg2}},
 		{"sendProxiedMessage-5", dh2, args{onuDevice: nil, omciMsg: iaomciMsg2}},
-		{"sendProxiedMessage-6", dh2, args{onuDevice: device1, omciMsg: &ic.OmciMessage{}}},
+		{"sendProxiedMessage-6", dh2, args{onuDevice: device1, omciMsg: &ia.OmciMessage{}}},
 	}
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
@@ -1316,23 +1316,23 @@
 		{"update-flow-when-device-handler-is-nil", dh1, true},
 	}
 
-	flowMetadata0 := voltha.FlowMetadata{Meters: []*voltha.OfpMeterConfig{
+	flowMetadata0 := of.FlowMetadata{Meters: []*of.OfpMeterConfig{
 		{
 			Flags:   5,
 			MeterId: 1,
-			Bands: []*voltha.OfpMeterBandHeader{
+			Bands: []*of.OfpMeterBandHeader{
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      of.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      16000,
 					BurstSize: 0,
 				},
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      of.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      32000,
 					BurstSize: 30,
 				},
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      of.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      64000,
 					BurstSize: 30,
 				},
@@ -1365,9 +1365,9 @@
 	}
 
 	flow0, _ := fu.MkFlowStat(fa0)
-	flowAdd := of.Flows{Items: make([]*voltha.OfpFlowStats, 0)}
+	flowAdd := of.Flows{Items: make([]*of.OfpFlowStats, 0)}
 	flowAdd.Items = append(flowAdd.Items, flow0)
-	flowRemove := of.Flows{Items: make([]*voltha.OfpFlowStats, 0)}
+	flowRemove := of.Flows{Items: make([]*of.OfpFlowStats, 0)}
 	flowChanges := &ofp.FlowChanges{ToAdd: &flowAdd, ToRemove: &flowRemove}
 
 	for _, tt := range tests {
diff --git a/internal/pkg/core/openolt.go b/internal/pkg/core/openolt.go
index 30aa33c..9e7cba2 100644
--- a/internal/pkg/core/openolt.go
+++ b/internal/pkg/core/openolt.go
@@ -31,8 +31,11 @@
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/config"
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/olterrors"
 	"github.com/opencord/voltha-protos/v5/go/common"
+	ca "github.com/opencord/voltha-protos/v5/go/core_adapter"
 	"github.com/opencord/voltha-protos/v5/go/extension"
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	"github.com/opencord/voltha-protos/v5/go/health"
+	ia "github.com/opencord/voltha-protos/v5/go/inter_adapter"
+	"github.com/opencord/voltha-protos/v5/go/omci"
 	"github.com/opencord/voltha-protos/v5/go/voltha"
 )
 
@@ -119,8 +122,8 @@
 }
 
 // GetHealthStatus is used as a service readiness validation as a grpc connection
-func (oo *OpenOLT) GetHealthStatus(ctx context.Context, empty *empty.Empty) (*voltha.HealthStatus, error) {
-	return &voltha.HealthStatus{State: voltha.HealthStatus_HEALTHY}, nil
+func (oo *OpenOLT) GetHealthStatus(ctx context.Context, empty *empty.Empty) (*health.HealthStatus, error) {
+	return &health.HealthStatus{State: health.HealthStatus_HEALTHY}, nil
 }
 
 // AdoptDevice creates a new device handler if not present already and then adopts the device
@@ -139,7 +142,7 @@
 }
 
 //GetOfpDeviceInfo returns OFP information for the given device
-func (oo *OpenOLT) GetOfpDeviceInfo(ctx context.Context, device *voltha.Device) (*ic.SwitchCapability, error) {
+func (oo *OpenOLT) GetOfpDeviceInfo(ctx context.Context, device *voltha.Device) (*ca.SwitchCapability, error) {
 	logger.Infow(ctx, "get_ofp_device_info", log.Fields{"device-id": device.Id})
 	if handler := oo.getDeviceHandler(device.Id); handler != nil {
 		return handler.GetOfpDeviceInfo(device)
@@ -162,7 +165,7 @@
 		}
 		subCtx, cancel := context.WithTimeout(log.WithSpanFromContext(context.Background(), ctx), oo.rpcTimeout)
 		defer cancel()
-		if _, err := cgClient.DeviceStateUpdate(subCtx, &ic.DeviceStateFilter{
+		if _, err := cgClient.DeviceStateUpdate(subCtx, &ca.DeviceStateFilter{
 			DeviceId:   device.Id,
 			OperStatus: voltha.OperStatus_RECONCILING,
 			ConnStatus: device.ConnectStatus,
@@ -234,7 +237,7 @@
 }
 
 //UpdateFlowsIncrementally updates (add/remove) the flows on a given device
-func (oo *OpenOLT) UpdateFlowsIncrementally(ctx context.Context, incrFlows *ic.IncrementalFlows) (*empty.Empty, error) {
+func (oo *OpenOLT) UpdateFlowsIncrementally(ctx context.Context, incrFlows *ca.IncrementalFlows) (*empty.Empty, error) {
 	logger.Infow(ctx, "update_flows_incrementally", log.Fields{"device-id": incrFlows.Device.Id, "flows": incrFlows.Flows, "flowMetadata": incrFlows.FlowMetadata})
 	if handler := oo.getDeviceHandler(incrFlows.Device.Id); handler != nil {
 		if err := handler.UpdateFlowsIncrementally(log.WithSpanFromContext(context.Background(), ctx), incrFlows.Device, incrFlows.Flows, incrFlows.Groups, incrFlows.FlowMetadata); err != nil {
@@ -246,7 +249,7 @@
 }
 
 //UpdatePmConfig returns PmConfigs nil or error
-func (oo *OpenOLT) UpdatePmConfig(ctx context.Context, configs *ic.PmConfigsInfo) (*empty.Empty, error) {
+func (oo *OpenOLT) UpdatePmConfig(ctx context.Context, configs *ca.PmConfigsInfo) (*empty.Empty, error) {
 	logger.Debugw(ctx, "update_pm_config", log.Fields{"device-id": configs.DeviceId, "pm-configs": configs.PmConfigs})
 	if handler := oo.getDeviceHandler(configs.DeviceId); handler != nil {
 		handler.UpdatePmConfig(log.WithSpanFromContext(context.Background(), ctx), configs.PmConfigs)
@@ -256,7 +259,7 @@
 }
 
 //SendPacketOut sends packet out to the device
-func (oo *OpenOLT) SendPacketOut(ctx context.Context, packet *ic.PacketOut) (*empty.Empty, error) {
+func (oo *OpenOLT) SendPacketOut(ctx context.Context, packet *ca.PacketOut) (*empty.Empty, error) {
 	logger.Debugw(ctx, "send_packet_out", log.Fields{"device-id": packet.DeviceId, "egress_port_no": packet.EgressPortNo, "pkt": packet.Packet})
 	if handler := oo.getDeviceHandler(packet.DeviceId); handler != nil {
 		if err := handler.PacketOut(log.WithSpanFromContext(context.Background(), ctx), packet.EgressPortNo, packet.Packet); err != nil {
@@ -323,9 +326,9 @@
 }
 
 // GetExtValue retrieves a value on a particular ONU
-func (oo *OpenOLT) GetExtValue(ctx context.Context, extInfo *ic.GetExtValueMessage) (*voltha.ReturnValues, error) {
+func (oo *OpenOLT) GetExtValue(ctx context.Context, extInfo *ca.GetExtValueMessage) (*extension.ReturnValues, error) {
 	var err error
-	resp := new(voltha.ReturnValues)
+	resp := new(extension.ReturnValues)
 	logger.Infow(ctx, "get_ext_value", log.Fields{"parent-device-id": extInfo.ParentDevice.Id, "onu-id": extInfo.ChildDevice.Id})
 	if handler := oo.getDeviceHandler(extInfo.ParentDevice.Id); handler != nil {
 		if resp, err = handler.getExtValue(ctx, extInfo.ChildDevice, extInfo.ValueType); err != nil {
@@ -372,7 +375,7 @@
  */
 
 // ProxyOmciRequest proxies an OMCI request from the child adapter
-func (oo *OpenOLT) ProxyOmciRequest(ctx context.Context, request *ic.OmciMessage) (*empty.Empty, error) {
+func (oo *OpenOLT) ProxyOmciRequest(ctx context.Context, request *ia.OmciMessage) (*empty.Empty, error) {
 	logger.Debugw(ctx, "proxy-omci-request", log.Fields{"request": request})
 
 	if handler := oo.getDeviceHandler(request.ParentDeviceId); handler != nil {
@@ -385,7 +388,7 @@
 }
 
 // GetTechProfileInstance returns an instance of a tech profile
-func (oo *OpenOLT) GetTechProfileInstance(ctx context.Context, request *ic.TechProfileInstanceRequestMessage) (*ic.TechProfileDownloadMessage, error) {
+func (oo *OpenOLT) GetTechProfileInstance(ctx context.Context, request *ia.TechProfileInstanceRequestMessage) (*ia.TechProfileDownloadMessage, error) {
 	logger.Debugw(ctx, "getting-tech-profile-request", log.Fields{"request": request})
 
 	targetDeviceID := request.ParentDeviceId
@@ -406,12 +409,12 @@
  */
 
 //SimulateAlarm is unimplemented
-func (oo *OpenOLT) SimulateAlarm(context.Context, *ic.SimulateAlarmMessage) (*voltha.OperationResp, error) {
+func (oo *OpenOLT) SimulateAlarm(context.Context, *ca.SimulateAlarmMessage) (*voltha.OperationResp, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
 //SetExtValue is unimplemented
-func (oo *OpenOLT) SetExtValue(context.Context, *ic.SetExtValueMessage) (*empty.Empty, error) {
+func (oo *OpenOLT) SetExtValue(context.Context, *ca.SetExtValueMessage) (*empty.Empty, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
@@ -421,7 +424,7 @@
 }
 
 //StartOmciTest not implemented
-func (oo *OpenOLT) StartOmciTest(ctx context.Context, test *ic.OMCITest) (*voltha.TestResponse, error) {
+func (oo *OpenOLT) StartOmciTest(ctx context.Context, test *ca.OMCITest) (*omci.TestResponse, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
@@ -436,27 +439,27 @@
 }
 
 //DownloadImage is unimplemented
-func (oo *OpenOLT) DownloadImage(ctx context.Context, imageInfo *ic.ImageDownloadMessage) (*voltha.ImageDownload, error) {
+func (oo *OpenOLT) DownloadImage(ctx context.Context, imageInfo *ca.ImageDownloadMessage) (*voltha.ImageDownload, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
 //GetImageDownloadStatus is unimplemented
-func (oo *OpenOLT) GetImageDownloadStatus(ctx context.Context, imageInfo *ic.ImageDownloadMessage) (*voltha.ImageDownload, error) {
+func (oo *OpenOLT) GetImageDownloadStatus(ctx context.Context, imageInfo *ca.ImageDownloadMessage) (*voltha.ImageDownload, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
 //CancelImageDownload is unimplemented
-func (oo *OpenOLT) CancelImageDownload(ctx context.Context, imageInfo *ic.ImageDownloadMessage) (*voltha.ImageDownload, error) {
+func (oo *OpenOLT) CancelImageDownload(ctx context.Context, imageInfo *ca.ImageDownloadMessage) (*voltha.ImageDownload, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
 //ActivateImageUpdate is unimplemented
-func (oo *OpenOLT) ActivateImageUpdate(ctx context.Context, imageInfo *ic.ImageDownloadMessage) (*voltha.ImageDownload, error) {
+func (oo *OpenOLT) ActivateImageUpdate(ctx context.Context, imageInfo *ca.ImageDownloadMessage) (*voltha.ImageDownload, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
 //RevertImageUpdate is unimplemented
-func (oo *OpenOLT) RevertImageUpdate(ctx context.Context, imageInfo *ic.ImageDownloadMessage) (*voltha.ImageDownload, error) {
+func (oo *OpenOLT) RevertImageUpdate(ctx context.Context, imageInfo *ca.ImageDownloadMessage) (*voltha.ImageDownload, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
@@ -491,7 +494,7 @@
 }
 
 // UpdateFlowsBulk is unimplemented
-func (oo *OpenOLT) UpdateFlowsBulk(ctx context.Context, flows *ic.BulkFlows) (*empty.Empty, error) {
+func (oo *OpenOLT) UpdateFlowsBulk(ctx context.Context, flows *ca.BulkFlows) (*empty.Empty, error) {
 	return nil, olterrors.ErrNotImplemented
 }
 
diff --git a/internal/pkg/core/openolt_eventmgr.go b/internal/pkg/core/openolt_eventmgr.go
index 858d5f7..a3bf003 100644
--- a/internal/pkg/core/openolt_eventmgr.go
+++ b/internal/pkg/core/openolt_eventmgr.go
@@ -23,7 +23,7 @@
 	"fmt"
 	"strconv"
 
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	ca "github.com/opencord/voltha-protos/v5/go/core_adapter"
 
 	"github.com/opencord/voltha-lib-go/v7/pkg/events/eventif"
 	"github.com/opencord/voltha-lib-go/v7/pkg/log"
@@ -669,7 +669,7 @@
 // oltIntfOperIndication handles Up and Down state of an OLT PON ports
 func (em *OpenOltEventMgr) oltIntfOperIndication(ctx context.Context, ifindication *oop.IntfOperIndication, deviceID string, raisedTs int64) {
 	portNo := plt.IntfIDToPortNo(ifindication.IntfId, voltha.Port_PON_OLT)
-	if port, err := em.handler.getPortFromCore(ctx, &ic.PortFilter{
+	if port, err := em.handler.getPortFromCore(ctx, &ca.PortFilter{
 		DeviceId: deviceID,
 		Port:     portNo,
 	}); err != nil {
diff --git a/internal/pkg/core/openolt_flowmgr.go b/internal/pkg/core/openolt_flowmgr.go
index 8699740..57833fa 100644
--- a/internal/pkg/core/openolt_flowmgr.go
+++ b/internal/pkg/core/openolt_flowmgr.go
@@ -35,7 +35,7 @@
 	tp "github.com/opencord/voltha-lib-go/v7/pkg/techprofile"
 	rsrcMgr "github.com/opencord/voltha-openolt-adapter/internal/pkg/resourcemanager"
 	"github.com/opencord/voltha-protos/v5/go/common"
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	ia "github.com/opencord/voltha-protos/v5/go/inter_adapter"
 	ofp "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	openoltpb2 "github.com/opencord/voltha-protos/v5/go/openolt"
 	tp_pb "github.com/opencord/voltha-protos/v5/go/tech_profile"
@@ -166,7 +166,7 @@
 	uniPort      uint32
 	tpInst       interface{}
 	meterID      uint32
-	flowMetadata *voltha.FlowMetadata
+	flowMetadata *ofp.FlowMetadata
 }
 
 type flowContext struct {
@@ -189,11 +189,11 @@
 // There is on perOnuFlowHandlerRoutine routine per ONU that constantly monitors for any incoming
 // flow and processes it serially
 type flowControlBlock struct {
-	ctx          context.Context      // Flow handler context
-	addFlow      bool                 // if true flow to be added, else removed
-	flow         *voltha.OfpFlowStats // Flow message
-	flowMetadata *voltha.FlowMetadata // FlowMetadata that contains flow meter information. This can be nil for Flow remove
-	errChan      *chan error          // channel to report the Flow handling error
+	ctx          context.Context   // Flow handler context
+	addFlow      bool              // if true flow to be added, else removed
+	flow         *ofp.OfpFlowStats // Flow message
+	flowMetadata *ofp.FlowMetadata // FlowMetadata that contains flow meter information. This can be nil for Flow remove
+	errChan      *chan error       // channel to report the Flow handling error
 }
 
 //OpenOltFlowMgr creates the Structure of OpenOltFlowMgr obj
@@ -320,7 +320,7 @@
 
 func (f *OpenOltFlowMgr) processAddFlow(ctx context.Context, intfID uint32, onuID uint32, uniID uint32, portNo uint32,
 	classifierInfo map[string]interface{}, actionInfo map[string]interface{}, flow *ofp.OfpFlowStats, TpID uint32,
-	UsMeterID uint32, DsMeterID uint32, flowMetadata *voltha.FlowMetadata) error {
+	UsMeterID uint32, DsMeterID uint32, flowMetadata *ofp.FlowMetadata) error {
 	var allocID uint32
 	var gemPorts []uint32
 	var TpInst interface{}
@@ -787,7 +787,7 @@
 }
 
 // This function allocates tconts and GEM ports for an ONU
-func (f *OpenOltFlowMgr) createTcontGemports(ctx context.Context, intfID uint32, onuID uint32, uniID uint32, uni string, uniPort uint32, TpID uint32, UsMeterID uint32, DsMeterID uint32, flowMetadata *voltha.FlowMetadata) (uint32, []uint32, interface{}) {
+func (f *OpenOltFlowMgr) createTcontGemports(ctx context.Context, intfID uint32, onuID uint32, uniID uint32, uni string, uniPort uint32, TpID uint32, UsMeterID uint32, DsMeterID uint32, flowMetadata *ofp.FlowMetadata) (uint32, []uint32, interface{}) {
 	var allocIDs []uint32
 	var allgemPortIDs []uint32
 	var gemPortIDs []uint32
@@ -888,7 +888,7 @@
 		// Send Tconts and GEM ports to KV store
 		f.storeTcontsGEMPortsIntoKVStore(ctx, intfID, onuID, uniID, allocIDs, allgemPortIDs)
 		return allocID, gemPortIDs, techProfileInstance
-	case *openoltpb2.EponTechProfileInstance:
+	case *tp_pb.EponTechProfileInstance:
 		// CreateSchedulerQueues for EPON needs to be implemented here
 		// when voltha-protos for EPON is completed.
 		allocID := tpInst.AllocId
@@ -1788,7 +1788,7 @@
 		return err
 	}
 
-	delGemPortMsg := &ic.DeleteGemPortMessage{
+	delGemPortMsg := &ia.DeleteGemPortMessage{
 		DeviceId:       onuDev.deviceID,
 		UniId:          uniID,
 		TpInstancePath: tpPath,
@@ -1828,7 +1828,7 @@
 		return err
 	}
 
-	delTcontMsg := &ic.DeleteTcontMessage{
+	delTcontMsg := &ia.DeleteTcontMessage{
 		DeviceId:       onuDev.deviceID,
 		UniId:          uniID,
 		TpInstancePath: tpPath,
@@ -2181,7 +2181,7 @@
 }
 
 // RouteFlowToOnuChannel routes incoming flow to ONU specific channel
-func (f *OpenOltFlowMgr) RouteFlowToOnuChannel(ctx context.Context, flow *voltha.OfpFlowStats, addFlow bool, flowMetadata *voltha.FlowMetadata) error {
+func (f *OpenOltFlowMgr) RouteFlowToOnuChannel(ctx context.Context, flow *ofp.OfpFlowStats, addFlow bool, flowMetadata *ofp.FlowMetadata) error {
 	// Step1 : Fill flowControlBlock
 	// Step2 : Push the flowControlBlock to ONU channel
 	// Step3 : Wait on response channel for response
@@ -2257,7 +2257,7 @@
 
 // AddFlow add flow to device
 // nolint: gocyclo
-func (f *OpenOltFlowMgr) AddFlow(ctx context.Context, flow *ofp.OfpFlowStats, flowMetadata *voltha.FlowMetadata) error {
+func (f *OpenOltFlowMgr) AddFlow(ctx context.Context, flow *ofp.OfpFlowStats, flowMetadata *ofp.FlowMetadata) error {
 	classifierInfo := make(map[string]interface{})
 	actionInfo := make(map[string]interface{})
 	var UsMeterID uint32
@@ -2450,11 +2450,11 @@
 	logger.Debugw(ctx, "got-child-device-from-olt-device-handler", log.Fields{"onu-id": onuDev.deviceID})
 
 	tpPath := f.getTPpath(ctx, intfID, uni, TpID)
-	tpDownloadMsg := &ic.TechProfileDownloadMessage{
+	tpDownloadMsg := &ia.TechProfileDownloadMessage{
 		DeviceId:       onuDev.deviceID,
 		UniId:          uniID,
 		TpInstancePath: tpPath,
-		TechTpInstance: &ic.TechProfileDownloadMessage_TpInstance{TpInstance: &tpInst},
+		TechTpInstance: &ia.TechProfileDownloadMessage_TpInstance{TpInstance: &tpInst},
 	}
 	logger.Debugw(ctx, "sending-load-tech-profile-request-to-brcm-onu-adapter", log.Fields{"tpDownloadMsg": *tpDownloadMsg})
 
@@ -2869,7 +2869,7 @@
 			// Trim the bitMapPrefix form the binary string and then iterate each character in the binary string.
 			// If the character is set to pbit1, extract the pcp value from the position of this character in the string.
 			// Update the pbitToGem map with key being the pcp bit and the value being the gemPortID that consumes
-			// this pcp bit traffic.
+			// this pcp bit traffca.
 			for pos, pbitSet := range strings.TrimPrefix(pBitMap, bitMapPrefix) {
 				if pbitSet == pbit1 {
 					pcp := uint32(len(strings.TrimPrefix(pBitMap, bitMapPrefix))) - 1 - uint32(pos)
@@ -3380,7 +3380,7 @@
 	return nil
 }
 
-func (f *OpenOltFlowMgr) getTechProfileDownloadMessage(ctx context.Context, tpPath string, uniID uint32, onuDeviceID string) (*ic.TechProfileDownloadMessage, error) {
+func (f *OpenOltFlowMgr) getTechProfileDownloadMessage(ctx context.Context, tpPath string, uniID uint32, onuDeviceID string) (*ia.TechProfileDownloadMessage, error) {
 	tpInst, err := f.techprofile.GetTPInstance(ctx, tpPath)
 	if err != nil {
 		logger.Errorw(ctx, "error-fetching-tp-instance", log.Fields{"tpPath": tpPath})
@@ -3390,23 +3390,23 @@
 	switch tpInst := tpInst.(type) {
 	case *tp_pb.TechProfileInstance:
 		logger.Debugw(ctx, "fetched-tp-instance-successfully-formulating-tp-download-msg", log.Fields{"tpPath": tpPath})
-		return &ic.TechProfileDownloadMessage{
+		return &ia.TechProfileDownloadMessage{
 			DeviceId:       onuDeviceID,
 			UniId:          uniID,
 			TpInstancePath: tpPath,
-			TechTpInstance: &ic.TechProfileDownloadMessage_TpInstance{TpInstance: tpInst},
+			TechTpInstance: &ia.TechProfileDownloadMessage_TpInstance{TpInstance: tpInst},
 		}, nil
-	case *openoltpb2.EponTechProfileInstance:
-		return &ic.TechProfileDownloadMessage{
+	case *tp_pb.EponTechProfileInstance:
+		return &ia.TechProfileDownloadMessage{
 			DeviceId:       onuDeviceID,
 			UniId:          uniID,
 			TpInstancePath: tpPath,
-			TechTpInstance: &ic.TechProfileDownloadMessage_EponTpInstance{EponTpInstance: tpInst},
+			TechTpInstance: &ia.TechProfileDownloadMessage_EponTpInstance{EponTpInstance: tpInst},
 		}, nil
 	default:
 		logger.Errorw(ctx, "unknown-tech", log.Fields{"tpPath": tpPath})
 	}
-	return &ic.TechProfileDownloadMessage{
+	return &ia.TechProfileDownloadMessage{
 		DeviceId:       onuDeviceID,
 		UniId:          uniID,
 		TpInstancePath: tpPath,
diff --git a/internal/pkg/core/openolt_flowmgr_test.go b/internal/pkg/core/openolt_flowmgr_test.go
index 0a557ca..45cd79e 100644
--- a/internal/pkg/core/openolt_flowmgr_test.go
+++ b/internal/pkg/core/openolt_flowmgr_test.go
@@ -29,8 +29,6 @@
 
 	"github.com/opencord/voltha-openolt-adapter/pkg/mocks"
 
-	"github.com/opencord/voltha-protos/v5/go/voltha"
-
 	fu "github.com/opencord/voltha-lib-go/v7/pkg/flows"
 	"github.com/opencord/voltha-lib-go/v7/pkg/log"
 	rsrcMgr "github.com/opencord/voltha-openolt-adapter/internal/pkg/resourcemanager"
@@ -74,12 +72,12 @@
 		ProfileType: "pt1", NumGemPorts: 1, Version: 1,
 		InstanceControl: &tp_pb.InstanceControl{Onu: "1", Uni: "1", MaxGemPayloadSize: "1"},
 	}
-	tprofile.UsScheduler = &openoltpb2.SchedulerAttributes{}
+	tprofile.UsScheduler = &tp_pb.SchedulerAttributes{}
 	tprofile.UsScheduler.Direction = tp_pb.Direction_UPSTREAM
 	tprofile.UsScheduler.QSchedPolicy = tp_pb.SchedulingPolicy_WRR
 
 	tprofile2 := tprofile
-	tprofile2.DsScheduler = &openoltpb2.SchedulerAttributes{}
+	tprofile2.DsScheduler = &tp_pb.SchedulerAttributes{}
 	tprofile2.DsScheduler.Direction = tp_pb.Direction_DOWNSTREAM
 	tprofile2.DsScheduler.QSchedPolicy = tp_pb.SchedulingPolicy_WRR
 
@@ -108,11 +106,11 @@
 		{"CreateSchedulerQueues-6", schedQueue{tp_pb.Direction_DOWNSTREAM, 1, 2, 2, 65, 2, tprofile2, 2, createFlowMetadata(tprofile2, 3, Downstream)}, true},
 
 		//Negative testcases
-		{"CreateSchedulerQueues-7", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 1, &voltha.FlowMetadata{}}, false},
-		{"CreateSchedulerQueues-8", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 0, &voltha.FlowMetadata{}}, true},
-		{"CreateSchedulerQueues-9", schedQueue{tp_pb.Direction_DOWNSTREAM, 0, 1, 1, 65, 1, tprofile2, 1, &voltha.FlowMetadata{}}, false},
-		{"CreateSchedulerQueues-10", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 2, &voltha.FlowMetadata{}}, true},
-		{"CreateSchedulerQueues-11", schedQueue{tp_pb.Direction_DOWNSTREAM, 0, 1, 1, 65, 1, tprofile2, 2, &voltha.FlowMetadata{}}, true},
+		{"CreateSchedulerQueues-7", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 1, &ofp.FlowMetadata{}}, false},
+		{"CreateSchedulerQueues-8", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 0, &ofp.FlowMetadata{}}, true},
+		{"CreateSchedulerQueues-9", schedQueue{tp_pb.Direction_DOWNSTREAM, 0, 1, 1, 65, 1, tprofile2, 1, &ofp.FlowMetadata{}}, false},
+		{"CreateSchedulerQueues-10", schedQueue{tp_pb.Direction_UPSTREAM, 0, 1, 1, 64, 1, tprofile, 2, &ofp.FlowMetadata{}}, true},
+		{"CreateSchedulerQueues-11", schedQueue{tp_pb.Direction_DOWNSTREAM, 0, 1, 1, 65, 1, tprofile2, 2, &ofp.FlowMetadata{}}, true},
 		{"CreateSchedulerQueues-12", schedQueue{tp_pb.Direction_DOWNSTREAM, 0, 1, 1, 65, 1, tprofile2, 2, nil}, true},
 	}
 	ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
@@ -126,8 +124,8 @@
 	}
 }
 
-func createFlowMetadata(techProfile *tp_pb.TechProfileInstance, tcontType int, direction string) *voltha.FlowMetadata {
-	var additionalBw openoltpb2.AdditionalBW
+func createFlowMetadata(techProfile *tp_pb.TechProfileInstance, tcontType int, direction string) *ofp.FlowMetadata {
+	var additionalBw tp_pb.AdditionalBW
 	bands := make([]*ofp.OfpMeterBandHeader, 0)
 	switch tcontType {
 	case 1:
@@ -166,7 +164,7 @@
 	}
 
 	ofpMeterConfig := &ofp.OfpMeterConfig{Flags: 1, MeterId: 1, Bands: bands}
-	return &voltha.FlowMetadata{
+	return &ofp.FlowMetadata{
 		Meters: []*ofp.OfpMeterConfig{ofpMeterConfig}}
 }
 
@@ -175,13 +173,13 @@
 		ProfileType: "pt1", NumGemPorts: 1, Version: 1,
 		InstanceControl: &tp_pb.InstanceControl{Onu: "1", Uni: "1", MaxGemPayloadSize: "1"},
 	}
-	tprofile.UsScheduler = &openoltpb2.SchedulerAttributes{}
+	tprofile.UsScheduler = &tp_pb.SchedulerAttributes{}
 	tprofile.UsScheduler.Direction = tp_pb.Direction_UPSTREAM
 	tprofile.UsScheduler.AdditionalBw = tp_pb.AdditionalBW_AdditionalBW_None
 	tprofile.UsScheduler.QSchedPolicy = tp_pb.SchedulingPolicy_WRR
 
 	tprofile2 := tprofile
-	tprofile2.DsScheduler = &openoltpb2.SchedulerAttributes{}
+	tprofile2.DsScheduler = &tp_pb.SchedulerAttributes{}
 	tprofile2.DsScheduler.Direction = tp_pb.Direction_DOWNSTREAM
 	tprofile2.DsScheduler.AdditionalBw = tp_pb.AdditionalBW_AdditionalBW_None
 	tprofile2.DsScheduler.QSchedPolicy = tp_pb.SchedulingPolicy_WRR
@@ -215,7 +213,7 @@
 	bands[0] = &ofp.OfpMeterBandHeader{Type: ofp.OfpMeterBandType_OFPMBT_DROP, Rate: 1000, BurstSize: 5000, Data: &ofp.OfpMeterBandHeader_Drop{}}
 	bands[1] = &ofp.OfpMeterBandHeader{Type: ofp.OfpMeterBandType_OFPMBT_DROP, Rate: 2000, BurstSize: 5000, Data: &ofp.OfpMeterBandHeader_Drop{}}
 	ofpMeterConfig := &ofp.OfpMeterConfig{Flags: 1, MeterId: 1, Bands: bands}
-	flowmetadata := &voltha.FlowMetadata{
+	flowmetadata := &ofp.FlowMetadata{
 		Meters: []*ofp.OfpMeterConfig{ofpMeterConfig},
 	}
 	type args struct {
@@ -227,7 +225,7 @@
 		TpID         uint32
 		UsMeterID    uint32
 		DsMeterID    uint32
-		flowMetadata *voltha.FlowMetadata
+		flowMetadata *ofp.FlowMetadata
 	}
 	tests := []struct {
 		name string
@@ -579,12 +577,12 @@
 	fmt.Println(ofpstats6, ofpstats9, ofpstats10)
 
 	ofpMeterConfig := &ofp.OfpMeterConfig{Flags: 1, MeterId: 1}
-	flowMetadata := &voltha.FlowMetadata{
+	flowMetadata := &ofp.FlowMetadata{
 		Meters: []*ofp.OfpMeterConfig{ofpMeterConfig},
 	}
 	type args struct {
 		flow         *ofp.OfpFlowStats
-		flowMetadata *voltha.FlowMetadata
+		flowMetadata *ofp.FlowMetadata
 	}
 	tests := []struct {
 		name string
@@ -1066,8 +1064,8 @@
 			Onu: "1",
 			Uni: "16",
 		},
-		UsScheduler: &openoltpb2.SchedulerAttributes{},
-		DsScheduler: &openoltpb2.SchedulerAttributes{},
+		UsScheduler: &tp_pb.SchedulerAttributes{},
+		DsScheduler: &tp_pb.SchedulerAttributes{},
 	}
 	TpInst.UsScheduler.Priority = 1
 	TpInst.UsScheduler.Direction = tp_pb.Direction_UPSTREAM
@@ -1245,7 +1243,7 @@
 	}
 	ofpStats, _ := fu.MkFlowStat(multicastFlowArgs)
 	fmt.Println(ofpStats.Id)
-	err = flowMgr[0].AddFlow(ctx, ofpStats, &voltha.FlowMetadata{})
+	err = flowMgr[0].AddFlow(ctx, ofpStats, &ofp.FlowMetadata{})
 	if err != nil {
 		t.Error("Multicast flow-add failed", err)
 		return
@@ -1289,23 +1287,23 @@
 	kwTable0Meter1["meter_id"] = 1
 	kwTable0Meter1["write_metadata"] = 0x4000000000 // Tech-Profile-ID 64
 
-	flowMetadata1 := voltha.FlowMetadata{Meters: []*voltha.OfpMeterConfig{
+	flowMetadata1 := ofp.FlowMetadata{Meters: []*ofp.OfpMeterConfig{
 		{
 			Flags:   5,
 			MeterId: 1,
-			Bands: []*voltha.OfpMeterBandHeader{
+			Bands: []*ofp.OfpMeterBandHeader{
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      ofp.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      16000,
 					BurstSize: 0,
 				},
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      ofp.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      32000,
 					BurstSize: 30,
 				},
 				{
-					Type:      voltha.OfpMeterBandType_OFPMBT_DROP,
+					Type:      ofp.OfpMeterBandType_OFPMBT_DROP,
 					Rate:      64000,
 					BurstSize: 30,
 				},
@@ -1489,7 +1487,7 @@
 		ctx          context.Context
 		flow         *ofp.OfpFlowStats
 		addFlow      bool
-		flowMetadata *voltha.FlowMetadata
+		flowMetadata *ofp.FlowMetadata
 	}
 	tests := []struct {
 		name        string
diff --git a/internal/pkg/core/openolt_test.go b/internal/pkg/core/openolt_test.go
index c9486b6..c549d44 100644
--- a/internal/pkg/core/openolt_test.go
+++ b/internal/pkg/core/openolt_test.go
@@ -36,7 +36,7 @@
 	"github.com/opencord/voltha-lib-go/v7/pkg/log"
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/config"
 	"github.com/opencord/voltha-openolt-adapter/internal/pkg/olterrors"
-	ic "github.com/opencord/voltha-protos/v5/go/inter_container"
+	ca "github.com/opencord/voltha-protos/v5/go/core_adapter"
 	"github.com/opencord/voltha-protos/v5/go/openflow_13"
 	ofp "github.com/opencord/voltha-protos/v5/go/openflow_13"
 	"github.com/opencord/voltha-protos/v5/go/voltha"
@@ -116,7 +116,7 @@
 
 func TestOpenOLT_ActivateImageUpdate(t *testing.T) {
 	type args struct {
-		request *ic.ImageDownloadMessage
+		request *ca.ImageDownloadMessage
 	}
 	tests := []struct {
 		name    string
@@ -177,7 +177,7 @@
 
 func TestOpenOLT_CancelImageDownload(t *testing.T) {
 	type args struct {
-		request *ic.ImageDownloadMessage
+		request *ca.ImageDownloadMessage
 	}
 	tests := []struct {
 		name    string
@@ -253,7 +253,7 @@
 
 func TestOpenOLT_DownloadImage(t *testing.T) {
 	type args struct {
-		request *ic.ImageDownloadMessage
+		request *ca.ImageDownloadMessage
 	}
 	tests := []struct {
 		name    string
@@ -282,7 +282,7 @@
 
 func TestOpenOLT_GetImageDownloadStatus(t *testing.T) {
 	type args struct {
-		request *ic.ImageDownloadMessage
+		request *ca.ImageDownloadMessage
 	}
 	tests := []struct {
 		name    string
@@ -318,10 +318,10 @@
 		name    string
 		fields  *fields
 		args    args
-		want    *ic.SwitchCapability
+		want    *ca.SwitchCapability
 		wantErr error
 	}{
-		{"get_ofp_device_info-1", mockOlt(), args{mockDevice()}, &ic.SwitchCapability{
+		{"get_ofp_device_info-1", mockOlt(), args{mockDevice()}, &ca.SwitchCapability{
 			Desc: &openflow_13.OfpDesc{
 				MfrDesc: "VOLTHA Project",
 				HwDesc:  "open_pon",
@@ -348,63 +348,6 @@
 	}
 }
 
-// func TestOpenOLT_Process_inter_adapter_message(t *testing.T) {
-// 	type args struct {
-// 		msg *ic.InterAdapterMessage
-// 	}
-// 	var message1 = args{
-// 		msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
-// 				Id:            "olt",
-// 				ProxyDeviceId: "",
-// 				ToDeviceId:    "onu1",
-// 			},
-// 		},
-// 	}
-// 	var message2 = args{
-// 		msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
-// 				Id:            "olt",
-// 				ProxyDeviceId: "olt",
-// 				ToDeviceId:    "olt",
-// 				Type:          ic.InterAdapterMessageType_OMCI_REQUEST,
-// 			},
-// 		},
-// 	}
-// 	var message3 = args{
-// 		msg: &ic.InterAdapterMessage{
-// 			Header: &ic.InterAdapterHeader{
-// 				Id:            "olt",
-// 				ProxyDeviceId: "olt",
-// 				ToDeviceId:    "olt",
-// 				Type:          ic.InterAdapterMessageType_FLOW_REQUEST,
-// 			},
-// 		},
-// 	}
-// 	tests := []struct {
-// 		name        string
-// 		fields      *fields
-// 		args        args
-// 		wantErrType reflect.Type
-// 	}{
-// 		{"process_inter_adaptor_messgae-1", mockOlt(), message1,
-// 			reflect.TypeOf(&olterrors.ErrNotFound{})},
-// 		{"process_inter_adaptor_messgae-2", mockOlt(), message2,
-// 			reflect.TypeOf(&olterrors.ErrAdapter{})},
-// 		{"process_inter_adaptor_messgae-3", mockOlt(), message3,
-// 			reflect.TypeOf(&olterrors.ErrInvalidValue{})},
-// 	}
-// 	for _, tt := range tests {
-// 		t.Run(tt.name, func(t *testing.T) {
-// 			oo := testOltObject(tt.fields)
-// 			if err := oo.Process_inter_adapter_message(context.Background(), tt.args.msg); reflect.TypeOf(err) != tt.wantErrType {
-// 				t.Errorf("Process_inter_adapter_message() error = %v, wantErr %v",
-// 					reflect.TypeOf(err), tt.wantErrType)
-// 			}
-// 		})
-// 	}
-// }
-
 func TestOpenOLT_RebootDevice(t *testing.T) {
 	type args struct {
 		device *voltha.Device
@@ -456,7 +399,7 @@
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			oo := testOltObject(tt.fields)
-			if _, err := oo.SendPacketOut(context.Background(), &ic.PacketOut{
+			if _, err := oo.SendPacketOut(context.Background(), &ca.PacketOut{
 				DeviceId:     tt.args.deviceID,
 				EgressPortNo: uint32(tt.args.egressPortNo),
 				Packet:       tt.args.packet}); !reflect.DeepEqual(err, tt.wantErr) {
@@ -517,7 +460,7 @@
 
 func TestOpenOLT_RevertImageUpdate(t *testing.T) {
 	type args struct {
-		request *ic.ImageDownloadMessage
+		request *ca.ImageDownloadMessage
 	}
 	tests := []struct {
 		name    string
@@ -666,9 +609,9 @@
 func TestOpenOLT_UpdateFlowsBulk(t *testing.T) {
 	type args struct {
 		device       *voltha.Device
-		flows        *voltha.Flows
-		groups       *voltha.FlowGroups
-		flowMetadata *voltha.FlowMetadata
+		flows        *ofp.Flows
+		groups       *ofp.FlowGroups
+		flowMetadata *ofp.FlowMetadata
 	}
 	tests := []struct {
 		name    string
@@ -683,7 +626,7 @@
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			oo := testOltObject(tt.fields)
-			if _, err := oo.UpdateFlowsBulk(context.Background(), &ic.BulkFlows{
+			if _, err := oo.UpdateFlowsBulk(context.Background(), &ca.BulkFlows{
 				Device:       tt.args.device,
 				Flows:        tt.args.flows,
 				Groups:       tt.args.groups,
@@ -700,7 +643,7 @@
 		device       *voltha.Device
 		flows        *openflow_13.FlowChanges
 		groups       *openflow_13.FlowGroupChanges
-		flowMetadata *voltha.FlowMetadata
+		flowMetadata *ofp.FlowMetadata
 	}
 
 	tests := []struct {
@@ -716,7 +659,7 @@
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			oo := testOltObject(tt.fields)
-			if _, err := oo.UpdateFlowsIncrementally(context.Background(), &ic.IncrementalFlows{
+			if _, err := oo.UpdateFlowsIncrementally(context.Background(), &ca.IncrementalFlows{
 				Device:       tt.args.device,
 				Flows:        tt.args.flows,
 				Groups:       tt.args.groups,
@@ -744,7 +687,7 @@
 	for _, tt := range tests {
 		t.Run(tt.name, func(t *testing.T) {
 			oo := testOltObject(tt.fields)
-			if _, err := oo.UpdatePmConfig(context.Background(), &ic.PmConfigsInfo{DeviceId: tt.args.device.Id, PmConfigs: tt.args.pmConfigs}); !reflect.DeepEqual(err, tt.wantErr) {
+			if _, err := oo.UpdatePmConfig(context.Background(), &ca.PmConfigsInfo{DeviceId: tt.args.device.Id, PmConfigs: tt.args.pmConfigs}); !reflect.DeepEqual(err, tt.wantErr) {
 				t.Errorf("Update_pm_config() error = %v, wantErr %v", err, tt.wantErr)
 			}