Commits
memhp-v2
Name already in use
Commits on Sep 12, 2012
-
Implement SLIT table for numa nodes
Vasilis Liaskovitis committedSep 12, 2012
Commits on Sep 10, 2012
-
acpi: Implement _PS3 method for memory device
Vasilis Liaskovitis committedSep 10, 2012
Commits on Jul 11, 2012
-
acpi_dsdt: Revert internal dimm state on _OST failure
This reverts bitmap state in the case of a failed hot operation, in order to allow retry of failed hot operations Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
acpi_dsdt: Support _OST dimm method
Add support for _OST method. _OST method will write into the correct I/O byte to signal success / failure of hot-add or hot-remove to qemu. Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
pciinit: Fix pcimem_start value
In order to hotplug memory between RamSize and BUILD_PCIMEM_START, the pci window needs to start at BUILD_PCIMEM_START (0xe0000000). Otherwise, the guest cannot online new dimms at those ranges due to pci_root window conflicts. (workaround for linux guest is booting with pci=nocrs) Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
acpi: generate hotplug memory devices
The memory device generation is guided by qemu paravirt info. Seabios first uses the info to setup SRAT entries for the hotplug-able memory slots. Afterwards, build_memssdt uses the created SRAT entries to generate appropriate memory device objects. One memory device (and corresponding SRAT entry) is generated for each hotplug-able qemu memslot. Currently no SSDT memory device is created for initial system memory. We only support up to 255 DIMMs for now (PackageOp used for the MEON array can only describe an array of at most 255 elements. VarPackageOp would be needed to support more than 255 devices) v1->v2: Seabios reads mems_sts from qemu to build e820_map SSDT size and some offsets are calculated with extraction macros. Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
acpi-dsdt: Implement functions for memory hotplug
Extend the DSDT to include methods for handling memory hot-add and hot-remove notifications and memory device status requests. These functions are called from the memory device SSDT methods. Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
Add SSDT memory device support
Define SSDT hotplug-able memory devices in _SB namespace. The dynamically generated SSDT includes per memory device hotplug methods. These methods just call methods defined in the DSDT. Also dynamically generate a MTFY method and a MEON array of the online/available memory devices. ACPI extraction macros are used to place the AML code in variables later used by src/acpi. The design is taken from SSDT cpu generation. Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012 -
Add ACPI_EXTRACT_DEVICE* macros
This allows to extract the beginning, end and name of a Device object. Signed-off-by: Vasilis Liaskovitis <vasilis.liaskovitis@profitbricks.com>
Vasilis Liaskovitis committedJul 11, 2012
Commits on Jul 5, 2012
-
Merge branch 'master' of git://git.seabios.org/seabios
Vasilis Liaskovitis committedJul 5, 2012
Commits on Jul 2, 2012
-
SMM: Disable use of SMM when running under Xen
Xen does not support SMM mode. Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
-
Xen: Autodetect debug I/O port at runtime instead of via Kconfig
This allows a common image which supports Xen to still print debug Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
-
enable Xen support by default.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Commits on Jun 28, 2012
-
Xen: add definition of xen_hypercall_page
commit b7d9abf (correctly) added the missing "extern" to the declaration in xen.h, however it turns out we never actually declared the variable! Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Commits on Jun 22, 2012
-
Get system state configuration from QEMU and patch DSDT with it.
QEMU may want to disable guest's S3/S4 support and it wants to distinguish between regular powerdown and S4 powerdown. To support that new fw_cfg option was added that passes supported system states and what value should guest use to enter each state. States are passed in 6 byte array. Each byte represents one system state. If byte at offset X has its MSB set it means that system state X is supported and to enter it guest should use the value from lowest 7 bits. Patch also detects old QEMU and uses values that work in backwards compatible way there. Signed-off-by: Gleb Natapov <gleb@redhat.com>
-
Add ACPI_EXTRACT_PKG_START macro parsing
It allows to extract the beginning of a Package object content. Signed-off-by: Gleb Natapov <gleb@redhat.com>
-
Fix aml_name_string() to recognize block name modifiers.
Signed-off-by: Gleb Natapov <gleb@redhat.com>
-
Minor - ensure build can handle some gcc/linker section declarations.
Make sure the build is not confused with some linker output common when using -flto. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Minor - fixup missing "extern" declaration in xen.h.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Commits on Jun 13, 2012
-
Support USB MSC devices with multiples LUNs
There are USB Mass storage devices which have more than one device. Examples are CD Changers, or USB sticks which are partitioned in a CDROM and Harddisk device. Signed-off-by: Sven Schnelle <svens@stackframe.org> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
pci: runtime i/o window sizing
Update the pci i/o windows at runtime, depending on the amount memory the machine has. The 32bit window starts above low memory and ends at the ioapic map address, the 64bit window is placed above high memory. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-
EHCI: Add support for 64 bit capability
Signed-off-by: Sven Schnelle <svens@stackframe.org> Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Minor - remove extra include from apm.c.
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Merge branch 'master' of git://git.seabios.org/seabios
Vasilis Liaskovitis committedJun 13, 2012
Commits on Jun 10, 2012
-
Minor - extend the size of the 'struct bios_data_area_s' to 256 bytes.
Make the struct 256 bytes - just for documentation purposes. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Minor - remove CLEARBITS_BDA and SETBITS_BDA macros.
Remove these infrequently used macros and replace with explicit GET_BDA/SET_BDA calls. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Commits on Jun 9, 2012
-
Remove SMBIOS generation on coreboot hack.
Early versions of coreboot did not create an SMBIOS table (which Linux needs in order to use the ACPI tables), so SeaBIOS had a hack to generate an SMBIOS table. However, recent versions of coreboot can generate an SMBIOS table, so there is no longer a reason to support this hack. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Minor - Replace PirOffset with PirAddr.
Technically, the PIR table could be placed at 0xf0000, which would result in a PirOffset=0, which would confuse the code. So, use an absolute address (PirAddr) instead. This also matches what the ACPI and SMBIOS code does. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Minor - collect biostable copy code into new func copy_table().
Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Avoid runtime relocation of 16bit "low" mem - calculate at build inst…
…ead. Some 16bit accesses to "low" mem variables use 16bit relocations instead of the normal 32bit relocations. This causes build problems if the "low" mem sections move more than 64K during relocation. The final location of the "low" memory can be determined during the build, so link the 16bit code with the final post-reloc location of the "low" mem variables instead. This eliminates the need to do these runtime relocations on the 16bit code. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
Commits on Jun 7, 2012
-
update dsdt ressources at runtime
Write the pci window location to memory and add a pointer to the SSDT (BDAT region). Turn \\SB.PCI0._CRS into a method which looks up the information there and updates the ressources accordingly. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-
pciinit: make pci ressources configurable
This patch adds variables for the pci io window, so they are runtime-configurable. They are initialized with the values from config.h Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
-
Linux ignores some information from acpi in case the bios is old as acpi support used to be buggy in the early days. This affects ressources for example (unless forced with pci=use_crs). So lets go for something more recent. With this patch applied the ressources for \\SB.PCI0 will show up in /proc/{iomem,ioports}, tagged as "PCI Bus 0000:00". Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Commits on Jun 3, 2012
-
Fix winxp boot regression introduced in ecdc655.
The winxp boot loader does something curious - it sets an int 0x1c handler, records the stack location, and then spins in place with irqs enabled. The 0x1c handler alters the memory just past the stack pointer so that when the timer irq returns the code jumps to a new location and stop spinning. The winxp code relies on the fact that a hw irq will always place 6 bytes at a specific location and that it can alter those bytes. The ecdc655 patch does a full backup/restore of the register state. Unfortunately, the restore overwrites the changes made by the winxp 0x1c handler. This patch reverts much of ecdc655. Hardware irqs are still handled on the extra stack, but only the essential register state is backed up and restored. Also, stack_hop_back is changed to only use %sp when changing states - this enables the entry code to store just %esp instead of both %esp and %sp. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
-
Create a 'struct romfile_s' and populate a list of all romfiles at start of init. Caching the romfiles both simplifies the code and makes it more efficient. Also, convert the ramdisk code to use romfile helpers instead of directly accessing cbfs. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>