diff --git a/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample b/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample
new file mode 100644
index 0000000..3416353
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/conf/bblayers.conf.sample
@@ -0,0 +1,31 @@
+# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
+# changes incompatibly
+LCONF_VERSION = "8"
+
+BBPATH = "${TOPDIR}"
+BBFILES ?= ""
+
+BBLAYERS ?= " \
+  ##OEROOT##/meta \
+  ##OEROOT##/meta-openembedded/meta-oe \
+  ##OEROOT##/meta-openembedded/meta-networking \
+  ##OEROOT##/meta-openembedded/meta-perl \
+  ##OEROOT##/meta-openembedded/meta-python \
+  ##OEROOT##/meta-openembedded/meta-webserver \
+  ##OEROOT##/meta-phosphor \
+  ##OEROOT##/meta-hpe/meta-gxp \
+  ##OEROOT##/meta-hpe \
+  ##OEROOT##/meta-hpe/meta-dl360poc \
+  "
+BBLAYERS_NON_REMOVABLE ?= " \
+  ##OEROOT##/meta \
+  ##OEROOT##/meta-openembedded/meta-oe \
+  ##OEROOT##/meta-openembedded/meta-networking \
+  ##OEROOT##/meta-openembedded/meta-perl \
+  ##OEROOT##/meta-openembedded/meta-python \
+  ##OEROOT##/meta-openembedded/meta-webserver \
+  ##OEROOT##/meta-phosphor \
+  ##OEROOT##/meta-hpe/meta-gxp \
+  ##OEROOT##/meta-hpe \
+  ##OEROOT##/meta-hpe/meta-dl360poc \
+  "
diff --git a/meta-hpe/meta-dl360poc/conf/layer.conf b/meta-hpe/meta-dl360poc/conf/layer.conf
new file mode 100644
index 0000000..4627564
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/conf/layer.conf
@@ -0,0 +1,10 @@
+# We have a conf and classes directory, add to BBPATH
+BBPATH .= ":${LAYERDIR}"
+
+# We have recipes-* directories, add to BBFILES
+BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
+            ${LAYERDIR}/recipes-*/*/*.bbappend"
+
+BBFILE_COLLECTIONS += "dl360poc-layer"
+BBFILE_PATTERN_dl360poc-layer := "^${LAYERDIR}/"
+LAYERSERIES_COMPAT_dl360poc-layer = "zeus warrior dunfell"
diff --git a/meta-hpe/meta-dl360poc/conf/local.conf.sample b/meta-hpe/meta-dl360poc/conf/local.conf.sample
new file mode 100644
index 0000000..1161dce
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/conf/local.conf.sample
@@ -0,0 +1,245 @@
+#
+# This file is your local configuration file and is where all local user settings
+# are placed. The comments in this file give some guide to the options a new user
+# to the system might want to change but pretty much any configuration option can
+# be set in this file. More adventurous users can look at local.conf.extended 
+# which contains other examples of configuration which can be placed in this file
+# but new users likely won't need any of them initially.
+#
+# Lines starting with the '#' character are commented out and in some cases the 
+# default values are provided as comments to show people example syntax. Enabling
+# the option is a question of removing the # character and making any change to the
+# variable as required.
+
+#
+# Machine Selection
+#
+# You need to select a specific machine to target the build with. There are a selection
+# of emulated machines available which can boot and run in the QEMU emulator:
+#
+#MACHINE ?= "qemuarm"
+#MACHINE ?= "qemuarm64"
+#MACHINE ?= "qemumips"
+#MACHINE ?= "qemuppc"
+#MACHINE ?= "qemux86"
+#MACHINE ?= "qemux86-64"
+#
+# There are also the following hardware board target machines included for 
+# demonstration purposes:
+#
+#MACHINE ?= "beaglebone"
+#MACHINE ?= "genericx86"
+#MACHINE ?= "genericx86-64"
+#MACHINE ?= "mpc8315e-rdb"
+#MACHINE ?= "edgerouter"
+#
+# This sets the default machine to be qemux86 if no other machine is selected:
+MACHINE ??= "dl360poc"
+
+#
+# Where to place downloads
+#
+# During a first build the system will download many different source code tarballs
+# from various upstream projects. This can take a while, particularly if your network
+# connection is slow. These are all stored in DL_DIR. When wiping and rebuilding you
+# can preserve this directory to speed up this part of subsequent builds. This directory
+# is safe to share between multiple builds on the same machine too.
+#
+# The default is a downloads directory under TOPDIR which is the build directory.
+#
+#DL_DIR ?= "${TOPDIR}/downloads"
+
+#
+# Where to place shared-state files
+#
+# BitBake has the capability to accelerate builds based on previously built output.
+# This is done using "shared state" files which can be thought of as cache objects
+# and this option determines where those files are placed.
+#
+# You can wipe out TMPDIR leaving this directory intact and the build would regenerate
+# from these files if no changes were made to the configuration. If changes were made
+# to the configuration, only shared state files where the state was still valid would
+# be used (done using checksums).
+#
+# The default is a sstate-cache directory under TOPDIR.
+#
+#SSTATE_DIR ?= "${TOPDIR}/sstate-cache"
+
+#
+# Where to place the build output
+#
+# This option specifies where the bulk of the building work should be done and
+# where BitBake should place its temporary files and output. Keep in mind that
+# this includes the extraction and compilation of many applications and the toolchain
+# which can use Gigabytes of hard disk space.
+#
+# The default is a tmp directory under TOPDIR.
+#
+#TMPDIR = "${TOPDIR}/tmp"
+
+#
+# Default policy config
+#
+# The distribution setting controls which policy settings are used as defaults.
+# The default value is fine for general Yocto project use, at least initially.
+# Ultimately when creating custom policy, people will likely end up subclassing 
+# these defaults.
+#
+DISTRO ?= "openbmc-phosphor"
+# As an example of a subclass there is a "bleeding" edge policy configuration
+# where many versions are set to the absolute latest code from the upstream 
+# source control systems. This is just mentioned here as an example, its not
+# useful to most new users.
+# DISTRO ?= "poky-bleeding"
+
+#
+# Package Management configuration
+#
+# This variable lists which packaging formats to enable. Multiple package backends 
+# can be enabled at once and the first item listed in the variable will be used 
+# to generate the root filesystems.
+# Options are:
+#  - 'package_deb' for debian style deb files
+#  - 'package_ipk' for ipk files are used by opkg (a debian style embedded package manager)
+#  - 'package_rpm' for rpm style packages
+# E.g.: PACKAGE_CLASSES ?= "package_rpm package_deb package_ipk"
+# We default to rpm:
+PACKAGE_CLASSES ?= "package_rpm"
+
+#
+# SDK/ADT target architecture
+#
+# This variable specifies the architecture to build SDK/ADT items for and means
+# you can build the SDK packages for architectures other than the machine you are 
+# running the build on (i.e. building i686 packages on an x86_64 host).
+# Supported values are i686 and x86_64
+#SDKMACHINE ?= "i686"
+
+SANITY_TESTED_DISTROS_append ?= " RedHatEnterpriseWorkstation-6.*"
+
+#
+# Extra image configuration defaults
+#
+# The EXTRA_IMAGE_FEATURES variable allows extra packages to be added to the generated 
+# images. Some of these options are added to certain image types automatically. The
+# variable can contain the following options:
+#  "dbg-pkgs"       - add -dbg packages for all installed packages
+#                     (adds symbol information for debugging/profiling)
+#  "dev-pkgs"       - add -dev packages for all installed packages
+#                     (useful if you want to develop against libs in the image)
+#  "ptest-pkgs"     - add -ptest packages for all ptest-enabled packages
+#                     (useful if you want to run the package test suites)
+#  "tools-sdk"      - add development tools (gcc, make, pkgconfig etc.)
+#  "tools-debug"    - add debugging tools (gdb, strace)
+#  "eclipse-debug"  - add Eclipse remote debugging support
+#  "tools-profile"  - add profiling tools (oprofile, exmap, lttng, valgrind)
+#  "tools-testapps" - add useful testing tools (ts_print, aplay, arecord etc.)
+#  "debug-tweaks"   - make an image suitable for development
+#                     e.g. ssh root access has a blank password
+# There are other application targets that can be used here too, see
+# meta/classes/image.bbclass and meta/classes/core-image.bbclass for more details.
+# We default to enabling the debugging tweaks.
+EXTRA_IMAGE_FEATURES = "debug-tweaks"
+
+#
+# Additional image features
+#
+# The following is a list of additional classes to use when building images which
+# enable extra features. Some available options which can be included in this variable 
+# are:
+#   - 'buildstats' collect build statistics
+#   - 'image-mklibs' to reduce shared library files size for an image
+#   - 'image-prelink' in order to prelink the filesystem image
+#   - 'image-swab' to perform host system intrusion detection
+# NOTE: if listing mklibs & prelink both, then make sure mklibs is before prelink
+# NOTE: mklibs also needs to be explicitly enabled for a given image, see local.conf.extended
+USER_CLASSES ?= "buildstats image-mklibs image-prelink"
+
+#
+# Runtime testing of images
+#
+# The build system can test booting virtual machine images under qemu (an emulator)
+# after any root filesystems are created and run tests against those images. To
+# enable this uncomment this line. See classes/testimage(-auto).bbclass for
+# further details.
+#TEST_IMAGE = "1"
+#
+# Interactive shell configuration
+#
+# Under certain circumstances the system may need input from you and to do this it 
+# can launch an interactive shell. It needs to do this since the build is 
+# multithreaded and needs to be able to handle the case where more than one parallel
+# process may require the user's attention. The default is iterate over the available
+# terminal types to find one that works.
+#
+# Examples of the occasions this may happen are when resolving patches which cannot
+# be applied, to use the devshell or the kernel menuconfig
+#
+# Supported values are auto, gnome, xfce, rxvt, screen, konsole (KDE 3.x only), none
+# Note: currently, Konsole support only works for KDE 3.x due to the way
+# newer Konsole versions behave
+#OE_TERMINAL = "auto"
+# By default disable interactive patch resolution (tasks will just fail instead):
+PATCHRESOLVE = "noop"
+
+#
+# Disk Space Monitoring during the build
+#
+# Monitor the disk space during the build. If there is less that 1GB of space or less
+# than 100K inodes in any key build location (TMPDIR, DL_DIR, SSTATE_DIR), gracefully
+# shutdown the build. If there is less that 100MB or 1K inodes, perform a hard abort
+# of the build. The reason for this is that running completely out of space can corrupt
+# files and damages the build in ways which may not be easily recoverable.
+# It's necessary to monitor /tmp, if there is no space left the build will fail
+# with very exotic errors.
+BB_DISKMON_DIRS = "\
+    STOPTASKS,${TMPDIR},1G,100K \
+    STOPTASKS,${DL_DIR},1G,100K \
+    STOPTASKS,${SSTATE_DIR},1G,100K \
+    STOPTASKS,/tmp,100M,100K \
+    ABORT,${TMPDIR},100M,1K \
+    ABORT,${DL_DIR},100M,1K \
+    ABORT,${SSTATE_DIR},100M,1K \
+    ABORT,/tmp,10M,1K"
+
+#
+# Shared-state files from other locations
+#
+# As mentioned above, shared state files are prebuilt cache data objects which can 
+# used to accelerate build time. This variable can be used to configure the system
+# to search other mirror locations for these objects before it builds the data itself.
+#
+# This can be a filesystem directory, or a remote url such as http or ftp. These
+# would contain the sstate-cache results from previous builds (possibly from other 
+# machines). This variable works like fetcher MIRRORS/PREMIRRORS and points to the 
+# cache locations to check for the shared objects.
+# NOTE: if the mirror uses the same structure as SSTATE_DIR, you need to add PATH
+# at the end as shown in the examples below. This will be substituted with the
+# correct path within the directory structure.
+#SSTATE_MIRRORS ?= "\
+#file://.* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \
+#file://.* file:///some/local/dir/sstate/PATH"
+
+
+#
+# Qemu configuration
+#
+# By default qemu will build with a builtin VNC server where graphical output can be
+# seen. The two lines below enable the SDL backend too. This assumes there is a
+# libsdl library available on your build system.
+PACKAGECONFIG_append_pn-qemu-native = " sdl"
+PACKAGECONFIG_append_pn-nativesdk-qemu = " sdl"
+#ASSUME_PROVIDED += "libsdl-native"
+
+
+# CONF_VERSION is increased each time build/conf/ changes incompatibly and is used to
+# track the version of this file when it was generated. This can safely be ignored if
+# this doesn't mean anything to you.
+CONF_VERSION = "1"
+
+# Set the root password to '0penBmc'
+INHERIT += "extrausers"
+
+EXTRA_USERS_PARAMS = " \
+  usermod -p '\$1\$UGMqyqdG\$FZiylVFmRRfl9Z0Ue8G7e/' root; \
+  "
diff --git a/meta-hpe/meta-dl360poc/conf/machine/dl360poc.conf b/meta-hpe/meta-dl360poc/conf/machine/dl360poc.conf
new file mode 100644
index 0000000..1f27f8c
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/conf/machine/dl360poc.conf
@@ -0,0 +1,9 @@
+KERNEL_DEVICETREE = "gxp.dtb"
+
+require conf/machine/include/gxp.inc
+require conf/machine/include/obmc-bsp-common.inc
+require conf/machine/include/hpe.inc
+
+#PREFERRED_PROVIDER_virtual/phosphor-led-manager-config-native = "dl360poc-led-manager-config-native"
+
+VIRTUAL-RUNTIME_obmc-fan-control ?= "phosphor-pid-control"
diff --git a/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc/gxp.dts b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc/gxp.dts
new file mode 100644
index 0000000..c11ccb0
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc/gxp.dts
@@ -0,0 +1,711 @@
+/dts-v1/;
+/ {
+  #address-cells = <1>;
+  #size-cells = <1>;
+  compatible = "HPE,GXP";
+  model = "GXP";
+
+  chosen {
+    bootargs = "earlyprintk console=ttyS0,115200 user_debug=31";
+  };
+
+  aliases {
+  };
+
+  memory@40000000 {
+    device_type = "memory";
+    reg = <0x40000000 0x20000000>;
+  };
+
+  ahb@80000000 {
+    compatible = "simple-bus";
+    #address-cells = <1>;
+    #size-cells = <1>;
+    ranges;
+
+    vic0: vic@ceff0000 {
+      compatible = "arm,pl192-vic";
+      interrupt-controller;
+      reg = <0xceff0000 0x1000>;
+      #interrupt-cells = <1>;
+    };
+
+    vic1: vic@80f00000 {
+      compatible = "arm,pl192-vic";
+      interrupt-controller;
+      reg = <0x80f00000 0x1000>;
+      #interrupt-cells = <1>;
+    };
+
+    timer0: timer@c0000080 {
+      compatible = "hpe,gxp-timer";
+      reg = <0xc0000080 0x1>, <0xc0000094 0x01>, <0xc0000088 0x08>;
+      interrupts = <0>;
+      interrupt-parent = <&vic0>;
+      clock-frequency = <400000000>;
+    };
+    
+    watchdog: watchdog@c0000090 {
+      compatible = "hpe,gxp-wdt";
+      reg = <0xc0000090 0x02>, <0xc0000096 0x01>;
+    };
+
+    uartc: serial@c00000f0 {
+      compatible = "ns16550a";
+      reg = <0xc00000f0 0x8>;
+      interrupts = <19>;
+      interrupt-parent = <&vic0>;
+      clock-frequency = <1846153>;
+      reg-shift = <0>;
+    };
+
+    uarta: serial@c00000e0 {
+      compatible = "ns16550a";
+      reg = <0xc00000e0 0x8>;
+      interrupts = <17>;
+      interrupt-parent = <&vic0>;
+      clock-frequency = <1846153>;
+      reg-shift = <0>;
+    };
+
+    uartb: serial@c00000e8 {
+      compatible = "ns16550a";
+      reg = <0xc00000e8 0x8>;
+      interrupts = <18>;
+      interrupt-parent = <&vic0>;
+      clock-frequency = <1846153>;
+      reg-shift = <0>;
+    };
+
+    vuart_a_cfg: vuarta_cfg@80fc0230 {
+      compatible = "hpe,gxp-vuarta_cfg", "simple-mfd", "syscon";
+      reg = <0x80fc0230 0x100>;
+      reg-io-width = <1>;
+    };
+ 
+    vuart_a: vuart_a@80fd0200 {
+      compatible = "hpe,gxp-vuart";
+      reg = <0x80fd0200 0x100>;
+      interrupts = <2>;
+      interrupt-parent = <&vic1>;
+      clock-frequency = <1846153>;
+      reg-shift = <0>;
+      status = "okay";
+      serial-line = <3>;
+      vuart_cfg = <&vuart_a_cfg>;
+    };
+ 
+    spifi0: spifi@c0000200 {
+      compatible = "hpe,gxp-spifi";
+      reg = <0xc0000200 0x80>, <0xc000c000 0x100>, <0xf8000000 0x8000000>;
+      interrupts = <20>;
+      interrupt-parent = <&vic0>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      flash@0 {
+        compatible = "jedec,spi-nor";
+        reg = <0>;
+        partitions {
+          compatible = "fixed-partitions";
+          #address-cells = <1>;
+          #size-cells = <1>;
+          
+          u-boot@0 {
+            label = "u-boot";
+            reg = <0x0 0x60000>;
+          };
+          u-boot-env@60000 {
+            label = "u-boot-env";
+            reg = <0x60000 0x20000>;
+          };
+          kernel@80000 {
+            label = "kernel";
+            reg = <0x80000 0x4c0000>;
+          };
+          rofs@540000 {
+            label = "rofs";
+            reg = <0x540000 0x1740000>;
+          };
+          rwfs@1c80000 {
+            label = "rwfs";
+            reg = <0x1c80000 0x250000>;
+          };
+          section@1edf000{
+            labele = "section";
+            reg = <0x1ed0000 0x130000>;
+          };
+        };
+      };
+
+      flash@1 {
+        compatible = "jedec,spi-nor";
+        reg = <1>;
+        partitions {
+          compatible = "fixed-partitions";
+          #address-cells = <1>;
+          #size-cells = <1>;
+          host-prime@0 {
+            label = "host-prime";
+            reg = <0x0 0x02000000>;
+          };
+          host-second@0 {
+            label = "host-second";
+            reg = <0x02000000 0x02000000>;
+          };
+        };
+      };
+    };
+
+    sram@d0000000 {
+      compatible = "mtd-ram";
+      reg = <0xd0000000 0x80000>;
+      bank-width = <1>;
+      erase-size =<1>;
+      partition@0 {
+        label = "host-reserved";
+        reg = <0x0 0x10000>;
+      };
+      partition@10000 {
+        label = "nvram";
+        reg = <0x10000 0x70000>;
+      };
+    };
+
+    srom@80fc0000 {
+      compatible = "hpe,gxp-srom", "simple-mfd", "syscon";
+      reg = <0x80fc0000 0x100>;
+    };
+
+    vrom@58000000 {
+      compatible = "mtd-ram";
+      bank-width = <4>;
+      reg = <0x58000000 0x4000000>;
+      #address-cells = <1>;
+      #size-cells = <1>;
+      partition@0 {
+        label = "vrom-prime";
+        reg = <0x0 0x2000000>;
+      };
+      partition@2000000 {
+        label = "vrom-second";
+        reg = <0x2000000 0x2000000>;
+      };
+    };
+
+    i2cg: i2cg@c00000f8 {
+      compatible = "syscon";
+      reg = <0xc00000f8 0x08>;
+    };
+    
+    i2c0: i2c@c0002000 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002000 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c1: i2c@c0002100 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002100 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c2: i2c@c0002200 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002200 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      at24c02@50 {
+        compatible = "at24,24c02";
+        pagesize = <8>;
+        reg = <0x50>;
+      };
+    };
+
+    i2c3: i2c@c0002300 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002300 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c4: i2c@c0002400 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002400 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c5: i2c@c0002500 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002500 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      emc1402@4c {
+        compatible = "emc1402";
+        reg = <0x4c>;
+      };
+      
+      emc1404@1c {
+        compatible = "emc1404";
+        reg = <0x1c>;
+      };
+    };
+
+    i2c6: i2c@c0002600 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002600 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c7: i2c@c0002700 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002700 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      psu1: psu@58 {
+        compatible = "hpe,gxp-psu";
+        reg = <0x58>;
+      };
+
+      psu2: psu@59 {
+        compatible = "hpe,gxp-psu";
+        reg = <0x59>;
+      };
+    };
+
+    i2c8: i2c@c0002800 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002800 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2c9: i2c@c0002900 {
+      compatible = "hpe,gxp-i2c";
+      reg = <0xc0002900 0x70>;
+      interrupts = <9>;
+      interrupt-parent = <&vic0>;
+      i2cg-handle = <&i2cg>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+    };
+
+    i2cmux@4 {
+      compatible = "i2c-mux-reg";
+      i2c-parent = <&i2c4>;
+      reg = <0xd1000374 1>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      i2c4@1 {
+        reg = <1>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c4@3 {
+        reg = <3>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c4@4 {
+        reg = <4>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+    };
+
+    i2cmux@6 {
+      compatible = "i2c-mux-reg";
+      i2c-parent = <&i2c6>;
+      reg = <0xd1000376 1>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+
+      i2c6@1 {
+        reg = <1>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c6@2 {
+        reg = <2>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c6@3 {
+        reg = <3>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c6@4 {
+        reg = <4>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+
+      i2c6@5 {
+        reg = <5>;
+        #address-cells = <1>;
+        #size-cells = <0>;
+      };
+    };
+
+    mdio0: mdio@c0004080 {
+      compatible = "hpe,gxp-umac-mdio";
+      reg = <0xc0004080 0x10>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+      ext_phy0: ethernt-phy@0 {
+        compatible = "marvell,88e1415","ethernet-phy-ieee802.3-c22";
+        phy-mode = "sgmii";
+        reg = <0>;
+      };
+    };
+
+    mdio1: mdio@c0005080 {
+      compatible = "hpe,gxp-umac-mdio";
+      reg = <0xc0005080 0x10>;
+      #address-cells = <1>;
+      #size-cells = <0>;
+      int_phy0: ethernt-phy@0 {
+        compatible = "ethernet-phy-ieee802.3-c22";
+        phy-mode = "gmii";
+        reg = <0>;
+      };
+      int_phy1: ethernt-phy@1 {
+        compatible = "ethernet-phy-ieee802.3-c22";
+        phy-mode = "gmii";
+        reg = <1>;
+      };
+    };
+
+    umac0: umac@c0004000 {
+      compatible = "hpe, gxp-umac";
+      reg = <0xc0004000 0x80>;
+      interrupts = <10>;
+      interrupt-parent = <&vic0>;
+      mac-address = [94 18 82 16 04 d8];
+      phy-handle = <&ext_phy0>;
+      int-phy-handle = <&int_phy0>;
+    };
+
+    umac1: umac@c0005000 {
+      compatible = "hpe, gxp-umac";
+      use-ncsi;
+      reg = <0xc0005000 0x80>;
+      interrupts = <11>;
+      interrupt-parent = <&vic0>;
+      mac-address = [94 18 82 16 04 d9];
+      phy-handle = <&int_phy1>;
+    };
+
+    kcs_conf: kcs_conf@80fc0430 {
+      compatible = "hpe,gxp-kcs-bmc-cfg", "simple-mfd", "syscon";
+      reg = <0x80fc0430 0x100>;
+    };
+  
+    kcs_reg: kcs_reg@080fd0400 {
+      compatible = "hpe,gxp-kcs-bmc";
+      reg = <0x80fd0400 0x8>;
+      interrupts = <6>;
+      interrupt-parent = <&vic1>;
+      kcs_chan = <1>;
+      status = "okay";
+      kcs-bmc-cfg = <&kcs_conf>;
+    };
+
+    thumbnail: thumbnail@c0000500 {
+      compatible = "hpe,gxp-thumbnail";
+      reg = <0xc0000500 0x20>;
+      bits-per-pixel = <32>;
+      width = <800>;
+      height = <600>;
+    };
+
+    xreg: xreg@d1000000 {
+      compatible = "hpe,gxp-xreg", "simple-mfd", "syscon";
+      reg = <0xd1000300 0xFF>;
+    };
+
+    fanctrl: fanctrl@c1000c00 {
+      compatible = "hpe,gxp-fan-ctrl";
+      reg = <0xc1000c00 0x200>;
+      xreg_handle = <&xreg>;
+      fn2_handle = <&fn2>;
+    };
+
+    fn2: fn2@80200000 {
+      compatible = "hpe,gxp-fn2", "simple-mfd", "syscon";
+      reg = <0x80200000 0x100000>;
+      interrupts = <0>;
+      interrupt-parent = <&vic1>;
+    };
+
+    csm: csm@80000000 {
+      compatible = "hpe,gxp-csm", "simple-mfd", "syscon";
+      reg = <0x80000000 0x100000>;
+    };
+
+    gpio: gpio {
+      compatible = "hpe,gxp-gpio";
+      #gpio-cells = <2>;
+      csm_handle = <&csm>;
+      fn2_handle = <&fn2>;
+      xreg_handle = <&xreg>;
+      vuhc0_handle = <&vuhc0>;
+      interrupts = <26>;
+      interrupt-parent = <&vic0>;
+    };
+
+    leds: leds {
+      compatible = "gpio-leds";
+
+      power {
+        gpios = <&gpio 306 0>;
+        default-state = "off";
+      };
+
+      heartbeat {
+        gpios = <&gpio 307 0>;
+        default-state = "off";
+      };
+
+      identify {
+        gpios = <&gpio 356 0>;
+        default-state = "off";
+      };
+
+      health_red {
+        gpios = <&gpio 357 0>;
+        default-state = "off";
+      };
+
+      health_amber {
+        gpios = <&gpio 358 0>;
+        default-state = "off";
+      };
+    };
+
+    presence: presence {
+      compatible = "gpio-keys-polled";
+      poll-interval = <100>;
+      autorepeat;
+
+      fan1 {
+        label = "fan1 presence";
+        linux,code = <200>;
+        gpios = <&gpio 308 0>;
+      };
+
+      fan2 {
+        label = "fan2 presence";
+        linux,code = <201>;
+        gpios = <&gpio 309 0>;
+      };
+
+      fan3 {
+        label = "fan3 presence";
+        linux,code = <202>;
+        gpios = <&gpio 310 0>;
+      };
+
+      fan4 {
+        label = "fan4 presence";
+        linux,code = <203>;
+        gpios = <&gpio 311 0>;
+      };
+
+      fan5 {
+        label = "fan5 presence";
+        linux,code = <204>;
+        gpios = <&gpio 312 0>;
+      };
+
+      fan6 {
+        label = "fan6 presence";
+        linux,code = <205>;
+        gpios = <&gpio 313 0>;
+      };
+
+      fan7 {
+        label = "fan7 presence";
+        linux,code = <206>;
+        gpios = <&gpio 314 0>;
+      };
+
+      fan8 {
+        label = "fan8 presence";
+        linux,code = <207>;
+        gpios = <&gpio 315 0>;
+      };
+
+      fan9 {
+        label = "fan9 presence";
+        linux,code = <208>;
+        gpios = <&gpio 316 0>;
+      };
+
+      fan10 {
+        label = "fan10 presence";
+        linux,code = <209>;
+        gpios = <&gpio 317 0>;
+      };
+
+      fan11 {
+        label = "fan11 presence";
+        linux,code = <210>;
+        gpios = <&gpio 318 0>;
+      };
+
+      fan12 {
+        label = "fan12 presence";
+        linux,code = <211>;
+        gpios = <&gpio 319 0>;
+      };
+
+      fan13 {
+        label = "fan13 presence";
+        linux,code = <212>;
+        gpios = <&gpio 320 0>;
+      };
+
+      fan14 {
+        label = "fan14 presence";
+        linux,code = <213>;
+        gpios = <&gpio 321 0>;
+      };
+
+      fan15 {
+        label = "fan15 presence";
+        linux,code = <214>;
+        gpios = <&gpio 322 0>;
+      };
+
+      fan16 {
+        label = "fan16 presence";
+        linux,code = <215>;
+        gpios = <&gpio 323 0>;
+      };
+    };
+
+    vuhc: vuhc {
+      compatible = "gpio-keys-polled";
+      poll-interval = <100>;
+
+      PortOwner@0 {
+        label = "Port Owner";
+        linux,code = <200>;
+        gpios = <&gpio 250 1>;
+      };
+
+      PortOwner@1 {
+        label = "Port Owner";
+        linux,code = <201>;
+        gpios = <&gpio 251 1>;
+      };
+    };
+
+    vuhc0: vuhc@80400080 {
+      compatible = "syscon";
+      reg = <0x80400000 0x80>;
+    };
+
+    udcg: udcg@80400800 {
+      compatible = "syscon";
+      reg = <0x80400800 0x200>;
+    };
+
+    udc0: udc@80401000 {
+      compatible = "hpe, gxp-udc";
+      reg = <0x80401000 0x1000>;
+      interrupts = <13>;
+      interrupt-parent = <&vic1>;
+      vdevnum = <0>;
+      fepnum = <7>;
+      udcg-handle = <&udcg>;
+    };
+
+    udc1: udc@80402000 {
+      compatible = "hpe, gxp-udc";
+      reg = <0x80402000 0x1000>;
+      interrupts = <13>;
+      interrupt-parent = <&vic1>;
+      vdevnum = <1>;
+      fepnum = <7>;
+      udcg-handle = <&udcg>;
+    };
+
+    coretemp: coretemp@c0000130 {
+      compatible = "hpe,gxp-coretemp";
+      reg = <0xc0000130 0x8>;
+    };
+
+    syspower: syspower {
+      compatible = "hpe,gxp-power";
+      psu_phandle = <&psu1>, <&psu2>;
+    };
+  };
+
+  clocks {
+    osc: osc {
+      compatible = "fixed-clock";
+      #clock-cells = <0>;
+      clock-output-names = "osc";
+      clock-frequency = <33333333>;
+    };
+
+    iopclk: iopclk {
+      compatible = "fixed-clock";
+      #clock-cells = <0>;
+      clocks = <&osc>;
+      clock-out-put-names = "iopclk";
+      clock-frequency = <400000000>;
+    };
+
+    memclk: memclk {
+      compatible = "fixed-clock";
+      #clock-cells = <0>;
+      clocks = <&osc>;
+      clock-out-put-names = "memclk";
+      clock-frequency = <800000000>;
+    };
+  };
+};
diff --git a/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend
new file mode 100644
index 0000000..57be249
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/recipes-kernel/linux/linux-obmc_%.bbappend
@@ -0,0 +1,15 @@
+FILESEXTRAPATHS_prepend := "${THISDIR}/linux-obmc:"
+SRC_URI += "file://gxp.dts \
+            "
+
+do_patch_append() {
+  for DTB in "${KERNEL_DEVICETREE}"; do
+      DT=`basename ${DTB} .dtb`
+      if [ -r "${WORKDIR}/${DT}.dts" ]; then
+          cp ${WORKDIR}/${DT}.dts \
+              ${STAGING_KERNEL_DIR}/arch/${ARCH}/boot/dts
+      fi
+  done
+ 
+}
+
diff --git a/meta-hpe/meta-dl360poc/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-hpe/meta-dl360poc/recipes-phosphor/image/obmc-phosphor-image.bbappend
new file mode 100644
index 0000000..ad67245
--- /dev/null
+++ b/meta-hpe/meta-dl360poc/recipes-phosphor/image/obmc-phosphor-image.bbappend
@@ -0,0 +1,23 @@
+
+
+do_generate_hpe_image() {
+    # Add gxp-bootblock to hpe-section
+    dd bs=1k conv=notrunc seek=64 \
+          if=${DEPLOY_DIR_IMAGE}/${HPE_GXP_BOOTBLOCK_IMAGE} \
+          of=${DEPLOY_DIR_IMAGE}/hpe-section
+}
+
+do_generate_static_tar() {
+
+  ln -sf ${S}/MANIFEST MANIFEST
+  ln -sf ${S}/publickey publickey
+  make_image_links ${OVERLAY_BASETYPE} ${IMAGE_BASETYPE}
+
+  make_signatures image-u-boot image-kernel image-rofs image-rwfs image-section MANIFEST publickey
+  make_tar_of_images static MANIFEST publickey ${signature_files}
+
+  # Maintain non-standard legacy link.
+  cd ${IMGDEPLOYDIR}
+  ln -sf ${IMAGE_NAME}.static.mtd.tar ${IMGDEPLOYDIR}/${MACHINE}-${DATETIME}.tar
+}
+
