On Sun, Feb 21, 2010 at 04:18:38PM -0700, Brandon Bennett wrote:
> > On Sat, Feb 20, 2010 at 9:05 PM, Kevin O'Connor <kevin(a)koconnor.net> wrote:
> >> Should a kernel fail during boot, I'd suspect it doesn't like one of
> >> the apm/pcibios callbacks, or it doesn't like one of the
> >> smbios/mptable/acpi tables. You could try compiling the SeaBIOS code
> >> (see http://seabios.org/Download ) and increasing the debugging by
> >> modifying src/config.h. Specifically, you could increase
> >> CONFIG_DEBUG_LEVEL, and set DEBUG_HDL_pcibios32 and DEBUG_HDL_apm to
> >> 1. Also, you could try disabling some of the features to see if that
> >> prevents the fault (eg, disabling CONFIG_ACPI / CONFIG_SMBIOS /
> >> CONFIG_MPTABLE).
> >
>
> I have narrowed it down to SMBIOS. If I disable CONFIG_SMBIOS the
> image boots up fine.
Gleb, have you seen this thread?
Some of the recent changes to smbios that look like possible culprits
are:
Make SMBIOS table pass MS SVVP test
Use MaxCountCPUs during building of per cpu tables.
Add malloc_high/fseg() and rework bios table creation to use them.
There were other changes, but the comments indicate they were only
ports of changes already in bochs. I suppose it's also possible the
lack of smbios is turning off some other feature in the guest (eg,
acpi) that's the real culprit.
-Kevin
Without this BIOS fails to remap 0xf0000 memory from ROM to RAM so writes
to F-segment modify ROM content instead of memory copy. Since QEMU does
not reloads ROMs during reset on next boot modified copy of BIOS is used.
Signed-off-by: Gleb Natapov <gleb(a)redhat.com>
diff --git a/hw/piix_pci.c b/hw/piix_pci.c
index 933ad86..0bf435d 100644
--- a/hw/piix_pci.c
+++ b/hw/piix_pci.c
@@ -99,10 +99,6 @@ static void i440fx_update_memory_mappings(PCII440FXState *d)
int i, r;
uint32_t smram, addr;
- if (kvm_enabled()) {
- /* FIXME: Support remappings and protection changes. */
- return;
- }
update_pam(d, 0xf0000, 0x100000, (d->dev.config[I440FX_PAM] >> 4) & 3);
for(i = 0; i < 12; i++) {
r = (d->dev.config[(i >> 1) + (I440FX_PAM + 1)] >> ((i & 1) * 4)) & 3;
--
Gleb.
17 Feb 15:28 2011 Jonathan Kollasch wrote:
]I have it (mostly) working now, just have to get it polished up a bit.
]
] Jonathan Kollasch
Hello Jonathan,
Right now I am trying to debug the same AHCI problem. The Host To Device
FIS length change also gets me past the first polling loop in ahci_command,
thanks for the tip. Do you have any fixes beyond that one I should try?
Thanks,
Scott
The following set of patches add TPM and Trusted Computing support to SeaBIOS.
In particular the patches add:
- a TPM driver for the Qemu's TPM TIS emulation (not yet in Qemu git)
- ACPI support for the TPM device (SSDT table)
- ACPI support for measurement logging (TCPA table)
- Support for initialzation of the TPM
- Support for the TCG BIOS extensions (1ah handler [ah = 0xbb])
(used by trusted grub; http://trousers.sourceforge.net/grub.html)
- Static Root of Trusted for Measurement (SRTM) support
- Support for S3 resume (sends command to TPM upon resume)
- TPM-specific menu for controlling aspects of the TPM
- [An optional test suite for the TIS interface]
All implementations necessarily follow specifications.
When all patches are applied the following services are available
- SSDT ACPI table for TPM support
- initialization of the TPM upon VM start and S3 resume
- Static root of trust for measurements (SRTM) that measures (some) data
of SeaBIOS in TCPA ACPI table
- 1ah interrupt handler offering APIs for measuring and sending commands to
the TPM (trusted grub uses them)
- User menu for controlling aspects of the state of the TPM
v4:
- if ! has_working_tpm() now returns error code everywhere
- tis_test.c now also under LGPLv3
- in inthandler, pulled set_cf() out of switch and then only call it in
the default case where we need to indicate that a function is not
implemented
v3:
- some nits here and there
- calling timer_setup now after S3 resume
v2:
- following Kevin's comment
- refactoring code so that every patch compiles
Regards,
Stefan
There's no point in presenting a menu to the user if there's
only one option to choose from. In that case skip this menu
to save some waiting time during boot.
Signed-off-by: Sven Schnelle <svens(a)stackframe.org>
---
src/boot.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/src/boot.c b/src/boot.c
index 1cd4126..df26d33 100644
--- a/src/boot.c
+++ b/src/boot.c
@@ -360,6 +360,11 @@ interactive_bootmenu(void)
if (! CONFIG_BOOTMENU || ! qemu_cfg_show_boot_menu())
return;
+ /* If we have only one bootdevice,
+ skip interactive menu */
+ if (!BootList->next)
+ return;
+
while (get_keystroke(0) >= 0)
;
--
1.7.4.4
hello, everyone, I'm a seabios newer. I want to build a coreboot image
with seabios as its payload.
I need the seabios(bios.bin.elf) to be smaller then 1M, but I got a 1.3M
one after building .
I did not change anything in my seabios host directory. I don't know how
to decrease the size.
My colleague had built a smaller image(64k) with cygwin in win7, but he
also does not know how to help me. So if anyone could give me some
advices, that will be highly appreciated!^_^
PS:
I don't know whether this subject line meets the requirements, if not,
please tell me, thinks a lot!
Hi,
(I was unsure what the appropriate mailing list for this was, apologies
for the cross post)
You may or may not be aware that Xen intends to switch to using SeaBIOS
as part of switching to using upstream qemu as our device model
(hopefully in our next major release later this year). The switch to
SeaBIOS is currently a WIP by Anthony Perard (who did the Xen port to
upstream qemu).
This is mainly a heads up that we have several students interested in a
project which I am mentoring to add Xen PV frontends (particularly disk)
to SeaBIOS . You can see a brief description of the project near the end
of the table at http://wiki.xen.org/xenwiki/GSoC_2011_ideas. Obviously
one of the main goals will be to work with the SeaBIOS (and if necessary
qemu) communities as well as Xen.org in order to produce patches which
can can be submitted to the relevant upstreams.
If/when we have an actual student assigned to the project I will ask
them introduce themselves too.
If anyone want to be more involved with this work (e.g. as a backup
mentor or whatever) then please do let me know.
Cheers,
Ian.