VOL-3859 Multicast subscriber config info's entity id was set the same with MAC bridge port config data's entity id

Change-Id: If76e21a729ff3fc0523a4f055cecdc20a843f959
diff --git a/internal/pkg/onuadaptercore/omci_vlan_config.go b/internal/pkg/onuadaptercore/omci_vlan_config.go
index 39a7bee..4660e95 100644
--- a/internal/pkg/onuadaptercore/omci_vlan_config.go
+++ b/internal/pkg/onuadaptercore/omci_vlan_config.go
@@ -2242,13 +2242,14 @@
 			log.Fields{"device-id": oFsm.deviceID, "portNo": oFsm.pOnuUniPort.portNo})
 		return err
 	}
+	instID += macBridgePortAniEID
 	meParams := me.ParamData{
 		EntityID: instID,
 		Attributes: me.AttributeValueMap{
 			"MeType": 0,
 			//Direct reference to the Operation profile
 			//TODO ANI side used on UNI side, not the clearest option.
-			"MulticastOperationsProfilePointer": macBridgePortAniEID + uint16(oFsm.pOnuUniPort.macBpNo),
+			"MulticastOperationsProfilePointer": instID,
 		},
 	}
 	meInstance := oFsm.pOmciCC.sendCreateMulticastSubConfigInfoVar(context.TODO(), oFsm.pDeviceHandler.pOpenOnuAc.omciTimeout, true,
@@ -2267,7 +2268,13 @@
 }
 
 func (oFsm *UniVlanConfigFsm) performCreatingMulticastOperationProfile(ctx context.Context) error {
-	instID := macBridgePortAniEID + uint16(oFsm.pOnuUniPort.macBpNo)
+	instID, err := oFsm.pDeviceHandler.getUniPortMEEntityID(oFsm.pOnuUniPort.portNo)
+	if err != nil {
+		logger.Errorw(ctx, "error fetching uni port me instance",
+			log.Fields{"device-id": oFsm.deviceID, "portNo": oFsm.pOnuUniPort.portNo})
+		return err
+	}
+	instID += macBridgePortAniEID
 	meParams := me.ParamData{
 		EntityID: instID,
 		Attributes: me.AttributeValueMap{
@@ -2290,7 +2297,7 @@
 	//  - this avoids misinterpretation of new received OMCI messages
 	oFsm.pLastTxMeInstance = meInstance
 	//verify response
-	err := oFsm.waitforOmciResponse(ctx)
+	err = oFsm.waitforOmciResponse(ctx)
 	if err != nil {
 		logger.Errorw(ctx, "CreateMulticastOperationProfile create failed, aborting AniConfig FSM!",
 			log.Fields{"device-id": oFsm.deviceID, "MulticastOperationProfileID": instID})
@@ -2300,7 +2307,13 @@
 }
 
 func (oFsm *UniVlanConfigFsm) performSettingMulticastOperationProfile(ctx context.Context, multicastGemPortID uint16, vlanID uint32) error {
-	instID := macBridgePortAniEID + uint16(oFsm.pOnuUniPort.macBpNo)
+	instID, err := oFsm.pDeviceHandler.getUniPortMEEntityID(oFsm.pOnuUniPort.portNo)
+	if err != nil {
+		logger.Errorw(ctx, "error fetching uni port me instance",
+			log.Fields{"device-id": oFsm.deviceID, "portNo": oFsm.pOnuUniPort.portNo})
+		return err
+	}
+	instID += macBridgePortAniEID
 	//TODO check that this is correct
 	// Table control
 	//setCtrl = 1
@@ -2338,7 +2351,7 @@
 	//  - this avoids misinterpretation of new received OMCI messages
 	oFsm.pLastTxMeInstance = meInstance
 	//verify response
-	err := oFsm.waitforOmciResponse(ctx)
+	err = oFsm.waitforOmciResponse(ctx)
 	if err != nil {
 		logger.Errorw(ctx, "CreateMulticastOperationProfile create failed, aborting AniConfig FSM!",
 			log.Fields{"device-id": oFsm.deviceID, "MulticastOperationProfileID": instID})