Re: [edk2] Capsules and versions
Hi Sean, This solves my problem, thank you very much! Cheers, Tom On 01/11/2018 16:43, Sean Brogan wrote: > Tom, > > Short answer: It is tool dependent. > > On Windows where the ESRT and FMP have been used for years there is another > file that contains that information (Capsules are just driver packages so > there is an INF and CAT file along with the BIN). > Once the firmware gets to processing the actual payload (after stripping all > the standard headers/structures) our firmware implementation makes use of a > EDK2 defined header that contains this information as well as lowest > supported version. See here. > https://github.com/tianocore/edk2/blob/master/FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h > > > Hope that helps. > > Thanks > Sean > > > > -Original Message- > From: edk2-devel On Behalf Of Tomas Pilar > (tpilar) > Sent: Thursday, November 1, 2018 7:22 AM > To: edk2-devel@lists.01.org > Subject: [edk2] Capsules and versions > > Hi, > > I am trying to implement FMP in our IHV UEFI driver so that we can update > firmware and the driver using capsules. I get the ESRT populated by the > platform EsrtFmpDxe, that's all great. > > However, it seems that EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER does not > contain any version information about the firmware blob (neither Version nor > ImageId). How is the OS tool that stages capsules supposed to know whether > the capsule contains firmware that has been in fact already applied? > > Cheers, > Tom > ___ > edk2-devel mailing list > edk2-devel@lists.01.org > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.01.org%2Fmailman%2Flistinfo%2Fedk2-develdata=02%7C01%7Csean.brogan%40microsoft.com%7Cdbe4babaafe84ee0a01c08d6400699cd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636766794429049806sdata=CaAhG3UhI2%2BqSA6ml7USrFpGjuENBMNS4HK5xKuUGec%3Dreserved=0 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] Capsules and versions
Tom, Short answer: It is tool dependent. On Windows where the ESRT and FMP have been used for years there is another file that contains that information (Capsules are just driver packages so there is an INF and CAT file along with the BIN). Once the firmware gets to processing the actual payload (after stripping all the standard headers/structures) our firmware implementation makes use of a EDK2 defined header that contains this information as well as lowest supported version. See here. https://github.com/tianocore/edk2/blob/master/FmpDevicePkg/Include/Library/FmpPayloadHeaderLib.h Hope that helps. Thanks Sean -Original Message- From: edk2-devel On Behalf Of Tomas Pilar (tpilar) Sent: Thursday, November 1, 2018 7:22 AM To: edk2-devel@lists.01.org Subject: [edk2] Capsules and versions Hi, I am trying to implement FMP in our IHV UEFI driver so that we can update firmware and the driver using capsules. I get the ESRT populated by the platform EsrtFmpDxe, that's all great. However, it seems that EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER does not contain any version information about the firmware blob (neither Version nor ImageId). How is the OS tool that stages capsules supposed to know whether the capsule contains firmware that has been in fact already applied? Cheers, Tom ___ edk2-devel mailing list edk2-devel@lists.01.org https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.01.org%2Fmailman%2Flistinfo%2Fedk2-develdata=02%7C01%7Csean.brogan%40microsoft.com%7Cdbe4babaafe84ee0a01c08d6400699cd%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636766794429049806sdata=CaAhG3UhI2%2BqSA6ml7USrFpGjuENBMNS4HK5xKuUGec%3Dreserved=0 ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel
[edk2] Capsules and versions
Hi, I am trying to implement FMP in our IHV UEFI driver so that we can update firmware and the driver using capsules. I get the ESRT populated by the platform EsrtFmpDxe, that's all great. However, it seems that EFI_FIRMWARE_MANAGEMENT_CAPSULE_IMAGE_HEADER does not contain any version information about the firmware blob (neither Version nor ImageId). How is the OS tool that stages capsules supposed to know whether the capsule contains firmware that has been in fact already applied? Cheers, Tom ___ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel