Andrew:
  edk2 build output lists all generated binary files. Could you use the binary 
file without section header? 

Thanks
Liming
> -----Original Message-----
> From: [email protected] [mailto:[email protected]]
> Sent: Friday, December 23, 2016 1:07 PM
> To: Gao, Liming <[email protected]>
> Cc: edk2-devel <[email protected]>
> Subject: Re: [edk2] FDF Spec question?
> 
> 
> > On Dec 22, 2016, at 8:59 PM, Gao, Liming <[email protected]> wrote:
> >
> > Andrew:
> >  I am not clear your usage. Could you use source section and compressed
> section for the data before and after compression?  Here, section means PI
> EFI section format file. Take Lzma compression as the example,  source data
> is the section stream. It may be combined of more than one sections, such as
> two FV sections. OVMF FVMAIN_COMPACT is just a case. Compressed
> section is the guided section. It is GUIDED section header + compressed data.
> Here, there is only one GUIDED section header.
> >
> 
> Liming,
> 
> I forgot to mention that the build tool for 4C2B8C75-C6F6-11E6-B483-
> B8E8562CBAFA just copies newform.bin to newform.bin without any
> processing. The is the only way you can use a "pre-processed" binary with
> the existing tools. This is why the syntax under the encapsulated section is
> not needed in this special case.
> 
> Thanks,
> 
> Andrew Fish
> 
> 
> >  For the below case,  BaseTools will add RAW section header for the input
> newform.bin, then call the matched GUIDed tool to process this raw section
> to get the processed data, last append GUIDed section header before the
> processed data as the output GUIDed section.
> >  SECTION GUIDED 4C2B8C75-C6F6-11E6-B483-B8E8562CBAFA
> PROCESSING_REQUIRED = TRUE {
> >    SECTION RAW =
> $(WORKSPACE)/MyPackage/MyNewType/Binary/newform.bin
> >  }
> >
> > Thanks
> > Liming
> >> -----Original Message-----
> >> From: edk2-devel [mailto:[email protected]] On Behalf Of
> >> Andrew Fish
> >> Sent: Thursday, December 22, 2016 9:38 AM
> >> To: Gao, Liming <[email protected]>
> >> Cc: edk2-devel <[email protected]>
> >> Subject: Re: [edk2] FDF Spec question?
> >>
> >>
> >>> On Dec 21, 2016, at 5:18 PM, Gao, Liming <[email protected]> wrote:
> >>>
> >>> Andrew:
> >>> You mean newform.bin has section header. It is just a leaf section. You
> >> expect to directly add it into GUIDED section without specify section
> header
> >> again. Right?
> >>>
> >>
> >> Liming,
> >>
> >> Yes.
> >>
> >> The issue is Leaf section header in the FDF is part of the thing that is
> getting
> >> compressed by the build tool. So if you skip that compression step you
> don't
> >> really have the section header, as all you really have is the compressed
> data.
> >> When you decompress the data (process the encapsulation section) it
> starts
> >> with the section header (it could be added pragmatically or just part of 
> >> the
> >> original data). So if you skip the compression phase it seems you want to
> just
> >> point directly to the encapsulated data (the result).
> >>
> >> Basically my current syntax is pre-pending an unused leaf section header
> at
> >> the beginning of the compressed data. The decompressor has to index
> >> sizeof(EFI_COMMON_SECTION_HEADER) into the Source buffer to find
> the
> >> header of the compressed data to process. The size of the compressed
> data
> >> is already represented in the encapsulation section, so this extra leaf
> section
> >> is an artifact of the FDF syntax.
> >>
> >> Thanks,
> >>
> >> Andrew Fish
> >>
> >>
> >>> Thanks
> >>> Liming
> >>> -----Original Message-----
> >>> From: edk2-devel [mailto:[email protected]] On Behalf
> Of
> >> Andrew Fish
> >>> Sent: Thursday, December 22, 2016 1:29 AM
> >>> To: Gao, Liming <[email protected]>
> >>> Cc: edk2-devel <[email protected]>
> >>> Subject: Re: [edk2] FDF Spec question?
> >>>
> >>>
> >>>> On Dec 21, 2016, at 6:27 AM, Gao, Liming <[email protected]>
> wrote:
> >>>>
> >>>> Andrew:
> >>>> Encapsulation section data is the section stream, not raw format. Then,
> >> Leaf section can be extracted from encapsulation section.
> >>>>
> >>>
> >>> Liming,
> >>>
> >>> I happen to have the section stream in binary form checked into the
> source
> >> tree. The section extraction code actually dynamically creates the section
> >> header(s) for the stream and this means the section header in the FV is
> not
> >> really used (the section extraction code actually just skips over it).
> >>>
> >>> Technically speaking only the post processed GUID'ed section needs to
> >> produce the leaf. My case is kind of like I compressed the data without
> the
> >> section header. The section header is redundant data from the section
> >> extraction codes point of view as the binary format already has that info.
> >>>
> >>> Thanks,
> >>>
> >>> Andrew Fish
> >>>
> >>>> Thanks
> >>>> Liming
> >>>> -----Original Message-----
> >>>> From: edk2-devel [mailto:[email protected]] On Behalf
> Of
> >> Andrew Fish
> >>>> Sent: Wednesday, December 21, 2016 8:27 AM
> >>>> To: edk2-devel <[email protected]>
> >>>> Subject: [edk2] FDF Spec question?
> >>>>
> >>>> Is it possible in the FDF syntax to make the payload of a
> >> EFI_SECTION_GUID_DEFINED (Encapsulating section) a raw binary file?
> >>>>
> >>>> I can make the contents of the GUID'ed encapsulation section a section.
> >> But when I'm processing the GUID'ed section I just end up skipping over
> the
> >> extra 4 byte section header so it is unused space.
> >>>>
> >>>> SECTION GUIDED 4C2B8C75-C6F6-11E6-B483-B8E8562CBAFA
> >> PROCESSING_REQUIRED = TRUE {
> >>>>  SECTION RAW =
> >> $(WORKSPACE)/MyPackage/MyNewType/Binary/newform.bin
> >>>> }
> >>>>
> >>>> There is a syntax to make a leaf section a binary file.
> >>>>
> >>>> SECTION SUBTYPE_GUID AFC13561-9A65-4754-9C93-E133B3B8767C =
> >> $(WORKSPACE)/MyPackage/MyNewType/Binary/newform.bin
> >>>>
> >>>>
> >>>> Thanks,
> >>>>
> >>>> Andrew Fish
> >>>> _______________________________________________
> >>>> edk2-devel mailing list
> >>>> [email protected]
> >>>> https://lists.01.org/mailman/listinfo/edk2-devel
> >>>> _______________________________________________
> >>>> edk2-devel mailing list
> >>>> [email protected]
> >>>> https://lists.01.org/mailman/listinfo/edk2-devel
> >>>
> >>> _______________________________________________
> >>> edk2-devel mailing list
> >>> [email protected]
> >>> https://lists.01.org/mailman/listinfo/edk2-devel
> >>
> >> _______________________________________________
> >> edk2-devel mailing list
> >> [email protected]
> >> https://lists.01.org/mailman/listinfo/edk2-devel

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to