diff --git a/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuAlrm.c b/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuAlrm.c
index 9c670b9..21cd82c 100755
--- a/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuAlrm.c
+++ b/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuAlrm.c
@@ -201,7 +201,6 @@
     }
     else /* ((onuEponChangeAlarm & onuEponCurrentAlarmState) == 0) */
     {
-      LINKSTATUSFUNC linkStatusCallback;
       if (onuEponChangeAlarm & ONU_EPON_XVR_SD_MASK)
       {
         mvPonPrint(PON_PRINT_INFO, PON_ALARM_MODULE, 
@@ -216,18 +215,6 @@
 
         onuEponLosAlarm |= 0x02<<8;
       }
-      /* TODO(kedong): There is no OAM message between ONU and OLT, thus the
-       * link will be always down if we don't explicitly bring up the interface.
-       * Here we hook the link status update code to the XVR alarm off code to
-       * always indicate the link up if the XVR signal is detected. Once the
-       * wavelength selection code is ready, we should remove the follow link
-       * status check code.
-       */
-      linkStatusCallback = onuEponDbLinkStatusCallbackGet();
-      if (linkStatusCallback != NULL)
-      {
-        linkStatusCallback(MV_TRUE);
-      }
       onuPonTxLaserOn(MV_TRUE);
     }
 
diff --git a/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuIsr.c b/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuIsr.c
index 11c1a57..d84312d 100755
--- a/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuIsr.c
+++ b/arch/arm/plat-feroceon/mv_drivers_lsp/mv_pon/core/epon/eponOnuIsr.c
@@ -244,49 +244,6 @@
 			mvOnuEponMacPcsDelaySet(0x1C58);
 			/* clear Rx Ctrl message FIFO */
 			onuEponPonMngIntrRxCtrlFifoCleanup();
-
-#if 0
-// TODO(jnewlin): Double check this merge.
-<<<<<<< HEAD
-		} else if (state == MV_TRUE) { /* alarm is ON */
-
-			/* set EPON mode only if it is not P2P */
-			if (E_EPON_IOCTL_P2P_MODE != onuEponDbModeGet()) {
-				onuEponDbModeSet(E_EPON_IOCTL_STD_MODE);
-			}
-=======
-			/* Call link status callback function */
-			if (onuEponDbModeGet() == E_EPON_IOCTL_P2P_MODE)
-			{
-				linkStatusCallback = onuEponDbLinkStatusCallbackGet();
-				if (linkStatusCallback != NULL)
-				{
-					linkStatusCallback(MV_TRUE);
-					mvPonPrint(PON_PRINT_DEBUG, PON_ISR_INT_MODULE,
-						   "DEBUG: (%s:%d) Notify link is UP\n", __FILE_DESC__, __LINE__);
-				}
-			}
-		}
-		else if (state == MV_TRUE) /* alarm is ON */
-		{
-			if (onuEponDbP2PForceModeGet())
-			{
-				/* set P2P mode */
-				onuEponDbModeSet(E_EPON_IOCTL_P2P_MODE);
-			}
-			else
-			{
-				/* set EPON mode */
-				onuEponDbModeSet(E_EPON_IOCTL_STD_MODE);
-			}
-            
->>>>>>> remotes/gfiber-internal/vendor_drops
-#endif
-
-			/* config PCS synchronization configuration  - FEC disabled */
-			mvOnuEponMacPcsDelaySet(0x1C58);
-			/* clear Rx Ctrl message FIFO */
-			onuEponPonMngIntrRxCtrlFifoCleanup();
 			/* clear OAM SW FIFO - Tx */
 			onuEponOamFlushAllMsg();
 			/* start xvr reset timer */
