Hello Gert,

it's very nice to hear that your customers ask for coreboot :) \o/

I'll start with the annoying part, hopefully bringing more cheerful
news later:

coreboot is not a ready-to-install firmware. coreboot is used by ODMs
and OEMs like System76 or sometimes enthusiasts to build their very
own firmware. Imagine you'd ask a Linux kernel developer how to install
Linux. They'd probably start by telling you that there are many diffe-
rent Linux distributions, many different ways to do things and many
things to consider. Or they might just point you towards Ubuntu. But
alas there is no such convenient solution for firmware. For firmware
every device is different, every device needs a bit of special care.

So coreboot is like a kernel of the firmware that needs to be adapted
to every device. The good news for your Clevo devices is that this part
is (almost) already done by System76 (assuming they use identical hard-
ware). However, System76 also uses their own EC firmware which coreboot
needs to be compatible to. And its interface is unlikely to be compa-
tible with Clevo's EC firmware. So either you'd have to install their
EC firmware too, or their coreboot ports need to be adapted to Clevo's
EC firmware. I have no idea how much trouble it is to replace the EC
firmware. If you need coreboot code adapted, you can seek professional
help like Paul suggested.

If I say coreboot is like a kernel, you probably already wonder what
else you need. coreboot only knows a single storage medium: the flash
chip that contains coreboot itself (i.e. the BIOS flash). Thus, it
can't load your OS from a hard disk. Instead, coreboot loads another
program from the flash chip, which we call the coreboot "payload".

There are many different payload options. Beside loading the OS (or
its boot loader), the payload also provides the look & feel of the
firmware. Just to mention the most prominent ones:

* SeaBIOS:   Provides a PC BIOS implementation. What many people would
             call a legacy BIOS boot today.
* TianoCore: Provides an UEFI implementation. (What I would call
             legacy today. ^^)
* Linux:     You can use a Linux kernel + initramfs as a payload. Yes,
             one can implement the look & feel of their firmware in a
             Linux user-space program. There are many different imple-
             mentations yet, if you are interested, just ask :)
* GRUB:      The GRUB bootloader can act as a coreboot payload directly.

Back to your Clevo devices, obviously you can just copy System76' choice
of payload. I assume (not sure though) they use TianoCore. But I can't
tell if that is what your customers expect.

Now, hopefully I still have some time to answer some of your specific
questions :)

On 28.03.21 09:26, Gert Vanhaerents wrote:
> - We i have installed coreboot, can i also boot Windows 10 or boot in
> dual-boot (Windows and Linux)?

It's generally possible, with some limitations, though. For Windows,
you'll most likely need either SeaBIOS or TianoCore. Windows always
needs some jumpstart help by the firmware. There is some effort to
implement UEFI services for Linux payloads, but I don't know its
status.

> - The installation of coreboot is very unclair. I have looking to google
> but i don't realy know how can install it.

That's because every device is different. For a start you can install
flashrom (for new hardware you might have to build it from source [1])
on Linux and run this to gather some information about the device:

    $ sudo flashrom -p internal -o logfile.txt

With some luck we might be able to tell by the log how hard it is to
get coreboot on the machine.

> - Can i install coreboot like we normally flash a bios? (startup with a
> efi boot stick and run a batch file, or startup in the bios and do a
> bios update directly from the bios with a usb stick with the flash file)

This depends on the expectations of the original firmware. For instance
will it accept a random firmware? will it even accept something that is
not signed by the manufacturer?

> - Or do i need a eeprom programmer or something like that?
> - Must itake out the motherboard completely of the laptop?
>
> To work with coreboot it's very important to have a very fast procedure
> to install it in mass production. We cannot spell a few hours on each
> laptop. It must be a flash file for a model laptop and a other flash
> file for a other model laptop. So we can install coreboot on the best
> selling models. Startup from a usb-stick, do a flash update wait 5 or 10
> minutes and reboot,  ... done.
>
> When it's possible in the procudure like above can i get some help to
> make the first coreboot flash.

Yes, of course. But a word of warning: even if flashing from the running
system is possible, we recommend to do the first experiments with an
external flash programmer. Just so you can recover if something goes
wrong and the machine doesn't boot anymore. For urgent help, and in
general, you can join us on IRC (freenode.net) #coreboot and #flashrom.

Nico

[1] https://flashrom.org/Download
    With the prerequisites installed, run:
    $ git clone https://review.coreboot.org/flashrom.git && cd flashrom
&& make
    To run the flashrom binary from the current direcory, prepend it
    with `./`, i.e.
    $ sudo ./flashrom ...
    Oh, if it complains about /dev/mem access failing, try
    $ sudo modprobe -r lpc_ich
_______________________________________________
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org

Reply via email to