[VOL-5475] upgrade go to 1.24.5 and golangci-lint version to 2.2.2

Signed-off-by: mgouda <madhumati.gouda@radisys.com>
Change-Id: I0d7ded6f836ae4a579d0167b491f01e10ada4b13
diff --git a/internal/pkg/almgr/alarm_manager.go b/internal/pkg/almgr/alarm_manager.go
index 13a3bef..f0335a9 100755
--- a/internal/pkg/almgr/alarm_manager.go
+++ b/internal/pkg/almgr/alarm_manager.go
@@ -700,17 +700,18 @@
 
 func (am *OnuAlarmManager) getIntfIDAlarm(ctx context.Context, classID me.ClassID, instanceID uint16) *uint32 {
 	var intfID *uint32
-	if classID == circuitPackClassID || classID == physicalPathTerminationPointEthernetUniClassID {
+	switch classID {
+	case circuitPackClassID, physicalPathTerminationPointEthernetUniClassID:
 		for _, uniPort := range *am.pDeviceHandler.GetUniEntityMap() {
 			if uniPort.EntityID == instanceID {
 				intfID = &uniPort.PortNo
 				return intfID
 			}
 		}
-	} else if classID == aniGClassID || classID == onuGClassID {
+	case aniGClassID, onuGClassID:
 		intfID = am.pDeviceHandler.GetPonPortNumber()
 		return intfID
-	} else {
+	default:
 		logger.Warnw(ctx, "me-not-supported", log.Fields{"device-id": am.deviceID, "class-id": classID, "instance-id": instanceID})
 	}
 	return nil
diff --git a/internal/pkg/avcfg/omci_vlan_config.go b/internal/pkg/avcfg/omci_vlan_config.go
index 9b0b8b9..1afc480 100755
--- a/internal/pkg/avcfg/omci_vlan_config.go
+++ b/internal/pkg/avcfg/omci_vlan_config.go
@@ -914,8 +914,8 @@
 func (oFsm *UniVlanConfigFsm) removeRuleComplete(ctx context.Context,
 	aUniFlowParams cmn.UniVlanFlowParams, aCookie uint64, respChan *chan error) bool {
 	pConfigVlanStateBaseFsm := oFsm.PAdaptFsm.PFsm
-	var cancelPendingConfig bool = false
-	var loRemoveParams uniRemoveVlanFlowParams = uniRemoveVlanFlowParams{}
+	var cancelPendingConfig = false
+	var loRemoveParams = uniRemoveVlanFlowParams{}
 	logger.Debugw(ctx, "UniVlanConfigFsm flow removal - full flow removal", log.Fields{
 		"device-id": oFsm.deviceID})
 	//rwCore flow recovery may be the reason for this delete, in which case the flowToBeDeleted may be the same
@@ -1019,15 +1019,16 @@
 	for flow, storedUniFlowParams := range oFsm.uniVlanFlowParamsSlice {
 		// if UniFlowParams exists, cookieSlice should always have at least one element
 		cookieSliceLen := len(storedUniFlowParams.CookieSlice)
-		if cookieSliceLen == 1 {
+		switch cookieSliceLen {
+		case 1:
 			if storedUniFlowParams.CookieSlice[0] == aCookie {
 				cookieFound = true
 			}
-		} else if cookieSliceLen == 0 {
+		case 0:
 			errStr := "UniVlanConfigFsm unexpected cookie slice length 0  - removal in uniVlanFlowParamsSlice aborted"
 			logger.Errorw(ctx, errStr, log.Fields{"device-id": oFsm.deviceID})
 			return errors.New(errStr)
-		} else {
+		default:
 			errStr := "UniVlanConfigFsm flow removal unexpected cookie slice length, but rule removal continued"
 			logger.Errorw(ctx, errStr, log.Fields{
 				"cookieSliceLen": len(oFsm.uniVlanFlowParamsSlice), "device-id": oFsm.deviceID})
@@ -1722,10 +1723,11 @@
 			}
 
 			oFsm.mutexFlowParams.Lock()
-			if loVlanEntryClear == 1 {
+			switch loVlanEntryClear {
+			case 1:
 				oFsm.vlanFilterList[0] = 0 //first entry is the only that can contain the previous only-one element
 				oFsm.numVlanFilterEntries = 0
-			} else if loVlanEntryClear == 2 {
+			case 2:
 				// new VlanFilterList should be one entry smaller now - copy from last configured entry
 				// this loop now includes the 0 element on previous last valid entry
 				for i := uint8(0); i <= oFsm.numVlanFilterEntries; i++ {
diff --git a/internal/pkg/common/omci_cc.go b/internal/pkg/common/omci_cc.go
index 01c6fbf..89d1afb 100755
--- a/internal/pkg/common/omci_cc.go
+++ b/internal/pkg/common/omci_cc.go
@@ -30,7 +30,6 @@
 
 	"github.com/google/gopacket"
 	// TODO!!! Some references could be resolved auto, but some need specific context ....
-	gp "github.com/google/gopacket"
 
 	"github.com/opencord/omci-lib-go/v2"
 	me "github.com/opencord/omci-lib-go/v2/generated"
@@ -78,7 +77,7 @@
 // CallbackPairEntry to be used for OMCI send/receive correlation
 type CallbackPairEntry struct {
 	CbRespChannel chan Message
-	CbFunction    func(context.Context, *omci.OMCI, *gp.Packet, chan Message) error
+	CbFunction    func(context.Context, *omci.OMCI, *gopacket.Packet, chan Message) error
 	FramePrint    bool //true for printing
 }
 
@@ -231,7 +230,7 @@
 }
 
 // Rx handler for omci messages
-func (oo *OmciCC) receiveOnuMessage(ctx context.Context, omciMsg *omci.OMCI, packet *gp.Packet) error {
+func (oo *OmciCC) receiveOnuMessage(ctx context.Context, omciMsg *omci.OMCI, packet *gopacket.Packet) error {
 	logger.Debugw(ctx, "rx-onu-autonomous-message", log.Fields{"omciMsgType": omciMsg.MessageType,
 		"payload": hex.EncodeToString(omciMsg.Payload)})
 	switch omciMsg.MessageType {
@@ -841,7 +840,7 @@
 */
 
 // supply a response handler for omci response messages to be transferred to the requested FSM
-func (oo *OmciCC) receiveOmciResponse(ctx context.Context, omciMsg *omci.OMCI, packet *gp.Packet, respChan chan Message) error {
+func (oo *OmciCC) receiveOmciResponse(ctx context.Context, omciMsg *omci.OMCI, packet *gopacket.Packet, respChan chan Message) error {
 
 	logger.Debugw(ctx, "omci-message-response - transfer on omciRespChannel", log.Fields{"omciMsgType": omciMsg.MessageType,
 		"transCorrId": strconv.FormatInt(int64(omciMsg.TransactionID), 16), "device-id": oo.deviceID})
@@ -1581,7 +1580,7 @@
 		EntityID:   entityID,
 		Attributes: requestedAttributes,
 	}
-	var messageSet omci.DeviceIdent = omci.BaselineIdent
+	var messageSet = omci.BaselineIdent
 	if isExtendedOmci {
 		messageSet = omci.ExtendedIdent
 	}
@@ -4585,7 +4584,7 @@
 	//TODO!!!: don't know by now on how to generate the possibly needed AR (or enforce it to 0) with current omci-lib
 	//    by now just try to send it as defined by omci-lib
 	msgType := omci.DownloadSectionRequestType
-	var timeout int = 0 //default value for no response expected
+	var timeout = 0 //default value for no response expected
 	if aAckRequest > 0 {
 		msgType = omci.DownloadSectionRequestWithResponseType
 		timeout = aTimeout
@@ -4852,7 +4851,7 @@
 }
 
 // nolint: gocyclo
-func (oo *OmciCC) isSuccessfulResponseWithMibDataSync(ctx context.Context, omciMsg *omci.OMCI, packet *gp.Packet) (bool, error) {
+func (oo *OmciCC) isSuccessfulResponseWithMibDataSync(ctx context.Context, omciMsg *omci.OMCI, packet *gopacket.Packet) (bool, error) {
 
 	nextLayer, err := omci.MsgTypeToNextLayer(omciMsg.MessageType, false)
 	if err != nil {
@@ -4863,13 +4862,14 @@
 	if msgLayer != nil {
 		// Note: Due to relaxed decoding, you may now still have a decoding error attached to the layers
 		if failure := (*packet).ErrorLayer(); failure != nil {
-			if nextLayer == omci.LayerTypeMibUploadNextResponse {
+			switch nextLayer {
+			case omci.LayerTypeMibUploadNextResponse:
 				// In the case of MibUploadNextResponse, we let the packet pass so that later processing
 				// can examine for UnkonwnMEs and UnknownAttributes
 				logger.Debug(ctx, "omci-message: MibUploadNextResponse packet with ErrorLayer - let it pass",
 					log.Fields{"device-id": oo.deviceID, "error": failure.Error()})
 				return false, nil
-			} else if nextLayer == omci.LayerTypeGetResponse {
+			case omci.LayerTypeGetResponse:
 				if resp := msgLayer.(*omci.GetResponse); resp != nil {
 					if resp.NextLayerType() == omci.LayerTypeUnknownAttributes {
 						unknownAttrLayer := (*packet).Layer(omci.LayerTypeUnknownAttributes)
diff --git a/internal/pkg/core/device_handler.go b/internal/pkg/core/device_handler.go
index aeeef16..337a97b 100755
--- a/internal/pkg/core/device_handler.go
+++ b/internal/pkg/core/device_handler.go
@@ -45,13 +45,10 @@
 	"github.com/opencord/voltha-openonu-adapter-go/internal/pkg/swupg"
 	uniprt "github.com/opencord/voltha-openonu-adapter-go/internal/pkg/uniprt"
 	"github.com/opencord/voltha-protos/v5/go/common"
-	vc "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"
-	"github.com/opencord/voltha-protos/v5/go/inter_adapter"
 	ia "github.com/opencord/voltha-protos/v5/go/inter_adapter"
 	of "github.com/opencord/voltha-protos/v5/go/openflow_13"
-	"github.com/opencord/voltha-protos/v5/go/openolt"
 	oop "github.com/opencord/voltha-protos/v5/go/openolt"
 	"github.com/opencord/voltha-protos/v5/go/tech_profile"
 	"github.com/opencord/voltha-protos/v5/go/voltha"
@@ -3157,7 +3154,7 @@
 		// only if this port is validated for operState transfer
 		if (1<<uniPort.UniID)&dh.pOpenOnuAc.config.UniPortMask == (1 << uniPort.UniID) {
 			logger.Infow(ctx, "OnuUniPort-forced-OperState-ACTIVE", log.Fields{"for PortNo": uniNo, "device-id": dh.DeviceID})
-			uniPort.SetOperState(vc.OperStatus_ACTIVE)
+			uniPort.SetOperState(common.OperStatus_ACTIVE)
 			if !dh.IsReconciling() {
 				//maybe also use getter functions on uniPort - perhaps later ...
 				go func(port *cmn.OnuUniPort) {
@@ -3186,7 +3183,7 @@
 
 		if (1<<uniPort.UniID)&dh.pOpenOnuAc.config.UniPortMask == (1 << uniPort.UniID) {
 			logger.Infow(ctx, "OnuUniPort-forced-OperState-UNKNOWN", log.Fields{"for PortNo": uniNo, "device-id": dh.DeviceID})
-			uniPort.SetOperState(vc.OperStatus_UNKNOWN)
+			uniPort.SetOperState(common.OperStatus_UNKNOWN)
 			if !dh.IsReconciling() {
 				//maybe also use getter functions on uniPort - perhaps later ...
 				go func(port *cmn.OnuUniPort) {
@@ -3209,7 +3206,7 @@
 
 // ONU_Active/Inactive announcement on system KAFKA bus
 // tried to re-use procedure of oltUpDownIndication from openolt_eventmgr.go with used values from Py code
-func (dh *deviceHandler) sendOnuOperStateEvent(ctx context.Context, aOperState vc.OperStatus_Types, aDeviceID string, raisedTs int64) {
+func (dh *deviceHandler) sendOnuOperStateEvent(ctx context.Context, aOperState common.OperStatus_Types, aDeviceID string, raisedTs int64) {
 	var de voltha.DeviceEvent
 	eventContext := make(map[string]string)
 	//Populating event context
@@ -3544,8 +3541,8 @@
 			{
 				*loMatchVlan = uint16(field.GetVlanVid())
 				loMatchVlanMask := uint16(field.GetVlanVidMask())
-				if !(*loMatchVlan == uint16(of.OfpVlanId_OFPVID_PRESENT) &&
-					loMatchVlanMask == uint16(of.OfpVlanId_OFPVID_PRESENT)) {
+				if *loMatchVlan != uint16(of.OfpVlanId_OFPVID_PRESENT) ||
+					loMatchVlanMask != uint16(of.OfpVlanId_OFPVID_PRESENT) {
 					*loMatchVlan = *loMatchVlan & 0xFFF // not transparent: copy only ID bits
 				}
 				logger.Debugw(ctx, "flow field type", log.Fields{"device-id": dh.DeviceID,
@@ -3640,8 +3637,8 @@
 // addFlowItemToUniPort parses the actual flow item to add it to the UniPort
 func (dh *deviceHandler) addFlowItemToUniPort(ctx context.Context, apFlowItem *of.OfpFlowStats, apUniPort *cmn.OnuUniPort,
 	apFlowMetaData *of.FlowMetadata, respChan *chan error) {
-	var loSetVlan uint16 = uint16(of.OfpVlanId_OFPVID_NONE)      //noValidEntry
-	var loMatchVlan uint16 = uint16(of.OfpVlanId_OFPVID_PRESENT) //reserved VLANID entry
+	var loSetVlan = uint16(of.OfpVlanId_OFPVID_NONE)      //noValidEntry
+	var loMatchVlan = uint16(of.OfpVlanId_OFPVID_PRESENT) //reserved VLANID entry
 	var loSetPcp uint8
 	var loMatchPcp uint8 = 8 // could the const 'cPrioDoNotFilter' be used from omci_vlan_config.go ?
 	var loIPProto uint32
@@ -4541,7 +4538,8 @@
 							log.Fields{"device-id": dh.DeviceID})
 					} else {
 						onuDevEntry.MutexPersOnuConfig.RLock()
-						if onuDevEntry.SOnuPersistentData.PersOperState == "up" {
+						switch onuDevEntry.SOnuPersistentData.PersOperState {
+						case "up":
 							connectStatus = voltha.ConnectStatus_REACHABLE
 							if !onuDevEntry.SOnuPersistentData.PersUniDisableDone {
 								if onuDevEntry.SOnuPersistentData.PersUniUnlockDone {
@@ -4550,9 +4548,7 @@
 									operState = voltha.OperStatus_ACTIVATING
 								}
 							}
-						} else if onuDevEntry.SOnuPersistentData.PersOperState == "down" ||
-							onuDevEntry.SOnuPersistentData.PersOperState == "unknown" ||
-							onuDevEntry.SOnuPersistentData.PersOperState == "" {
+						case "down", "unknown", "":
 							operState = voltha.OperStatus_DISCOVERED
 						}
 						onuDevEntry.MutexPersOnuConfig.RUnlock()
@@ -4613,7 +4609,7 @@
 				logger.Errorw(ctx, "No valid OnuDevice", log.Fields{"device-id": dh.DeviceID})
 			} else {
 				onuDevEntry.MutexReconciledTpInstances.Lock()
-				onuDevEntry.ReconciledTpInstances = make(map[uint8]map[uint8]inter_adapter.TechProfileDownloadMessage)
+				onuDevEntry.ReconciledTpInstances = make(map[uint8]map[uint8]ia.TechProfileDownloadMessage)
 				onuDevEntry.MutexReconciledTpInstances.Unlock()
 			}
 		}()
@@ -4745,7 +4741,7 @@
 	subCtx, cancel := context.WithTimeout(log.WithSpanFromContext(context.Background(), ctx), dh.config.RPCTimeout)
 	defer cancel()
 	logger.Debugw(subCtx, "get-device-from-core", log.Fields{"device-id": deviceID})
-	return cClient.GetDevice(subCtx, &vc.ID{Id: deviceID})
+	return cClient.GetDevice(subCtx, &common.ID{Id: deviceID})
 }
 
 func (dh *deviceHandler) updateDeviceStateInCore(ctx context.Context, deviceStateFilter *ca.DeviceStateFilter) error {
@@ -5101,7 +5097,7 @@
 }
 
 // GetOnuIndication - TODO: add comment
-func (dh *deviceHandler) GetOnuIndication() *openolt.OnuIndication {
+func (dh *deviceHandler) GetOnuIndication() *oop.OnuIndication {
 	return dh.pOnuIndication
 }
 
diff --git a/internal/pkg/core/openonu.go b/internal/pkg/core/openonu.go
index 3135a94..0f6a887 100755
--- a/internal/pkg/core/openonu.go
+++ b/internal/pkg/core/openonu.go
@@ -929,6 +929,7 @@
 
 	onuIndication := onuInd.OnuIndication
 	onuOperstate := onuIndication.GetOperState()
+	//nolint:staticcheck
 	waitForDhInstPresent := false
 	if onuOperstate == "up" {
 		//Race condition (relevant in BBSIM-environment only): Due to unsynchronized processing of olt-adapter and rw_core,
@@ -943,17 +944,18 @@
 			"AdminState": onuIndication.GetAdminState(), "OperState": onuOperstate,
 			"SNR": onuIndication.GetSerialNumber()})
 
-		if onuOperstate == "up" {
+		switch onuOperstate {
+		case "up":
 			if err := handler.createInterface(ctx, onuIndication); err != nil {
 				return nil, err
 			}
 			return &empty.Empty{}, nil
-		} else if (onuOperstate == "down") || (onuOperstate == "unreachable") {
+		case "down", "unreachable":
 			if err := handler.UpdateInterface(ctx); err != nil {
 				return nil, err
 			}
 			return &empty.Empty{}, nil
-		} else {
+		default:
 			logger.Errorw(ctx, "unknown-onu-ind-request operState", log.Fields{"OnuId": onuIndication.GetOnuId()})
 			return nil, fmt.Errorf("invalidOperState: %s, %s", onuOperstate, onuInd.DeviceId)
 		}
diff --git a/internal/pkg/mib/mib_sync.go b/internal/pkg/mib/mib_sync.go
index 13f4047..9efc65d 100755
--- a/internal/pkg/mib/mib_sync.go
+++ b/internal/pkg/mib/mib_sync.go
@@ -751,9 +751,9 @@
 		if meName == devdb.CUnknownItuG988ManagedEntity || meName == devdb.CUnknownVendorSpecificManagedEntity {
 			logger.Debugw(ctx, "MibUploadNextResponse contains unknown ME", log.Fields{"device-id": oo.deviceID,
 				"Me-Name": devdb.UnknownMeOrAttribName(meName), "Me-ClassId": meClassID, "Me-InstId": meEntityID,
-				"unknown mask": msgObj.ReportedME.GetAttributeMask(), "unknown attributes": msgObj.BaseLayer.Payload})
+				"unknown mask": msgObj.ReportedME.GetAttributeMask(), "unknown attributes": msgObj.Payload})
 			oo.pOnuDB.PutUnknownMeOrAttrib(ctx, devdb.UnknownMeOrAttribName(meName), meClassID, meEntityID,
-				msgObj.ReportedME.GetAttributeMask(), msgObj.BaseLayer.Payload[devdb.CStartUnknownMeAttribsInBaseLayerPayload:])
+				msgObj.ReportedME.GetAttributeMask(), msgObj.Payload[devdb.CStartUnknownMeAttribsInBaseLayerPayload:])
 		} else {
 			//with relaxed decoding set in the OMCI-LIB we have the chance to detect if there are some unknown attributes appended which we cannot decode
 			if unknownAttrLayer := (*msg.OmciPacket).Layer(omci.LayerTypeUnknownAttributes); unknownAttrLayer != nil {
@@ -1159,7 +1159,8 @@
 
 func (oo *OnuDeviceEntry) handleOmciGetResponseOnuG(ctx context.Context, meAttributes me.AttributeValueMap) error {
 	currentState := oo.PMibUploadFsm.PFsm.Current()
-	if currentState == UlStGettingVendorAndSerial {
+	switch currentState {
+	case UlStGettingVendorAndSerial:
 		if onuGVendorID, ok := meAttributes[me.OnuG_VendorId]; ok {
 			vendorID := cmn.TrimStringFromMeOctet(onuGVendorID)
 			if vendorID == "" {
@@ -1210,7 +1211,7 @@
 		// trigger retrieval of Version
 		_ = oo.PMibUploadFsm.PFsm.Event(UlEvGetVersion)
 		return nil
-	} else if currentState == UlStGettingVersion {
+	case UlStGettingVersion:
 		if onuGVersion, ok := meAttributes[me.OnuG_Version]; ok {
 			version := cmn.TrimStringFromMeOctet(onuGVersion)
 			if version == "" {
@@ -1237,7 +1238,7 @@
 		// trigger retrieval of EquipmentId and OMCC version
 		_ = oo.PMibUploadFsm.PFsm.Event(UlEvGetEquipIDAndOmcc)
 		return nil
-	} else {
+	default:
 		logger.Errorw(ctx, "MibSync FSM - wrong state OnuG response processing - handling of MibSyncChan stopped!",
 			log.Fields{"currentState": currentState, "device-id": oo.deviceID})
 		_ = oo.PMibUploadFsm.PFsm.Event(UlEvStop)
diff --git a/internal/pkg/mib/onu_device_entry.go b/internal/pkg/mib/onu_device_entry.go
index cbeb76d..65d223f 100755
--- a/internal/pkg/mib/onu_device_entry.go
+++ b/internal/pkg/mib/onu_device_entry.go
@@ -518,7 +518,8 @@
 	logger.Debugw(ctx, "relaying system-event", log.Fields{"device-id": oo.deviceID, "Event": devEvent})
 	// decouple the handler transfer from further processing here
 	// TODO!!! check if really no synch is required within the system e.g. to ensure following steps ..
-	if devEvent == cmn.MibDatabaseSync {
+	switch devEvent {
+	case cmn.MibDatabaseSync:
 		if oo.devState < cmn.MibDatabaseSync { //devState has not been synced yet
 			oo.devState = cmn.MibDatabaseSync
 			go oo.baseDeviceHandler.DeviceProcStatusUpdate(ctx, devEvent)
@@ -527,7 +528,7 @@
 			logger.Debugw(ctx, "mibinsync-event in some already synced state - ignored",
 				log.Fields{"device-id": oo.deviceID, "state": oo.devState})
 		}
-	} else if devEvent == cmn.MibDownloadDone {
+	case cmn.MibDownloadDone:
 		if oo.devState < cmn.MibDownloadDone { //devState has not been synced yet
 			oo.devState = cmn.MibDownloadDone
 			go oo.baseDeviceHandler.DeviceProcStatusUpdate(ctx, devEvent)
@@ -535,7 +536,7 @@
 			logger.Debugw(ctx, "mibdownloaddone-event was already seen - ignored",
 				log.Fields{"device-id": oo.deviceID, "state": oo.devState})
 		}
-	} else {
+	default:
 		logger.Warnw(ctx, "device-event not yet handled",
 			log.Fields{"device-id": oo.deviceID, "state": devEvent})
 	}
diff --git a/internal/pkg/omcitst/omci_self_test_handler.go b/internal/pkg/omcitst/omci_self_test_handler.go
index fd98f6b..14b70d5 100755
--- a/internal/pkg/omcitst/omci_self_test_handler.go
+++ b/internal/pkg/omcitst/omci_self_test_handler.go
@@ -26,7 +26,6 @@
 	"github.com/looplab/fsm"
 	"github.com/opencord/omci-lib-go/v2"
 	"github.com/opencord/omci-lib-go/v2/generated"
-	me "github.com/opencord/omci-lib-go/v2/generated"
 	"github.com/opencord/voltha-lib-go/v7/pkg/log"
 	cmn "github.com/opencord/voltha-openonu-adapter-go/internal/pkg/common"
 	"github.com/opencord/voltha-protos/v5/go/extension"
@@ -172,7 +171,7 @@
 func (selfTestCb *SelfTestControlBlock) getMeClassID(ctx context.Context, reqMsg extension.SingleGetValueRequest) (generated.ClassID, error) {
 	switch reqMsg.GetRequest().GetRequest().(type) {
 	case *extension.GetValueRequest_OnuOpticalInfo:
-		return me.AniGClassID, nil
+		return generated.AniGClassID, nil
 	default:
 		logger.Warnw(ctx, "unsupported me class id for self test", log.Fields{"device-id": selfTestCb.deviceID})
 		return 0, fmt.Errorf("unsupported me class id for self test %v", selfTestCb.deviceID)
@@ -264,7 +263,7 @@
 	var msgObj *omci.OpticalLineSupervisionTestResult
 	var msgOk bool
 	switch classID {
-	case me.AniGClassID:
+	case generated.AniGClassID:
 		msgObj, msgOk = msgLayer.(*omci.OpticalLineSupervisionTestResult)
 	default:
 		// We should not really land here
diff --git a/internal/pkg/omcitst/omci_test_request.go b/internal/pkg/omcitst/omci_test_request.go
index 2445855..cf8e005 100755
--- a/internal/pkg/omcitst/omci_test_request.go
+++ b/internal/pkg/omcitst/omci_test_request.go
@@ -26,7 +26,6 @@
 	"github.com/opencord/omci-lib-go/v2"
 	me "github.com/opencord/omci-lib-go/v2/generated"
 	"github.com/opencord/omci-lib-go/v2/meframe"
-	oframe "github.com/opencord/omci-lib-go/v2/meframe"
 	"github.com/opencord/voltha-lib-go/v7/pkg/log"
 	cmn "github.com/opencord/voltha-openonu-adapter-go/internal/pkg/common"
 )
@@ -86,7 +85,9 @@
 		logger.Debugw(ctx, "performOmciTest-start sending frame", log.Fields{"for device-id": oo.deviceID, "onu2gGet": hex.EncodeToString(onu2gGet)})
 		// send with default timeout and normal prio
 		// Note: No reference to fetch the OMCI timeout value from configuration, so hardcode it to 10s
-		go oo.pDevOmciCC.Send(ctx, onu2gGet, CTestRequestOmciTimeout, cmn.CDefaultRetries, false, omciRxCallbackPair)
+		go func() {
+			_ = oo.pDevOmciCC.Send(ctx, onu2gGet, CTestRequestOmciTimeout, cmn.CDefaultRetries, false, omciRxCallbackPair)
+		}()
 
 	} else {
 		logger.Errorw(ctx, "performOmciTest: Device does not exist", log.Fields{"for device-id": oo.deviceID})
@@ -106,11 +107,11 @@
 	}
 	meInstance, omciErr := me.NewOnu2G(meParams)
 	if omciErr.GetError() == nil {
-		var messageSet omci.DeviceIdent = omci.BaselineIdent
+		var messageSet = omci.BaselineIdent
 		if oo.extended {
 			messageSet = omci.ExtendedIdent
 		}
-		omciLayer, msgLayer, err := oframe.EncodeFrame(meInstance, omci.GetRequestType, oframe.TransactionID(tid),
+		omciLayer, msgLayer, err := meframe.EncodeFrame(meInstance, omci.GetRequestType, meframe.TransactionID(tid),
 			meframe.FrameFormat(messageSet))
 		if err != nil {
 			logger.Errorw(ctx, "Cannot encode ONU2-G instance for get", log.Fields{
diff --git a/internal/pkg/pmmgr/onu_metrics_manager.go b/internal/pkg/pmmgr/onu_metrics_manager.go
index 2736b65..e6eda1c 100755
--- a/internal/pkg/pmmgr/onu_metrics_manager.go
+++ b/internal/pkg/pmmgr/onu_metrics_manager.go
@@ -2152,6 +2152,7 @@
 // nolint: gocyclo
 func (mm *OnuMetricsManager) populateEthernetBridgeHistoryMetrics(ctx context.Context, classID me.ClassID, entityID uint16,
 	meAttributes me.AttributeValueMap, requestedAttributes me.AttributeValueMap, ethPMHistData map[string]float32, intervalEndTime *int) error {
+	//nolint:staticcheck
 	upstream := false
 	if classID == me.EthernetFramePerformanceMonitoringHistoryDataUpstreamClassID {
 		upstream = true
@@ -3278,12 +3279,13 @@
 		logger.Debugw(ctx, "received-extended-pm-me-response",
 			log.Fields{"device-id": mm.deviceID, "resp": resp, "create": create, "meClassID": meClassID, "instID": instID, "upstream": upstream})
 		// If the result is me.InstanceExists it means the entity was already created. It is ok handled that as success
-		if resp == me.Success || resp == me.InstanceExists {
+		switch resp {
+		case me.Success, me.InstanceExists:
 			return true, nil
-		} else if resp == me.UnknownEntity || resp == me.ParameterError ||
-			resp == me.ProcessingError || resp == me.NotSupported || resp == me.AttributeFailure {
+		case me.UnknownEntity, me.ParameterError,
+			me.ProcessingError, me.NotSupported, me.AttributeFailure:
 			return false, fmt.Errorf("not-supported-me--resp-code-%v", resp)
-		} else {
+		default:
 			logger.Warnw(ctx, "failed to create me", log.Fields{"device-id": mm.deviceID, "resp": resp, "class-id": meClassID, "instID": instID, "upstream": upstream})
 			return true, fmt.Errorf("error-while-creating-me--resp-code-%v", resp)
 		}
diff --git a/internal/pkg/swupg/adapter_download_manager.go b/internal/pkg/swupg/adapter_download_manager.go
index 8dabf08..1185399 100755
--- a/internal/pkg/swupg/adapter_download_manager.go
+++ b/internal/pkg/swupg/adapter_download_manager.go
@@ -280,7 +280,7 @@
 		return nil, statsErr
 	}
 
-	var size int64 = stats.Size()
+	var size = stats.Size()
 	bytes := make([]byte, size)
 
 	buffer := bufio.NewReader(file)
diff --git a/internal/pkg/swupg/file_download_manager.go b/internal/pkg/swupg/file_download_manager.go
index 1893b4d..bb9bd69 100755
--- a/internal/pkg/swupg/file_download_manager.go
+++ b/internal/pkg/swupg/file_download_manager.go
@@ -174,7 +174,7 @@
 		return nil, statsErr
 	}
 
-	var size int64 = stats.Size()
+	var size = stats.Size()
 	bytes := make([]byte, size)
 
 	buffer := bufio.NewReader(file)
diff --git a/internal/pkg/swupg/omci_onu_upgrade.go b/internal/pkg/swupg/omci_onu_upgrade.go
index 3ef4612..3cce167 100755
--- a/internal/pkg/swupg/omci_onu_upgrade.go
+++ b/internal/pkg/swupg/omci_onu_upgrade.go
@@ -1539,7 +1539,7 @@
 			//CRC computation for all data bytes of the file
 			imageCRC := crc32a.Checksum(oFsm.imageBuffer[:int(oFsm.origImageLength)]) //store internal for multiple usage
 			//revert the retrieved CRC Byte Order (seems not to deliver NetworkByteOrder)
-			var byteSlice []byte = make([]byte, 4)
+			var byteSlice = make([]byte, 4)
 			binary.LittleEndian.PutUint32(byteSlice, uint32(imageCRC))
 			oFsm.imageCRC = binary.BigEndian.Uint32(byteSlice)
 			oFsm.mutexUpgradeParams.Unlock()
diff --git a/internal/pkg/uniprt/uniportadmin.go b/internal/pkg/uniprt/uniportadmin.go
index 2910f2e..9b67330 100755
--- a/internal/pkg/uniprt/uniportadmin.go
+++ b/internal/pkg/uniprt/uniportadmin.go
@@ -440,7 +440,8 @@
 		if (omciAdminState == 1) || (1<<uniPort.UniID)&oFsm.pDeviceHandler.GetUniPortMask() == (1<<uniPort.UniID) {
 			var meInstance *me.ManagedEntity
 			var err error
-			if uniPort.PortType == cmn.UniPPTP {
+			switch uniPort.PortType {
+			case cmn.UniPPTP:
 				logger.Debugw(ctx, "Setting PPTP admin state", log.Fields{
 					"device-id": oFsm.deviceID, "for PortNo": uniNo, "state (0-unlock)": omciAdminState})
 				oFsm.mutexPLastTxMeInstance.Lock()
@@ -460,7 +461,7 @@
 				}
 				oFsm.pLastTxMeInstance = meInstance
 				oFsm.mutexPLastTxMeInstance.Unlock()
-			} else if uniPort.PortType == cmn.UniVEIP {
+			case cmn.UniVEIP:
 				logger.Debugw(ctx, "Setting VEIP admin state", log.Fields{
 					"device-id": oFsm.deviceID, "for PortNo": uniNo, "state (0-unlock)": omciAdminState})
 				oFsm.mutexPLastTxMeInstance.Lock()
@@ -480,7 +481,7 @@
 				}
 				oFsm.pLastTxMeInstance = meInstance
 				oFsm.mutexPLastTxMeInstance.Unlock()
-			} else {
+			default:
 				//TODO: Discuss on the uni port type POTS .
 				logger.Warnw(ctx, "Unsupported UniTP type - skip",
 					log.Fields{"device-id": oFsm.deviceID, "Port": uniNo})
diff --git a/internal/pkg/uniprt/uniportstatus.go b/internal/pkg/uniprt/uniportstatus.go
index a680f56..a0b5bed 100755
--- a/internal/pkg/uniprt/uniportstatus.go
+++ b/internal/pkg/uniprt/uniportstatus.go
@@ -138,11 +138,12 @@
 		},
 	}
 	if pptpEthUniOperState, ok := meAttributes[me.PhysicalPathTerminationPointEthernetUni_OperationalState]; ok {
-		if pptpEthUniOperState.(uint8) == 0 {
+		switch pptpEthUniOperState.(uint8) {
+		case 0:
 			singleValResp.Response.GetUniInfo().OperState = extension.GetOnuUniInfoResponse_ENABLED
-		} else if pptpEthUniOperState.(uint8) == 1 {
+		case 1:
 			singleValResp.Response.GetUniInfo().OperState = extension.GetOnuUniInfoResponse_DISABLED
-		} else {
+		default:
 			singleValResp.Response.GetUniInfo().OperState = extension.GetOnuUniInfoResponse_OPERSTATE_UNDEFINED
 		}
 	} else {
@@ -152,11 +153,12 @@
 	}
 
 	if pptpEthUniAdminState, ok := meAttributes[me.PhysicalPathTerminationPointEthernetUni_OperationalState]; ok {
-		if pptpEthUniAdminState.(uint8) == 0 {
+		switch pptpEthUniAdminState.(uint8) {
+		case 0:
 			singleValResp.Response.GetUniInfo().AdmState = extension.GetOnuUniInfoResponse_UNLOCKED
-		} else if pptpEthUniAdminState.(uint8) == 1 {
+		case 1:
 			singleValResp.Response.GetUniInfo().AdmState = extension.GetOnuUniInfoResponse_LOCKED
-		} else {
+		default:
 			singleValResp.Response.GetUniInfo().AdmState = extension.GetOnuUniInfoResponse_ADMSTATE_UNDEFINED
 		}
 	} else {