Commit graph

27258 commits

Author SHA1 Message Date
Nico Huber
c2e46420cc nb/intel/haswell: Implement proper backlight PWM config
Further backport the backlight-PWM handling from Skylake. Beside
configuring the PWM frequency in Hz, we also use the PCH's logic
for the brightness setting via BLM_PCH_OVERRIDE_ENABLE. Linux
would toggle it anyway and that might confuse our ASL code.

We assume that the 183Hz value that was set before for Slippy
variants was overridden by Linux with the 200Hz VBT value, like
it was for the Broadwell Chromebooks. So we set 200Hz for them
in the devicetrees. The calculated value for the T440p of 220Hz
seems sane and also matches the VBT.

Change-Id: I17dfe1a3610d5e2918c617cf5d10896692fdccb3
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39769
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-29 18:03:30 +00:00
Matt DeVillier
8107c81e07 src/device/Kconfig: Adjust Graphics init defaults
Adjust the defaults for Graphics Initialization so
that the "best" option for a board is selected by default.
Net effect is to select RUN_FSP_GOP over VGA_ROM_RUN
in cases where the platform supports GOP init and the
mainboard has a VBT file included.

Test: run 'make menuconfig' and check default Display
Init option for google/cyan, observe RUN_FSP_GOP is default.

Change-Id: I2184dbdd943d035d1682b3ae7bd8d005221434b1
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39871
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2020-03-29 18:01:37 +00:00
Matt DeVillier
de349ed45c mb/google/cyan: Clean up Kconfig
Cyan has no VGA BIOS available (at least not publicly), so
remove related options. Disable SoC serial output by default,
since no production devices have this exposed, but leave it
as a user option so it can be selected as needed (eg,
for use with a Google debug servo).

Change-Id: Ic079a39ca5ad0ac653b52248244b94d4bfbd08a4
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39872
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-29 18:01:18 +00:00
Matt DeVillier
044b49c381 mb/google/glados: remove Chrome-EC defaults
Chrome-EC/PD images for all glados variants need to be built
from the board-specific branch, not master. Including the default
board names serves no purpose and requires users to deselect
the "use built-in EC firmware" in order for the board to build.

Test: build google/chell with defaults

Change-Id: Ic10f11337b85035068cdc4fe8147413e6b7f57ac
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39890
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-29 18:00:58 +00:00
Matt DeVillier
6e50849b8c mb/51nb/x210: Fix up USB ports in devicetree
Add missing port definition for the mSATA/WWAN mPCIe port,
set OC pin for internal ports to OC_SKIP, fix port
descrption for mPCIe/WLAN port, remove USB3 definition for
right type-A port as it is USB2 only.

Test: insert WiFi module into WWAN port, observe BT portion
detected and functional.

Change-Id: Ie39b99eeb0f605ff07d57c32189fb1f4183713e4
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39808
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-29 18:00:20 +00:00
Arthur Heymans
b49e210984 cpu/x86/Makefile.inc: Fix external toolchain build
The sipi_vector.S just needs to be linked as relocatable
so there is no need to invoke the compiler.

TEST: BUILD_TIMELESS=1 has the same hashes

Change-Id: I0370f1590a70cffb48c7930f6ae85956b506b09c
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37193
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-29 17:52:46 +00:00
Paul Fagerburg
4554942c8c hatch: Create sushi variant
Create the sushi variant of the hatch reference
board by copying the template files to a new directory named
for the variant.

(Auto-Generated by create_coreboot_variant.sh version 3.0.0).

BUG=None
BRANCH=None
TEST=util/abuild/abuild -p none -t google/hatch -x -a
make sure the build includes GOOGLE_SUSHI

Signed-off-by: Paul Fagerburg <pfagerburg@google.com>
Change-Id: Ie900d09ff55e695527eafe68a5a75cd4a0b6d340
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39892
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
2020-03-29 17:51:41 +00:00
Martin Roth
eb30e1a9aa soc/amd/picasso: Add and use CPUID defines for Picasso and Raven2
Change-Id: I35a1c404ff2f381d3d6bf4f2e4bbbf5429db38c3
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1961485
Reviewed-on: https://chromium-review.googlesource.com/2060905
Reviewed-by: Raul E Rangel <rrangel@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39885
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-29 15:33:20 +00:00
Felix Held
8cb5c30c2a soc/amd/picasso: Add Kconfig option for chip footprint
Pollock uses the FT5 footprint, so add the Kconfig option to
allow us to differentiate the chips.

Change-Id: Ia4663d38f1824786f14b6aa000adf27d64e70b5f
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/2051509
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Eric Peers <epeers@google.com>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39867
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-29 15:32:59 +00:00
Nico Huber
79dfa909bb superio: Replace D1/D2 power states with D3
Spec says if any object to control the power state exists, at least
D0 and D3 must be supported. And it seems Windows complains about the
missing D3 support: https://ticket.coreboot.org/issues/257

Windows reported `*** STOP: 0x000000A5` with the first parameter
`0x000000000000000D` (refers to a missing ACPI object) and the
third parameter `0x000000003353505F` which is the name of the
object in ASCII, little-endian (`_PS3`).

Change-Id: Ifa28a7c56575848e76e4a1c542866413b4c44d50
Signed-off-by: Nico Huber <nico.h@gmx.de>
Closes: https://ticket.coreboot.org/issues/257
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39746
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-29 00:00:55 +00:00
Matt DeVillier
ddb4cf08f7 soc/intel/skylake: Hook up GMA ACPI brightness controls
Add struct i915_gpu_controller_info for boards to supply info needed
to generate ACPI backlight control SSDT. Hook into soc/common framework
by implementing intel_igd_get_controller_info().

Change-Id: I70e280e54d78e69a335f9a382261193c593ce430
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39883
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2020-03-28 23:12:31 +00:00
Matt DeVillier
1eea1dd7d7 soc/intel/common: Hook up GMA ACPI brightness controls
Add framework to hook up the generic src/drivers/intel/gma ACPI
backlight control for platforms using SOC_INTEL_COMMON_BLOCK_GRAPHICS.
Add a weak function to get the struct i915_gpu_controller_info needed
to generate the SSDT, defaulting to NULL, which SoC's will override.

Each SoC will need to override intel_igd_get_controller_info, and
individual boards will need to populate the struct in order for
the backlight control methods to be added to the SSDT.

Change-Id: I993770fdcd0a28cee756df2bd6a795498f175952
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/32549
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-28 23:12:00 +00:00
Aamir Bohra
512b77abb5 soc/intel/jasperlake: Remove Tiger Lake SoC code from Jasper Lake
This is a follow-up patch to initial copy patch for Jasper Lake SoC.
Remove all Tiger Lake specfic code from Jasper Lake SoC code.

BUG=b:150217037

Change-Id: I44dc6bf55ca18a3f0c350f5c3e9fae2996958648
Signed-off-by: Aamir Bohra <aamir.bohra@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39824
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-28 14:08:23 +00:00
Aamir Bohra
dd7acaad27 soc/intel/jasperlake: Add Jasper Lake SoC support
This is a copy patch from Tiger Lake SoC code.

The only changes done on top of copy is changing below configs:
1. SOC_INTEL_TIGERLAKE -> SOC_INTEL_TIGERLAKE_COPY
2. SOC_INTEL_JASPERLAKE -> SOC_INTEL_JASPERLAKE_COPY
3. SOC_INTEL_TIGERLAKE_BASE -> SOC_INTEL_TIGERLAKE_BASE_COPY

We started with initial assumption that JSL and TGL can co-exist.
But now we see the SoC code in Tiger Lake is relying on too many
compile-time directives to make two SoCs co-exist. Some of the
differences are listed below:

-> Kconfig: Multiple Kconfig options using
   if SOC_INTEL_{TIGERLAKE/JASPERLAKE}

-> GPIO: GPIO communities have their own differences.
   This requires conditional checks in gpio.asl, gpio.c, gpio*.h,
   pmc.h and gpio.asl

-> PCI IRQs: Set up differently for JSL and TGL

-> PCIe: Number of Root ports differ.

-> eMMC/SD: Only supported on JSL.

-> USB: Number of USB port are different for JSL and TGL.

-> Memory configuration parameters are different for JSL and TGL.

-> FSP parameters for JSL and TGL are different.

The split of JSL and TGL SoC code is planned as below:

1. Copy Tiger Lake SoC code as is, and change SoC Kconfig
   to avoid conflicts with current mainboard builds.

2. Clean up TGL code out of copy patch done in step 1.
   Make it JSL only code. The SoC config still kept as
   SOC_INTEL_JASPERLAKE_COPY.

3. Change JSL SOC Kconfig from SOC_INTEL_JASPERLAKE_COPY to
   SOC_INTEL_JASPERLAKE, dedede and jasperlake_rvp boards can
   bind to SoC code from soc/intel/jasperlake. This step establishes
   Jasper Lake as a separate SoC.

4. Clean up current JSL code from TGL code. This step establishes
   Tiger Lake as a separate SoC.

BUG=b:150217037

Change-Id: I9c33f478a2f8ed5e2d8e7815821d13044d35d388
Signed-off-by: Aamir Bohra <aamir.bohra@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39823
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2020-03-28 14:08:04 +00:00
Marshall Dawson
f0619f47c3 vc/amd/fsp/picasso: Add PCIe and DDI helpers
Add a file for generating PCIe and DDI descriptors that will be
understandable to the FSP.

Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: Iaa4d81a0f2909cb66e551e34e1f3fa4725560d60
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38698
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2020-03-27 20:01:33 +00:00
Subrata Banik
90557f4a4b drivers/intel/fsp2_0: Avoid iterative print statement
This patch moves "Display FSP Version Info HOB" print outside
of the loop to avoid getting called multiple times.

TEST=Able to see "Display FSP Version Info HOB" only once.

Change-Id: I754d5922f4dbef22656ca98c02d9f45791c8433d
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39827
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-27 05:39:37 +00:00
Andrey Petrov
1b325dd971 mb/intel/cedarisland_crb: Add Cedar Island CRB
Just a minimal set of board files needed to get it to boot
in 1 CPU mode.

Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Change-Id: Ie2f944964e938d8026a6d5d8a22a8449199d08aa
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39714
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-26 18:14:46 +00:00
Andrey Petrov
7b42bba3cf vendorcode: Add fake Cooperlake-SP FSP header files
These header files are just placeholders. Currently FSP does not
look into any real platform-specific UPD fields anyway, so having
padding instead of real thing makes no difference.

Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Change-Id: Id123f4386124b2ceb7776ab719a9970c9c23a0e0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39711
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
2020-03-26 18:14:16 +00:00
Andrey Petrov
2e410757ef soc/intel/xeon_sp: Add basic Cooperlake-SP support
This adds barebones support.

What works:
* Linux kernel boots fine
* SIRQ and PCH interupts work fine (only in IOAPIC mode)
* PCH devices are usable

What doesn't:
* MP init is not there yet, only 1 CPU is up
* SMM is not supported
* GPIO is not available
* All IIO and extended bus numbers enumeration is not yet available
* Warm reset flow is untested
* MRC cache save/load

TEST=boots into Linux

Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Change-Id: I7c987badc3c53f16ad178369c7e0906d6596e465
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39713
Reviewed-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 18:13:51 +00:00
Andrey Petrov
b75bcc978a mb/ocp/tiogapass: Properly configure early serial output
Tioga Pass comes with AST2500 BMC which offers SuperIO functionality.
However we currently do not configure/enable SuperIO chip. As a result
system boots pretty silently on cold boot. Then FSP configures SuperIO
and resets the system so on next boot serial console does work. This
makes debugging difficult because pre-FSP output is invisible.

This patch enables bootblock to properly configure desired BMC SuperIO
port so early serial output is visible.

TEST=do a cold boot on OCP Tioga Pass, observe bootblock output starting
from bootblock.

Change-Id: Iff8e6a862858d733f529bb9b8c65e22e5ec6b521
Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39782
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maxim Polyakov <max.senia.poliak@gmail.com>
2020-03-26 18:13:35 +00:00
Ronak Kanabar
5e5d9c2d1b mb/intel/jasperlake_rvp: add display related UPD configs
Change-Id: Iad0b394dea017223a5b92fff0cb4c2ed1d5a7bd7
Signed-off-by: Ronak Kanabar <ronak.kanabar@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39402
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 13:10:49 +00:00
Maulik V Vaghela
9ed5a36e98 mb/intel/jasperlake_rvp: Correct Kconfig options
1.Select CHROMEOS_EC related Kconfig for variant board with
  external EC support.
2.Select proper CHROMEOS Kconfigs which are required for all
  variants.
3.Disable Intel EC region in case of external EC.

BUG=None
BRANCH=None
TEST=Compilation is successful for both Jasper Lake RVP variants.

Change-Id: I290b3748777e18476651101de71df9080dd3105c
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39584
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 13:10:12 +00:00
Dtrain Hsu
aa56c11b19 mb/google/dedede: Query the EC for board version
The board version is part of EC's EEPROM, select Kconfig item to enable
requesting the EC for board version.

BUG=b:152374066
TEST=Verified the mainboard version is from EC's EEPROM.

Signed-off-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Change-Id: Idd8aceed83439cb500e2b03153e9f8ba93979ee8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39819
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Marco Chen <marcochen@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Justin TerAvest <teravest@chromium.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
2020-03-26 13:09:06 +00:00
Elyes HAOUAS
bfa8166b71 mb/google/hatch/variants/nightfury: Replace unneeded white spaces by tabs
Change-Id: Icda241cfac7b428176515d7996a48cb01b1dc976
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39815
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 13:07:59 +00:00
Elyes HAOUAS
8a7aff4b0b mb/google/volteer: Use tabs for indents
Change-Id: I7304b06d7bf34fb7126acfdef811481dc5cba598
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39814
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-26 13:07:52 +00:00
Wim Vervoorn
8bf921c32f mb/facebook/monolith: Update GT-Sliced icc_max
Update the icc_max for the GT-Sliced VR domain according to the
hardware design.

BUG=N/A
TEST=build

Change-Id: Ib9f7d77d144a282214e6bda8a4e836873c395487
Signed-off-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39804
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 13:07:39 +00:00
Angel Pons
69e1714dd2 nb/intel/sandybridge: Use macros for JEDEC commands
Some commands, like ZQCS and ZQCL, use the same macro. This is because
they differ in things outside of the IOSAV_SP_CMD_CTRL registers. Also,
correct a comment that does not concur with the actual command in use.

With BUILD_TIMELESS=1, the binary of ASUS P8Z77-V LX2 remains identical.

Change-Id: Id2ff4c85f9d9db7c892b764472423cbf2e6db422
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39776
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:20:51 +00:00
Angel Pons
394ac5b33e nb/intel/sandybridge: Fix IOSAV register description
The four CS control signals are grouped into the same nibble.

Change-Id: Iaf8d5216fdca6014be61ae2583fc963d69111571
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39767
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:20:43 +00:00
Angel Pons
ca2f68abed nb/intel/sandybridge: Correct TC_DTP handling
It is only for Ivy Bridge, and needs to be set on certain circumstances.

Change-Id: I4093adef44fae787c96fec4b4b8c7c867786d219
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39760
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:20:35 +00:00
Angel Pons
5fd50b6b19 nb/intel/sandybridge: Add and use TC_DTP definition
This register is specific to Ivy Bridge. This changes the binary because
the operations get reordered, but it is equivalent.

Change-Id: Ibc9127e0fc268466c13f7c5ac8d942543713ca32
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39759
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:20:09 +00:00
Angel Pons
098240eb4f nb/intel/sandybridge: Use IOSAV_BYTE_SERROR_C_ch macro
This changes the binary because the operations get reordered, but it is
otherwise equivalent.

Change-Id: I362187b2889e6f7a68bf752a23c1279cebf961f2
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39758
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-26 10:19:56 +00:00
Angel Pons
0c3936e41b nb/intel/sandybridge: Update comment
Expand a comment with additional information, and split it in two lines.

Change-Id: I10389a1a575833c8ecc9a79a374c1816000f5667
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39757
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:19:46 +00:00
Angel Pons
a38fee31b5 nb/intel/sandybridge: Rename raminit_ivy.c
It is no longer specific to Ivy Bridge.

Change-Id: I3684e654a1b1aee308e30db739d41cf18e7ea6bd
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39790
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 10:19:39 +00:00
Angel Pons
07609028ec nb/intel/sandybridge: Drop dead code
Sandy Bridge now uses the same code as Ivy Bridge. Drop the old code.

Change-Id: I4f6a71a4223194d83c0ee790d317ecdcafd664fd
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39789
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 10:19:31 +00:00
Angel Pons
efbed263df nb/intel/sandybridge: Unify the code paths
The code for Sandy Bridge is a subset of the code for Ivy Bridge. Adapt
the Ivy Bridge code so that it also supports Sandy Bridge, and use it.

Tested on Asus P8Z77-V LX2, still boots with i7-2600 and i5-3330.

Change-Id: I7b78ec605aff976b9a5cdbb364a69df4b4947c6e
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39737
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 10:19:21 +00:00
Angel Pons
29f391ec8f nb/intel/sandybridge: Add print for PLL_REF100_CFG
This field can take eight different values, depending on the maximum
supported speed for the memory when using the 100 MHz reference clock.

Change-Id: I8f2f04f9444831319d4f7bf0d246d01030b6f864
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39788
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-26 09:39:04 +00:00
Angel Pons
a6c8b4becb nb/intel/sandybridge: Rewrite get_FRQ
The code is just clamping the frequency index to a valid range. Do it
with a helper function. Also, add a CPUID check, as Sandy Bridge will
eventually use this code.

