Firestone makefiles
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
new file mode 100644
index 0000000..d4066dc
--- /dev/null
+++ b/openpower/configs/firestone_defconfig
@@ -0,0 +1,55 @@
+BR2_powerpc64=y
+BR2_powerpc_power8=y
+BR2_OPENPOWER_PLATFORM=y
+
+BR2_OPENPOWER_CONFIG_NAME="firestone"
+BR2_OPENPOWER_XML_PACKAGE="firestone-xml"
+BR2_HOSTBOOT_CONFIG_FILE="firestone.config"
+
+BR2_HOSTBOOT_BINARY_SBE_FILENAME="venice_sbe.img.ecc"
+BR2_HOSTBOOT_BINARY_SBEC_FILENAME="centaur_sbec_pad.img.ecc"
+
+BR2_OCC_BIN_FILENAME="occ.bin"
+
+BR2_FIRESTONE_SYSTEM_XML_FILENAME="FIRESTONE_hb.system.xml"
+BR2_FIRESTONE_MRW_XML_FILENAME="FIRESTONE_hb.mrw.xml"
+
+BR2_OPENPOWER_TARGETING_BIN_FILENAME="FIRESTONE_HB.targeting.bin"
+BR2_OPENPOWER_TARGETING_ECC_FILENAME="FIRESTONE_HB.targeting.bin.ecc"
+
+BR2_OPENPOWER_PNOR_XML_LAYOUT_FILENAME="HabaneroPnorLayout.xml"
+BR2_OPENPOWER_PNOR_FILENAME="firestone.pnor"
+
+# skiboot requirements
+BR2_TARGET_SKIBOOT=y
+BR2_TARGET_SKIBOOT_EMBED_PAYLOAD=y
+
+# petitboot requirements
+BR2_ENABLE_LOCALE_PURGE=y
+BR2_ENABLE_LOCALE_WHITELIST="C en_US"
+BR2_GENERATE_LOCALE="en_US.UTF-8"
+BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y
+BR2_TARGET_GENERIC_GETTY_PORT="hvc0"
+BR2_ROOTFS_OVERLAY="overlay"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_CUSTOM_GIT=y
+BR2_LINUX_KERNEL_CUSTOM_REPO_URL="git://github.com/open-power/linux.git"
+BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="c04097526152ef45ed87b4a89c5e52fc8f856d34"
+BR2_LINUX_KERNEL_USE_DEFCONFIG=y
+BR2_LINUX_KERNEL_DEFCONFIG="skiroot"
+BR2_LINUX_KERNEL_ZIMAGE_EPAPR=y
+BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y
+BR2_PACKAGE_LINUX_FIRMWARE=y
+BR2_PACKAGE_LINUX_FIRMWARE_BNX2X=y
+BR2_PACKAGE_LINUX_FIRMWARE_CXGB4=y
+BR2_PACKAGE_I2C_TOOLS=y
+BR2_PACKAGE_NCURSES_WCHAR=y
+BR2_PACKAGE_DROPBEAR=y
+# BR2_PACKAGE_DROPBEAR_SERVER is not set
+BR2_PACKAGE_ETHTOOL=y
+BR2_PACKAGE_NETCAT=y
+BR2_PACKAGE_RSYNC=y
+BR2_PACKAGE_PETITBOOT=y
+BR2_PACKAGE_IPMITOOL=y
+BR2_TARGET_ROOTFS_CPIO_XZ=y
+BR2_TARGET_ROOTFS_INITRAMFS=y
diff --git a/openpower/configs/hostboot/firestone.config b/openpower/configs/hostboot/firestone.config
new file mode 100755
index 0000000..6684dd6
--- /dev/null
+++ b/openpower/configs/hostboot/firestone.config
@@ -0,0 +1,37 @@
+# The Serial Flash Controller is the AST2400 BMC.
+set   SFC_IS_AST2400
+set   BMC_DOES_SFC_INIT
+unset SFC_IS_IBM_DPSS
+set   ALLOW_MICRON_PNOR
+set   ALLOW_MACRONIX_PNOR
+
+# VPD options.
+set MVPD_READ_FROM_HW
+unset MVPD_READ_FROM_PNOR
+set DJVPD_READ_FROM_HW
+unset DJVPD_READ_FROM_PNOR
+set CVPD_READ_FROM_HW
+#set CVPD_WRITE_TO_HW
+unset CVPD_READ_FROM_PNOR
+set SKIP_RESTRICT_EX_UNITS
+
+# gpio config
+set GPIODD
+set PALMETTO_VDDR
+
+# disable sbe updates
+set NO_SBE_UPDATES
+
+unset PCIE_HOTPLUG_CONTROLLER
+
+# turn on console output
+set CONSOLE
+set CONSOLE_AST2400
+
+# Enable Kingston dimm voltage workaround
+set KINGSTON_1_35_VOLT
+
+set NO_DMI_EREPAIR
+set DISABLE_HOSTBOOT_RUNTIME
+unset HTMGT
+unset START_OCC_DURING_BOOT
diff --git a/openpower/package/Config.in b/openpower/package/Config.in
index 3271f80..e844bc1 100644
--- a/openpower/package/Config.in
+++ b/openpower/package/Config.in
@@ -3,6 +3,7 @@
 source "$BR2_EXTERNAL/package/hostboot-binaries/Config.in"
 source "$BR2_EXTERNAL/package/palmetto-xml/Config.in"
 source "$BR2_EXTERNAL/package/habanero-xml/Config.in"
