Skip to content

Commit

Permalink
baytrail: load microcode in bootblock
Browse files Browse the repository at this point in the history
Start loading microcode in the bootblock. This way
no caching has been set up and cache-as-ram mode
will be running in a validated configruation (with ucode
patch).

BUG=chrome-os-partner:22858
BRANCH=None
TEST=Built and booted. Confirmed microcode is loaded.

Change-Id: I6fd1d8e55bcc9d799b11d9faed771ac50dc120a2
Signed-off-by: Aaron Durbin <[email protected]>
Reviewed-on: https://chromium-review.googlesource.com/171861
Reviewed-by: Shawn Nematbakhsh <[email protected]>
Reviewed-on: http://review.coreboot.org/4863
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <[email protected]>
  • Loading branch information
Aaron Durbin authored and adurbin committed Feb 5, 2014
1 parent fd039f7 commit c0270aa
Showing 1 changed file with 12 additions and 3 deletions.
15 changes: 12 additions & 3 deletions src/soc/intel/baytrail/bootblock/bootblock.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#include <cpu/x86/msr.h>
#include <cpu/x86/mtrr.h>
#include <baytrail/iosf.h>
#include <cpu/intel/microcode/microcode.c>

static void set_var_mtrr(int reg, uint32_t base, uint32_t size, int type)
{
Expand Down Expand Up @@ -49,12 +50,10 @@ static void enable_rom_caching(void)
wrmsr(MTRRdefType_MSR, msr);
}

static void bootblock_cpu_init(void)
static void setup_mmconfig(void)
{
uint32_t reg;

enable_rom_caching();

/* Set up the MMCONF range. The register lives in the BUNIT. The
* IO variant of the config access needs to be used initially to
* properly configure as the IOSF access registers live in PCI
Expand All @@ -68,3 +67,13 @@ static void bootblock_cpu_init(void)
IOSF_REG(BUNIT_MMCONF_REG) | IOSF_BYTE_EN;
pci_io_write_config32(IOSF_PCI_DEV, MCR_REG, reg);
}

static void bootblock_cpu_init(void)
{
/* Allow memory-mapped PCI config access. */
setup_mmconfig();

/* Load microcode before any caching. */
intel_update_microcode_from_cbfs();
enable_rom_caching();
}

0 comments on commit c0270aa

Please sign in to comment.