Change-Id: I4c7aa5f7615c6edb1ab62fb004abb126df9d284b
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39787
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-26 09:38:42 +00:00
Edward O'Callaghan
2a0a02f98f drivers/net/r8168: Fix extraneous space in "ethernet_mac "
Unfortunately this was noticed only after commit 0e1380683f
merged, credit to Sam McNally for spotting it. Previously
the legacy path replaced the space with a null byte and so
the expected string here is precisely "ethernet_mac" and
not "ethernet_mac ".

BUG=b:152157720
BRANCH=none
TEST=none

Change-Id: I603fad4efd6d6c539137dd714329bcea1877abdd
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39856
Reviewed-by: Sam McNally <sammc@google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 06:27:41 +00:00
Edward O'Callaghan
0e1380683f drivers/net/r8168: Fix ethernet_mac[0-9] format for vpd
The format for VPD has changed s.t. the first NIC should
always have a zero concat to the end.

Adjust all the respective boards to shift back by one and
adjust drivers/net friends to remove the 'special casing'
of idx == 0.

Background:
https://chromeos.google.com/partner/dlm/docs/factory/vpd.html#field-ethernet_macn

V.2: Fixup a code comment typo while we are here.
V.3: Vary special casing semantics for idx==0 => default mac addr is set.
V.4: Rework to still support the legacy path.

BUG=b:152157720
BRANCH=none
TEST=none

Change-Id: Idf83cc621a9333186dabb668b22c4b78e211930a
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39771
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-26 05:32:40 +00:00
Edward O'Callaghan
d08bc5ad7a drivers/net/r8168: Fix leaking memory from mapping
BUG=b:152157720,b:152459313
BRANCH=none
TEST=none

Change-Id: Ie79c3209d0be719ae1394e87efb357b84ce32840
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39855
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-26 05:31:38 +00:00
Edward O'Callaghan
2a82f744d4 drivers/net/r8168: Split fetch_mac_string_vpd() logic up
Orginally fetch_mac_string_vpd() has been special cased around
a device_index of 0/1 that causes a number of edge cases and
complexity when attempting to refactor to deal with the revised
VPD format. The following change prepares the ground work by
splitting up the functional into logical workers where we can
deal with each edge case in a more bounded way.

The background here is that the format for VPD has changed s.t. the
first NIC should always have a zero concat to the end. The details
of that can be found here:
 https://chromeos.google.com/partner/dlm/docs/factory/vpd.html#field-ethernet_macn

BUG=b:152157720
BRANCH=none
TEST=none

Change-Id: Idc886d9b0b3037c91f40b742437e4e50711b5f00
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39811
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-26 05:30:39 +00:00
Andrey Petrov
335384d2b7 soc/intel/xeon_sp: Configure P2SB BAR in bootblock
In order to use early serial output we need to enable P2SB BAR0, because
that allows PCR access to PCH registers.

TEST=tested on OCP Tioga Pass

Change-Id: I476f90b2df67b8045582f0b72dd680dea5a9a275
Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39781
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-26 02:53:26 +00:00
Andrey Petrov
662da6cf7b soc/intel/xeon_sp: Refactor code to allow for additional CPUs types
Refactor the code and split it into Xeon common and CPU-specific code.
Move most Skylake-SP code into skx/ and keep common code in the current
folder.

This is a preparation for future work that will enable next
generation server CPU.

TEST=Tested on OCP Tioga Pass. There does not seem to be degradation
of stability as far as I could tell.

Signed-off-by: Andrey Petrov <anpetrov@fb.com>
Change-Id: I448e6cfd6a85efb83d132ad26565557fe55a265a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39601
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-26 02:06:45 +00:00
Joel Kitching
a1b15172d7 create stdio.h and stdarg.h for {,v}snprintf
Sometimes coreboot needs to compile external code (e.g.
vboot_reference) using its own set of system header files.
When these headers don't line up with C Standard Library,
it causes problems.

Create stdio.h and stdarg.h header files.  Relocate snprintf
into stdio.h and vsnprintf into stdarg.h from string.h.
Chain include these header files from string.h, since coreboot
doesn't care so much about the legacy POSIX location of these
functions.

Also move va_* definitions from vtxprintf.h into stdarg.h where
they belong (in POSIX).  Just use our own definitions regardless
of GCC or LLVM.

Add string.h header to a few C files which should have had it
in the first place.

BUG=b:124141368
TEST=make clean && make test-abuild
BRANCH=none

Change-Id: I7223cb96e745e11c82d4012c6671a51ced3297c2
Signed-off-by: Joel Kitching <kitching@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39468
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2020-03-25 23:38:46 +00:00
Michał Żygowski
65f05505a6 superio/nuvoton/nct5104d: add chip config option to reset GPIOs
Define a chip option to explicitly soft reset all enabled GPIOs to
default state.

TEST=boot FreeBSD 11.2 on PC Engines apu1, change GPIO configuration
using nctgpio module and check whether GPIOs are reset after reboot

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Iae4205574800138402cbc95f4948167265a80d15
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38850
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-25 18:08:56 +00:00
Angel Pons
48409b8229 nb/intel/sandybridge: Cache FRQ index
It does not change once a frequency has been set, so store it somewhere.
Since this changes the saved data definition, update MRC_CACHE_VERSION.
As SNB will eventually use the same code, only IVB is being refactored.

Change-Id: I25b7c394abab173241fffdf57ac5c929daad8257
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39786
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-25 16:12:20 +00:00
Angel Pons
df09bdb726 nb/intel/sandybridge: Rewrite table accessors
There is no need to call get_FRQ a dozen times with the same parameters.
As SNB will eventually use the same code, only IVB is being refactored.

Tested on Asus P8Z77-V LX2, still boots with i7-2600 and i5-3330.

Change-Id: Idd7c119b2aa291e6396e12fb29effaf3ec73108a
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39723
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-25 16:11:50 +00:00
Michał Żygowski
b84c616750 amd/common/acpi: move thermal zone to common location
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I048d1906bc474be4d5a4e44b9c7ae28f53b49d5a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39779
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Christian Walter <christian.walter@9elements.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-25 15:19:52 +00:00
Nico Huber
612a867677 drivers/intel/gma/acpi: Add Kconfigs for backlight registers
Instead of adding more versions of the `*pch.asl`, unify the existing
ones and allow to override the register locations via Kconfig. The
current defaults should work for Skylake and some newer platforms.

TEST=Booted ThinkPad X201s, backlight control still works.

Change-Id: I0b21d9a0288f0f8d6cb0a4776909bffdae7576f5
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/31503
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-by: Benjamin Doron <benjamin.doron00@gmail.com>
2020-03-25 10:54:38 +00:00
Wim Vervoorn
4f012694dd mb/facebook/monolith: Configure COMB to 0x3e8
The 2nd COM port's base address defaults to 0x2f8. Current software
for this system expects the port at 0x3e8.

Configure COMB to use 0x3e8 instead of 0x2f8.

BUG=N/A
TEST=tested on facebook monolith

Change-Id: Ibb462bad5f0594e0b5c8dea6e02cd42d58d999ab
Signed-off-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39499
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-25 10:53:38 +00:00
Meera Ravindranath
b43d74a798 mb/intel/jasperlake_rvp: Update FMAP for jslrvp
Remove unused SMM_STORE space and use it for RW_LEGACY area

BUG=None
TEST=None

Change-Id: I5724b860271025e8cb8b320ecbd33352ef779660
Signed-off-by: Meera Ravindranath <meera.ravindranath@intel.com>
Signed-off-by: Ronak Kanabar <ronak.kanabar@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38273
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-by: V Sowmya <v.sowmya@intel.com>
2020-03-25 10:53:17 +00:00
Karthikeyan Ramasubramanian
9e71fdd506 mb/google/dedede: Update EC_MKBP_INT_L configuration
The concerned GPIO is configured as an open drain at the Embedded
Controller side without an external pull-up. This causes leakage in the
PP3300_A rail. So configure the GPIO to have a weak internal pull-up at
the SoC side.

BUG=b:151680590
TEST=Build the mainboard. Ensure that there are no leakages in the
PP3300_A rail.

Change-Id: I5553cf40adb92edc0fecab5c875ec8d72063ba7b
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39796
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Justin TerAvest <teravest@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-25 10:52:06 +00:00
Nico Huber
34d8036333 drivers/secunet: Add driver to read DMI info from I2C EEPROM
The EEPROM layout is rather arbitrary and /just happened/. It needs a
256kbit part at least.

Change-Id: Iae5c9138e8404acfc3a43dc2c7b55d47d4147060
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36298
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:51:10 +00:00
Martin Roth
dafcc7a26d Rework map_oprom_vendev to add revision check and mapping
AMD's Family 17h SoCs share the same video device ID, but may need
different video BIOSes. This adds the common code changes to check the
vendor & device IDs along with the revision and select the correct video
BIOS to use.

Change-Id: I2978a5693c904ddb09d23715cb309c4a356e0370
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/2040455
Reviewed-by: Raul E Rangel <rrangel@chromium.org>
Reviewed-by: Matt Papageorge <matt.papageorge@amd.corp-partner.google.com>
Reviewed-by: Justin Frodsham <justin.frodsham@amd.corp-partner.google.com>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39793
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2020-03-25 10:49:08 +00:00
Martin Roth
a616a4be36 src/device: Add option to look at revision in option roms
AMD's Family 17h SOCs have the same vendor and device IDs for
their graphics blocks, but need different video BIOSes.  The
only difference is the revision number.

Add a Kconfig option that allows us to add the revision number
of the graphics device to the PCI option rom saved in CBFS.

Because searching CBFS takes a non-trivial amount of time,
only enable the option if it's needed.  If it's not used, or
if nothing matches, the check will fall through and search for
an option rom with no version.

BUG=b:145817712
TEST=With surrounding patches, loads dali vbios

Change-Id: Icb610a2abe7fcd0f4dc3716382b9853551240a7a
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/2013181
Reviewed-by: Martin Roth <martinroth@google.com>
Tested-by: Martin Roth <martinroth@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39792
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2020-03-25 10:48:21 +00:00
Martin Roth
4cc2cacd33 arch/x86: Add Kconfig option for 2nd VGA BIOS image
Picasso and Dali need different video bioses even though they use the
same code in most other places.

The Kconfig symbol names are changed from the downstream commit to make
them more consistent with current coreboot code.

BUG=b:145817712
TEST=Build Dali vBIOS into the coreboot image

Change-Id: Ide0d061fda0abc78a74ddf97ba81fc3cf2b02e4f
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1956534
Reviewed-by: Paul Fagerburg <pfagerburg@chromium.org>
Reviewed-by: Raul E Rangel <rrangel@chromium.org>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39791
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2020-03-25 10:46:52 +00:00
Maulik V Vaghela
17a478c854 mb/intel/jasperlake_rvp: Add config check for lid switch
We should only define function to get lid switch and recovery mode
switches when CHROMEEC_SWITCHES is not available. Correct this to avoid
compilation issues

BUG=None
BRANCH=None
TEST=jslrvp code compilation is fine

Change-Id: I2445d40da1540c9d8c8c5fc845a4f38a5abf983e
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39585
Reviewed-by: Ronak Kanabar <ronak.kanabar@intel.com>
Reviewed-by: V Sowmya <v.sowmya@intel.com>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:45:57 +00:00
Felix Singer
26dc8f2c4e soc/intel/cometlake: Use IntelFSP repo
Make use of the publicly-available FSP binaries and headers for Comet
Lake. Also, remove the Comet Lake header files from src/vendorcode,
since they are no longer necessary.

Change-Id: I392cc7ee3bf5aa21753efd6eab4abd643b65ff94
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39372
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Michael Niewöhner
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:45:36 +00:00
Ronak Kanabar
ba5062d78b mb/intel/jasperlake_rvp: Add memory config for Jasper Lake RVP
Add memory initialization parameters for Jasper Lake RVP boards
Jasper Lake RVP supports two variants, one with memory LPDDR4
and another with DDR4
Based on board id, mainboard will pass correct memory parameters
to the fsp.

BUG=None
BRANCH=None
TEST=Check compilation for Jasper Lake RVP and check memory training passes.

Change-Id: Idc92363a2148990df16c2068c7986013d015f604
Signed-off-by: Ronak Kanabar <ronak.kanabar@intel.com>
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39195
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
Reviewed-by: V Sowmya <v.sowmya@intel.com>
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:45:08 +00:00
Tim Wawrzynczak
2e4bc06b49 drivers/usb/acpi: Add needed #include file
The chip.h for this driver was updated to add a reset GPIO, but did
not add the required #include of <arch/acpi_device.h>. This likely
still compiled because other chip.h files included before it may have
included it themselves.

Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Change-Id: I13200f7347fd17739a377e8ad0906ab7e5d6ae1b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39677
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:44:30 +00:00
Michał Żygowski
9550e97304 acpi: correct the processor devices scope
The ACPI Spec 2.0 states, that Processor declarations should be made
within the ACPI namespace \_SB and not \_PR anymore. \_PR is deprecated
and is removed here.

Additionally add processor scope patching for P-State SSDT created by
AGESA, becasue AGESA creates the tables with processors in \_PR scope.

TEST=boot Debian Linux on PC Engines apu2, check dmesg that there are
no errors, decompile ACPI tables with acpica to check whether the
processor scope is correct and if IASL does not complain on wrong
checksum, run FWTS

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I35f112e9f9f15f06ddb83b4192f082f9e51a969c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39698
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:43:37 +00:00
Johnny Lin
a956063e5f mb/ocp/tiogapass: Enable IPMI KCS
A bigger than zero value of bmc_boot_timeout must be set
for KCS ipmi_get_bmc_self_test_result() to run, otherwise
the self test result will be error and won't write SMBIOS
type 38 table. Here we set 60 seconds as the maximal self
test timeout.

Tested=Check if the BMC IPMI response data and SMBIOS type
38 on OCP Tioga Pass are correct or not.

Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com>
Change-Id: I3678973736a675ed22b5bc9da20a2ca947220f4b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38995
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <siro@das-labor.org>
2020-03-25 10:42:25 +00:00
Johnny Lin
ebb7f54b1a soc/intel/xeon_sp: Enable LPC generic IO decode range
To use Intel common block LPC function that enables the IO ranges
defined in devicetree.cb.

Tested on OCP Tioga Pass with BMC LPC working.

Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com>
Change-Id: I675489d3c66dad259e4101a17300176f6c0e8bd8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38994
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Jonathan Zhang <jonzhang@fb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:42:14 +00:00
Wonkyu Kim
3180af7fd6 soc/intel/tigerlake: Configure Hyperthreading
Configure Hyperthreading based on devicetree

BUG=none
TEST= Build and boot with FSP log and check Hyperthread setting

Signed-off-by: Wonkyu Kim <wonkyu.kim@intel.com>
Change-Id: Idc94e6b8ecd59a43be60bf60dc7dd0811ac0350b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39683
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:41:06 +00:00
Angel Pons
825332d3c9 nb/intel/sandybridge: Factor out timing tables
The timing tables for Sandy Bridge are a subset of Ivy Bridge's tables.
Move the latter to a common place, and use it for both generations.

Tested on Asus P8Z77-V LX2 with an i7-2600 and an i5-3330, both work.

Change-Id: Id14227febf4eebb8a2b4d2d4f37759d0f42648c6
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39735
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-25 10:24:41 +00:00
Angel Pons
6e5aabd58a nb/intel/sandybridge: Use SPDX headers
Note that pei_data.h uses the BSD 3-Clause license:

https://opensource.org/licenses/BSD-3-Clause

