From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1PVmjV-0001vZ-1J for garchives@archives.gentoo.org; Thu, 23 Dec 2010 15:05:33 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 511C6E0763 for ; Thu, 23 Dec 2010 15:05:31 +0000 (UTC) Received: from mail-gx0-f181.google.com (mail-gx0-f181.google.com [209.85.161.181]) by pigeon.gentoo.org (Postfix) with ESMTP id 17649E079D for ; Thu, 23 Dec 2010 14:33:40 +0000 (UTC) Received: by gxk10 with SMTP id 10so3141933gxk.40 for ; Thu, 23 Dec 2010 06:33:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:content-type; bh=7P/BwLVlxdaotSDFmXd3NTv4CP0NRmIBR5hJ/QhWI74=; b=atqNQm7j7QbthEr05bzvUHBnzjq9kjapQXdrv/BeOOYTzeELS7V9QoKaKK116nDZeP 3AUuCXjeM0gM254mbSbZnFMcwR+Ti07tRxwE6bia62LPfmt94m06fBn449vyRusorKeB 4Mao3T1K0KN3uUck14NRrFPhj6FyWY2WXLYWo= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=phb1cJ/2fBwHGxPFOJfm5SSFhlbJ941vUbBGLmnh/J9CEd3tm3KDQIZUNKoKQmm5kx ab8XWRVh62I/OgfCJ0veCdA6RsndBu5mEHT5x0E1Fs2pCx6Mm3hGszVG/2g7OVkD/GPe nElX0HsT1NHyRNvY/j/DPKdy/lr6oGG1RWcxg= Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-embedded@lists.gentoo.org Reply-to: gentoo-embedded@lists.gentoo.org MIME-Version: 1.0 Received: by 10.236.108.50 with SMTP id p38mr16006061yhg.84.1293114820429; Thu, 23 Dec 2010 06:33:40 -0800 (PST) Received: by 10.236.110.38 with HTTP; Thu, 23 Dec 2010 06:33:40 -0800 (PST) In-Reply-To: <20101223115307.26305.qmail@stuge.se> References: <20101223115307.26305.qmail@stuge.se> Date: Thu, 23 Dec 2010 16:33:40 +0200 Message-ID: Subject: Re: [gentoo-embedded] Re: boot linux without a bios on intel platform From: Kfir Lavi To: gentoo-embedded@lists.gentoo.org Content-Type: multipart/mixed; boundary=90e6ba4fbf9c8687da049814c15f X-Archives-Salt: 358bcc9b-d302-4152-9bdd-d5b7733f5c99 X-Archives-Hash: cda42780f250ecbd4d98a186f8bbff03 --90e6ba4fbf9c8687da049814c15f Content-Type: multipart/alternative; boundary=90e6ba4fbf9c8687d1049814c15d --90e6ba4fbf9c8687d1049814c15d Content-Type: text/plain; charset=UTF-8 On Thu, Dec 23, 2010 at 1:53 PM, Peter Stuge wrote: > Kfir Lavi wrote: > > > I have an intel board, and the bios boots after 22sec. > > > Is it possible to boot the linux without a bios. > > coreboot is your only alternative to a BIOS. I'm active in the > project since some years. Instead of coreboot you could of course > also consider buying licenses for a custom BIOS from AMI but that > is often prohibitively expensive. > > > > I have spoke in irc #gentoo-embedded with landley and he explained > > some stuff about my question regarding coreboot, uboot on x86. > > uboot is not widely used on x86 so far. There has been some talk > between coreboot and uboot because the two could complement each > other well, but not yet. > > You're of course welcome to stop by #coreboot and talk to us, and/or > check out some of the talks. > > http://www.coreboot.org/Screenshots#Videos > > I'd recommend "Beyond The Final Frontier" from 25C3 as a start: > > > http://www.coreboot.org/Screenshots#Chaos_Communication_Congress_2008_.2825C3.29:_coreboot:_Beyond_The_Final_Frontier > > coreboot completes it's task in a few hundred milliseconds. Some more > complicated boards (lots of busses and CPUs) take longer, maybe a > second or even two. > > We have a list of supported mainboards: > > http://www.coreboot.org/Supported_Motherboards > > If your board is not listed it may be easy or it may be hard. When > talking to us about it please be sure to provide very specific > information about your hardware. "intel board" is e.g. useless, we > need details for CPU, chipset, superio and the boot flash. > > As a general rule, NVIDIA and Intel are the worst possible targets > for coreboot, because they will not release documentation. > > NVIDIA is simply impossible. Intel can be done, but you need a strong > business case with promise of many many units, and you need to sign > two NDAs in order to access the required, but insufficient, > documentation. The docs have some information but not all. It's > generally neccessary to reverse engineer parts of the factory BIOS in > order to actually get a board fully working. > > On the opposite end of the spectrum is AMD, who have engineers > actively contributing code to coreboot. AMD recently let us know that > they will be adding AGESA support to coreboot, as well as releasing > AGESA under open source license, which means that coreboot will be > able to initialize many if not all AMD platforms with the code > written by AMD themselves, which is also being used by commercial > BIOS vendors. (AGESA is a firmware plugin system for AMD systems.) > This is of course really great news! :) > > There was mention of BOCHS BIOS in the chat log. coreboot does not > want to be a BIOS, because BIOS is a 30 year old concept. There is > clean separation between coreboot and what we call a payload. > coreboot does hardware init, the payload starts the operating system. > I rant about ACPI a bit in the talks. > > Payloads can be bootloaders or even a kernel. But for maximum > performance you will want to use SeaBIOS, an open source BIOS > implementation, as payload - because it supports ATA DMA, and boot > flash is much slower than that. (See http://stuge.se/pc2010.png - the > flash chip is *far* away from the CPU, on a slow bus.) > > SeaBIOS was originally forked from BOCHS BIOS, but is very much a > project of it's own by now, is continually being updated, and is also > the default BIOS shipped with QEMU since some versions back. > > > Hope this helps clarify a bit. > > //Peter > > Hi Peter, Thanks for your lengthy replay. Very interesting talk. I loved the push pins idea. Now I'm asking myself, how I didn't thought about it myself. I used a paper clip, but it is awkward. I have a kontron board with an intel cpu. How can I get the spec with the parts in order to check if I will be able to use coreboot? Attached is the lspci of the board. I would also like to know (if it is possible) how hard is to create support for this board myself. Regards, Kfir --90e6ba4fbf9c8687d1049814c15d Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


