Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Paul Menzel wrote: > it would be nice if it is clear for noobs like me, what certain > option do and what effects they have. The good way to fix that is for you to send patches for the Kconfig help messages. *After* you have researched what the options do. //Peter pgptDFHdnLwQL.pgp Description: PGP signature ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Am Dienstag, den 19.03.2013, 22:18 -0400 schrieb Kevin O'Connor: > On Wed, Mar 20, 2013 at 12:59:53AM +0100, Paul Menzel wrote: > > Am Dienstag, den 19.03.2013, 19:05 -0400 schrieb Kevin O'Connor: > > > Basically everything under the "BIOS interfaces" menu is low-level and > > > should not be changed without understanding the implications. (If one > > > disables the "boot" interface, it should not be surprising that the > > > machine can not "boot".) > > > > Again as in the other thread this probably stems from the fact that I > > have the (wrong(?)) assumption that BIOS interfaces are not needed for > > GRUB or Linux. > > Both grub and Linux can invoke BIOS calls. Grub 1 will certainly > require bios calls; it may be possible to compile grub 2 so that it > doesn't require bios calls, but that's not going to be anything out of > the box. Reading »The Master Boot Record (MBR) and Why it is Necessary?« [1] to see what INT 19 is doing, it looks like in my setup (coreboot → SeaBIOS (payload) → GRUB 2 on hard drive) no BIOS *boot* interface is needed. Looking at SeaBIOS‘ debug message written to serial 07.765: Add to e820 map: c7fd 0001 1 07.765: Returned 65536 bytes of ZoneHigh 07.765: e820 map has 7 items: 07.765: 0: - 0009fc00 = 1 RAM 07.765: 1: 0009fc00 - 000a = 2 RESERVED 07.765: 2: 000f - 0010 = 2 RESERVED 07.765: 3: 0010 - c7fe = 1 RAM 07.765: 4: c7fe - e000 = 2 RESERVED 07.765: 5: f800 - f900 = 2 RESERVED 07.765: 6: 0001 - 00021efffc00 = 1 RAM 07.765: Jump to int19 07.765: enter handle_19: 07.765: NULL 07.765: Boot support not compiled in. and looking at the code, it looks like this is indeed GRUB 2 independent and maybe the Kconfig option for BIOS boot interface should be renamed to for example Boot support and moved under the General menu. > > > Maybe if you explain what it is you're trying to accomplish then some > > > direction could be given. > > > > I want to make the SeaBIOS payload for coreboot as small as possible and > > still want to boot from my AHCI hard drive (SATA) using GRUB 2 from > > Debian Sid/unstable (with working graphics, that means loading the > > option ROM for AMD/ATI wrestler. > > If you want a smaller payload - use lzma compression. With > compression the SeaBIOS payload uses ~50K of rom space. I am under 64 KB without compression when taking out the BIOS boot interface. ;-) > If your using the onboard VGA - be sure to lzma compress the vga > option ROM as well. Good idea. Especially as I still have to wait for the hard drive to spin up. > If for some reason 50K is still too big then it is possible to disable > unneeded drivers under the "Hardware Support" menu. Already did that. I have just AHCI support and some USB support enabled. > However, I'd be curious to why 50K is too big on the ASRock - that > should have a plenty large rom. Yes, currently it has a 4 MB flash chip. Later I want to put an initramfs image on there too (I have a LUKS encrypted drive), so every bit is going to count. ;-) > For space reductions, you'd almost certainly find bigger wins slimming > down coreboot than trying to cut features out of seabios. That is probably true. Nevertheless it would be nice if it is clear for noobs like me, what certain option do and what effects they have. Thanks, Paul [1] http://www.dewassoc.com/kbase/hard_drives/master_boot_record.htm signature.asc Description: This is a digitally signed message part ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
On Wed, Mar 20, 2013 at 12:59:53AM +0100, Paul Menzel wrote: > Am Dienstag, den 19.03.2013, 19:05 -0400 schrieb Kevin O'Connor: > > Basically everything under the "BIOS interfaces" menu is low-level and > > should not be changed without understanding the implications. (If one > > disables the "boot" interface, it should not be surprising that the > > machine can not "boot".) > > Again as in the other thread this probably stems from the fact that I > have the (wrong(?)) assumption that BIOS interfaces are not needed for > GRUB or Linux. Both grub and Linux can invoke BIOS calls. Grub 1 will certainly require bios calls; it may be possible to compile grub 2 so that it doesn't require bios calls, but that's not going to be anything out of the box. > > Maybe if you explain what it is you're trying to accomplish then some > > direction could be given. > > I want to make the SeaBIOS payload for coreboot as small as possible and > still want to boot from my AHCI hard drive (SATA) using GRUB 2 from > Debian Sid/unstable (with working graphics, that means loading the > option ROM for AMD/ATI wrestler. If you want a smaller payload - use lzma compression. With compression the SeaBIOS payload uses ~50K of rom space. If your using the onboard VGA - be sure to lzma compress the vga option ROM as well. If for some reason 50K is still too big then it is possible to disable unneeded drivers under the "Hardware Support" menu. However, I'd be curious to why 50K is too big on the ASRock - that should have a plenty large rom. For space reductions, you'd almost certainly find bigger wins slimming down coreboot than trying to cut features out of seabios. -Kevin ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
On Wed, Mar 20, 2013 at 12:20:51AM +0100, Peter Stuge wrote: > Kevin O'Connor wrote: > > Basically everything under the "BIOS interfaces" menu is low-level > > and should not be changed without understanding the implications. > > Maybe hide those behind a CONFIG_EXPERT option? It's possible, but basically all of Kconfig is a CONFIG_EXPERT already - the normal use case is to use one the default options, a pre-built rom, or via the coreboot build. -Kevin ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Paul Menzel wrote: > I do not even know what the BIOS boot interface does and how it is > utilized. I guess I should read up about that. Hundreds if not thousands of interrupt services and about a dozen data structures. //Peter pgpIFHbM5p9U6.pgp Description: PGP signature ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Am Mittwoch, den 20.03.2013, 01:03 +0100 schrieb Peter Stuge: > Paul Menzel wrote: > > Again as in the other thread this probably stems from the fact that I > > have the (wrong(?)) assumption that BIOS interfaces are not needed for > > GRUB or Linux. > > GRUB needs BIOS interfaces. GRUB 2 as payload might not, but GRUB 2 > on a random debian system does. It's clear that those are quite > different, right? Yes, I know that. phcoder in #coreboot on irc.freenode.net wrote that even grub-pc (for BIOS) can circumvent some of these if the BIOS interface is not detected. This is the case for the keyboard for example. I do not even know what the BIOS boot interface does and how it is utilized. I guess I should read up about that. Thanks, Paul signature.asc Description: This is a digitally signed message part ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Paul Menzel wrote: > Again as in the other thread this probably stems from the fact that I > have the (wrong(?)) assumption that BIOS interfaces are not needed for > GRUB or Linux. GRUB needs BIOS interfaces. GRUB 2 as payload might not, but GRUB 2 on a random debian system does. It's clear that those are quite different, right? //Peter pgpeWjl5h3i5l.pgp Description: PGP signature ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Am Dienstag, den 19.03.2013, 17:18 +0100 schrieb Peter Stuge: > Paul Menzel wrote: > > I still do not understand how SeaBIOS uses the interfaces itself > > and how SeaBIOS is of any use at all without being able to boot > > something. At least I do not know of such a use case. > > Payloads can also not be started without that option? I have not tried that. Thank you for mentioning that use case. Thanks, Paul signature.asc Description: This is a digitally signed message part ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Am Dienstag, den 19.03.2013, 19:05 -0400 schrieb Kevin O'Connor: > On Tue, Mar 19, 2013 at 11:00:30AM +0100, Paul Menzel wrote: > > Date: Tue, 19 Mar 2013 10:36:15 +0100 > > > > Without the boot interface , GRUB 2 (package grub-pc 1.99-7 from Debian > > Sid/unstable) is not loaded when running coreboot with SeaBIOS 1.7.2.1 > > as payload on the ASRock E350M1. Only the SeaBIOS banner is shown and > > nothing else happens afterward. > > > > Signed-off-by: Paul Menzel > > --- > > More or less a request for comments, as I still do not understand how > > SeaBIOS uses the interfaces itself and how SeaBIOS is of any use at all > > without being able to boot something. At least I do not know of such a > > use case. > > I'm not sure what you are trying to accomplish. If you disable > various BIOS interfaces, it is definitely going to break external code > that relies on those interfaces. That is my point (or misunderstanding). This is not external code but SeaBIOS itself which breaks. > Basically everything under the "BIOS interfaces" menu is low-level and > should not be changed without understanding the implications. (If one > disables the "boot" interface, it should not be surprising that the > machine can not "boot".) Again as in the other thread this probably stems from the fact that I have the (wrong(?)) assumption that BIOS interfaces are not needed for GRUB or Linux. > The use-case for disabling the boot interface would be for possible > embedded systems where one only needs SeaBIOS to execute option ROMs. > I don't know of any users of this, but it has been discussed in the > past. I did not think of that. Thanks. > Maybe if you explain what it is you're trying to accomplish then some > direction could be given. I want to make the SeaBIOS payload for coreboot as small as possible and still want to boot from my AHCI hard drive (SATA) using GRUB 2 from Debian Sid/unstable (with working graphics, that means loading the option ROM for AMD/ATI wrestler. Thanks, Paul signature.asc Description: This is a digitally signed message part ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Kevin O'Connor wrote: > Basically everything under the "BIOS interfaces" menu is low-level > and should not be changed without understanding the implications. Maybe hide those behind a CONFIG_EXPERT option? //Peter ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
On Tue, Mar 19, 2013 at 11:00:30AM +0100, Paul Menzel wrote: > Date: Tue, 19 Mar 2013 10:36:15 +0100 > > Without the boot interface , GRUB 2 (package grub-pc 1.99-7 from Debian > Sid/unstable) is not loaded when running coreboot with SeaBIOS 1.7.2.1 > as payload on the ASRock E350M1. Only the SeaBIOS banner is shown and > nothing else happens afterward. > > Signed-off-by: Paul Menzel > --- > More or less a request for comments, as I still do not understand how > SeaBIOS uses the interfaces itself and how SeaBIOS is of any use at all > without being able to boot something. At least I do not know of such a > use case. I'm not sure what you are trying to accomplish. If you disable various BIOS interfaces, it is definitely going to break external code that relies on those interfaces. Basically everything under the "BIOS interfaces" menu is low-level and should not be changed without understanding the implications. (If one disables the "boot" interface, it should not be surprising that the machine can not "boot".) The use-case for disabling the boot interface would be for possible embedded systems where one only needs SeaBIOS to execute option ROMs. I don't know of any users of this, but it has been discussed in the past. Maybe if you explain what it is you're trying to accomplish then some direction could be given. -Kevin ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Paul Menzel wrote: > I still do not understand how SeaBIOS uses the interfaces itself > and how SeaBIOS is of any use at all without being able to boot > something. At least I do not know of such a use case. Payloads can also not be started without that option? //Peter pgpOPwSGiBmrd.pgp Description: PGP signature ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
Re: [SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
If SeaBIOS is useless without this, then maybe the option to disable it should be removed? On Tue, Mar 19, 2013 at 11:00 AM, Paul Menzel < paulepan...@users.sourceforge.net> wrote: > Date: Tue, 19 Mar 2013 10:36:15 +0100 > > Without the boot interface , GRUB 2 (package grub-pc 1.99-7 from Debian > Sid/unstable) is not loaded when running coreboot with SeaBIOS 1.7.2.1 > as payload on the ASRock E350M1. Only the SeaBIOS banner is shown and > nothing else happens afterward. > > Signed-off-by: Paul Menzel > --- > More or less a request for comments, as I still do not understand how > SeaBIOS uses the interfaces itself and how SeaBIOS is of any use at all > without being able to boot something. At least I do not know of such a > use case. > > src/Kconfig |2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/src/Kconfig b/src/Kconfig > index 3141069..c7ea23c 100644 > --- a/src/Kconfig > +++ b/src/Kconfig > @@ -327,6 +327,8 @@ menu "BIOS interfaces" > default y > help > Support int 19/18 system bootup support. > + > +You have to select this, if you want to boot from some media. > config KEYBOARD > bool "Keyboard interface" > default y > -- > 1.7.10.4 > > ___ > SeaBIOS mailing list > SeaBIOS@seabios.org > http://www.seabios.org/mailman/listinfo/seabios > > ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios
[SeaBIOS] [PATCH] src/Kconfig: Add note that boot interface is needed
Date: Tue, 19 Mar 2013 10:36:15 +0100 Without the boot interface , GRUB 2 (package grub-pc 1.99-7 from Debian Sid/unstable) is not loaded when running coreboot with SeaBIOS 1.7.2.1 as payload on the ASRock E350M1. Only the SeaBIOS banner is shown and nothing else happens afterward. Signed-off-by: Paul Menzel --- More or less a request for comments, as I still do not understand how SeaBIOS uses the interfaces itself and how SeaBIOS is of any use at all without being able to boot something. At least I do not know of such a use case. src/Kconfig |2 ++ 1 file changed, 2 insertions(+) diff --git a/src/Kconfig b/src/Kconfig index 3141069..c7ea23c 100644 --- a/src/Kconfig +++ b/src/Kconfig @@ -327,6 +327,8 @@ menu "BIOS interfaces" default y help Support int 19/18 system bootup support. + +You have to select this, if you want to boot from some media. config KEYBOARD bool "Keyboard interface" default y -- 1.7.10.4 signature.asc Description: This is a digitally signed message part ___ SeaBIOS mailing list SeaBIOS@seabios.org http://www.seabios.org/mailman/listinfo/seabios