Change-Id: I904b343283239af4fdee583bcbea757f59a0cca7
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39777
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-25 10:21:27 +00:00
Michał Żygowski
4d177e47c3 mb/pcengines/*/devicetree: remove non-existing NCT5104d LDN 0xe
Nuvoton NCT5104d has no LDN 0xe according to its datasheet.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I0d34218d88b779b08c380d2396ff9ab9253597fa
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38851
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
2020-03-25 09:36:10 +00:00
Michał Żygowski
8e46d42009 mb/pcengines/apu2: enable PCIe power management features
Enable ASPM L0s and L1, Common Clock and Clock Power Management for
all PCIe ports.

TEST=boot Debian linux and check new PCIe capabilities appear in lspci

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I0a4c83731742f31ab8ef1d326e800dfdc2abb1b7
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39704
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-25 08:05:43 +00:00
Michał Żygowski
c04871a398 mb/pcengines/apu2: add reset logic for PCIe slots
PC Engines apu2 had many problems with PCIe cards detection. The cards
were inconsistently detected when booted from G3, S5 or after a reboot.
AGESA can reset PCIe slots using GPIO via callback. Use it to reset the
slots that support using GPIO as reset signal.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I8ff7db6ff85cce45b84729be905e6c895a24f6f2
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39703
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-25 08:04:17 +00:00
Nico Huber
d07ac8ee13 drivers/intel/gma: Ditch link_frequency_270_mhz setting
The `link_frequency_270_mhz` setting was originally used by the native
graphics init code for Sandy/Ivy Bridge, which is long gone.

The value of this information (which board had it set) is questionable.
The only board that had an LVDS panel and set it to 0 was the ThinkPad
L520, where native graphics init was never reported to work. Also, the
native graphics init only used it for calculations, but never confi-
gured the hardware to use a specific frequency. A look into the docu-
mentation also doesn't reveal any straps that could be used to confi-
gure it.

Change-Id: Ieceaa13e4529096a8ba9036479fd84969faebd14
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39763
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Alexander Couzens <lynxis@fe80.eu>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-24 20:36:36 +00:00
Nico Huber
e47132be66 intel/broadwell: Correct backlight-PWM divider
The PWM-granularity chicken bit in the Wildcat Point and Lynx Point
PCHs has actually the opposite meaning of the one for Sunrise Point
and later. When the bit is set, we get a divider of 16, when it's
unset 128. Flip the bit!

Change-Id: I1dbde1915d8b269c11643a1636565a560eb07334
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39770
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-24 20:36:01 +00:00
Nico Huber
53ec8c5722 drivers/intel/gma/acpi: Use SPDX license identifiers
Change-Id: I9012394e553211abe4b225beb9150d997d0c2e38
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39730
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-24 16:46:53 +00:00
Nico Huber
bed7ad9cd3 drivers/intel/gma/acpi: Let the compiler initialize counters[]
TEST=Booted ThinkPad X201s, backlight control still works.

Change-Id: I8ff3493be4dc8d640a511358a5324eb73eb35db9
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39729
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-24 16:46:40 +00:00
Nico Huber
c0be410760 drivers/intel/gma/acpi: Use snprintf() to construct device name
TEST=Booted ThinkPad X201s, backlight control still works.

Change-Id: Ieee02f698879ba6b60d863dd63ef9107c0d502b5
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39728
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-24 16:46:32 +00:00
Nico Huber
53c1717dc1 drivers/intel/gma/acpi: Refine some cosmetics
TEST=Booted ThinkPad X201s, backlight control still works.

Change-Id: Ie3b00daedc9de05abef0cae9cea99dc7acf1ff62
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39727
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-24 16:43:30 +00:00
Nico Huber
e98f6af77b drivers/intel/gma/acpi: Reduce display switching stubs
_DCS, _DGS and _DSS are required by specification. However,
we never implemented them properly, and no OS driver com-
plained yet. So we stub them out and keep the traditional
behavior in case an OS driver checks for their existence.

The old implementations also only returned static values as
there never was any write to their GNVS variables. The TRAP()
that was called in one place is actually implemented by some
ThinkPad's SMI handler as docking event. However, as the call
precedes these SMI handlers in coreboot history, it's most
likely an accident.

Change-Id: Ib0b9fcdd58df254d3b2290900e3bc206a7abd92d
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39726
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
2020-03-24 16:43:00 +00:00
Edward O'Callaghan
4bd6927388 mb/google/hatch: Give first NIC in Puff idx 1 for vpd
The format for VPD has changed s.t. the first NIC should
always have a zero concat to the end. drivers/net supports
this with the workaround of setting the idx to 1.

The longer term fix is to adjust all the respective boards
to shift back by one and adjust drivers/net friends to
remove the 'special casing' of idx == 0.

Background:
https://chromeos.google.com/partner/dlm/docs/factory/vpd.html#field-ethernet_macn

BUG=b:152157720
BRANCH=none
TEST=none

Change-Id: I510428c555b92398a5199b346dffb85d38495d74
Signed-off-by: Edward O'Callaghan <quasisec@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39768
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sam McNally <sammc@google.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-24 00:40:10 +00:00
Tim Wawrzynczak
c632bda2f6 soc/intel/tigerlake: Update DCACHE_BSP_STACK_SIZE
According to the latest Tigerlake Platform FSP Integration Guide, the
minimum amount of stack needed for FSP-M is 256KiB. Change
DCACHE_BSP_STACK_SIZE to reflect that (plus 1KB previously determined
empirically). JSL requires 192KiB.

Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Change-Id: Ic9be6446c4db7f62479deab06ebeba2c7326e681
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39706
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
2020-03-23 19:30:49 +00:00
Michał Żygowski
4629830b73 mb/pcengines/apu2/mptable.c: add GNB IOAPIC to MP Table
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I385339761b3e1b5dcadb67b8ca29b1518c2db408
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39702
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-23 19:29:54 +00:00
Michał Żygowski
3fbd2af112 nb/amd/pi/00730F01/state_machine.c: unhardcode IOAPIC2 address
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I95964ac6b5939f66c40bd56939bdf532a72d75ce
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39701
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-23 19:29:09 +00:00
Michał Żygowski
208318cdf4 nb/amd/pi/00730F01: initialize GNB IOAPIC
Northbridge IOAPIC was not being initialized which caused its APIC ID to
be set to 0 (the same APIC ID as BSP).

TEST=boot Debian Linux on PC Engines apu2

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Id06ad4c22a56eb3559e1d584fd0fcac1f95f13e7
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39700
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-23 19:28:58 +00:00
Angel Pons
89ae6b8fc2 nb/intel/sandybridge: Use cached CPUID
Now that we have it, we might as well pass it around.

Tested on Asus P8Z77-V LX2, still boots fine.

Change-Id: Ia5aa2f932321983f11d2f8869aa624832afe9347
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39721
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:28:14 +00:00
Angel Pons
a6a64183d6 nb/intel/sandybridge: Void MRC cache if CPUID differs
Native raminit asserts that the DIMMs haven't been replaced before
reusing the saved training data. However, it does not check if the CPU
is still the same, so it can end up happily reusing data from an Ivy
Bridge CPU onto a Sandy Bridge CPU, which runs the raminit_ivy.c code
path. This can make the CPU run in unsupported configurations, which may
result in an unstable system, or a failure to boot.

To prevent that, ensure that the stored CPUID matches the CPUID of the
installed CPU. If they differ, print a message and do not use the saved
data. As it does not pose a problem for a regular boot, but precludes
resuming from S3, use different loglevels depending on the bootpath.

Tested on Asus P8Z77-V LX2 with an i7-2600 and an i5-3330, works well.

Change-Id: Ib0691f1f849b567579f6afa845c9460e14f8fa27
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39734
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
2020-03-23 19:27:34 +00:00
Angel Pons
80037f715c nb/intel/sandybridge: Store CPUID in ctrl struct
Instead of storing an int with a single bit of information taken from
the CPUID, we might as well store the actual CPUID. And since we are
changing the definition of the saved data, bump the version number.

Tested on Asus P8Z77-V LX2, still boots fine.

Change-Id: I6ac435fb83900a52890f823e7614055061299e23
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39720
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:26:35 +00:00
Angel Pons
5c1baf5bec nb/intel/sandybridge: Add warning to saved structs
When changing any of the structures that are cached in non-volatile
storage, it is necessary to bump MRC_CACHE_VERSION so that the old
information is not misinterpreted.

Change-Id: Idefbc38b3a8198b1b5909e775b3c289db689fc0c
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39756
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:25:00 +00:00
Angel Pons
2b5c1e73a5 nb/intel/sandybridge: Remove unnecessary declaration
Change-Id: If99fd6511fcea474a1398d2b680e0df4bb1a229b
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39755
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:24:34 +00:00
Angel Pons
7f6586ff78 nb/intel/sandybridge: Do not define tables in a header
Header files are supposed to not make allocations from .bss. Builds
fail if said file is included multiple times. To prevent this from
happening, move the definitions to a C file.

Also, rename raminit_patterns to raminit_tables. This is because more
tables that are not patterns will be added here in subsequent changes.

Tested on Asus P8Z77-V LX2, still boots fine.

Change-Id: If8e3a285ecdc4df9e978ae156be915ced6e1750b
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39754
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:24:22 +00:00
Angel Pons
0e47ad6d2c nb/intel/sandybridge: Reflow raminit tables
Make them fit in 96 characters, so that Jenkins does not complain.

With BUILD_TIMELESS=1, the binary of ASUS P8Z77-V LX2 remains identical.

Change-Id: I4a763f6050593e9d4db9211bfeedb442724e1ace
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39719
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 19:23:46 +00:00
Christian Walter
be3979c873 acpi: Change Processor ACPI Name (Intel only)
The ACPI Spec 2.0 states, that Processor declarations should be made
within the ACPI namespace \_SB and not \_PR anymore. \_PR is deprecated
and is removed here for Intel CPUs only.

Tested on:
* X11SSH (Kabylake)
* CFL Platform
* Asus P8Z77-V LX2 and Windows 10

FWTS does not return FAIL anymore on ACPI tests

Tested-by: Angel Pons <th3fanbus@gmail.com>
Change-Id: Ib101ed718f90f9056d2ecbc31b13b749ed1fc438
Signed-off-by: Christian Walter <christian.walter@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37814
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2020-03-23 16:54:58 +00:00
Michał Żygowski
09eb8d0c9b nb/amd/{agesa,pi}/acpi: include thermal zone
According to BKDGs these northbridges should support the K10
compatible temperature sensors.

TEST=boot FreeBSD on PC Engines apu2 and check the thermal zone
temperature using sysctl

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Icbdf44508085964452d74e084b133f1baa39e1a8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38755
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-23 13:32:13 +00:00
Michał Żygowski
ece6b2fc8a nb/amd/agesa/family14: Improve HTC threshold handling
According to BKDGs HTC temperature limit field indicates the threshold
where HTC becomes active. HTC active state means that processor is
limiting its power consumption and maximum P-State. Using this threshold
as _CRT is incorrect, since HTC active is designed to prevent
overheating, not causing immediate shutdown.

Change the behavior of temperature limit to act as a passive cooling
threshold. Make the passive cooling threshold a reference value for
critical and hot temperature with 5 degrees step.

TEST=boot FreeBSD on PC Engines apu2 and check the thermal zone
temperature using sysctl

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Ife64c3aab76f8e125493ecc8183a6e87fb012e3b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39697
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-23 13:31:17 +00:00
Angel Pons
143309fad4 nb/intel/sandybridge: Remove oddball - 1 in tRFC
Fixes a blunder in commit 50db9c99be
(nb/intel/sandybridge: Use DIV_ROUND_UP macro to select timings).

Tested on Asus P8Z77-V LX2, still boots fine with an i7-2600.

Change-Id: I73436b9f7df9f3a065469fb89bcd0cc6183bb774
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39736
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-23 09:45:26 +00:00
Angel Pons
66f569f4ae mb/gigabyte/ga-h61m-ds2v: Fix PCIe port numbers
A certain somebody (that would be me) forgot how to count, it seems.

Change-Id: Iac0ac5827ca242c465a2e8be92a823c8fc9b2935
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39741
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 09:43:31 +00:00
Angel Pons
66671ded2f mb/gigabyte/ga-h61ma-d3v: Correct PCIe port setup
Coalescing is not needed, as all PCIe ports are used.

Change-Id: Icf31f6672e0a54d119a6537da1b52c42f9cee823
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39740
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 09:43:21 +00:00
Angel Pons
c91b93f22a mb/gigabyte/ga-h61m-*/devicetree.cb: Add missing IRQ
IRQ 0x70 was not declared for device 2e.7, and coreboot whined about it.