+source "$BR2_EXTERNAL/package/firestone-xml/Config.in"
 source "$BR2_EXTERNAL/package/openpower-pnor/Config.in"
 source "$BR2_EXTERNAL/package/p8-pore-binutils/Config.in"
 source "$BR2_EXTERNAL/package/occ/Config.in"
diff --git a/openpower/package/firestone-xml/Config.in b/openpower/package/firestone-xml/Config.in
new file mode 100755
index 0000000..9f1a691
--- /dev/null
+++ b/openpower/package/firestone-xml/Config.in
@@ -0,0 +1,17 @@
+config BR2_PACKAGE_FIRESTONE_XML
+        bool "firestone_xml"
+        default y if (BR2_OPENPOWER_CONFIG_NAME = "firestone")
+        help
+            Utilites for building xml and the targeting binary image
+
+config BR2_FIRESTONE_SYSTEM_XML_FILENAME
+        string "Firestone targeting system xml filename"
+        default ""
+        help
+            Defines the name of the system XML filename to be used when creating targeting binary image
+
+config BR2_FIRESTONE_MRW_XML_FILENAME
+        string "Firestone targeting mrw xml filename"
+        default ""
+        help
+            Defines the name of the mrw XML filename to be used when creating targeting binary image
diff --git a/openpower/package/firestone-xml/firestone.mk b/openpower/package/firestone-xml/firestone.mk
new file mode 100644
index 0000000..3f3e637
--- /dev/null
+++ b/openpower/package/firestone-xml/firestone.mk
@@ -0,0 +1,50 @@
+################################################################################
+#
+# firestone_xml
+#
+################################################################################
+
+FIRESTONE_XML_VERSION ?= deb3693d8708cc13f369ed6f9a66dc4bf9df4ae8
+FIRESTONE_XML_SITE ?= $(call github,open-power,firestone-xml,$(FIRESTONE_XML_VERSION))
+
+FIRESTONE_XML_LICENSE = Apache-2.0
+FIRESTONE_XML_DEPENDENCIES = hostboot-install-images openpower-mrw-install-images common-p8-xml-install-images
+
+FIRESTONE_XML_INSTALL_IMAGES = YES
+FIRESTONE_XML_INSTALL_TARGET = NO
+
+MRW_SCRATCH=$(STAGING_DIR)/openpower_mrw_scratch
+MRW_HB_TOOLS=$(STAGING_DIR)/hostboot_build_images
+
+define FIRESTONE_XML_BUILD_CMDS
+        # copy the firestone xml where the common lives
+        bash -c 'mkdir -p $(MRW_SCRATCH) && cp -r $(@D)/* $(MRW_SCRATCH)'
+
+        # generate the system mrw xml
+        # Not processing until actaul xml is here
+        # perl -I $(MRW_HB_TOOLS) \
+        # $(MRW_HB_TOOLS)/processMrw.pl -x $(MRW_SCRATCH)/palmetto.xml
+endef
+
+define FIRESTONE_XML_INSTALL_IMAGES_CMDS
+
+        # merge in any system specific attributes, hostboot attributes
+        $(MRW_HB_TOOLS)/mergexml.sh $(MRW_SCRATCH)/$(BR2_PALMETTO_SYSTEM_XML_FILENAME) \
+            $(MRW_HB_TOOLS)/attribute_types.xml \
+            $(MRW_HB_TOOLS)/attribute_types_hb.xml \
+            $(MRW_HB_TOOLS)/target_types_merged.xml \
+            $(MRW_HB_TOOLS)/target_types_hb.xml \
+            $(MRW_SCRATCH)/$(BR2_FIRESTONE_MRW_XML_FILENAME) > $(MRW_HB_TOOLS)/temporary_hb.hb.xml;
+
+        # creating the targeting binary
+        $(MRW_HB_TOOLS)/xmltohb.pl  \
+            --hb-xml-file=$(MRW_HB_TOOLS)/temporary_hb.hb.xml \
+            --fapi-attributes-xml-file=$(MRW_HB_TOOLS)/fapiattrs.xml \
+            --src-output-dir=none \
+            --img-output-dir=$(MRW_HB_TOOLS)/ \
+            --vmm-consts-file=$(MRW_HB_TOOLS)/vmmconst.h --noshort-enums
+
+        mv $(MRW_HB_TOOLS)/targeting.bin $(MRW_HB_TOOLS)/$(BR2_OPENPOWER_TARGETING_BIN_FILENAME)
+endef
+
+$(eval $(generic-package))