diff options
author | Dan <dcrowell@us.ibm.com> | 2018-10-10 11:24:40 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-10-10 11:24:40 -0500 |
commit | 2e68ed6a605d709e09fe268366565a3f10afec31 (patch) | |
tree | 47f4dd147b0ea5de3303848e134f44adbd7c4f74 | |
parent | 71a2d893fa81b50657327bbefafce05379e1d4fc (diff) | |
parent | 850ff8bb50fd1c14ac40af2899094f286209a805 (diff) | |
download | pnor-2e68ed6a605d709e09fe268366565a3f10afec31.tar.gz pnor-2e68ed6a605d709e09fe268366565a3f10afec31.zip |
Merge pull request #97 from sammj/sign
p9Layouts: Sign VERSION partition
-rwxr-xr-x | create_pnor_image.pl | 2 | ||||
-rw-r--r-- | p9Layouts/defaultPnorLayout_128.xml | 26 | ||||
-rw-r--r-- | p9Layouts/defaultPnorLayout_64.xml | 19 | ||||
-rwxr-xr-x | update_image.pl | 5 |
4 files changed, 32 insertions, 20 deletions
diff --git a/create_pnor_image.pl b/create_pnor_image.pl index bf3bb7d..14f71ab 100755 --- a/create_pnor_image.pl +++ b/create_pnor_image.pl @@ -144,7 +144,7 @@ $build_pnor_command .= " --binFile_ATTR_PERM $scratch_dir/attr_perm.bin.ecc"; $build_pnor_command .= " --binFile_FIRDATA $scratch_dir/firdata.bin.ecc"; $build_pnor_command .= " --binFile_CAPP $scratch_dir/cappucode.bin.ecc"; $build_pnor_command .= " --binFile_SECBOOT $scratch_dir/secboot.bin.ecc"; -$build_pnor_command .= " --binFile_VERSION $openpower_version_filename"; +$build_pnor_command .= " --binFile_VERSION $scratch_dir/openpower_pnor_version.bin"; $build_pnor_command .= " --binFile_IMA_CATALOG $scratch_dir/ima_catalog.bin.ecc"; if ($release eq "p9"){ diff --git a/p9Layouts/defaultPnorLayout_128.xml b/p9Layouts/defaultPnorLayout_128.xml index 8cea551..828777a 100644 --- a/p9Layouts/defaultPnorLayout_128.xml +++ b/p9Layouts/defaultPnorLayout_128.xml @@ -302,14 +302,15 @@ Layout Description <description>PNOR Version (4K)</description> <eyeCatch>VERSION</eyeCatch> <physicalOffset>0x2C08000</physicalOffset> - <physicalRegionSize>0x1000</physicalRegionSize> + <physicalRegionSize>0x2000</physicalRegionSize> <side>A</side> + <sha512Version/> <readOnly/> </section> <section> <description>IMA Catalog (256K)</description> <eyeCatch>IMA_CATALOG</eyeCatch> - <physicalOffset>0x2C09000</physicalOffset> + <physicalOffset>0x2C0A000</physicalOffset> <physicalRegionSize>0x40000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -319,7 +320,7 @@ Layout Description <section> <description>Ref Image Ring Overrides (128K)</description> <eyeCatch>RINGOVD</eyeCatch> - <physicalOffset>0x2C49000</physicalOffset> + <physicalOffset>0x2C4A000</physicalOffset> <physicalRegionSize>0x20000</physicalRegionSize> <side>A</side> </section> @@ -328,7 +329,7 @@ Layout Description <!-- We need 266KB per module sort, going to support 10 sorts by default, plus ECC --> <eyeCatch>WOFDATA</eyeCatch> - <physicalOffset>0x2C69000</physicalOffset> + <physicalOffset>0x2C6A000</physicalOffset> <physicalRegionSize>0x300000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -338,9 +339,10 @@ Layout Description <section> <description>Hostboot deconfig area (64KB)</description> <eyeCatch>HB_VOLATILE</eyeCatch> - <physicalOffset>0x2F69000</physicalOffset> + <physicalOffset>0x2F6A000</physicalOffset> <physicalRegionSize>0x5000</physicalRegionSize> <side>A</side> + <reprovision/> <ecc/> <volatile/> <clearOnEccErr/> @@ -348,7 +350,7 @@ Layout Description <section> <description>Memory config data (28K)</description> <eyeCatch>MEMD</eyeCatch> - <physicalOffset>0x2F6E000</physicalOffset> + <physicalOffset>0x2F6F000</physicalOffset> <physicalRegionSize>0xE000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -358,11 +360,21 @@ Layout Description <section> <description>SecureBoot Key Transition Partition (16K)</description> <eyeCatch>SBKT</eyeCatch> - <physicalOffset>0x2F82000</physicalOffset> + <physicalOffset>0x2F7D000</physicalOffset> <physicalRegionSize>0x4000</physicalRegionSize> <side>A</side> <sha512Version/> <readOnly/> <ecc/> </section> + <section> + <description>HDAT binary data (16KB)</description> + <eyeCatch>HDAT</eyeCatch> + <physicalOffset>0x2F81000</physicalOffset> + <physicalRegionSize>0x8000</physicalRegionSize> + <side>sideless</side> + <sha512Version/> + <readOnly/> + <ecc/> + </section> </pnor> diff --git a/p9Layouts/defaultPnorLayout_64.xml b/p9Layouts/defaultPnorLayout_64.xml index add5ea0..4e61c0c 100644 --- a/p9Layouts/defaultPnorLayout_64.xml +++ b/p9Layouts/defaultPnorLayout_64.xml @@ -172,7 +172,7 @@ Layout Description <ecc/> </section> <section> - <description>Hostboot Extended image (11MB w/o ECC)</description> + <description>Hostboot Extended image (13MB w/o ECC)</description> <eyeCatch>HBI</eyeCatch> <physicalOffset>0x425000</physicalOffset> <physicalRegionSize>0xEA0000</physicalRegionSize> @@ -302,14 +302,15 @@ Layout Description <description>PNOR Version (4K)</description> <eyeCatch>VERSION</eyeCatch> <physicalOffset>0x2C08000</physicalOffset> - <physicalRegionSize>0x1000</physicalRegionSize> + <physicalRegionSize>0x2000</physicalRegionSize> <side>A</side> + <sha512Version/> <readOnly/> </section> <section> <description>IMA Catalog (256K)</description> <eyeCatch>IMA_CATALOG</eyeCatch> - <physicalOffset>0x2C09000</physicalOffset> + <physicalOffset>0x2C0A000</physicalOffset> <physicalRegionSize>0x40000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -319,7 +320,7 @@ Layout Description <section> <description>Ref Image Ring Overrides (128K)</description> <eyeCatch>RINGOVD</eyeCatch> - <physicalOffset>0x2C49000</physicalOffset> + <physicalOffset>0x2C4A000</physicalOffset> <physicalRegionSize>0x20000</physicalRegionSize> <side>A</side> </section> @@ -328,7 +329,7 @@ Layout Description <!-- We need 266KB per module sort, going to support 10 sorts by default, plus ECC --> <eyeCatch>WOFDATA</eyeCatch> - <physicalOffset>0x2C69000</physicalOffset> + <physicalOffset>0x2C6A000</physicalOffset> <physicalRegionSize>0x300000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -338,7 +339,7 @@ Layout Description <section> <description>Hostboot deconfig area (64KB)</description> <eyeCatch>HB_VOLATILE</eyeCatch> - <physicalOffset>0x2F69000</physicalOffset> + <physicalOffset>0x2F6A000</physicalOffset> <physicalRegionSize>0x5000</physicalRegionSize> <side>A</side> <reprovision/> @@ -349,7 +350,7 @@ Layout Description <section> <description>Memory config data (28K)</description> <eyeCatch>MEMD</eyeCatch> - <physicalOffset>0x2F6E000</physicalOffset> + <physicalOffset>0x2F6F000</physicalOffset> <physicalRegionSize>0xE000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -359,7 +360,7 @@ Layout Description <section> <description>SecureBoot Key Transition Partition (16K)</description> <eyeCatch>SBKT</eyeCatch> - <physicalOffset>0x2F82000</physicalOffset> + <physicalOffset>0x2F7D000</physicalOffset> <physicalRegionSize>0x4000</physicalRegionSize> <side>A</side> <sha512Version/> @@ -369,7 +370,7 @@ Layout Description <section> <description>HDAT binary data (16KB)</description> <eyeCatch>HDAT</eyeCatch> - <physicalOffset>0x2F86000</physicalOffset> + <physicalOffset>0x2F81000</physicalOffset> <physicalRegionSize>0x8000</physicalRegionSize> <side>sideless</side> <sha512Version/> diff --git a/update_image.pl b/update_image.pl index a8bafc0..3867300 100755 --- a/update_image.pl +++ b/update_image.pl @@ -267,7 +267,7 @@ sub processConvergedSections { $sections{CVPD}{in} = "$hb_binary_dir/cvpd.bin"; $sections{CVPD}{out} = "$scratch_dir/cvpd.bin.ecc"; $sections{VERSION}{in} = "$openpower_version_filename"; - $sections{VERSION}{out} = "$openpower_version_filename"; + $sections{VERSION}{out} = "$scratch_dir/openpower_pnor_version.bin"; $sections{IMA_CATALOG}{in} = "$ima_catalog_binary_filename"; $sections{IMA_CATALOG}{out} = "$scratch_dir/ima_catalog.bin.ecc"; @@ -470,8 +470,7 @@ else run_command("ecc --inject $scratch_dir/hostboot.temp.bin --output $scratch_dir/cvpd.bin.ecc --p8"); # Stage VERSION partition - run_command("dd if=$openpower_version_filename of=$scratch_dir/openpower_version.temp ibs=4K conv=sync"); - run_command("cp $scratch_dir/openpower_version.temp $openpower_version_filename"); + run_command("dd if=$openpower_version_filename of=$scratch_dir/openpower_pnor_version.bin ibs=4K conv=sync"); # Inject ECC into IMA_CATALOG partition binary run_command("dd if=$ima_catalog_binary_filename bs=36K count=1 > $scratch_dir/hostboot.temp.bin"); |