On Thu, Dec 23, 2010 at= 1:53 PM, Peter Stuge <peter@stuge.se> wrote:
Kfir Lavi wrote:
> > I have an intel board, and the bios boots after 22sec.
> > Is it possible to boot the linux without a bios.

coreboot is your only alternative to a BIOS. I'm active in the project since some years. Instead of coreboot you could of course
also consider buying licenses for a custom BIOS from AMI but that
is often prohibitively expensive.


> I have spoke in irc #gentoo-embedded with landley and he explained
> some stuff about my question regarding coreboot, uboot on x86.

uboot is not widely used on x86 so far. There has been some talk
between coreboot and uboot because the two could complement each
other well, but not yet.

You're of course welcome to stop by #coreboot and talk to us, and/or check out some of the talks.

ht= tp://www.coreboot.org/Screenshots#Videos

I'd recommend "Beyond The Final Frontier" from 25C3 as a star= t:

ht= tp://www.coreboot.org/Screenshots#Chaos_Communication_Congress_2008_.2825C3= .29:_coreboot:_Beyond_The_Final_Frontier

coreboot completes it's task in a few hundred milliseconds. Some more complicated boards (lots of busses and CPUs) take longer, maybe a
second or even two.

We have a list of supported mainboards:

http://www.coreboot.org/Supported_Motherboards

