Mailing List Archive

boot linux without a bios on intel platform
Hi,
I'm facing a problem.
I have an intel board, and the bios boots after 22sec.
Is it possible to boot the linux without a bios.
Maybe have grub jump from an eeprom or something.

Regards,
Kfir
Re: boot linux without a bios on intel platform [ In reply to ]
On Thu, Dec 23, 2010 at 9:25 AM, Kfir Lavi <lavi.kfir@gmail.com> wrote:
> Hi,
> I'm facing a problem.
> I have an intel board, and the bios boots after 22sec.
> Is it possible to boot the linux without a bios.
> Maybe have grub jump from an eeprom or something.

Is coreboot an option for your system?

Manuel
Re: boot linux without a bios on intel platform [ In reply to ]
On Thu, Dec 23, 2010 at 10:25 AM, Kfir Lavi <lavi.kfir@gmail.com> wrote:

> Hi,
> I'm facing a problem.
> I have an intel board, and the bios boots after 22sec.
> Is it possible to boot the linux without a bios.
> Maybe have grub jump from an eeprom or something.
>
> Regards,
> Kfir
>

I have spoke in irc #gentoo-embedded with landley and he explained some
stuff about my question regarding coreboot, uboot on x86.
I have attached the log, because I think its very valuable what landley
said.

Regards,
Kfir
Re: boot linux without a bios on intel platform [ In reply to ]
On Thu, Dec 23, 2010 at 11:55 AM, Kfir Lavi <lavi.kfir@gmail.com> wrote:

>
>
> On Thu, Dec 23, 2010 at 10:25 AM, Kfir Lavi <lavi.kfir@gmail.com> wrote:
>
>> Hi,
>> I'm facing a problem.
>> I have an intel board, and the bios boots after 22sec.
>> Is it possible to boot the linux without a bios.
>> Maybe have grub jump from an eeprom or something.
>>
>> Regards,
>> Kfir
>>
>
> I have spoke in irc #gentoo-embedded with landley and he explained some
> stuff about my question regarding coreboot, uboot on x86.
> I have attached the log, because I think its very valuable what landley
> said.
>
> Regards,
> Kfir
>
Sorry, I'll attach it as a txt document

Kfir
Re: boot linux without a bios on intel platform [ In reply to ]
On Thu, Dec 23, 2010 at 11:20 AM, Manuel Lauss
<manuel.lauss@googlemail.com>wrote:

> On Thu, Dec 23, 2010 at 9:25 AM, Kfir Lavi <lavi.kfir@gmail.com> wrote:
> > Hi,
> > I'm facing a problem.
> > I have an intel board, and the bios boots after 22sec.
> > Is it possible to boot the linux without a bios.
> > Maybe have grub jump from an eeprom or something.
>
> Is coreboot an option for your system?
>
> Manuel
>
> There is a support for a kontron board, but my guess is that I would need
to integrate a new support.
This is something I don't want to do if it's hard and will take time.
I have also an option to ask for lean bios. I think they are able to reduce
bios code.
What I'm still not sure is if just the dram and the ide/sata is enough for
linux.

Regards,
Kfir
Re: Re: boot linux without a bios on intel platform [ In reply to ]
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
Re: boot linux without a bios on intel platform [ In reply to ]
Kfir Lavi wrote:
> What I'm still not sure is if just the dram and the ide/sata is
> enough for linux.

It is nowhere near enough. Firmware must also initialize and
enumerate all system busses, which usually means the CPU-chipset
interconnect, and PCI. And if you want video you must run the binary
blob that is the VGA BIOS.


//Peter
Re: Re: boot linux without a bios on intel platform [ In reply to ]
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.
>
> 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
Re: Re: boot linux without a bios on intel platform [ In reply to ]
Kfir Lavi wrote:
> Thanks for your lengthy replay. Very interesting talk.

I'm glad you liked it!


> I loved the push pins idea.

Hehe, yes, it's really handy. :)


