[coreboot] Re: Deprecation of the Intel Quark SoC

2022-04-15 Thread Karl Semich
>
>
> In round numbers, coreboot is at about 5k commits/year (last time I
> looked; maybe it's higher or lower now).  Assuming each CL takes
> around ten builds, that's 50,000 builds, times 350 boards, which
> translates to "a lot." It keeps Martin's house warm, I suspect. That's
> not counting the continuous builds that go on for Chromebooks at
> Google, Intel, and many other places. These builds all include Quark.
>

This specific information on what kind of tasks retaining quark can burden
is productive.

If people preferred to retain quark, it could be important to address
things impacted by that choice.

Other approaches to this burden could include reducing the frequency of
inclusion of boards within CI if their subtrees were not touched by
intermediate commits.

>
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] RFC: Clarifying use of GCC extensions in the coding style

2022-04-15 Thread Julius Werner
Hi,

We occasionally get into discussions in code reviews when code uses a
GCC extension, and a reviewer asks that it be rewritten to be C
standard compliant instead. A recent example was on the use of `void
*` arithmetic in this patch
https://review.coreboot.org/c/coreboot/+/56791/9/src/soc/mediatek/common/pcie.c#109
, and there have been others in the past. I would like to come to a
consensus on this topic here and add some blurb to the coding style
document so we don't have to rehash the same discussion over and over
again.

In my opinion, GCC extensions are absolutely necessary for coreboot
development and there should be no reason to reject them. Inline
assembly is the most obvious example -- without it we would have to
convert a ton of static inline functions that wrap special
instructions into full linker-level functions in a separate assembly
file instead, and eat all the unnecessary function call overhead that
comes with that. Others enable such important features that it would
become much more dangerous and cumbersome to develop without them --
most importantly statement expressions
(https://gcc.gnu.org/onlinedocs/gcc-11.2.0/gcc/Statement-Exprs.html)
which are necessary to write things like double-evaluation safe
macros, expression-assertions like dead_code_t() and simple
convenience shortcuts like wait_us(). And some extensions just offer a
small bit of convenience to reduce boilerplate -- for example, `void
*` arithmetic just tends to be useful to prevent cluttering the code
with a bunch of unnecessary casts to other types that don't add any
additional meaning to the data (e.g. for an unspecified buffer of
opaque data I think `void *` is a much more appropriate type than
`uint8_t *`, even if I want to add a byte offset to it), and I've
never seen a case where I think it would have actually been unclear to
anyone what step width the pointer arithmetic was done at (there's no
reason to assume anything other than bytewise for a `void *`).

If we need some extensions anyway, and coreboot will never be "fully C
standards compliant" (not that that would actually be very useful for
anything in practice), I don't see a reason why we should still avoid
some extensions when we're using others. I think if an (official,
long-term supported) extension exists and it allows us to write better
code than standard C, there should be no reason not to use it. (Note
that for those people who are trying to get coreboot working with
clang, it generally supports all the same extensions as GCC.) I've
written a draft CL to add a section for this to the coding style,
please let me know what you think:
https://review.coreboot.org/c/coreboot/+/63660
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: Deprecation of the Intel Quark SoC

2022-04-15 Thread ron minnich
I think quark revival should come with a reasonable deadline. IOW, if
people are serious about keeping this platform, I think we ought to
see commitments as to when they report that it works. I'd suggest July
1. We've had a lot of commitments before, but everyone is busy, and
hopes can outrun reality. It should not take more than a few hours to
verify that this board or does not work.

Keeping an old platform is not zero cost. It comes with costs for
running CI, keeping it up to date as other parts of coreboot evolve,
and dealing with build failures that can occur as it falls out of
date. Those costs are all externalized, for most of us, to Patrick and
Martin, but they do exist.

