<div dir="ltr">Rettungs (German) - Ubersetzung/translate ist/is rescue. As much as I know... Desperately trying to learn more Deutsche Sprache these days (bloody tough - too old for it).<div><br></div><div>I'll again repeat what I always believe in, and always advertise(d) here, and anywhere else: Coreboot is one excellent absolute minimum required for booting HW platform to the next step: OS boot loader, and I like Coreboot as it is. But having U-boot, or Tiano core as payloads, or minimal Linux, to get to again to boot to the real Linux... Nope (too much overhead)! Not my understanding of how things should work.</div><div><br></div><div>I very much like UEFI concept, to have a fs (file system) formatted in the boot-loader (and get rid of legacy MBR), but with the absolute minimal overhead - good to go. And this is why I tried to advertise micro part of Tiano Core - ONLY fs FAT32 with /boot/efi (/dev/sda2) part. Since SEC and PEI part (BIOS equivalence) is Coreboot itself, and then DXE whole shaman of probably 2M lines of code... Forget it - Mont Everest burden!</div><div><br></div><div>UEFI BIOSes (64b - pleonasm) these days rule (Client and Server INTEL CORE/ATOM platforms)... And Coreboot should (my subjective opinion - pleonasm) add slim payload from described above: making just /boot/efi file system... with CSM OFF, true UEFI environment.</div><div><br></div><div>Have no idea if GRUB2 as payload already does this (UEFI lookalike /boot/efi)? This is the question I am asking Coreboot Community (if this is the case, even better)! :-)</div><div><br></div><div>For Consumer Electronics, I completely agree with Ron and others in this thread.</div><div><br></div><div>Thank you,</div><div>Zoran</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Nov 27, 2016 at 1:23 AM, ron minnich <span dir="ltr"><<a href="mailto:rminnich@gmail.com" target="_blank">rminnich@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">And let's not forget John Lewis' excellent work on JELTKA for chromebooks, which is also Linux and kexec. I've used it and it's great.<div><br></div><div>I have a replacement for petitboot which is an all-Go userland: u-root. Programs  in the root file system are Go source and are compiled on first use -- there's a full Go toolchain embedded in flash. There are only 5 userland binaries on the root file system, four of which are Go toolchain, one is /init, and the rest is all Go source. I've got this working today on a KGPE-D16. I first tested it in Prague in 2014, and we've also had it working on the Gizmo II and a Chromebox. If you have 16 MiB flash, it just works -- really. <br><div><br></div><div>So there's five efforts, working today, all based on linux and kexec, and at least one in commercial use.</div><div><br></div><div>I think the lifeboat should come with a penguin painted on its side. It's known to work -- since 1999 :-) -- and it avoids recreating the full universe of drivers, protocols, file systems, and so on. </div><span class="HOEnZb"><font color="#888888"><div><br></div><div>ron</div></font></span></div></div><div class="HOEnZb"><div class="h5"><br><div class="gmail_quote"><div dir="ltr">On Sat, Nov 26, 2016 at 4:20 PM Zaolin <<a href="mailto:zaolin@das-labor.org" target="_blank">zaolin@das-labor.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg">
    <p class="m_2410112387894102732gmail_msg">In my opinion there are currently two payloads which are really
      interesting and promising for end users:</p>
    <p class="m_2410112387894102732gmail_msg">* HEADS - <a class="m_2410112387894102732m_3297935995391858888moz-txt-link-freetext m_2410112387894102732gmail_msg" href="https://github.com/osresearch/heads" target="_blank">https://github.com/osresearch/<wbr>heads</a></p>
    <p class="m_2410112387894102732gmail_msg">* Petitboot -
      <a class="m_2410112387894102732m_3297935995391858888moz-txt-link-freetext m_2410112387894102732gmail_msg" href="https://secure.raptorengineering.com/content/kb/1.html" target="_blank">https://secure.<wbr>raptorengineering.com/content/<wbr>kb/1.html</a></p>
    <p class="m_2410112387894102732gmail_msg">I am currently working on the UI of Heads. So feel free to
      contribute ;)</p>
    <p class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
    </p>
    <p class="m_2410112387894102732gmail_msg">Best Regards</p></div><div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg">
    <p class="m_2410112387894102732gmail_msg">Zaolin<br class="m_2410112387894102732gmail_msg">
    </p></div><div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg">
    <br class="m_2410112387894102732gmail_msg">
    <div class="m_2410112387894102732m_3297935995391858888moz-cite-prefix m_2410112387894102732gmail_msg">On 11/26/2016 11:47 PM, ron minnich
      wrote:<br class="m_2410112387894102732gmail_msg">
    </div>
    </div><div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg"><blockquote type="cite" class="m_2410112387894102732gmail_msg">
      <div dir="ltr" class="m_2410112387894102732gmail_msg">Oh, my fingers type too much for me now.
        <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
        </div>
        <div class="m_2410112387894102732gmail_msg"><span style="color:rgb(33,33,33)" class="m_2410112387894102732gmail_msg">The current set of (as
            you point out) not terrific options is a result of linux
            growing too big for flash, and flash growing too SMALL for
            linux, ca. 2002, when we adopted the payload model.<span class="m_2410112387894102732m_3297935995391858888inbox-inbox-Apple-converted-space m_2410112387894102732gmail_msg"> </span></span><br class="m_2410112387894102732gmail_msg">
        </div>
      </div>
      <br class="m_2410112387894102732gmail_msg">
      </blockquote></div><div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg"><blockquote type="cite" class="m_2410112387894102732gmail_msg"><div class="gmail_quote m_2410112387894102732gmail_msg">
        <div dir="ltr" class="m_2410112387894102732gmail_msg">On Sat, Nov 26, 2016 at 3:46 PM ron minnich <<a href="mailto:rminnich@gmail.com" class="m_2410112387894102732gmail_msg" target="_blank">rminnich@gmail.com</a>>
          wrote:<br class="m_2410112387894102732gmail_msg">
        </div>
        </div></blockquote></div><div bgcolor="#FFFFFF" text="#000000" class="m_2410112387894102732gmail_msg"><blockquote type="cite" class="m_2410112387894102732gmail_msg"><div class="gmail_quote m_2410112387894102732gmail_msg"><blockquote class="gmail_quote m_2410112387894102732gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div dir="ltr" class="m_2410112387894102732gmail_msg">coreboot today is linuxbios
            minus the linux. The original intent was always that linux
            be our lifeboat. The current set of (as you point out) not
            terrific options is a result of linux growing too big for
            flash, and flash growing too big for linux, ca. 2002, when
            we adopted the payload model. The original keyword in the
            config file was 'linux', not 'payload'. The bootloaders we
            adopted (etherboot, filo, ...) were never (to me) a very
            satisfactory replacement for linux. They always came with
            lots of limitations. 
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">But why linux? Why a full OS? Simple
              observation, here in my 35th year of working with firmware
              and bootloaders. </div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">Every bootloader starts simple, and
              becomes an OS. Every single one starts with the intent of
              being small and compact and only supporting some needed
              subset of file systems/devices/protocols and ends up
              implementing everything. Because there was an attempt to
              start out simple, no matter how good the intial design is,
              that design is overwhelmed by the continuous addition of
              features, the result being a badly bloated, huge system
              with no apparent design.</div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">The exception, it has been argued, is
              EFI, which had some sort of design in 1999. From my point
              of view, it skipped right past all the initial stages and
              entered the world bloated and with no apparent design, or
              at least not a very good one.</div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">So you need to think, not in terms of
              lean and clean, but in terms of what it looks like after a
              few years when everyone has attached their favorite
              features to your lifeboat. I think it's a mistake to ever
              think you are going to implement some limited-function,
              limited-footprint bootloader, because people will jump on
              it and just add code. Just look at what's happened with
              systemd.</div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">Also worth considering is that the
              tinykernel configs have got linux down to 400K. You can
              trim it down to that, and carefully add features back.
              This comes with huge benefits I think. You get drivers
              that work, protocols that work, all the file systems you
              want, and you can put nice interactive boot UIs in user
              mode. Today's flash parts are more than large enough to do
              a good environment -- tinycore linux could be used, for
              example, once it was trimmed a bit. It's only about 12M
              today with a full X environment. </div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">Power8 and Power9 systems use linux
              in flash as their bootloader. This example has not been
              lost on other systems being developed today.</div>
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">I think it's worth considering a
              tinykernel linux as bootloader before you start with a new
              thing.</div>
          </div>
          <div dir="ltr" class="m_2410112387894102732gmail_msg">
            <div class="m_2410112387894102732gmail_msg"><br class="m_2410112387894102732gmail_msg">
            </div>
            <div class="m_2410112387894102732gmail_msg">ron</div>
          </div>
        </blockquote>
      </div></blockquote></div></blockquote></div>
</div></div><br>--<br>
coreboot mailing list: <a href="mailto:coreboot@coreboot.org">coreboot@coreboot.org</a><br>
<a href="https://www.coreboot.org/mailman/listinfo/coreboot" rel="noreferrer" target="_blank">https://www.coreboot.org/<wbr>mailman/listinfo/coreboot</a><br></blockquote></div><br></div>