Change-Id: If40aa390722cf253169003129b31f20543fde5dd
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39739
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 09:43:08 +00:00
Angel Pons
8d7afcca36 mb/gigabyte/ga-h61ma-d3v: Correct subsystem ID
Linux does not handle either value in any special way, though.

Change-Id: I833cb94e65b9ddfb79edbcdd0216c70740aa4a16
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39738
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2020-03-23 09:42:55 +00:00
Angel Pons
aee7ab2f6e soc/intel/braswell: Clean up
Tested with BUILD_TIMELESS=1, Facebook FBG1701 remains unaffected.

Change-Id: I784a5ddc1a8dcbfb960ce970b28b850244a47773
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39663
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-23 09:42:39 +00:00
Daniel Kang
140a4ae7bf src/mb/google/volteer: Add camera ACPI configuration
Add camera ACPI configuration for Ripto/Volteer

BUG=None
BRANCH=None
TEST=Build and boot Ripto or Volteer. Start camera app and able to
capture images.

Signed-off-by: Daniel Kang <daniel.h.kang@intel.com>
Change-Id: I2b47ccd989192273a29f09bf097e12e357929334
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39684
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.com>
2020-03-23 09:41:48 +00:00
Prashant Malani
205a5620af mb/google/volteer: Enable PD_MCU device
This is required for PD notifications on the cros_ec driver.

BUG=b:150649744
TEST=Boot volteer with this patch and verify that PD notifier events are
being generated.

Signed-off-by: Prashant Malani <pmalani@chromium.org>
Change-Id: I2e72320b025a3dfa7412181586cb142a4503eda5
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39675
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-23 09:41:42 +00:00
Michał Żygowski
6ebb7394f9 mb/pcengines/apu1/mainboard.c: Add SMBIOS type 16 and 17 entries
Use information provided by AGESA to fill the SMBIOS memory tables.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Id73de7c2b23c6eb71722f1c78dbf0d246f429c63
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38343
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-23 09:37:16 +00:00
Patrick Rudolph
12b86b6433 soc/intel/cfl/vr_config: Add 8-core desktop CPU support
Add 8-core desktop CPU support by adding the corresponding PCI IDs.
Tested using "Intel Core(TM) i7-9700E".

Change-Id: I7a2e2e5fd1796deff81b032450242fb58031526d
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39691
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-23 09:36:53 +00:00
Srinidhi N Kaushik
6975e07997 mb/tglrvp: Update Audio AIC settings for Tiger Lake
Update Audio AIC UPD settings and gpio pad configs for Tiger Lake.

BUG=none
BRANCH=none
TEST=Build and boot tigerlake rvp board

Signed-off-by: Srinidhi N Kaushik <srinidhi.n.kaushik@intel.com>
Change-Id: I45935b79f6fa4ad66238eead9258a4f15feec508
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39466
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.com>
2020-03-23 09:35:51 +00:00
Daniel Kang
79a219813b src/mb/intel/tglrvp: Fix board config flag for TGL-UP4 camera ACPI
Camera ACPI had an incorrect board config flag for TGL-UP4.

BUG=None
BRANCH=None
TEST=Build and boot TGLRVP-UP3 or UP4. Start camera app and able to
capture images.

Signed-off-by: Daniel Kang <daniel.h.kang@intel.com>
Change-Id: Ided0e146a9240169d3f1f27a86218ac1a942b899
Signed-off-by: Daniel Kang <daniel.h.kang@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39682
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.com>
2020-03-23 09:35:14 +00:00
Karthikeyan Ramasubramanian
97ea709d42 mb/google/dedede: Update SPD index for waddledee
Micron memory part uses SPD Index 0.

BUG=b:152005386
TEST=Build the mainboard.

Change-Id: I990a95b13d636148f0f922fd5c6d4e489d35ed2c
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39709
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-23 09:29:20 +00:00
Elyes HAOUAS
a5b0bc4b34 src: capitalize 'APIC'
Change-Id: I487fb53bb2b011d214f002fc200ade2f128a4cc6
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39030
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-23 09:28:55 +00:00
Angel Pons
b3884dc59b nb/intel/sandybridge: Drop spurious register write
It does not make sense to disable an optimization that was not enabled
before, especially if that optimization only applies to Ivy Bridge.

Tested, still boots and can suspend correctly with:
- Asus P8Z77-V LX2      with i5-3330 and Windows 10
- Gigabyte GA-H61MA-D3V with i5-2400 and Arch Linux

Change-Id: I9f3eb545585824bbdf51e33f0592e7daa1c425af
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39623
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2020-03-22 15:21:58 +00:00
Subrata Banik
117ee71698 device/pci_id: Maintain consistent tab in pci_ids.h
This patch converts inconsistent white space into tab.

Change-Id: Ibc9d614eabbeb819bfff075e66b2277df4c070dc
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39672
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-22 02:55:12 +00:00
Subrata Banik
96cf680c3d soc/intel/tigerlake: Make PCH_DEV_UART3 macro definition proper
This patch makes PCH_DEV_UART3 macro referring to _PCH_DEV()
rather calling _PCH_DEVFN().

Change-Id: I7bc060c3c5f1e0a0fed194704b4940db73f46985
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39673
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-21 03:07:31 +00:00
Subrata Banik
dbcb0ce5e9 cpu/x86: Fix typo
CIRTICAL -> CRITICAL

Change-Id: Ie2c1427b197dbfebdc7f0c6ffd85f768845ff1bd
Signed-off-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39671
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
2020-03-21 03:07:04 +00:00
Felix Singer
838fbc71cf sb/ibexpeak: Use macros instead of hard-coded IDs
This patch replaces hard-coded PCI IDs with macros from pci_ids.h and
adds the related IDs to it.

The resulting binary doesn't differ from the one without this patch.

Used documents:
- Intel 322170

Change-Id: I3326f142d483f5008fb2ac878f30c1a3a72f500f
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37116
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Michael Niewöhner
2020-03-20 23:14:52 +00:00
Angel Pons
064c7999ae nb/intel/sandybridge: Deduplicate report_memory_config
Use the version from native raminit, as it takes the reference clock
into account.

Change-Id: I00e979bec236167d22561e3eb44b30b4a34ad663
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39622
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 18:11:46 +00:00
Aamir Bohra
bf48f6ab11 mb/google/dedede Add Audio support for waddledoo
1. Configure Audio GPIOs.
2. Set i2c4 configuration.
3. Update PCH HDA configuration

TEST=Verify codecs gets listed with aplay -l command.

Signed-off-by: Aamir Bohra <aamir.bohra@intel.com>
Signed-off-by: Yong Zhi <yong.zhi@intel.com>
Change-Id: Ic0516c7a8fee79ce17343a7f42895d6ef534fec9
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39285
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2020-03-20 09:40:39 +00:00
Aamir Bohra
a1c82c5ebe drivers/generic/max98357a: Allow custom _HID from config
Add HID field in max98357a_config and allow mainboards to set it.

Signed-off-by: Aamir Bohra <aamir.bohra@intel.com>
Change-Id: I22d2d078a9a4eb6ab330da8439737ff5133086d4
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39286
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:40:07 +00:00
Bora Guvendik
12b835050f soc/intel: Enable GPIO functions in verstage
Enable GPIO functionality in verstage so platforms can read a
PCH GPIO in verstage to determine recovery mode.

BUG=b:151102807
TEST=make build successful

