Grant did some investigation a while ago when Linaro started to work on UEFI
- see his email
http://lists.linaro.org/pipermail/boot-architecture/2012-December/000192.htm
l

 

At some point I was also using 'git submodules' to avoid mixing EDK2 tree
source code with one of the platforms I was working on that was not intended
to go upstream.

It is quite painful with git-submodules when you want your tree to contain
all the latest head of the sub repositories.

If you want your root EDK2 repository to always track the latest version of
your platform repositories (a sub-directory of your root directory) then for
every changes in the platform repository you make, you need to commit a
change in the root directory to update the SHA1 of the git-submodule into
the root repository.

 

I like the idea to get a directory structure such as
Platform/<Vendor>/<PlatformNamePkg>.

 

FYI, I was also told that what I am currently doing for the ARM Platforms is
not compliant with the UEFI packaging spec. This spec does not support
packages under packages (eg: ArmPlatformPkg/ArmVExpressPkg).

 

It would be nice to get a 'Driver' directory as well. Today, drivers are
spread over the packages that do not make really easy to find them.

And potentially having all the drivers into a same root directory could
allow some drivers to benefit fixes from other driver (eg: an engineer
working on a Ethernet driver could compare what other Ethernet drivers do
and could find issues in those drivers).

I would not be surprise if we start to see more and more Open Source UEFI
driver contributions - an appropriate location in the EDK2 repository would
probably be welcome.

 

From: Andrew Fish [mailto:af...@apple.com] 
Sent: 25 July 2013 00:57
To: Chip Ueltschey
Cc: edk2-devel@lists.sourceforge.net
Subject: Re: [edk2] Platform Specific Contribution

 

 

On Jul 24, 2013, at 4:51 PM, Chip Ueltschey <chipj...@gmail.com> wrote:





I think it would be good to find some way to organize this better.

Currently the DuetPkg and Nt32Pkg are part of the UDK releases. I think it
would be better to have a grouping of packages related to emulator support
that included these as well as EmulatorPkg, UnixPkg and OvmfPkg, and then
remove those packages from the set of UDK packages.

 

This sounds fine to me.





The platform specific packages are at least not included in the UDK set, but
I certainly agree that it would better to group them somehow.

It seems odd to me that all this sort of packages are located in the
edk2/trunk.

I am very unfamiliar with how git reads into this (being a svn user today),
but it seems like thinks would be better with a slightly less flat
structure.

 

I agree 100%.

 

Thanks,

 

Andrew Fish





-chip

 

 

On Wed, Jul 24, 2013 at 9:41 AM, Andrew Fish <af...@apple.com> wrote:

I've not seen any thoughts on this so here goes. Some one who understands
source control better than me might have a better idea.

I think something like this could work with git.

Add a Platform directory to /trunk/edk2. Move EmulatorPkg, Nt32Pkg, OvmfPkg
(we could make this a separate project too) and an other publicly available
emulation environments  into this directory. Remove hardware platforms.

Then add N projects to support hardware platforms, maybe per company, or per
project. A platform project looks like:

git submodules of a specific version of the edk2 tree (fat driver, etc.). It
could point to an svn branch that contains patches that are not yet merged
into the mainline.
Platfom/BeagleBoardPkg is then a git submodule

So the N projects are hosted in a different svn/git than the ekd2, and then
there is a  git project that represents an edk2 version, plus a specific set
of platform code. This means platform consumers can just pull a single item.
The project git can be the working copy that users download, and the repo
where platform code lives could be for TOT development.

So again I'm no git expert but I've used a git project that has a submodule
that is an svn remote. The strange thing is you end up doing git pull from .
and Platfom/BeagleBoardPkg. Some one who knows git/svn better, may know a
better way to do this, but at least something like this scales to a large
number of platforms.

Thanks,

Andrew Fish



On Jul 22, 2013, at 1:07 PM, Sivasakthivel Nainar <sivasakthiv...@ami.com>
wrote:

> Hi All,
> Is Tianocore.org  supports platform specific contribution? I have seen
couple of Arm Platform sources in ArmPlatformPkg and  Ti BeagleBoard source.
If so, Who is the contact point for creating such  packages?
>
> Thanks
> Siva
>
> The information contained in this message may be confidential and
proprietary to American Megatrends, Inc.  This communication is intended to
be read only by the individual or entity to whom it is addressed or by their
designee. If the reader of this message is not the intended recipient, you
are on notice that any distribution of this message, in any form, is
strictly prohibited.  Please promptly notify the sender by reply e-mail or
by telephone at 770-246-8600, and then delete or destroy all copies of the
transmission.
>
>
----------------------------------------------------------------------------
--
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831
<http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> &iu=/4140/ostg.clktrk
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel


----------------------------------------------------------------------------
--
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831
<http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> &iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

 

 
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to