coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
pci_rom.h File Reference
#include <endian.h>
#include <acpi/acpi.h>
#include <stdint.h>
Include dependency graph for pci_rom.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rom_header
 
struct  pci_data
 

Macros

#define PCI_ROM_HDR   0xAA55
 
#define PCI_DATA_HDR   ((uint32_t) (('R' << 24) | ('I' << 16) | ('C' << 8) | 'P'))
 
#define PCI_RAM_IMAGE_START   0xD0000
 
#define PCI_VGA_RAM_IMAGE_START   0xC0000
 

Functions

void vga_oprom_preload (void)
 
struct rom_headerpci_rom_probe (const struct device *dev)
 
struct rom_headerpci_rom_load (struct device *dev, struct rom_header *rom_header)
 
unsigned long pci_rom_write_acpi_tables (const struct device *device, unsigned long current, struct acpi_rsdp *rsdp)
 
void pci_rom_ssdt (const struct device *device)
 
void map_oprom_vendev_rev (u32 *vendev, u8 *rev)
 
u32 map_oprom_vendev (u32 vendev)
 
int verified_boot_should_run_oprom (struct rom_header *rom_header)
 

Macro Definition Documentation

◆ PCI_DATA_HDR

#define PCI_DATA_HDR   ((uint32_t) (('R' << 24) | ('I' << 16) | ('C' << 8) | 'P'))

Definition at line 9 of file pci_rom.h.

◆ PCI_RAM_IMAGE_START

#define PCI_RAM_IMAGE_START   0xD0000

Definition at line 11 of file pci_rom.h.

◆ PCI_ROM_HDR

#define PCI_ROM_HDR   0xAA55

Definition at line 8 of file pci_rom.h.

◆ PCI_VGA_RAM_IMAGE_START

#define PCI_VGA_RAM_IMAGE_START   0xC0000

Definition at line 12 of file pci_rom.h.

Function Documentation

◆ map_oprom_vendev()

u32 map_oprom_vendev ( u32  vendev)

Definition at line 17 of file pci_rom.c.

References BARCELO_VBIOS_VID_DID, BIOS_NOTICE, CEZANNE_VBIOS_VID_DID, printk, and SA_IGD_OPROM_VENDEV.

Referenced by pci_rom_probe().

Here is the caller graph for this function:

◆ map_oprom_vendev_rev()

void map_oprom_vendev_rev ( u32 vendev,
u8 rev 
)

Definition at line 16 of file pci_rom.c.

References BIOS_NOTICE, PICASSO_VBIOS_REV, PICASSO_VBIOS_VID_DID, printk, RAVEN2_VBIOS_REV, RAVEN2_VBIOS_VID_DID, and soc_is_raven2().

Referenced by pci_rom_probe().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_rom_load()

struct rom_header* pci_rom_load ( struct device dev,
struct rom_header rom_header 
)

Definition at line 153 of file pci_rom.c.

References BIOS_DEBUG, device::class, rom_header::data, pci_data::ilen, pci_data::indicator, memcpy(), NULL, PCI_CLASS_DISPLAY_VGA, pci_ram_image_start, PCI_VGA_RAM_IMAGE_START, printk, rom_header::size, pci_data::type, and vga_pri.

Referenced by graphics_set_resources().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ pci_rom_probe()

◆ pci_rom_ssdt()

void pci_rom_ssdt ( const struct device device)

Referenced by graphics_fill_ssdt(), pcie_generic_fill_ssdt(), and pcie_rtd3_device_acpi_fill_ssdt().

Here is the caller graph for this function:

◆ pci_rom_write_acpi_tables()

unsigned long pci_rom_write_acpi_tables ( const struct device device,
unsigned long  current,
struct acpi_rsdp rsdp 
)

◆ verified_boot_should_run_oprom()

int verified_boot_should_run_oprom ( struct rom_header rom_header)

Referenced by should_run_oprom().

Here is the caller graph for this function:

◆ vga_oprom_preload()

void vga_oprom_preload ( void  )

Definition at line 19 of file pci_rom.c.

References BIOS_DEBUG, cbfs_preload(), CONFIG, name, and printk.

Here is the call graph for this function: