EthernetInterface: Split up dynamic config properties

Having all of the dynamic configuration options grouped together makes
it harder for clients to specify independent properties as they have to
deal with reading unrelated settings and a combinatorically expanding
enum.

This change adds properties mirrored from DHCPEnabled that split up the
different DHCP4/DHCP6/RA acceptance options.

Change-Id: If9c0c84fcda6578a894b7bfe2d87ebe030f125de
Signed-off-by: William A. Kennington III <wak@google.com>
diff --git a/yaml/xyz/openbmc_project/Network/EthernetInterface.interface.yaml b/yaml/xyz/openbmc_project/Network/EthernetInterface.interface.yaml
index e4bfffe..012f87e 100644
--- a/yaml/xyz/openbmc_project/Network/EthernetInterface.interface.yaml
+++ b/yaml/xyz/openbmc_project/Network/EthernetInterface.interface.yaml
@@ -36,7 +36,16 @@
     - name: DHCPEnabled
       type: enum[self.DHCPConf]
       description: >
-          Address mode of the ethernet interface.
+          Address mode of the ethernet interface. Deprecated in favor of
+          split options to avoid combinatorics.
+    - name: DHCP4
+      type: boolean
+      description: >
+          Enable or disable IPv4 DHCP.
+    - name: DHCP6
+      type: boolean
+      description: >
+          Enable or disable IPv6 DHCP.
     - name: Nameservers
       type: array[string]
       description: >
@@ -72,9 +81,7 @@
     - name: IPv6AcceptRA
       type: boolean
       description: >
-          Boolean for accepting router advertisements in IPv6. This control is
-          being deprecated in favor of the DHCPConf enumerations
-          below. Removal of this entry is deferred.
+          Boolean for accepting router advertisements in IPv6.
     - name: NICEnabled
       type: boolean
       description: >