[SeaBIOS] RFC: Primary VGA

Denis 'GNUtoo' Carikli GNUtoo at no-log.org
Thu Feb 28 19:45:09 CET 2013


On Thu, 28 Feb 2013 08:26:54 -0700
Alex Williamson <alex.williamson at redhat.com> wrote:

> Looking at how this would happen on bare metal,
In coreboot(which can use SeaBIOS as a payload) it currently works like
that (in src/device/device.c ):
/* If we prefer plugin VGA over chipset VGA, the chipset might want to
know. */ 
if (!CONFIG_ONBOARD_VGA_IS_PRIMARY && (vga != vga_onboard) &&
        vga_onboard && vga_onboard->ops && vga_onboard->ops->disable)
{
        printk(BIOS_DEBUG, "Use plugin graphics over integrated.\n");
        vga_onboard->ops->disable(vga_onboard);
}
which calls a function like that:
static void rs780_internal_gfx_disable(device_t dev)
{
       u32 l_dword;
       device_t nb_dev = dev_find_slot(0, 0);

       /* Disable internal GFX and enable external GFX. */
       l_dword = pci_read_config32(nb_dev, 0x8c);
       l_dword |= 1<<0;
       l_dword &= ~(1<<1);
      pci_write_config32(nb_dev, 0x8c, l_dword);

       dev->enabled = 0;
}

So only one card is enabled at the same time...

Denis.



More information about the SeaBIOS mailing list