create 32M habanero_update.pnor image for HPM updates

RTC: 124337
diff --git a/openpower/configs/firestone_defconfig b/openpower/configs/firestone_defconfig
index 0e4b766..d72cb81 100644
--- a/openpower/configs/firestone_defconfig
+++ b/openpower/configs/firestone_defconfig
@@ -21,6 +21,7 @@
 
 BR2_OPENPOWER_PNOR_XML_LAYOUT_FILENAME="defaultPnorLayoutWithGoldenSide.xml"
 BR2_OPENPOWER_PNOR_FILENAME="firestone.pnor"
+BR2_OPENPOWER_PNOR_UPDATE_FILENAME="firestone_update.pnor"
 
 # skiboot requirements
 BR2_TARGET_SKIBOOT=y
diff --git a/openpower/configs/habanero_defconfig b/openpower/configs/habanero_defconfig
index 2d400c0..64b827a 100644
--- a/openpower/configs/habanero_defconfig
+++ b/openpower/configs/habanero_defconfig
@@ -21,6 +21,7 @@
 
 BR2_OPENPOWER_PNOR_XML_LAYOUT_FILENAME="defaultPnorLayoutWithGoldenSide.xml"
 BR2_OPENPOWER_PNOR_FILENAME="habanero.pnor"
+BR2_OPENPOWER_PNOR_UPDATE_FILENAME="habanero_update.pnor"
 
 # skiboot requirements
 BR2_TARGET_SKIBOOT=y
diff --git a/openpower/package/openpower-pnor/Config.in b/openpower/package/openpower-pnor/Config.in
index 8815490..6a23e51 100644
--- a/openpower/package/openpower-pnor/Config.in
+++ b/openpower/package/openpower-pnor/Config.in
@@ -24,6 +24,11 @@
         help
             String used to define pnor filename to be created
 
+config BR2_OPENPOWER_PNOR_UPDATE_FILENAME
+        string "Name of pnor file to be created for updates, if needed"
+        help
+            String used to define pnor filename to be created for updates, if needed
+
 config BR2_SKIBOOT_LID_NAME
         string "Name of skiboot lid name to be used"
         default "skiboot.lid"
diff --git a/openpower/package/openpower-pnor/openpower-pnor.mk b/openpower/package/openpower-pnor/openpower-pnor.mk
index d19e95d..fb7e230 100644
--- a/openpower/package/openpower-pnor/openpower-pnor.mk
+++ b/openpower/package/openpower-pnor/openpower-pnor.mk
@@ -68,6 +68,13 @@
             -openpower_version_filename $(OPENPOWER_PNOR_VERSION_FILE)
 
         $(INSTALL) $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) $(BINARIES_DIR)
+
+        # if this config has an UPDATE_FILENAME defined, create a 32M (1/2 size)
+        # image that only updates the non-golden side
+        if [ "$(BR2_OPENPOWER_PNOR_UPDATE_FILENAME)" != "" ]; then \
+            dd if=$(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_FILENAME) of=$(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_UPDATE_FILENAME) bs=32M count=1; \
+            $(INSTALL) $(STAGING_DIR)/pnor/$(BR2_OPENPOWER_PNOR_UPDATE_FILENAME) $(BINARIES_DIR); \
+        fi
 endef
 
 $(eval $(generic-package))