public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [RFC V2] EDK2 Platform Proposal
@ 2016-09-22 20:54 Kinney, Michael D
  2016-09-28 22:22 ` Leif Lindholm
  2016-10-05  6:11 ` Bhupesh Sharma
  0 siblings, 2 replies; 13+ messages in thread
From: Kinney, Michael D @ 2016-09-22 20:54 UTC (permalink / raw)
  To: edk2-devel@lists.01.org, Kinney, Michael D

Hello,



Here is the V2 version of the proposal for the edk2-platforms repo.



Changes from V1:

================

* edk2-platform is not a fork of edk2.

* edk2-platforms branches contain CPU, Chipset, SoC, and platform specific

  packages

* edk2-plaforms/master contains all open platforms that are synced with

  edk2/master.

* Each edk2-platforms branch may support many platforms (not just one)

* Use PACKAGES_PATH to do builds using packages from multiple repositories

* Update edk2-platforms branch naming to clearly identify platforms that

  are considered stable and platforms that are under active development.

* edk2 developers may be required to verify platforms in edk2-platforms

  builds as part of test criteria.  Especially platforms that are intended

  to be used with edk2/master in edk2-platforms/stable-* branches.



=================



Similar to edk2-staging, we also have a need to manage platforms

that have been ported to edk2.  Jordan has created a repository

called edk2-platforms and has created a branch for the

minnowboard-max that uses a validated release of the UDK 2015 for

the dependent packages:



https://github.com/tianocore/edk2-platforms



https://github.com/tianocore/edk2-platforms/tree/minnowboard-max-udk2015



Instead of creating a branch per feature in edk2-staging, the

proposal is to create a branch per platform or set of platforms

in edk2-platforms.  The maintainer(s) that create and support a

platform branch can decide if the platform uses edk2/master for

dependent packages, or uses a stable release of the edk2 for dependent

packages.



This proposal provides an area for platform development so we can

minimize the number of platforms that are included in edk2/master.

It is important to keep some platforms in edk2/master so we can use

those platforms to validate features in non-platform packages in

edk2/master.  If a new platform does not add feature coverage to

edk2/master, then an edk2-platforms branch would be recommended.



Please review the proposal below for edk2-platforms.



If this proposal is accepted, then a review of the platforms in

edk2/master can be done to see if any of them should be moved to

branches in edk2-platforms.



<proposal>



Problem statement

=================

Need place on tianocore.org where platforms can be maintained by the

EDK II community.  This serves several purposes:



* Encourage more platforms sources to be shared earlier in the

  development process

* Allow platform sources to be shared that may not yet meet all edk2

  required quality criteria

* Allow platform source to be shared so the EDK II community may

  choose to help finish and validate

* Allow more platforms to be used as part of the edk2 validation and

  release cycle.

* Not intended to be used for bug fixes.



Proposal

========

1) Create a new repo called edk2-platforms

    a) The default branch edk2-platforms/master contains all open

       platforms that are actively validated against the packages

       in edk2/master.

    b) The intent is for packages in edk2-platforms to be CPU, Chipset,

       SoC, or platform specific.  Drivers that are CPU arch and platform

       agnostic should be put into the edk2 repo.



2) edk2-platforms discussions use the edk2-devel mailing list

   for design/patch/test using the following style for discussion

   of a platform branch in edk2-platforms repo.



     [platforms/branch]: Subject



3) All commits to edk2-platforms must follow same rules use for

   commits to edk2 (e.g. Tiano Contributor's Agreement)



4) Process to add a new branch to edk2-platforms



     a) Maintainer sends patch email to edk2-devel mailing list

        announcing the creation of a new branch in edk2-platforms

        with Readme.MD.  Readme.MD must be in root of branch with

        summary, owners, status, build instructions, target update

        instructions, OS compatibility, known issues/limitations,

        links to related materials, and anything else a developer

        needs to use platform(s) in that branch.



    b) Readme.MD must provide the PACKAGES_PATH setting required to

        build along with the branch names of other repos that platform

        requires.  This allows a platform developer(s) to use packages

        from edk2/master or to use packages from a validates UDK release

        (e.g. edk2/UDK2015).



     c) Maintainer creates branch with Readme.MD in edk2-platforms



     d) An edk2-platforms branch for platforms under developer use the

        following branch naming convention:

          edk2-platforms/devel-*



     e) An edk2-platforms branch for stable platforms use the following

        branch naming convention:



          edk2-platforms/stable-*



5) Process to update sources in edk2-platforms branch



     a) Commit message subject format:



          [platforms/branch PATCH]: Package/Module: Subject



     b) Directly commit changes to branch or if community review is desired,

        use edk2-devel review process.



7) Process to remove an edk2-platforms branch



     a) Stewards may periodically review of branches in edk2-platforms

        (once a quarter?)



     b) If no activity on a branch for extended period of time and the branch

        is not being maintained and is no longer functional then stewards

        send email to edk2-devel to request deletion of edk2-platforms branch.



     c) If no objections from EDK II community, then branch is deleted and

        archived at



          https://github.com/tianocore/edk2-archive.



8) How to evaluate a platform in edk2-platforms



     a) Clone edk2-platforms/[branch name]



     b) Following instructions in Readme.MD to build firmware and

        update target platform



</proposal>



Best regards,



Mike





^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2016-10-14 15:49 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-22 20:54 [RFC V2] EDK2 Platform Proposal Kinney, Michael D
2016-09-28 22:22 ` Leif Lindholm
2016-09-28 22:27   ` Andrew Fish
2016-09-29 22:21     ` Kinney, Michael D
2016-09-29 22:15   ` Kinney, Michael D
2016-10-14  7:14   ` Kinney, Michael D
2016-10-14  7:25     ` Kinney, Michael D
2016-10-14 12:59       ` Leif Lindholm
2016-10-14 15:48         ` Kinney, Michael D
2016-10-05  6:11 ` Bhupesh Sharma
2016-10-05 13:23   ` Richardson, Brian
2016-10-05 14:16   ` Sakar Arora
2016-10-10 19:22     ` Leif Lindholm

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox