diff options
author | Francis Rowe <info@gluglug.org.uk> | 2014-12-25 15:20:54 (EST) |
---|---|---|
committer | Francis Rowe <info@gluglug.org.uk> | 2014-12-25 15:20:54 (EST) |
commit | 8141031b0bcb050ea57abc717ec0c5b14d95ee25 (patch) | |
tree | 2d55df4b2d3736cad8e9bae57a403520a59e5eee /resources/utilities/ich9deblob/ich9deblob.c | |
parent | aa5ab59846cd8fce7e78f67244b962fcbd19f175 (diff) | |
download | libreboot-8141031b0bcb050ea57abc717ec0c5b14d95ee25.zip libreboot-8141031b0bcb050ea57abc717ec0c5b14d95ee25.tar.gz libreboot-8141031b0bcb050ea57abc717ec0c5b14d95ee25.tar.bz2 |
ich9deblob: move 12k descriptor gbe file creation to new file
Diffstat (limited to 'resources/utilities/ich9deblob/ich9deblob.c')
-rw-r--r-- | resources/utilities/ich9deblob/ich9deblob.c | 39 |
1 files changed, 3 insertions, 36 deletions
diff --git a/resources/utilities/ich9deblob/ich9deblob.c b/resources/utilities/ich9deblob/ich9deblob.c index 7609bb4..fafa9a2 100644 --- a/resources/utilities/ich9deblob/ich9deblob.c +++ b/resources/utilities/ich9deblob/ich9deblob.c @@ -46,6 +46,7 @@ #include <stdio.h> #include <string.h> +#include "common/common.h" /* common functions used by ich9deblob */ #include "descriptor/descriptor.h" /* structs describing what's in the descriptor region */ #include "gbe/gbe.h" /* structs describing what's in the gbe region */ #include "x86compatibility.h" /* system/compiler compatibility checks. This code is not portable. */ @@ -58,7 +59,6 @@ int main(int argc, char *argv[]) */ char factoryDescriptorBuffer[DESCRIPTORREGIONSIZE]; struct DESCRIPTORREGIONRECORD factoryDescriptorStruct; - char deblobbedDescriptorBuffer[DESCRIPTORREGIONSIZE]; struct DESCRIPTORREGIONRECORD deblobbedDescriptorStruct; /* @@ -67,7 +67,6 @@ int main(int argc, char *argv[]) */ char factoryGbeBuffer8k[GBEREGIONSIZE_8K]; struct GBEREGIONRECORD_8K factoryGbeStruct8k; - char deblobbedGbeBuffer8k[GBEREGIONSIZE_8K]; struct GBEREGIONRECORD_8K deblobbedGbeStruct8k; /* @@ -220,42 +219,10 @@ int main(int argc, char *argv[]) * ------------------------------------------------------------------ */ - /* - * Convert the deblobbed descriptor and gbe back to byte arrays, so that they - * can more easily be written to files: - * deblobbed descriptor region - */ - memcpy(&deblobbedDescriptorBuffer, &deblobbedDescriptorStruct, DESCRIPTORREGIONSIZE); /* descriptor */ - memcpy(&deblobbedGbeBuffer8k, &deblobbedGbeStruct8k, GBEREGIONSIZE_8K); /* gbe */ - - /* delete old file before continuing */ - remove(deblobbedDescriptorFilename); - - /* open new file for writing the deblobbed descriptor+gbe */ - fileStream = fopen(deblobbedDescriptorFilename, "ab"); - - /* write the descriptor region into the first part */ - if (DESCRIPTORREGIONSIZE != fwrite(deblobbedDescriptorBuffer, sizeof(char), DESCRIPTORREGIONSIZE, fileStream)) - { - printf("\nerror: writing descriptor region failed\n"); - return 1; - } - - /* add gbe to the end of the file */ - if (GBEREGIONSIZE_8K != fwrite(deblobbedGbeBuffer8k, sizeof(char), GBEREGIONSIZE_8K, fileStream)) - { - printf("\nerror: writing GBe region failed\n"); + printf("\n"); + if (notCreatedDescriptorGbeFile(deblobbedDescriptorStruct, deblobbedGbeStruct8k, deblobbedDescriptorFilename)) { return 1; } - fclose(fileStream); - - printf("\ndeblobbed descriptor plus gbe successfully created: deblobbed_descriptor.bin \n"); - - // ------------------------------------------------------------------------------------- - - printf("\nNow do: dd if=deblobbed_descriptor.bin of=libreboot.rom bs=1 count=12k conv=notrunc"); - printf("\n(in other words, add the modified descriptor+gbe to your ROM image)\n\n"); - return 0; } |