Hi!

Sorry for the late reply, here's a draft the concepts from this thread and
link them to sustainability levels:
https://docs.google.com/document/d/1cihVQPf377c2W5ElT4ouvVx6VpDTE6mrAIbakKCEW7Y/edit?usp=sharing
(doc open for comments / suggestions from anyone, ping me if you need write
access)

Best,
- Loïc Minier

On Fri, 9 Apr 2021 at 13:45, François Ozog <francois.o...@linaro.org> wrote:

>
>
> On Fri, 9 Apr 2021 at 13:32, Heinrich Schuchardt <xypron.g...@gmx.de>
> wrote:
>
>> On 09.04.21 08:59, François Ozog wrote:
>> >
>> >
>> > On Thu, 8 Apr 2021 at 19:34, Heinrich Schuchardt <xypron.g...@gmx.de
>> > <mailto:xypron.g...@gmx.de>> wrote:
>> >
>> >     On 4/8/21 10:46 AM, François Ozog wrote:
>> >     > On Thu, 8 Apr 2021 at 10:30, Loïc Minier
>> >     <loic.min...@canonical.com <mailto:loic.min...@canonical.com>>
>> wrote:
>> >     >
>> >     >> Hi François-Frédéric,
>> >     >>
>> >     >> Like you, I'm particularly keen to connect the dots between
>> >     environmental
>> >     >> sustainability and open source software.
>> >     >>
>> >     >> I love your levels, basically recognizing that if the firmware
>> is not
>> >     >> updatable or maintained anymore, or if it can't fulfill its
>> >     function by
>> >     >> running TAs, the whole system might be rendered obsolete.
>> >     >>
>> >     >> There are two other interesting dimensions I would propose to
>> >     consider:
>> >     >> - resource requirements of the firmware and payloads such as TAs
>> >     – the
>> >     >> firmware/system is rendered obsolete because resources available
>> >     for the
>> >     >> firmware are insufficient, e.g. TAs or binaries grow in size or
>> >     number or
>> >     >> runtime requirements to the point that the device can't function
>> >     >>
>> >     > I missed that one even though we have a call on this topic today
>> >     (see on
>> >     > trusted-substrate.org <http://trusted-substrate.org>) on how to
>> >     make TA lifecycle much easier, starting
>> >     > with Secure DRAM size selection by product maker. There is also an
>> >     > ownership transfer discussion that I had with an industrial player
>> >     that
>> >     > would allow formalization of who can change what "downstream"
>> (here
>> >     > downstream is relative to software chain that starts with firmware
>> >     and ends
>> >     > with applications)
>> >     >
>> >     >> - architectural requirements – the firmware or its payloads start
>> >     >> requiring recent hardware features or a newer API; this is likely
>> >     going to
>> >     >> bring some tradeoffs in security as the bar keeps getting higher;
>> >     this
>> >     >> could connect to your level 2
>> >     >>
>> >     >> Good point. That said, this should not imply an ACPI HAL like
>> >     effort by
>> >     > the firmware. In addition, I remember the Panasonic CTO calling
>> >     for using
>> >     > virtio as a HAL even on non-virtualized environments. Would this
>> >     be part of
>> >     > the picture?
>> >     >
>> >     >> I'd love to help draft language or with recommendations around
>> this!
>> >     >>
>> >     >> That would be great: what about you share a Google doc and we
>> >     discuss it
>> >     > here?
>> >     >
>> >     >> Best,
>> >     >> - Loïc Minier
>> >     >>
>> >     >> On Thu, 8 Apr 2021 at 10:12, François Ozog
>> >     <francois.o...@linaro.org <mailto:francois.o...@linaro.org>>
>> >     >> wrote:
>> >     >>
>> >     >>> Hi
>> >     >>>
>> >     >>> even though I am not an "ecology activist", sustainability is a
>> >     topic dear
>> >     >>> to me. And it can translate into firmware world... So I am
>> >     targeting this
>> >     >>> message to the audience of the two firmware communities I know
>> >     and hope it
>> >     >>> is okay to do so.
>> >     >>>
>> >     >>> March 2021 was a big date for Open Source Firmware
>> >     >>> <https://www.opencompute.org/projects/open-system-firmware
>> >     <https://www.opencompute.org/projects/open-system-firmware>>: that
>> >     was the
>> >     >>> deadline to get
>> >     >>>
>> >     >>> "
>> >     >>> Owners must be able to change firmware and share it --
>> including any
>> >     >>> binary
>> >     >>> components -- with other owners. Starting in March, 2021, OCP
>> >     badging for
>> >     >>> servers will require that systems support OSF.
>> >     >>> "
>> >     >>>
>> >     >>> That's a big step towards sustainability in the OCP world.
>> >     >>>
>> >     >>> More generally, we should have the capacity to characterize
>> firmware
>> >     >>> sustainability for post official firmware End Of Life.
>> >     >>>
>> >     >>> What about the following :
>> >     >>>
>> >     >>> level 0: system cannot evolve or be updated.
>> >     >>>
>> >     >>> level 1: the system can be updated to a bootable minimal
>> >     functionality
>> >     >>> with
>> >     >>> open community effort.It may lack some features. For instance,
>> >     you can
>> >     >>> still look at your TV but lose Netflix 4K because the owners
>> (in OCP
>> >     >>> sense)
>> >     >>> cannot get a signed Netflix TA (either updated or not).
>> >     >>>
>> >     >>> level 2: the TAs and other binaries can be made available
>> >     (signed) to the
>> >     >>> ones maintaining open source firmware projects (TF-A, OP-TEE,
>> >     U-Boot...).
>> >     >>> For instance, owners (in the OCP sense) can get the updated
>> >     Netflix TA
>> >     >>> binary (updated or not) and sign it for inclusion.
>> >
>> >     Getting a binary now does not mean that you will get a new
>> compatible
>> >     binary in two years after a grave security bug has been discovered
>> in
>> >     the WiFi firmware or Netflix uses a new encoding scheme.
>> >
>> >     So isn't level 2 still on the path to obsolescence?
>> >
>> > I think I had the unconscious idea to have the equivalent of Google
>> > Project Trebble
>> > <
>> https://www.computerworld.com/article/3306443/what-is-project-treble-android-upgrade-fix-explained.html
>> >:
>> > the binary blobs are part of an ABI framework so that the project can
>> > evolve but still get access to old "stuff".
>>
>> This project is about supporting SoCs for four years and after that
>> comes obsolescence.
>>
>> If you are buying a mid-range phone without the newest SoC, it boils
>> down to the two years obsolescence of Android One phones which is a shame.
>>
>> > There is nothing such as a free meal: blobs are inevitable and we don't
>> > want proliferation of ABI that could slow innovation.
>> > In other words, can we think of a Trebble for firmware that would allow
>> > evolution of the core open source projects and still be able to use old
>> > blobs?
>> > Making a mind experiment with DRAM initialization binary and a TF-A API
>> > change (which happened last year I think on my platform of interest),
>> > that change could have been made in such a way to maintain compatibility
>> > with the old API.
>> > Is it something thinkable in the U-Boot context ?
>>
>> Looking through the U-Boot code I found the "NXP PFE Ethernet driver"
>> for LS1012A boards that uses a firmware blob. Of course using such a
>> blob does not stop us from developing the rest of U-Boot. Yet
>> obsolescence for LS1018A boards will be dictated by the availability of
>> updates for NXP's blob and license conditions.
>>
>> In a Trebble for Android world: there is an immutable ABI for ethernet
> driver (the most complex to accept has been on the GPU side). So you can
> update the entire system and still use an old blob.
> In a Trebble ofr U-Boot, we would define a similar immutable ABI for
> ethernet.
> Should NXP have compatible licensing conditions, some systems could be
> sustainability "level 2".
> (The goal is not to have all products be level 2 or 3, the goal is to
> understand what is possible with a particular product, and may be make a
> buying decision)
>
>> Best regards
>>
>> Heinrich
>> >
>> >     >>>
>> >     >>> level 3: all firmware components are open source and can thus be
>> >     community
>> >     >>> maintained.
>> >     >>>
>> >     >>> I think :
>> >     >>> Level 2 is the right balance between business value and
>> >     "ecological" goal
>> >     >>> of sustainability.
>> >     >>> Level 3 is not mandatory and not the ultimate goal.
>> >     >>>
>> >     >>> Is this a good way to characterize sustainability?
>> >     >>> How to make at least level 2 happen ?
>> >     >>>
>> >     >>> Cheers
>> >     >>>
>> >     >>> FF
>> >     >>> --
>> >     >>> François-Frédéric Ozog | *Director Linaro Edge & Fog Computing
>> >     Group*
>> >     >>> T: +33.67221.6485
>> >     >>> francois.o...@linaro.org <mailto:francois.o...@linaro.org> |
>> >     Skype: ffozog
>> >     >>> _______________________________________________
>> >     >>> boot-architecture mailing list
>> >     >>> boot-architecture@lists.linaro.org
>> >     <mailto:boot-architecture@lists.linaro.org>
>> >     >>> https://lists.linaro.org/mailman/listinfo/boot-architecture
>> >     <https://lists.linaro.org/mailman/listinfo/boot-architecture>
>> >     >>>
>> >     >>
>> >     >>
>> >     >> --
>> >     >> Loïc Minier
>> >     >>
>> >     >
>> >     >
>> >
>> >
>> >
>> > --
>> >
>> > François-Frédéric Ozog | /Director Linaro Edge & Fog Computing Group/
>> > T: +33.67221.6485
>> > francois.o...@linaro.org <mailto:francois.o...@linaro.org
>> > | Skype: ffozog
>> >
>> >
>>
>>
>
> --
> François-Frédéric Ozog | *Director Linaro Edge & Fog Computing Group*
> T: +33.67221.6485
> francois.o...@linaro.org | Skype: ffozog
>
>

-- 
Loïc Minier
_______________________________________________
boot-architecture mailing list
boot-architecture@lists.linaro.org
https://lists.linaro.org/mailman/listinfo/boot-architecture

Reply via email to