Patrick Rudolph has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 51 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/1
diff --git a/Documentation/contributing/project_ideas.md b/Documentation/contributing/project_ideas.md index 90164a2..4090e9e 100644 --- a/Documentation/contributing/project_ideas.md +++ b/Documentation/contributing/project_ideas.md @@ -179,3 +179,54 @@
### Mentors * Ron Minnich rminnich@google.com + +## Complete the automatic FMAP generation +Improve automatically generated FMAPs in coreboot. + +FMAPs describe the flash layout, seperating the flash chip into regions +and sub-regions. coreboot is placed in one or multiple of this regions, +but usually additional ones are required (Intel ME, MRC cache, ...). + +Currently the FMAP needs to manually generated on non-x86 devices or if +VBOOT is to be used. It would be useful to extend the current tools +to automatically generated FMAPs based on selected architecture and +SoC. + +### Requirements +* coreboot knowledge: Have a general concept of the build system +* other knowledge: Experience with C and bash +* hardware requirements: Nothing special + +### Mentors +* Patrick Rudolph patrick.rudolph@9elements.com +* Christian Walter christian.walter@9elements.com + +## Boardstatus replacement +The [Board status page](https://coreboot.org/status/board-status.html) allows +to see last working commit of a board. The page is generated by a cron job +that runs on a huge git reposity. + +Build an open source replacement using exisiting tools and libraries, +consisting out of a backend, a frontend and client side scripts. +The backend should connect to an SQL database with can be controlled using +a REST API / gRPC / XMLRPC connection. + +The frontend should use React to display the current board status. + +Provide a script that allows to: +1. Push mainboard details from coreboot master CI +2. Push mainboard test results from authenticated users containing + * commit hash + * bootlog + * dmesg + * timestamps + * coreboot config + +### Requirements +* coreboot knowledge: Not required +* software knowledge: You must be able to implement a nice website with + client/server model using an SQL database, authentication and RPC interfaces. + +### Mentors +* Patrick Rudolph patrick.rudolph@9elements.com +* Christian Walter christian.walter@9elements.com
Patrick Rudolph has uploaded a new patch set (#2). ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 55 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/2
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 2:
(3 comments)
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 204: Boardstatus Board status
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 215: React I think that is too specific. Why not Angular?
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 218: borken broken
Hello build bot (Jenkins),
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/38829
to look at the new patch set (#3).
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 55 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/3
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 3:
(3 comments)
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 204: Boardstatus
Board status
Done
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 215: React
I think that is too specific. […]
Done
https://review.coreboot.org/c/coreboot/+/38829/2/Documentation/contributing/... PS2, Line 218: borken
broken
Done
Duncan Laurie has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 3: Code-Review+1
Patrick Georgi has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 3: Code-Review+1
(1 comment)
Right now the text of the board status project offers "a modern library like Angular" while the requirements below state "React", which seems confusing. I offered a more tech neutral requirement statement but anything that sorts out the ambiguity works for me.
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... PS3, Line 232: Golang, React, SQL, REST interface "We prefer Golang and SQL for the backend which should provide a RESTful interface. The frontend should use established libraries or frameworks"?
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 3: Code-Review+1
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... PS3, Line 232: Golang, React, SQL, REST interface
"We prefer Golang and SQL for the backend which should provide a RESTful interface. […]
Sounds good.
Hello Paul Menzel, Duncan Laurie, build bot (Jenkins), Patrick Georgi,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/38829
to look at the new patch set (#4).
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 55 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/4
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 4:
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... PS3, Line 232: Golang, React, SQL, REST interface
Sounds good.
Already part of the text above. Simplified the requirements.
Hello Paul Menzel, Duncan Laurie, build bot (Jenkins), Patrick Georgi,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/38829
to look at the new patch set (#5).
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 55 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/5
Arthur Heymans has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 5:
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... PS5, Line 169: : ## Complete the automatic FMAP generation This is somewhat related to what is described in technotes/2015-11-rebuilding-coreboot-image-generation.md. Do we want to add that as a separate project?
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 5:
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... PS5, Line 169: : ## Complete the automatic FMAP generation
This is somewhat related to what is described in technotes/2015-11-rebuilding-coreboot-image-generat […]
No this is a simpler task without the use of a manifest.
Arthur Heymans has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 5: Code-Review+1
(2 comments)
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... PS5, Line 169: : ## Complete the automatic FMAP generation
No this is a simpler task without the use of a manifest.
Agreed. Do you think working on image generation is feasable for a (separate) GSoC project?
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... PS5, Line 184: Experience with C and bash Is something (can be any language) that parses Kconfig/.config not all that is needed?
Hello build bot (Jenkins), Patrick Georgi, Paul Menzel, Duncan Laurie, Arthur Heymans,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/38829
to look at the new patch set (#6).
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 61 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/6
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 6:
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/5/Documentation/contributing/... PS5, Line 184: Experience with C and bash
Is something (can be any language) that parses Kconfig/. […]
Dropped this project idea after reading the current code...
Patrick Georgi has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 6: Code-Review+2
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 6: Code-Review+1
(8 comments)
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 190: doesn't don't
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 220: i spurious `i`: exis*i*ting
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 221: consisting out of consisting of
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 224: task plural? tasks
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 228: last test Should the results of previous tests be kept around? After reading this, it is unclear to me.
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 234: working? Note that, if a board is not working, then some of the elements below might not be obtainable.
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 235: commit hash This has a rather nasty problem: it makes reports done using out-of-tree patches, such as when adding support for a new mainboard, unidentifiable. Do we want to support this use-case?
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 242: Not required Well, one would have to collect all the requirements that must be satisfied in order to design the database structure. If one also has to learn what coreboot is about when doing this project, not being able to keep up with the schedule is a major risk. How about:
* coreboot knowledge: Non-technical, needed to perform requirements analysis
Patrick Georgi has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 6:
(1 comment)
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/3/Documentation/contributing/... PS3, Line 232: Golang, React, SQL, REST interface
Already part of the text above. Simplified the requirements.
Done
Hello build bot (Jenkins), Patrick Georgi, Paul Menzel, Duncan Laurie, Angel Pons, Arthur Heymans,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/38829
to look at the new patch set (#7).
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com --- M Documentation/contributing/project_ideas.md 1 file changed, 63 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/29/38829/7
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 6:
(8 comments)
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 190: doesn't
don't
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 220: i
spurious `i`: exis*i*ting
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 221: consisting out of
consisting of
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 224: task
plural? tasks
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 228: last test
Should the results of previous tests be kept around? After reading this, it is unclear to me.
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 234: working?
Note that, if a board is not working, then some of the elements below might not be obtainable.
Done
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 235: commit hash
This has a rather nasty problem: it makes reports done using out-of-tree patches, such as when addin […]
I see that this problem exists, but can't be easily fixed. You'd need to add a whitelist of commits, or at least verify if it's in the master repo. I'd say that is an optional task or something to be done afterwards.
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 242: Not required
Well, one would have to collect all the requirements that must be satisfied in order to design the d […]
Done
Angel Pons has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 7: Code-Review+2
(1 comment)
Let's get this in.
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... File Documentation/contributing/project_ideas.md:
https://review.coreboot.org/c/coreboot/+/38829/6/Documentation/contributing/... PS6, Line 235: commit hash
I see that this problem exists, but can't be easily fixed. […]
Right, it's rather complicated.
Patrick Georgi has submitted this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Documentation: Add new GSoC projects
Change-Id: I5d67361286da04819def3227b2c6cb41a063fc5b Signed-off-by: Patrick Rudolph patrick.rudolph@9elements.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/38829 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Angel Pons th3fanbus@gmail.com --- M Documentation/contributing/project_ideas.md 1 file changed, 63 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Angel Pons: Looks good to me, approved
diff --git a/Documentation/contributing/project_ideas.md b/Documentation/contributing/project_ideas.md index 2c621f4..141023f 100644 --- a/Documentation/contributing/project_ideas.md +++ b/Documentation/contributing/project_ideas.md @@ -184,3 +184,66 @@
### Mentors * TODO + +## Fix POST code handling +coreboot supports writing POST codes to I/O port 80. +There are various Kconfigs that deal with POST codes, which don't have +effect on most platforms. +The code to send POST codes is scattered in C and Assembly, some use +functions, some use macros and others simply use the `outb` instruction. +The POST codes are duplicated between stages and aren't documented properly. + + +Tasks: +* Guard Kconfigs with a *depends on* to only show on supported platforms +* Remove duplicated Kconfigs +* Replace `outb(0x80, ...)` with calls to `post_code(...)` +* Update Documentation/POSTCODES +* Use defines from console/post_codes.h where possible +* Drop duplicated POST codes +* Make use of all possible 255 values + +### Requirements +* knowledge in the coreboot build system and the concept of stages +* other knowledge: Little experience with C and x86 Assembly +* hardware requirements: Nothing special + +### Mentors +* Patrick Rudolph patrick.rudolph@9elements.com +* Christian Walter christian.walter@9elements.com + +## Board status replacement +The [Board status page](https://coreboot.org/status/board-status.html) allows +to see last working commit of a board. The page is generated by a cron job +that runs on a huge git repository. + +Build an open source replacement written in Golang using existing tools +and libraries, consisting of a backend, a frontend and client side +scripts. The backend should connect to an SQL database with can be +controlled using a RESTful API. The RESTful API should have basic authentication +for managment tasks and new board status uploads. + +At least one older test result should be keept in the database. + +The frontend should use established UI libraries or frameworks (for example +Angular) to display the current board status, that is if it's working or not +and some details provided with the last test. If a board isn't working the last +working commit (if any) should be shown in addition to the broken one. + +Provide a script/tool that allows to: +1. Push mainboard details from coreboot master CI +2. Push mainboard test results from authenticated users containing + * working + * commit hash + * bootlog (if any) + * dmesg (if it's booting) + * timestamps (if it's booting) + * coreboot config + +### Requirements +* coreboot knowledge: Non-technical, needed to perform requirements analysis +* software knowledge: Golang, SQL for the backend, JS for the frontend + +### Mentors +* Patrick Rudolph patrick.rudolph@9elements.com +* Christian Walter christian.walter@9elements.com
9elements QA has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/38829 )
Change subject: Documentation: Add new GSoC projects ......................................................................
Patch Set 8:
Automatic boot test returned (PASS/FAIL/TOTAL): 3/0/3 Emulation targets: EMULATION_QEMU_X86_Q35 using payload TianoCore : SUCCESS : https://lava.9esec.io/r/1484 EMULATION_QEMU_X86_Q35 using payload SeaBIOS : SUCCESS : https://lava.9esec.io/r/1483 EMULATION_QEMU_X86_I440FX using payload SeaBIOS : SUCCESS : https://lava.9esec.io/r/1482
Please note: This test is under development and might not be accurate at all!