x86 Board Development

Board development requires System-on-a-Chip (SoC) support. The combined steps are listed here. The development steps for the board are listed below:

  1. Required Files

Required Files

Create the board directory as src/mainboard/<Vendor>/<Board>.

The following files are required to build a new board:

  1. Kconfig.name - Defines the Kconfig value for the board
  2. Kconfig
    1. Selects the SoC for the board and specifies the SPI flash size
      1. BOARD_ROMSIZE_KB_<Size>
      2. SOC_<Vendor>_<Chip Family>
    2. Declare the Kconfig values for:
      1. MAINBOARD_DIR
      2. MAINBOARD_PART_NUMBER
      3. MAINBOARD_VENDOR
  3. devicetree.cb - Enable root bridge and serial port
    1. The first line must be "chip soc/Intel/<soc family>"; this path is used by the generated static.c to include the chip.h header file
  4. romstage.c
    1. Add routine mainboard_romstage_entry which calls romstage_common
  5. Configure coreboot build:
    1. Set LOCALVERSION
    2. FLASHMAP_OFFSET = 0x00700000
    3. Select vendor for the board
    4. Select the board
    5. CBFS_SIZE = 0x00100000
    6. Set the CPU_MICROCODE_CBFS_LEN
    7. Set the CPU_MICROCODE_CBFS_LOC
    8. Set the FSP_IMAGE_ID_STRING
    9. Set the FSP_LOC
    10. Disable GOP_SUPPORT
    11. No payload
    12. Choose the default value for all other options

Modified: 31 January 2016