Hi,

+ Eric Jin

This is a good question.

GenerateCapsule.py can take input arguments from command line or a JSON file.

I think you have found a case where these two input options do not have 
identical behavior.


  *   If EmbeddedDrivers are not provided through command line, then no warning 
is printed.
  *   If EmbeddedDrivers section is missing from JSON file, then a warning is 
printed.

It is a warning and not an error, so I think this warning can be safely ignored.

If you do not want to see the warning, then you can add an empty EmbeddedDrivers
section to the JSON file.

I have added Eric Jin to this thread who added the JSON input feature to 
GenerateCapsule.py.
He should be able to clarify if EmbeddedDriver section is considered required 
when using
the JSON input format.

For your specific questions:

  1.  Embedded drivers is not required
  2.  For your use case EmbeddedDrivers should be empty
  3.  No updates to Vlv2TbltDevicePkg should be required.

Best regards,

Mike

From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of 
gordon...@gmail.com
Sent: Thursday, July 21, 2022 8:50 PM
To: devel@edk2.groups.io
Subject: [edk2-devel] ‘EmbeddedDrivers’ option in Capsule file.


Hi all,
I can generate Red1.cap capsule file from GenerateCapsule.py of edk2, and 
execute CapsuleApp Red1.cap on Minnowboard to complete the process of capsule 
update.
Build capsule file command:
\BaseTools\Source\Python\Capsule>GenerateCapsule.py -e -j red1.json -o red1.cap 
--capflag PersistAcrossReset --capflag InitiateReset
where red1.json is

{

"Payloads": [

{

"Dependencies": "FALSE",

"FwVersion": "16",

"Guid": "72E2945A-00DA-448E-9AA7-075AD840F9D4",

"HardwareInstance": "0",

"LowestSupportedVersion": "0",

"MonotonicCount": "0",

"Payload": "red.bin",

"UpdateImageIndex": "1",

"OpenSslSignerPrivateCertFile": "TestCert.pem",

"OpenSslOtherPublicCertFile": "TestSub.pub.pem",

"OpenSslTrustedPublicCertFile": "TestRoot.pub.pem",

"SigningToolPath": "C:\\OpenSSL\\bin",

"Dependencies": "FALSE"

}

]

}

My system: Minnowboard Max.
My system FW source code: \edk2-platforms\Platform\Intel\Vlv2TbltDevicePkg

However, when GenerateCapsule.py is executed, there will be the following 
warning:
GenerateCapsule: warning "EmbeddedDrivers" section not found in JSON file 
red1.json

My questions are:

  1.  Is the ‘EmbeddedDrivers’ option in the Capsule file necessary?
  2.  Should ‘EmbeddedDrivers’ parameter be assigned to ‘FmpDxe.efi’? or 
assigned to ‘SystemFirmwareUpdateDxe.efi’(in SignedCapsulePkg)?
  3.  I use Minnowboard as the operating environment. If ‘EmbeddedDrivers’ 
option is added to the Capsule file, should I need to make corresponding 
changes in Vlv2TbltDevicePkg?

Any advice is greatly appreciated!
Thanks!



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#91723): https://edk2.groups.io/g/devel/message/91723
Mute This Topic: https://groups.io/mt/92541417/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-


Reply via email to