[MinnowBoard] [edk2] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
Krau, Michael P
michael.p.krau at intel.com
Thu Mar 5 00:15:15 UTC 2015
Hello Gerard,
You got it in one. The files that are included in that IP bundle are all tied directly to the E38xx Silicon initialization and low level operation. The MinnowBoard MAX use the E38xx processor, so that code is needed by the MAX by induction. Though there may also be a RealTek network driver in the package as well, which is on the MAX, but not necessary to the E38xx silicon.
To go a step deeper (if you wish), the binary files provided are broken out by function, as PEI and UEFI drivers to handle different aspects of the platform/silicon initialization/support. There are about 50 of them total (per build - with 4 builds: 64 bit release, 64 bit debug logging, 32 bit release, and 32 bit debug logging). Another reason why we would rather be jgiving out sources as well, with the binaries, we have to provide a complete set for each build option, with sources the compiler handles that through the build switches (1 set of soruces, four sets of binaries).
The binaries themselves also come with the .inf, dependency expression, .dsc, and other build environment files necessary to integrate them into the build as well. But the driving force are those binary drivers (no pun intended). There are also some special support binaries in there (pre-init and such) as well. A quick tour of the zip file contents downloaded from Firmware.intel.com will put those into perspective.
Basically, the UEFI build does not abstract those binaries or group them into one or two pre-built blobs, but rather it pulls them into the build as if the compile stage had created them directly from source. There are hopes that some of these files might actually be 'opened' one day (under BSD), in which case they would be moved out of the binary package and the sources would be added to the other BSD content on the UEFI Open Community repository. So, keeping them separate will make that migration easier on both sides.
In the meantime, we provide them separately.
Please don’t think of this a class hierarchy. That was not the intention. There are no "masses and others" here, I guess it boils down to me being kind of slow to recognize when my input might be of use. (another unintended consequence of an ill matched system)
Thank you,
Michael Krau
From: Gerard Bucas [mailto:gerard.b at tekmagic.net]
Sent: Wednesday, March 04, 2015 3:22 PM
To: Krau, Michael P; edk2-devel at lists.sourceforge.net
Cc: 'MinnowBoard Development and Community Discussion'
Subject: RE: [edk2] [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
Hi Michael,
Thanks for taking the time to explain all this – enjoyed the “insight”!
One thing that confuses me a little is your statement “MinnowBoard MAX requires some Intellectual Property (IP) Binary files to build properly. ”
Personally I have no problem with that but I am curious as to what exactly those files “contain” (conceptualy). I would have thought that those binary files contain some Intel IP specifically related to the Intel Atom E3800 series SoC (CPU) as opposed to the “MinnowBoard MAX”? In other words some sort of microcode (or whatever) that is specifically related to the SoC/CPU.
In other words, I would imagine that outside of the E3800 SoC itself, I can’t imagine there is any other “proprietary” stuff relating to the MinnowBoard MAX itself (schematics, PCB, peripheral IC’s, etc..).
Could you clarify that?
Thanks again for taking the time to the “masses”! REALLY appreciated!
Best Regards
Gerard
From: Krau, Michael P [mailto:michael.p.krau at intel.com]
Sent: Wednesday, March 4, 2015 2:25 PM
To: edk2-devel at lists.sourceforge.net; gerard.b at tekmagic.net
Cc: MinnowBoard Development and Community Discussion
Subject: RE: [edk2] [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
Hello Andrew and Gerard,
To respond to and to clarify the PS in Andrew’s message below:
It is not the intention of the MinnowBoard MAX firmware team to complicate or cause issues within the UEFI Open Source Community. If the current methods and mechanisms are failing then adjustment is necessary.
From what I understand, the problem aligns that the MinnowBoard MAX is not building off of the tip (with the binaries provided for the 0.77 version of the firmware). I can understand the frustration, but the problem is a cascade of several external factors.
Our development around MinnowBoard MAX are now centered on the Open Source community site. The BSD content for MinnowBoard MAX is being developed from the open source repository (including the platform specific packages – Vlv2DeviceRefCodePkg and Vlv2TbltDevicePkg ). So the development team is working directly to the sources on the open site. This was established at the insistence of keeping the development open to the community.
MinnowBoard MAX requires some Intellectual Property (IP) Binary files to build properly. Those files can only be distributed in binary format (I regret this greatly, but have no recourse). We cannot keep the tip updated with changes in these binary files because it is against policy of the hosting site to provide binaries without the associated sources, which is not possible with this content.
This means that those files have to be distributed in separate fashion, (those are the files per the zip file at: http://firmware.intel.com/sites/default/files/MinnowBoard_MAX-0.77-Binary.Objects.zip) at least for the 0.77 version of the official release.
To make matters more difficult, that site (firmware.intel.com) has rules that files are not posted until they have been through a complete validation cycle. So, while we are moving at one speed on the Open Source site, the binary files are held to a different speed/cadence. In the case of this time period, there have been changes in the binaries, which come back to the problems when using the tip of the Open sources and the old files.
If it were possible to provide the binary files through the same mechanism as the sources we would be doing so.
This is why our instructions are so explicit about the version from the open source repository to use for the build. It is hoped that the binaries will not be changing in the future, at least not in this manner, but that was not the case between the 0.77 and the (upcoming) 0.78 release.
As an aside, there is an effort underway to improve this binary distribution de-synch problem and make other requested improvements. As part of this effort we would be grateful to hear of where the process is failing, and how we can make improvements.
Thank you,
Michael Krau
From: Andrew Fish [mailto:afish at apple.com]
Sent: Tuesday, March 03, 2015 10:20 PM
To: gerard.b at tekmagic.net; edk2-devel at lists.sourceforge.net
Cc: MinnowBoard Development and Community Discussion
Subject: Re: [edk2] [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
On Mar 3, 2015, at 9:54 PM, Gerard Bucas <gerard.b at tekmagic.net> wrote:
Hi David
I am pretty sure I followed those instructions exactly. The only difference is that I have a slightly newer version of VS (which I resolved) and a Python (still V2.X so should be OK).
I downloaded the svn from that link that you mention, so I assume that I didn’t get a newer version? How can I check that to make sure?
Gerard,
I’ve not used svn in a long time (git rocks), but the branch has revisions too. So downloading the URL gets you the TOT of the branch. Did you specify a revision?
svn checkout -r 16679 https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1
I think you can update via:
svn update -r 16679
Not sure if you have the Unix like command line svn, or you are using some other tool, but the concept should be the same.
Thanks,
PS This project is a big mess. They should have just checked in a branch of the edk2 that had all their stuff and pointed you at a single pull. All the other Packages in the TOT of the edk2 have to compile with the TOT, some how this one is special? it is only going to get worse if every package maintainer starts making up bizarre rules to match their internal closed source project process (branch early, branch often, never merge with TOT, when possible distribute ZIP files of code, don’t use internal what you ship to customers) and try to call it open source.
Thanks!
Gerard
From: Wei, David [mailto:david.wei at intel.com]
Sent: Wednesday, March 4, 2015 12:44 AM
To: gerard.b at tekmagic.net; MinnowBoard Development and Community Discussion; edk2-devel at lists.sourceforge.net
Subject: RE: [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
Hi,
Please following below two steps to get source code. The 0.77 is based on "Revision 16679 of UDK2014.SP1 branch https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1 ". Please do not get newer version.
2. Create the following folders (sub-directories) from your workspace (e.g. "C:\MyWorkspace"):
BaseTools
Conf
CryptoPkg
EdkCompatibilityPkg
EdkShellBinPkg
FatBinPkg
IntelFrameworkModulePkg
IntelFrameworkPkg
MdeModulePkg
MdePkg
NetworkPkg
PcAtChipsetPkg
PerformancePkg
SecurityPkg
ShellBinPkg
ShellPkg
SourceLevelDebugPkg
UefiCpuPkg
Vlv2DeviceRefCodePkg
Vlv2TbltDevicePkg
3. Obtain the following BSD-licensed source code packages and files from the tianocore.org (hosted by sourceforge.net)
SVN (SubVersion) repository and place them into their respective folders (subdirectories) created in
step 2 (above):
"Revision 16679 of UDK2014.SP1 branch https://svn.code.sf.net/p/edk2/code/branches/UDK2014.SP1 "
Thanks,
David | SSG BIOS
From: elinux-MinnowBoard [mailto:elinux-minnowboard-bounces at lists.elinux.org] On Behalf Of Gerard Bucas
Sent: Wednesday, March 04, 2015 1:35 PM
To: edk2-devel at lists.sourceforge.net
Cc: 'MinnowBoard Development and Community Discussion'
Subject: Re: [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
Can anyone help with resolving this error when trying to build 0.77 firmware on Windows:
build...
…\myworkspace\EdkCompatibilityPkg\Compatibility\SmmBaseHelper\SmmBaseHelper
.inf(66): error 4000: Value of Guid [gEdkiiMemoryProfileGuid] is not found under
[Guids] section in …..\myworkspace\MdePkg\MdePkg.dec
Thanks!
Regards
Gerard
From: B Cran [mailto:bruce.cran at gmail.com]
Sent: Tuesday, March 3, 2015 1:11 AM
To: gerard.b at tekmagic.net
Cc: edk2-devel at lists.sourceforge.net; MinnowBoard Development and Community Discussion
Subject: Re: [MinnowBoard] [EDK2][MNW2]: Problem building MinnowMAX firmware 0.77 on Windows.
On Monday, March 2, 2015, Gerard Bucas <gerard.b at tekmagic.net> wrote:
: error 000E: File/directory not found in workspace
c:\...........\myworkspace\Vlv2BinaryPkg\X64RELEASE\IA32\PchSmbusArpDisabled.inf
I do not have the “….\myworkspace\Vlv2BinaryPkg\” directory.
This isn't really an edk2 issue - the Vlv2BinaryPkg tree contains the binary objects ('blobs') and is distributed separately from the main BIOS code. You can get it from http://firmware.intel.com/sites/default/files/MinnowBoard_MAX-0.77-Binary.Objects.zip . You should also read http://firmware.intel.com/sites/default/files/MinnowBoard_MAX_Rev.077-ReleaseNotes.txt for build instructions (e.g. Patching OpenSSL).
--
Bruce
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/_______________________________________________
edk2-devel mailing list
edk2-devel at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel
More information about the elinux-MinnowBoard
mailing list