If your board is not listed it may be easy or it may be hard. When
talking to us about it please be sure to provide very specific
information about your hardware. "intel board" is e.g. useless, w= e
need details for CPU, chipset, superio and the boot flash.

As a general rule, NVIDIA and Intel are the worst possible targets
for coreboot, because they will not release documentation.

NVIDIA is simply impossible. Intel can be done, but you need a strong
business case with promise of many many units, and you need to sign
two NDAs in order to access the required, but insufficient,
documentation. The docs have some information but not all. It's
generally neccessary to reverse engineer parts of the factory BIOS in
order to actually get a board fully working.

On the opposite end of the spectrum is AMD, who have engineers
actively contributing code to coreboot. AMD recently let us know that
they will be adding AGESA support to coreboot, as well as releasing
AGESA under open source license, which means that coreboot will be
able to initialize many if not all AMD platforms with the code
written by AMD themselves, which is also being used by commercial
BIOS vendors. (AGESA is a firmware plugin system for AMD systems.)
This is of course really great news! :)

There was mention of BOCHS BIOS in the chat log. coreboot does not
want to be a BIOS, because BIOS is a 30 year old concept. There is
clean separation between coreboot and what we call a payload.
coreboot does hardware init, the payload starts the operating system.
I rant about ACPI a bit in the talks.

Payloads can be bootloaders or even a kernel. But for maximum
performance you will want to use SeaBIOS, an open source BIOS
implementation, as payload - because it supports ATA DMA, and boot
flash is much slower than that. (See http://stuge.se/pc2010.png - the
flash chip is *far* away from the CPU, on a slow bus.)

SeaBIOS was originally forked from BOCHS BIOS, but is very much a
project of it's own by now, is continually being updated, and is also the default BIOS shipped with QEMU since some versions back.


Hope this helps clarify a bit.

//Peter

Hi Peter,
Thanks for your lengthy replay. Very= interesting talk.
I loved the push pins idea. Now I'm asking mysel= f,
how I didn't thought about it myself. I used a paper clip, but i= t is awkward.
I have a kontron board with an intel cpu. How can I get the spec with the p= arts
in order to check if I will be able to use coreboot?
Attached = is the lspci of the board.
I would also like to know (if it is possible)= how hard is to create support for this
board myself.

