1) Some parts of payload(or payload generated tables/code) still exist in a low memory - BDA segment, 0xF000(BIOS interrupt handlers) segment, 0xC000(Videocard bios), ACPI tables, SMM handlers (if your build has it). So, if you using MS-DOS or something like it - you'll need a payload code, even windows 7 loader require some parts of legacy code. 2) Like pt. 1, if you try to use windows 8/10 - you may try to build a UEFI(Tiano Core) payload. 3) Sometimes it is not important(Ethernet controller for example), but sometimes you'll need to enable specific configuration (for example - chose SATA controller mode, or specify UMA memory size for integrated videocard) before any OS driver load, because drivers rely on it. For example if you don't load XHCI firmware or don't configure XHCI controller on AMD Kabini your OS don't find a USB 3.0 controller at all. 4) Look at build options, if you don't see required options - look at kconfig for your board. If wanted settings not found - some additional code may be required.
BTW, try to ask your questions on #coreboot channel in IRC
P.S. Sorry for my awful English.
On Thu, Oct 20, 2016 at 5:50 PM, Philipp Stanner stanner@posteo.de wrote:
Hi cb-community,
as everyone who owns a computer can subscribe to the list and there is no coreboot-forum, I presume that I'm allowed to ask a few primitive questions about the topic :)
- Coreboot+Payload are only used to initialize the hardware and then
give the complete control over the system to the OS, right? So once the OS booted no Coreboot or Payload-code is executed anymore? 2. Bios calls were used decades ago (so the OS hadn't to bring all the drivers) but aren't used by modern OS anymore, right? So why does Windows need seaBIOS to work? 3. If [1] is true, does that mean it's not important (for the user) if coreboot supports 100% of the boards hardware? Example: If I install coreboot on a machine and the wiki says "VGA not supported" this means that the monitor won't show anything - until the OS boots which uses it's own driver to address the monitor. Right? To be sure: As long as the OS boots successfully I don't really have to care if all system components work during the boot process? 4. In the traditional BIOS I can adjust lots of settings - overclock my CPU for example or enable Virtualization for KVM. How do I do this in coreboot?
Beside of that: Great work guys, take care.
Greetings
Philipp
-- coreboot mailing list: coreboot@coreboot.org https://www.coreboot.org/mailman/listinfo/coreboot