Signed-off-by: Bora Guvendik <bora.guvendik@intel.com>
Change-Id: I4e3b9da307dcf59ab251d8a6a5e09c2a3cfc59fe
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39501
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:39:27 +00:00
Matt DeVillier
70ea3b9141 ec/google/chromeec: don't put empty block in SSDT
Check that there are actually USB-PD ports for which to
add data to SSDT, before actually generating SSDT data.
This prevents an empty scope from being generated on
devices without any USB-PD ports, which was breaking
parsing/decompilation on some older platforms (eg,
Braswell).

Test: build/boot google/edgar, verify SSDT table able to
be parsed via iasl after dumping.

Change-Id: Ia213e5815e9160e9b36b2501eeccb6385abef47e
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39665
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:38:39 +00:00
Angel Pons
78b43c8990 nb/intel/sandybridge: Always write to PEGCTL
This register needs to be written to once to lock it down. Do so.

Change-Id: I04bd496d064940b51cb9aa1ded6f5b8853ea7334
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39624
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:37:47 +00:00
Angel Pons
64402bbeb8 mb/**/gma-mainboard.ads: Use SPDX for GPL-2.0-only
Change-Id: I005bf205142d4d8c5e12378f33d2100d278fa174
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39661
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2020-03-20 09:36:06 +00:00
Angel Pons
c67e4db2dc mb/**/gma-mainboard.ads: Use SPDX for GPL-2.0-or-later
Change-Id: I78f06b54a6a03d565cf86f1d7bdf37965c3f6ad0
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39660
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2020-03-20 09:35:57 +00:00
Angel Pons
610b3d7a33 mb/**/gma-mainboard.ads: Remove copyright statements
They are already in AUTHORS.

Change-Id: I315c0c57babfa239e3d7c501a4183b8996999e6e
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39659
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2020-03-20 09:35:49 +00:00
Julien Viard de Galbert
4130eb5f04 soc/intel/denverton_ns: Implement AES-NI Lock
Change-Id: I6cf3484e46eebd3dc753d0903ea8555712b99b7e
Signed-off-by: Julien Viard de Galbert <jviarddegalbert@online.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/25440
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Steve Mooney
Reviewed-by: David Guckian
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:35:36 +00:00
Seunghwan Kim
2144bb569d mb/google/nightfury: Update overridetree.cb
Updating devicetree to enable ELAN touchpad and ELAN touchscreen on nightfury

BUG=none
BRANCH=firmware-hatch-12672.B
TEST=built and verified touchpad and touchscreen worked

Signed-off-by: Seunghwan Kim <sh_.kim@samsung.com>
Change-Id: Ieba6558ce3897ce2f95f51ed667465d84b4ab189
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39602
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2020-03-20 09:34:41 +00:00
Venkata Krishna Nimmagadda
1fffa4ecec soc/intel/tigerlake: Enable ACPI support for PMC core OS driver
PMC core driver in OS provides debug hooks to developers and end users
to quickly figure out why their platform is not entering a deeper idle
state such as S0ix. This patch adds INT33A1, a required ACPI device,
to support that PMC core driver in tigerlake platform.

BUG=b:146236297
BRANCH=none
TEST="Build and flash volteer and verify it boots to kernel.
Checked for valid files under /sys/kernel/debug/pmc_core."

Signed-off-by: Venkata Krishna Nimmagadda <venkata.krishna.nimmagadda@intel.com>
Change-Id: Ib7e583dc2943461a41d2a7ebde1f16a58a118975
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39587
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Venkata Krishna Nimmagadda <Venkata.krishna.nimmagadda@intel.com>
Reviewed-by: Srinidhi N Kaushik <srinidhi.n.kaushik@intel.com>
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:34:21 +00:00
Venkata Krishna Nimmagadda
957481c307 soc/intel/common: Add ACPI support for PMC core OS driver
PMC core OS driver (intel_pmc_core.c in linux kernel) provides debug
hooks to developers and end users to quickly figure out why their
platform is not entering a deeper idle state such as S0ix.

This patch adds INT33A1 ACPI device to support PMC core OS
driver. Any SoC that supports this feature would include this asl file
to enable the support.

BUG=b:146236297
BRANCH=none
TEST="Build and flash volteer and verify it boots to kernel"

Change-Id: Ib4edc7b636725177d508b62d15633534e9f44236
Signed-off-by: Venkata Krishna Nimmagadda <venkata.krishna.nimmagadda@intel.com>
Reviewed-on: https://chrome-internal-review.googlesource.com/c/chromeos/third_party/coreboot-intel-private/jsl-tgl/+/2362512
Reviewed-by: Venkata Krishna Nimmagadda <venkata.krishna.nimmagadda@intel.corp-partner.google.com>
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.corp-partner.google.com>
Reviewed-by: Caveh Jalali <caveh@google.com>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
Tested-by: Venkata Krishna Nimmagadda <venkata.krishna.nimmagadda@intel.corp-partner.google.com>
Commit-Queue: Alex Levin <levinale@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39370
Reviewed-by: Venkata Krishna Nimmagadda <Venkata.krishna.nimmagadda@intel.com>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-20 09:34:14 +00:00
Patrick Rudolph
dc2d07cf42 mb/hp/z220: Fix VGA graphics init
The VGA port has the DDC on port B.
Select the correct Kconfig and fix graphics init failing on VGA.

Tested on HP Z220, libgfxinit reports success and SeaBIOS is displayed
on the connected VGA monitor.

Change-Id: Ie5ec1a2d4606a21e1dc4217ff6fefe5ee35ac543
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39629
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-20 09:33:48 +00:00
Johnny Lin
34473ea6c9 soc/intel/xeon_sp: Modify FSP-T code caching parameters
Use CACHE_ROM_BASE and CACHE_ROM_SIZE for code caching
parameters.

Tested on OCP Tioga Pass.

Change-Id: Ibba133d9f8fdfbdfae9a0e8e698356a3ca9ba424
Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39625
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Andrey Petrov <anpetrov@fb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-19 17:43:18 +00:00
Angel Pons
e82b02c004 nb/intel/sandybridge: Use loops on DMI register groups
The DMI link consists of four lanes, grouped in two bundles. Therefore,
some DMI registers may be organized as "per-lane" or "per-bundle". This
can be seen in the DMI initialization sequence as series of equidistant
offsets being programmed with the same value. Make this more obvious by
factoring out the register groups using loops.

With BUILD_TIMELESS=1, the binary of ASUS P8Z77-V LX2 remains identical.

Change-Id: Iebf40b2a5b37ed9060a6660840ea6cdff7eb3fc3
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39631
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2020-03-19 12:04:08 +00:00
Ronak Kanabar
44eeed0e5c soc/intel/tigerlake: add support to read SPD data from SMBus
Jasper Lake RVP has DDR4 variant which uses SMBus address to read SPD
data. So, add support to read SPD data from SMBUS.

BUG=None
BRANCH=None
TEST=Check compilation for Jasper Lake RVP and check memory training passes.

Change-Id: I94f8707c731c8afa1106e387a246c000bd53a654
Signed-off-by: Ronak Kanabar <ronak.kanabar@intel.com>
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39401
Reviewed-by: Subrata Banik <subrata.banik@intel.com>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-19 12:02:47 +00:00
Maulik V Vaghela
81877365d5 soc/intel/tigerlake: Update header to avoid compilation issue
We were including stddefs.h and stdint.h but compilation fails when we
use 'bool' type in file.
Removing stddef.h and stdint.h and including 'types.h' which includes
all data types

BUG=None
BRANCH=None
TEST=Check if compilation passes when bool is used

Change-Id: I4c9001f729f3103deba9d1fd631a8942c23276ee
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39630
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Ronak Kanabar <ronak.kanabar@intel.com>
Reviewed-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
2020-03-19 12:02:15 +00:00
Angel Pons
df248f0c10 mb/asrock/b85m_pro4: Add new mainboard
This is a µATX mainboard with a LGA1150 socket and four DDR3 DIMM slots.

Working:
 - All four DIMM slots
 - Serial port to emit spam
 - Some USB ports
 - Integrated graphics (libgfxinit)
 - HDMI and DVI
 - Intel GbE
 - All PCIe ports
 - Both PCI ports behind the ASM1083 PCI bridge
 - At least one SATA port
 - RAM initialization with MRC binary
 - Flashing with flashrom
 - S3 suspend/resume
 - Rear audio output
 - VBT
 - SeaBIOS to boot Arch Linux

Not working:
 - PS/2 keyboard (detected as mouse)

Untested:
 - The other audio jacks
 - S/PDIF
 - VGA
 - EHCI debug
 - Front USB headers
 - Non-Linux OSes
 - TPM header
 - Parallel port

Change-Id: I10a16dfc56f2aa88648c8aaaba4feab40c491504
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/36770
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-19 12:01:45 +00:00
Eric Peers
9d49598cd6 assert.h: add assertions with descriptive failures
BUG=None
TEST=tested in following patches on Trembyle board