Regards,
Kfir
--90e6ba4fbf9c8687d1049814c15d-- --90e6ba4fbf9c8687da049814c15f Content-Type: text/plain; charset=US-ASCII; name="lspci.txt" Content-Disposition: attachment; filename="lspci.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gi1r3ads0 MDA6MDAuMCBIb3N0IGJyaWRnZTogSW50ZWwgQ29ycG9yYXRpb24gTW9iaWxlIDQgU2VyaWVzIENo aXBzZXQgTWVtb3J5IENvbnRyb2xsZXIgSHViIChyZXYgMDcpCjAwOjAyLjAgVkdBIGNvbXBhdGli bGUgY29udHJvbGxlcjogSW50ZWwgQ29ycG9yYXRpb24gTW9iaWxlIDQgU2VyaWVzIENoaXBzZXQg SW50ZWdyYXRlZCBHcmFwaGljcyBDb250cm9sbGVyIChyZXYgMDcpCjAwOjAyLjEgRGlzcGxheSBj b250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlvbiBNb2JpbGUgNCBTZXJpZXMgQ2hpcHNldCBJbnRl Z3JhdGVkIEdyYXBoaWNzIENvbnRyb2xsZXIgKHJldiAwNykKMDA6MDMuMCBDb21tdW5pY2F0aW9u IGNvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIE1vYmlsZSA0IFNlcmllcyBDaGlwc2V0IE1F SSBDb250cm9sbGVyIChyZXYgMDcpCjAwOjE5LjAgRXRoZXJuZXQgY29udHJvbGxlcjogSW50ZWwg Q29ycG9yYXRpb24gODI1NjdMTSBHaWdhYml0IE5ldHdvcmsgQ29ubmVjdGlvbiAocmV2IDAzKQow MDoxYS4wIFVTQiBDb250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlvbiA4MjgwMUkgKElDSDkgRmFt aWx5KSBVU0IgVUhDSSBDb250cm9sbGVyICM0IChyZXYgMDMpCjAwOjFhLjEgVVNCIENvbnRyb2xs ZXI6IEludGVsIENvcnBvcmF0aW9uIDgyODAxSSAoSUNIOSBGYW1pbHkpIFVTQiBVSENJIENvbnRy b2xsZXIgIzUgKHJldiAwMykKMDA6MWEuNyBVU0IgQ29udHJvbGxlcjogSW50ZWwgQ29ycG9yYXRp b24gODI4MDFJIChJQ0g5IEZhbWlseSkgVVNCMiBFSENJIENvbnRyb2xsZXIgIzIgKHJldiAwMykK MDA6MWIuMCBBdWRpbyBkZXZpY2U6IEludGVsIENvcnBvcmF0aW9uIDgyODAxSSAoSUNIOSBGYW1p bHkpIEhEIEF1ZGlvIENvbnRyb2xsZXIgKHJldiAwMykKMDA6MWMuMCBQQ0kgYnJpZGdlOiBJbnRl bCBDb3Jwb3JhdGlvbiA4MjgwMUkgKElDSDkgRmFtaWx5KSBQQ0kgRXhwcmVzcyBQb3J0IDEgKHJl diAwMykKMDA6MWMuMyBQQ0kgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiA4MjgwMUkgKElDSDkg RmFtaWx5KSBQQ0kgRXhwcmVzcyBQb3J0IDQgKHJldiAwMykKMDA6MWQuMCBVU0IgQ29udHJvbGxl cjogSW50ZWwgQ29ycG9yYXRpb24gODI4MDFJIChJQ0g5IEZhbWlseSkgVVNCIFVIQ0kgQ29udHJv bGxlciAjMSAocmV2IDAzKQowMDoxZC4xIFVTQiBDb250cm9sbGVyOiBJbnRlbCBDb3Jwb3JhdGlv biA4MjgwMUkgKElDSDkgRmFtaWx5KSBVU0IgVUhDSSBDb250cm9sbGVyICMyIChyZXYgMDMpCjAw OjFkLjIgVVNCIENvbnRyb2xsZXI6IEludGVsIENvcnBvcmF0aW9uIDgyODAxSSAoSUNIOSBGYW1p bHkpIFVTQiBVSENJIENvbnRyb2xsZXIgIzMgKHJldiAwMykKMDA6MWQuNyBVU0IgQ29udHJvbGxl cjogSW50ZWwgQ29ycG9yYXRpb24gODI4MDFJIChJQ0g5IEZhbWlseSkgVVNCMiBFSENJIENvbnRy b2xsZXIgIzEgKHJldiAwMykKMDA6MWUuMCBQQ0kgYnJpZGdlOiBJbnRlbCBDb3Jwb3JhdGlvbiA4 MjgwMSBNb2JpbGUgUENJIEJyaWRnZSAocmV2IDkzKQowMDoxZi4wIElTQSBicmlkZ2U6IEludGVs IENvcnBvcmF0aW9uIElDSDlNLUUgTFBDIEludGVyZmFjZSBDb250cm9sbGVyIChyZXYgMDMpCjAw OjFmLjMgU01CdXM6IEludGVsIENvcnBvcmF0aW9uIDgyODAxSSAoSUNIOSBGYW1pbHkpIFNNQnVz IENvbnRyb2xsZXIgKHJldiAwMykKMDU6MDAuMCBFdGhlcm5ldCBjb250cm9sbGVyOiBJbnRlbCBD b3Jwb3JhdGlvbiA4MjU3NEwgR2lnYWJpdCBOZXR3b3JrIENvbm5lY3Rpb24K --90e6ba4fbf9c8687da049814c15f--