In round numbers, coreboot is at about 5k commits/year (last time I
looked; maybe it's higher or lower now).  Assuming each CL takes
around ten builds, that's 50,000 builds, times 350 boards, which
translates to "a lot." It keeps Martin's house warm, I suspect. That's
not counting the continuous builds that go on for Chromebooks at
Google, Intel, and many other places. These builds all include Quark.
To put it another way, Quark has a CO2 footprint. There ought to be
usage to justify this cost.

I'm told that 1% or so of our mainboards are dependent on quark. As
far as I know, there are 0 quark boards out there using coreboot. We
seem to be putting an awful lot of effort into a board with no users
-- a board and chip that, furthermore, has been dead for several
years, and was never that great to begin with.

On Fri, Apr 15, 2022 at 11:29 AM Zimmer, Vincent
 wrote:
>
> Sure. Send me a mailing address.  Unites should have Europe-friendly 
> wall-wart/power supplies and cables, etc. in the box.
>
>
>
> Vincent
>
>
>
> From: Andy Pont 
> Sent: Friday, April 15, 2022 11:13 AM
> To: Zimmer, Vincent ; Karl Semich 
> <0xl...@gmail.com>; lpleah...@gmail.com
> Cc: Coreboot 
> Subject: Re: [coreboot] Re: Deprecation of the Intel Quark SoC
>
>
>
> Vincent wrote...
>
>
> > I can provide some Galileo h/w for folks if there is interest in supporting.
>
>
>
> Looking at the configs it looks like both a Gen 1 and Gen 2 Galileo boards 
> are the place to start?
>
>
>
> If you have both and can get them shipped to the UK that would be great. I 
> suspect I have power supplies and debug cables for them.
>
>
>
> -Andy
>
> ___
> coreboot mailing list -- coreboot@coreboot.org
> To unsubscribe send an email to coreboot-le...@coreboot.org
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: Deprecation of the Intel Quark SoC

2022-04-15 Thread Zimmer, Vincent
Sure. Send me a mailing address.  Unites should have Europe-friendly 
wall-wart/power supplies and cables, etc. in the box.

Vincent

From: Andy Pont 
Sent: Friday, April 15, 2022 11:13 AM
To: Zimmer, Vincent ; Karl Semich <0xl...@gmail.com>; 
lpleah...@gmail.com
Cc: Coreboot 
Subject: Re: [coreboot] Re: Deprecation of the Intel Quark SoC

Vincent wrote...

> I can provide some Galileo h/w for folks if there is interest in supporting.

Looking at the configs it looks like both a Gen 1 and Gen 2 Galileo boards are 
the place to start?

If you have both and can get them shipped to the UK that would be great. I 
suspect I have power supplies and debug cables for them.

-Andy
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: Deprecation of the Intel Quark SoC

2022-04-15 Thread Andy Pont
Vincent wrote...

> I can provide some Galileo h/w for folks if there is interest in supporting.

Looking at the configs it looks like both a Gen 1 and Gen 2 Galileo boards are 
the place to start?

If you have both and can get them shipped to the UK that would be great. I 
suspect I have power supplies and debug cables for them.

-Andy
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org


[coreboot] Re: Deprecation of the Intel Quark SoC

2022-04-15 Thread Peter Stuge
Michael Niewöhner wrote:
> Once again, nobody is talking about deleting the platform or make it unusable.

Moving a board to a branch includes deleting it on master.

Deleting on master harms the board in two ways:

* Board code loses visibility, which also harms the project as a whole.
  (Less discoverable outside of the project => less newcomers.)

* master diverges over time, so future work on master is less likely
  to apply to the board code.

Whether you intend it or not that de-facto deprecates the board code.


Added to that is a less quantifiable organizational/psychological
aspect, where a board existing only on a historical release branch
is likely understood by most to mean that this board code is indeed
historical within coreboot. This is "softer" than the two points
above, but I believe still of consequence.


> Actually, moving it to a branch is the exact opposite to that -
> preserve a *hopefully* working state,

That state is preserved on master too, so that's not a good argument.

If you want to discuss how we can best document the collective
experience and test results for all boards then I think that's great!

Martin mentioned board-status and how there's room for improvement
in this area. But e.g. a branch per board is not an improvement, for
the reasons I give in this thread.

We could consider using git tags, but they're also not a very good fit.

Do you have more ideas? Maybe something concrete for how board-status
could be improved?

Maybe a first improvement is to split it into two; one small repo for
high-level test results with metadata, another for the log files.
Perhaps some compression could improve storage requirements for the latter?


> while still taking maintaince work

My ask is that such benefits in fact exist and are explained when
proposing to delete a board from master, so *those* can be discussed -
as opposed to (like in this case) speculatively proposing to delete a
board on master based merely on lack of recent (define recent?) test
results and development work. (At some point every board code will
become complete, so no more work required.)

When there is a clear benefit, such as reducing workload in other
code then it's possible to have a concrete discussion and it's also
possible for people to offer other ways to create the same benefit.

To me, deleting from master without clear benefit is premature.

I guess one could argue that master should contain as little code as
possible, only whatever someone is actively working on, but that
doesn't seem at all useful for those who like to use our project.


> from ***VOLUNTEERS***.

I wonder what the split is between paid and spare time coreboot folks.


//Peter
___
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org