Change-Id: Ib30ccd41759e5a2a61d3182cc08ed5eb762eca98
Signed-off-by: Eric Peers <epeers@google.com>
Reviewed-on: https://chromium-review.googlesource.com/1971443
Tested-by: Martin Roth <martinroth@chromium.org>
Reviewed-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39620
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
2020-03-18 22:14:46 +00:00
Marshall Dawson
505fe3d73c soc/amd/picasso: Add CPUID of newer device
Add a new device (Family 17h Models 20h-2Fh) to the cpu driver.

Change-Id: Id792533e60813b7509bacd6806f78cd8bba56e37
Signed-off-by: Marshall Dawson <marshall.dawson@amd.corp-partner.google.com>
Reviewed-on: https://chromium-review.googlesource.com/1950713
Reviewed-by: Martin Roth <martinroth@chromium.org>
Tested-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39617
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-18 22:14:27 +00:00
Angel Pons
7c49cb8f9c nb/intel/sandybridge: Tidy up code and comments
- Reformat some lines of code
- Move MCHBAR registers and documentation into a separate file
- Add a few missing macros
- Rename some registers
- Rewrite several comments
- Use C-style comments for consistency
- Rewrite some hex constants
- Use HOST_BRIDGE instead of PCI_DEV(0, 0, 0)

With BUILD_TIMELESS=1, this commit does not change the result of:
- Asus P8Z77-V LX2 with native raminit.
- Asus P8Z77-M PRO with MRC raminit.

Change-Id: I6e113e48afd685ca63cfcb11ff9fcf9df6e41e46
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39599
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-18 21:42:05 +00:00
Maulik V Vaghela
7eeaeeecc5 soc/intel/tigerlake: Correct number of gpio group for Jasper Lake
Correct number of gpio pad group for Jasper Lake SoC.

BUG=None
BRANCH=None
Test=Code compilation for Jasper Lake RVP

Change-Id: I381d0e48430e933569a3b22b66b4e6077383e9e2
Signed-off-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39604
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Aamir Bohra <aamir.bohra@intel.com>
2020-03-18 16:52:48 +00:00
Brandon Breitenstein
11637452cc soc/intel/tigerlake: Update FSP UPDs to turn on USB4/TBT
FSP needs to know to allow the root ports for USB4/TBT to be enabled
This patch may need additional checks for each board as it might not
be the right thing to turn them all on for every Tiger Lake board.

BUG=b:141609883
BRANCH=NONE
TEST=Built image and verified that the root ports were visible with lspci

Change-Id: I3f020e20fa8e9fd1ac69d883f4dc1fcbb330a3bf
Signed-off-by: Brandon Breitenstein <brandon.breitenstein@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38737
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2020-03-18 16:51:57 +00:00
Huayang Duan
31b081a48d soc/mediatek/mt8183: Fix wrong setting of DRS config
Update setting of DRS config.

BUG=none
BRANCH=kukui
TEST=Boots correctly on Kukui

Change-Id: Id38fc224b54c3947af8bbc5c1a4a8d70eb53d5fb
Signed-off-by: Huayang Duan <huayang.duan@mediatek.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39626
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2020-03-18 16:47:06 +00:00
Huayang Duan
c4917775fd soc/mediatek/mt8183: Improve the AC timing of DRAMC
Set more AC timing items to make the system more stable.

BUG=none
BRANCH=kukui
TEST=Boots correctly on Kukui

Change-Id: Ibd003582a3ffab1ae91f6378651c2c9e585c4676
Signed-off-by: Huayang Duan <huayang.duan@mediatek.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39314
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2020-03-18 16:47:01 +00:00
Franklin He
00cc4c9455 src/mainboard/g/octopus: Enables GMM in the devicetree for octopus
Adds GMM into the baseboard of Octopus
For GLK, PCI device 3 is GMM according to
Document#: 569262(Glk EDS Vol-1 rev2-7)

Related to Gerrit review 39579

BUG=b:151115705
BRANCH=None
TEST=Flashed final image on Chromebook

Change-Id: I75b4a835c18c5eeb542b7f7b89deea45a31e47bd
Signed-off-by: Franklin He <franklinh@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39600
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-18 16:46:51 +00:00
Franklin He
117a66070a soc/intel/apollolake: Allow toggling of GMM in devicetree in Gemini Lake
Enables Gaussian Mixture Model (GMM) if the pci device is enabled in the
devicetree for Gemini Lake

This ports commit 03ddd190fd

BUG=b:151115705
BRANCH=none
TEST=Flashed to Chromebook, PCI device enabled in cbmem, userspace app
that uses device still works

Change-Id: I72b1dd78705894f0462c7fbe89b76551950c2392
Signed-off-by: Franklin He <franklinh@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39579
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
2020-03-18 16:46:35 +00:00
Aamir Bohra
b0b3219666 mb/google/dedede: Support integratred BT enumeration
The integrated BT is routed via USB2 port 8, add USB configuration
to support integrated BT enumeration.

Change-Id: I46d8c92ba57cd72a91ee15ef4d11f07824c29e9a
Signed-off-by: Aamir Bohra <aamir.bohra@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39471
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2020-03-18 16:46:04 +00:00
Patrick Georgi
1c6d8a9cf4 soc: Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I4c110f60b764c97fab2a29f6f04680196f156da5
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39610
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
2020-03-18 16:44:46 +00:00
Patrick Georgi
078bc41ce2 mainboard/[g-p]*: Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I426518e8e18de1c8efcfb7ecb0835df3e257dca1
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39608
Reviewed-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-18 16:44:38 +00:00
Patrick Georgi
a2fe7789e9 mainboard/google: Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I09cc279b1f75952bb397de2c3f2b299255163685
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39607
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
2020-03-18 16:44:31 +00:00
Wim Vervoorn
5f2adfe1a3 soc/intel/skylake: Control fixed IO decode from devicetree
The current implementation doesn't allow custom values for the LPC IO
decodes and IO enables.

Add the lpc_ioe and lpc_iod values. If they are not zero, they will be
used instead of the current handling for COMA and COMB.

BUG=N/A
TEST=tested on facebook monolith

Change-Id: Iad7bb0e44739e8d656a542c79af7f98a4e9bde69
Signed-off-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38748
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-18 16:27:01 +00:00
Patrick Georgi
53a9e41891 mainboard/[^a-p]*: Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I18e513cefc373b1cd70d31d1159928cc948a8476
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39609
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Reviewed-by: Tristan Corrick <tristan@corrick.kiwi>
2020-03-18 09:40:00 +00:00
Patrick Georgi
3b618bbe31 mainboard/[a-f]*: Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I57fc98788bb47df16d6aedd0f0701e9991801743
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39606
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Wim Vervoorn <wvervoorn@eltan.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Tristan Corrick <tristan@corrick.kiwi>
2020-03-18 09:39:45 +00:00
Martin Roth
4017de0d10 soc/amd/picasso: Set I2C clock reference to 150MHz
Picasso uses a 150MHz reference clock for the Designware I2C devices.
This update allows us to get the correct speeds out.

BUG=b:143885765
TEST=Trembyle has 400kHz I2C clock

Change-Id: Ia888a74e51201b6c911e0e810f0535403204cf60
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1970656
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39589
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-17 22:47:20 +00:00
Martin Roth
ba37b94e8e drivers/i2c/designware: Add 150MHz clock speed
BUG=b:143885765
TEST=I2C clock speed on trembyle is 400kHz

Change-Id: I50e904822823a6fc173d4d4b76f0882b4ce81ae8
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1970655
Reviewed-by: Daniel Kurtz <djkurtz@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39588
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2020-03-17 22:47:04 +00:00
Patrick Georgi
f3f36faf35 src (minus soc and mainboard): Remove copyright notices
They're listed in AUTHORS and often incorrect anyway, for example:
- What's a "Copyright $year-present"?
- Which incarnation of Google (Inc, LLC, ...) is the current
  copyright holder?
- People sometimes have their editor auto-add themselves to files even
  though they only deleted stuff
- Or they let the editor automatically update the copyright year,
  because why not?
- Who is the copyright holder "The coreboot project Authors"?
- Or "Generated Code"?

Sidestep all these issues by simply not putting these notices in
individual files, let's list all copyright holders in AUTHORS instead
and use the git history to deal with the rest.

Change-Id: I89b10076e0f4a4b3acd59160fb7abe349b228321
Signed-off-by: Patrick Georgi <pgeorgi@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/39611
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: David Hendricks <david.hendricks@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2020-03-17 18:26:34 +00:00
Marshall Dawson
69cfbb0750 soc/amd/picasso: Remove unused defines from cpu.h
Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Change-Id: I4ed3e7c82ef5808a0e96c07c16f4872f8ca3ec76
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38693
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-17 16:33:52 +00:00
Marshall Dawson
cbae2e401e soc/amd/picasso: Move get_soc_config to common location
Multiple files can eventually take advantage of the static function in
i2c.c.  Move get_soc_config() into a new common location for all to use.

Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Change-Id: If5d9be2f74cde370979033365af2e355eb6d814e
Reviewed-on: https://review.coreboot.org/c/coreboot/+/38695
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2020-03-17 16:32:18 +00:00