diff --git a/core/api/src/main/java/org/onosproject/net/behaviour/PowerConfig.java b/core/api/src/main/java/org/onosproject/net/behaviour/PowerConfig.java
index 0cda064..d171c17 100644
--- a/core/api/src/main/java/org/onosproject/net/behaviour/PowerConfig.java
+++ b/core/api/src/main/java/org/onosproject/net/behaviour/PowerConfig.java
@@ -20,6 +20,8 @@
 import org.onosproject.net.PortNumber;
 import org.onosproject.net.driver.HandlerBehaviour;
 
+import java.util.ArrayList;
+import java.util.List;
 import java.util.Optional;
 
 /**
@@ -87,4 +89,15 @@
     default Optional<Range<Long>> getInputPowerRange(PortNumber port, T component) {
         return Optional.empty();
     }
+
+    /**
+     * Get the ports, which support {@code PowerConfig} operations for the specified
+     * {@code component}.
+     *
+     * @param component the port component
+     * @return a set of power config ports
+     */
+    default List<PortNumber> getPorts(T component) {
+        return new ArrayList<PortNumber>();
+    }
 }
