From bf08da27d56f12e9176fc419f39b4951cd46a8f2 Mon Sep 17 00:00:00 2001 From: Lee Leahy Date: Sat, 20 Feb 2016 17:48:35 -0800 Subject: [PATCH] Documentation/Intel: Add minimal APCI and TempRamExit documentation Update the documentation to add the minimal ACPI support. Also add TempRamExit entry to the FSP features table. TEST=None Change-Id: I7a4576d58005a0b6834188dfeca97f1683d03cb0 Signed-off-by: Lee Leahy Reviewed-on: https://review.coreboot.org/13757 Tested-by: build bot (Jenkins) Reviewed-by: Martin Roth --- Documentation/Intel/Board/board.html | 29 ++++++++++++++++- Documentation/Intel/SoC/soc.html | 47 +++++++++++++++++++++++++++- Documentation/Intel/development.html | 43 ++++++++++++++++++++++++- 3 files changed, 116 insertions(+), 3 deletions(-) diff --git a/Documentation/Intel/Board/board.html b/Documentation/Intel/Board/board.html index 91aa3054d4..e157780962 100644 --- a/Documentation/Intel/Board/board.html +++ b/Documentation/Intel/Board/board.html @@ -17,6 +17,7 @@
  • Enable Serial Output
  • Load the Memory Timing Data
  • Disable the PCI devices
  • +
  • ACPI Tables
  • @@ -208,7 +209,33 @@ +
    -

    Modified: 15 February 2016

    +

    ACPI Tables

    +
      +
    1. Edit Kconfig +
        +
      1. Add "select HAVE_ACPI_TABLES"
      2. +
      +
    2. +
    3. Add the acpi_tables.c module: +
        +
      1. Include soc/acpi.h
      2. +
      3. Add the acpi_create_fadt routine +
          +
        1. fill in the ACPI header
        2. +
        3. Call the acpi_fill_in_fadt routine
        4. +
        +
      4. +
      +
    4. +
    5. Add the dsdt.asl module: +
    6. +
    + + + +
    +

    Modified: 20 February 2016

    \ No newline at end of file diff --git a/Documentation/Intel/SoC/soc.html b/Documentation/Intel/SoC/soc.html index 146e768183..3e72da3aa9 100644 --- a/Documentation/Intel/SoC/soc.html +++ b/Documentation/Intel/SoC/soc.html @@ -32,6 +32,7 @@
  • Set up the Memory Map"
  • +
  • ACPI Tables
  • @@ -556,8 +557,52 @@ Use the following steps to debug the call to TempRamInit: +
    +

    ACPI Tables

    +

    + One of the payloads that needs ACPI tables is the EDK2 CorebootPayloadPkg. +

    + +

    FADT

    +

    + The EDK2 module + CorebootModulePkg/CbSupportPei/CbSupportPei.c + requires that the FADT contains the following values: +

    + + + + + + + + + + + + +
    EDK2 FieldCoreboot Field
    Pm1aCntBlkpm1a_cnt_blk
    PmTmrBlkpm_tmr_blk
    ResetReg.Addressreset_reg.
    ResetValuereset_value
    Pm1aEvtBlkpm1a_evt_blk
    Gpe0Blkgpe0_blk
    Gpe0BlkLengpe0_blk_len
    +

    + The EDK2 data structure is defined in + MdeModulePkg/Include/IndustryStandard/Acpi61.h + The coreboot data structure is defined in + src/arch/x86/include/arch/acpi.h +

    + +
      +
    1. + Select HAVE_ACPI_TABLES + in the board's Kconfig file +
    2. +
    3. Create a acpi.c module: +
        +
      1. Add the acpi_fill_in_fadt routine and initialize the values above
      2. +
      +
    4. +
    +
    -

    Modified: 18 February 2016

    +

    Modified: 20 February 2016

    \ No newline at end of file diff --git a/Documentation/Intel/development.html b/Documentation/Intel/development.html index a3136d19d1..74a476fdc0 100644 --- a/Documentation/Intel/development.html +++ b/Documentation/Intel/development.html @@ -116,6 +116,21 @@ +

    Add coreboot Features

    +

    + Most of the coreboot development gets done in this phase. Implementation tasks in this + phase are easily done in parallel. +

    + + + +
    @@ -228,6 +243,20 @@ + + + + + + + + + + + + @@ -264,6 +293,18 @@ + + + + +
    PayloadWhereTesting
    ACPI Tables + SoC Support
    +
    Verified by payload or OS
    FSP Where
    TempRamExitsrc/drivers/intel/fsp1_1/after_raminit.SPost code 0x91 + (POST_FSP_TEMP_RAM_EXIT) + is displayed before calling TempRamExit by + after_raminit.S, + CONFIG_DISPLAY_MTRRS=y displays the correct memory regions and + Post code 0x39 is displayed by + after_raminit.S
    +
    SiliconInit @@ -294,6 +335,6 @@
    -

    Modified: 15 February 2016

    +

    Modified: 20 February 2016

    \ No newline at end of file