Network: define interface to represent an ethernet interface

This interface would be used to implement the ethernet interface
specific configuration.

Change-Id: Ib92e746e8de0881296df790fe82544839dce0bc7
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
diff --git a/xyz/openbmc_project/Network/EthernetInterface.interface.yaml b/xyz/openbmc_project/Network/EthernetInterface.interface.yaml
new file mode 100644
index 0000000..abcdfef
--- /dev/null
+++ b/xyz/openbmc_project/Network/EthernetInterface.interface.yaml
@@ -0,0 +1,36 @@
+description: >
+    This defines an ethernet interface.
+    An object implementing this interface must implement
+    xyz.openbmc_project.State.OperationalStatus.
+
+
+properties:
+    - name: InterfaceName
+      type: string
+      description: >
+          Name of the ethernet interface.
+    - name: MACAddress
+      type: string
+      description: >
+          MAC address of the ethernet interface.
+    - name: Speed
+      type: uint32
+      description: >
+          Current speed of the ethernet interface, in Mbps.
+    - name: AutoNeg
+      type: boolean
+      description: >
+          This indicates if the speed and duplex are automatically negotiated
+          and configured on this ethernet interface.
+    - name: DomainName
+      type: array[string]
+      description: >
+          Domain names of the ethernet interface.
+    - name: DHCPEnabled
+      type: boolean
+      description: >
+          Address mode of the ethernet interface.
+    - name: Nameservers
+      type: array[string]
+      description: >
+          DNS servers on the interface.