diff --git a/drivers/cisco/rest/src/main/java/org/onosproject/drivers/cisco/rest/CiscoNxosPortStatistics.java b/drivers/cisco/rest/src/main/java/org/onosproject/drivers/cisco/rest/CiscoNxosPortStatistics.java
index c42b784..b2e6ad8 100644
--- a/drivers/cisco/rest/src/main/java/org/onosproject/drivers/cisco/rest/CiscoNxosPortStatistics.java
+++ b/drivers/cisco/rest/src/main/java/org/onosproject/drivers/cisco/rest/CiscoNxosPortStatistics.java
@@ -109,7 +109,7 @@
             long packetsTxErrors = deviceInterface.get(ETH_OUTERR1).asLong();
 
             DefaultPortStatistics.Builder builder = DefaultPortStatistics.builder();
-            defaultPortStatistics = builder.setPort((int) portNumber.toLong())
+            defaultPortStatistics = builder.setPort(portNumber)
                     .setPacketsReceived(packetsReceived)
                     .setPacketsSent(packetsSent)
                     .setBytesReceived(bytesReceived)
diff --git a/drivers/huawei/src/main/java/org/onosproject/drivers/huawei/HuaweiXmlParser.java b/drivers/huawei/src/main/java/org/onosproject/drivers/huawei/HuaweiXmlParser.java
index fba0f75..159d180 100644
--- a/drivers/huawei/src/main/java/org/onosproject/drivers/huawei/HuaweiXmlParser.java
+++ b/drivers/huawei/src/main/java/org/onosproject/drivers/huawei/HuaweiXmlParser.java
@@ -23,6 +23,7 @@
 import org.dom4j.Element;
 import org.onosproject.net.DefaultAnnotations;
 import org.onosproject.net.DeviceId;
+import org.onosproject.net.PortNumber;
 import org.onosproject.net.device.DefaultPortDescription;
 import org.onosproject.net.device.DefaultPortStatistics;
 import org.onosproject.net.device.PortDescription;
@@ -261,7 +262,7 @@
                                                           .getText());
 
             return builder.setDeviceId(id)
-                    .setPort(port)
+                    .setPort(PortNumber.portNumber(port))
                     .setPacketsReceived(packetReceived)
                     .setPacketsSent(packetSent)
                     .setBytesReceived(bytesReceived)
diff --git a/drivers/server/src/main/java/org/onosproject/drivers/server/ServerDevicesDiscovery.java b/drivers/server/src/main/java/org/onosproject/drivers/server/ServerDevicesDiscovery.java
index 3ff7f05..eedb403 100644
--- a/drivers/server/src/main/java/org/onosproject/drivers/server/ServerDevicesDiscovery.java
+++ b/drivers/server/src/main/java/org/onosproject/drivers/server/ServerDevicesDiscovery.java
@@ -848,7 +848,7 @@
             DefaultPortStatistics.Builder nicBuilder = DefaultPortStatistics.builder();
 
             nicBuilder.setDeviceId(deviceId)
-                    .setPort((int) portNumber)
+                    .setPort(PortNumber.portNumber(portNumber))
                     .setPacketsReceived(rxCount)
                     .setPacketsSent(txCount)
                     .setBytesReceived(rxBytes)
diff --git a/drivers/server/src/main/java/org/onosproject/drivers/server/impl/stats/DefaultMonitoringStatistics.java b/drivers/server/src/main/java/org/onosproject/drivers/server/impl/stats/DefaultMonitoringStatistics.java
index 5c1ba99..c05687f 100644
--- a/drivers/server/src/main/java/org/onosproject/drivers/server/impl/stats/DefaultMonitoringStatistics.java
+++ b/drivers/server/src/main/java/org/onosproject/drivers/server/impl/stats/DefaultMonitoringStatistics.java
@@ -109,7 +109,7 @@
     public PortStatistics nicStatistics(int nicId) {
         checkArgument(nicId >= 0, "NIC ID must be a non-negative integer");
         for (PortStatistics ns : this.nicStatistics) {
-            if (ns.port() == nicId) {
+            if (ns.portNumber().toLong() == nicId) {
                 return ns;
             }
         }