> Now I'm asking myself, how I didn't thought about it myself. I used
> a paper clip, but it is awkward.

Yep. I like the pushpin idea a lot but I actually continue to use a
small screwdriver myself.


> 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.
> 00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory Controller Hub (rev 07)

lspci is a good first bit of info! This chipset is not supported at
all. The only modern-ish Intel chipset that is supported is the i945.
Compare the other Kontron with Intel in the list of supported boards.


> I would also like to know (if it is possible) how hard is to create
> support for this board myself.

For an experienced coreboot developer I would estimate an absolute
minimum of eight man-months of work. This assumes that Intel NDAs and
document retrieval requests are processed instantly. It took 9 months
just to get NDAs processed for the coreboot developer who went
through that process. On the other hand, one Intel FAE I talked to
mentioned only weeks needed in some of his projects.

You will also benefit from test equipment that will allow you to
study DRAM signals, and CPU state. These are 100k pricetag items.

Learning how to initialize CPU, northbridge and memory controller
takes significant effort, and FAEs usually can not help.

Is this Mobile 4 Series chipset (whatever that means, you could try
to look for some more low-level product codes for the chipset) part
of Intel's Embedded division? If so, you may be able to find much
inforation at edc.intel.com, but only after going through some
approval process there.

It can certainly be worthwhile to do the coreboot work also for
something completely unsupported like this, but you need a fairly
large series production.

On the other hand, maybe you can just choose a different board that
is already supported. I would try hard to do just that.


//Peter
Re: Re: boot linux without a bios on intel platform [ In reply to ]
On Fri, Dec 24, 2010 at 10:16 AM, Peter Stuge <peter@stuge.se> wrote:

> Kfir Lavi wrote:
> > Thanks for your lengthy replay. Very interesting talk.
>
> I'm glad you liked it!
>
>
> > I loved the push pins idea.
>
> Hehe, yes, it's really handy. :)
>
>
> > Now I'm asking myself, how I didn't thought about it myself. I used
> > a paper clip, but it is awkward.
>
> Yep. I like the pushpin idea a lot but I actually continue to use a
> small screwdriver myself.
>
>
> > 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.
> > 00:00.0 Host bridge: Intel Corporation Mobile 4 Series Chipset Memory
> Controller Hub (rev 07)
>
> lspci is a good first bit of info! This chipset is not supported at
> all. The only modern-ish Intel chipset that is supported is the i945.
> Compare the other Kontron with Intel in the list of supported boards.
>
>
> > I would also like to know (if it is possible) how hard is to create
> > support for this board myself.
>
> For an experienced coreboot developer I would estimate an absolute
> minimum of eight man-months of work. This assumes that Intel NDAs and
> document retrieval requests are processed instantly. It took 9 months
> just to get NDAs processed for the coreboot developer who went
> through that process. On the other hand, one Intel FAE I talked to
> mentioned only weeks needed in some of his projects.
>
> You will also benefit from test equipment that will allow you to
> study DRAM signals, and CPU state. These are 100k pricetag items.
>
> Learning how to initialize CPU, northbridge and memory controller
> takes significant effort, and FAEs usually can not help.
>
> Is this Mobile 4 Series chipset (whatever that means, you could try
> to look for some more low-level product codes for the chipset) part
> of Intel's Embedded division? If so, you may be able to find much
> inforation at edc.intel.com, but only after going through some
> approval process there.
>
> It can certainly be worthwhile to do the coreboot work also for
> something completely unsupported like this, but you need a fairly
> large series production.
>
> On the other hand, maybe you can just choose a different board that
> is already supported. I would try hard to do just that.
>
>
> //Peter
>
> Hi Peter,
Time is very short for my project. I think replacing the board is the best
and quickest option.
Hope in this stage, I'll be able to do it. It is my advice but not my
decision.

Another way is to reduce boot time of the bios by kontron.
Is it possible to achive good boot times with ami bios?

Thanks,
Kfir