diff --git a/core/api/src/main/java/org/onosproject/net/OchSignal.java b/core/api/src/main/java/org/onosproject/net/OchSignal.java
index d0dfdf3..dfb36ae 100644
--- a/core/api/src/main/java/org/onosproject/net/OchSignal.java
+++ b/core/api/src/main/java/org/onosproject/net/OchSignal.java
@@ -78,7 +78,10 @@
      * @param channel channel number
      * @param maxFrequency maximum frequency
      * @param grid grid spacing frequency
+     *
+     * @deprecated in Emu (ONOS 1.4).
      */
+    @Deprecated
     public OchSignal(int channel, Frequency maxFrequency, Frequency grid) {
         // Calculate center frequency
         Frequency centerFrequency = maxFrequency.subtract(grid.multiply(channel - 1));
@@ -89,6 +92,7 @@
         this.slotGranularity = (int) Math.round((double) grid.asHz() / ChannelSpacing.CHL_12P5GHZ.frequency().asHz());
     }
 
+    @Deprecated
     public OchSignal(Frequency centerFrequency, ChannelSpacing channelSpacing, int slotGranularity) {
         this.gridType = DEFAULT_OCH_GRIDTYPE;
         this.channelSpacing = channelSpacing;
diff --git a/core/api/src/main/java/org/onosproject/net/flow/criteria/IndexedLambdaCriterion.java b/core/api/src/main/java/org/onosproject/net/flow/criteria/IndexedLambdaCriterion.java
index bc612cd..17ea2d0 100644
--- a/core/api/src/main/java/org/onosproject/net/flow/criteria/IndexedLambdaCriterion.java
+++ b/core/api/src/main/java/org/onosproject/net/flow/criteria/IndexedLambdaCriterion.java
@@ -24,6 +24,8 @@
 
 /**
  * Implementation of indexed lambda criterion.
+ *
+ * @deprecated in Emu (ONOS 1.4).
  */
 @Deprecated
 public class IndexedLambdaCriterion implements Criterion {
