Commit Graph

54555 Commits

Author SHA1 Message Date
Zheng Bao 730c3ba6d8 amdfwtool: Add FW type FUSE_CHAIN in the config file
We don't have file for the fuse chain, but we need to set the level
for some cases.

Change-Id: Idb546f761ae10b0d19a9879a9a644b788828d523
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77506
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Varshit Pandya <pandyavarshit@gmail.com>
2023-09-05 12:30:16 +00:00
Johannes Hahn 5a87c82428 mb/siemens/fa_ehl: Process LPDDR4 SPD files and add MT53E512M32D1NP SPD
The board uses soldered down LPDDR4, so process their SPD files, and add
the SPD for Micron MT53E512M32D1NP-046WTB provided by Micron.

Signed-off-by: Johannes Hahn <johannes-hahn@siemens.com>
Change-Id: I978b7450b106b86eef322df8b33df41e038599eb
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77349
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jan Samek <jan.samek@siemens.com>
2023-09-05 12:26:49 +00:00
Wisley Chen 7dccc596f0 mb/google/nissa/var/yaviks: Disable AUX pins based on FW_CONFIG
Configure the AUX pins as NC based on the FW_CONFIG setting when
the C1 port is not present.

BUG=b:294456574
BRANCH=firmware-nissa-15217.B
TEST=emerge-nissa coreboot

Change-Id: I24fb8f16c2e3b05edf1056b5687ae5ea28c022c0
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77604
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Derek Huang <derekhuang@google.com>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
2023-09-05 12:26:20 +00:00
Tony Huang 966d652ed4 mb/google/nissa/var/yavilla: Restore WLAN_PERST_L power sequence
Restore TPERST_HIGH to 160ms since it has beed validated in other
OEM projects and haven't heard any issue so far.

This change back commit d710c6d5a7 ("mb/google/nissa/var/yavilla: Adjust WLAN_PERST_L power sequence").

BUG=b:295277868
TEST=emerge coreboot
     boot to system and check wifi connection is fine

Change-Id: Ifc66e596fc7b6efdc0c286ee187969c8774bdc80
Signed-off-by: Tony Huang <tony-huang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77587
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
2023-09-05 12:26:02 +00:00
Seunghwan Kim eba8952de1 mb/google/nissa/var/pirrha: Use GpioInt instead of GPE for digitizer pen
Currently pirrha's digitizer pen uses GPP_F12 for I2C HID interrupt
signal. But its IRQ number is the same as GPD2, which is used as
EC_SYNC_IRQ.

It caused EC driver loading error from dmesg:
 cros_ec_lpcs GOOG0004:00: Failed to request IRQ 98: -16
 cros_ec_lpcs GOOG0004:00: couldn't register ec_dev (-16)
 cros_ec_lpcs: probe of GOOG0004:00 failed with error -16

So change the digitizer pen interrupt type to GpioInt to prevent
the conflict.

BUG=b:292134655
TEST=Verified EC driver reported no error and pen device worked

Change-Id: Ieb88e87fcfb06544a4b5b5133b752aa821fab76a
Signed-off-by: Seunghwan Kim <sh_.kim@samsung.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77346
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-05 12:25:46 +00:00
Seunghwan Kim 69f0289608 mb/google/nissa/var/pirrha: Update device configurations
Based on schematics and gpio table of pirrha, generate overridetree.cb
to configure internal devices and generate fw_config.c to override
GPIO configurations following FW_CONFIG.

BUG=b:292134655
TEST=FW_NAME=pirrha emerge-nissa coreboot chromeos-bootimage

Change-Id: I91013b0ad89e26f0a4c433c305c6b883d000f042
Signed-off-by: Seunghwan Kim <sh_.kim@samsung.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77116
Reviewed-by: Jamie Chen <jamie.chen@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jimmy Su <jimmy.su@intel.com>
Reviewed-by: Derek Huang <derekhuang@google.com>
2023-09-05 12:25:26 +00:00
Arthur Heymans 820a31263d mb/amd/onyx: Add FMD file and update romsize
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Change-Id: Idd6f711f5ca5c8a421c0c38edd404b1900bb29b4
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76497
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-05 12:18:27 +00:00
Subrata Banik 525d8d86c3 drivers/wifi: Add PCI ID for Misty Peak WLAN module
This patch adds support for Intel WIFI-7 series PCIe based WLAN module.

Change-Id: Ia31fdb87e15b50471dc7664e42b1e2625ce1ac58
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77621
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2023-09-05 09:37:16 +00:00
Subrata Banik d426176e24 drivers/wifi: Avoid camel casing in macro definition
Convert camel case macros to uppercase and underscore separated macros,
such as:

PCI_DID_CyP_6SERIES_WIFI -> PCI_DID_CP_6SERIES_WIFI
PCI_DID_TyP_6SERIES_WIFI -> PCI_DID_TP_6SERIES_WIFI

This makes the macros more consistent with the rest of the code and
easier to read.

Change-Id: I9c739aab93dc0d043a3c9d9ce799087952c1e20b
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77644
Reviewed-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2023-09-05 09:37:05 +00:00
Subrata Banik e48f24d7f2 drivers/intel/fsp2_0: Introduce MRC cache store after FSP-M/S APIs
This patch refactors the existing MRC cache storing logic, which was
spread between the ROM and RAM stages, into a single early MRC cache
store stage. The only exception is when SoC user selects
FSP_NVS_DATA_POST_SILICON_INIT to store MRC cache from ramstage (after
FSP-S).

It reverts all the boot-state logic previously used to locate and store
MRC cache from NVS HOB into NVS because majority of the platform can
potentially use the early MRC cache store with improved memory caching
at the pre-RAM phase (with the ramtop implementation).

The only exception is the Xeon SP platform, which currently locates
the MRC cache post in FSP-S (at ramstage). Therefore, this patch
provides an API to the FSP 2.x silicon init code to perform late
storing of the MRC cache.

In majority cases the updated logic, the romstage (post FSP-M) will
attempt to save the MRC cache. Platform that selects
FSP_NVS_DATA_POST_SILICON_INIT config performs the same operation post
FSP-S. Depending on whether the MRC_STASH_TO_CBMEM config is
enabled, the MRC cache will either be written directly to NVRAM at the
romstage or stashed into CBMEM for a late NVRAM write at ramstage.

Below table captures the change in the boot state w/ and w/o this
patch for storing the MRC cache. Overall the goal is to ensure the
platform behavior is remain unchanged before and after this patch.

w/o this patch:

|           | Save MRC       | Finalize       | Lock the       |
|           | Cache          | MRC Cache      | Boot Medium    |
+-----------+----------------+----------------+----------------+
| MRC_WRITE | BS_OS_RESUME   | BS_OS_RESUME   | BS_ON_RESUME   |
| NV_LATE   | CHECK_ENTRY    | CHECK_ENTRY    | CHECK_EXIT     |
+-----------+----------------+----------------+----------------+
| MRC_STASH | BS_DEV         | BS_DEV         | BS_DEV         |
| TO_CBMEM  | ENUMERATE_EXIT | ENUMERATE_EXIT | RESOURCES_ENTRY|
+-----------+----------------+----------------+----------------+
| FSP_NVS   | BS_DEV_INIT    | BS_DEV         | BS_DEV         |
| DATA_POST | CHIPS_EXIT     | ENUMERATE_EXIT | RESOURCES_ENTRY|
| SILICON   |                |                |                |
| INIT      |                |                |                |
+-----------+----------------+----------------+----------------+
| Platform  | BS_PRE         | BS_DEV         | BS_DEV         |
| w/o above | DEVICE_ENTRY   | ENUMERATE_EXIT | ENUMERATE_ENTRY|
| config    |                |                |                |
| (FSP 2.0  |                |                |                |
| platforms |                |                |                |

w/ this patch:

|           | Save MRC       | Finalize       | Lock the       |
|           | Cache          | MRC Cache      | Boot Medium    |
+-----------+----------------+----------------+----------------+
| MRC_WRITE | BS_OS_RESUME   | BS_OS_RESUME   | BS_ON_RESUME   |
| NV_LATE   | CHECK_ENTRY    | CHECK_ENTRY    | CHECK_EXIT     |
+-----------+----------------+----------------+----------------+
| MRC_STASH | BS_DEV         | BS_DEV         | BS_DEV         |
| TO_CBMEM  | ENUMERATE_EXIT | ENUMERATE_EXIT | RESOURCES_ENTRY|
+-----------+----------------+----------------+----------------+
| FSP_NVS   | Post FSP-S     | BS_DEV         | BS_DEV         |
| DATA_POST | (ramstage)     | ENUMERATE_EXIT | RESOURCES_ENTRY|
| SILICON   |                |                |                |
| INIT      |                |                |                |
+-----------+----------------+----------------+----------------+
| Platform  | Post FSP-M     | BS_DEV         | BS_DEV         |
| w/o above | (romstage)     | ENUMERATE_EXIT | ENUMERATE_ENTRY|
| config    |                |                |                |
| (FSP 2.0  |                |                |                |
| platforms |                |                |                |

BUG=b:296704537
TEST=Able to build and boot google/rex without any boot time impact.

Change-Id: Id1e91d25916594f59d1e467a142f5042c6138b51
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77556
Reviewed-by: Johnny Lin <Johnny_Lin@wiwynn.com>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2023-09-05 09:36:17 +00:00
Arthur Heymans 926d55cddd soc/amd/common: Use CBFSTOOL_ADD_CMD_OPTIONS when adding psp image
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Change-Id: I639fb1e911a7449d0db0d2bfcfbb6f4f225b0cef
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76496
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
2023-09-04 23:49:47 +00:00
Matt DeVillier 6dadf7f482 soc/amd/mendocino: Specify and use FSP binaries for platform
Specify the default path to, and automatically include the FSP binaries
needed to boot a board if USE_AMD_BLOBS is selected. Simplifies board
configs, and matches use in previous patforms.

TEST=build/boot google/skyrim

Change-Id: Ic837d264327723c8dc18a60fb16e8d41fe38b44e
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77625
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-04 12:25:26 +00:00
Matt DeVillier e6a5e6cefb soc/amd/cezanne: select ADD_FSP_BINARIES if USE_AMD_BLOBS
Automatically include the FSP binaries needed to boot a board if
USE_AMD_BLOBS is selected. Simplifies board configs, and matches
use in soc/amd/picasso.

TEST=build/boot google/guybrush

Change-Id: I5b6e34085410a2aafe5d7876be5097f28f521ce8
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77624
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-04 12:21:11 +00:00
Subrata Banik 1b96bff27e {drivers/intel/fsp2_0, soc/intel}: Rename `SAVE_MRC_AFTER_FSPS` config
This patch renames `SAVE_MRC_AFTER_FSPS` config to
`FSP_NVS_DATA_POST_SILICON_INIT` to highlight the violation in the Xeon
SP FSP implementation, where the FSP Silicon Init API produces
Non-Volatile Storage (NVS) instead of the FSP-Memory Init API.

According to the FSP 2.x specification (section 11.3), the FSP
populates the NVS data using the FSP_NON_VOLATILE_STORAGE_HOB and
expects the boot firmware to parse the FSP_NON_VOLATILE_STORAGE_HOB
after the FspMemoryInit() API in API mode.

However, not all Intel SoC platforms that support the FSP 2.x
specification adhere to this requirement. For example, the FSP binary
for XEON SP platform produces NVS data (aka
FSP_NON_VOLATILE_STORAGE_HOB) after the FspSiliconInit() API.
Therefore, attempting to locate NVS data after the FspMemoryInit() API
on these platforms would result in an error. The `save_mrc_data.c`
implementation provides the required hooks to locate the NVS post
FSP-Silicon Init and store into Non-Volatile Storage.

BUG=b:296704537
TEST=Able to build and boot Intel Xeon SP w/o any functional impact.

Change-Id: I815a64263fa1415bfe30bb3c1c35e4adee307e86
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77616
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Johnny Lin <Johnny_Lin@wiwynn.com>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-04 05:37:15 +00:00
Wentao Qin 5c35d30ffc mb/google/rex/var/screebo: Set `SAGV_POINTS_0_1_2` to avoid hang
Setting SaGvWpMask to SAGV_POINTS_0_1_2 in dev tree can effectively
avoid the idle hang issue, but it will affect the system power.
(Before root cause, this is a short term workaround to unblock function test.)

BUG=b:287170545
TEST=Able to idle for more than 5+ hours without any hang.

Signed-off-by: Wentao Qin <qinwentao@huaqin.corp-partner.google.com>
Change-Id: I0947815ab79b470d2ae922cffdd8250c60cf1afd
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77520
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kane Chen <kane.chen@intel.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
2023-09-04 04:31:48 +00:00
Simon Glass 7de2fa3c7f docs: Build in parallel
Use all available cores to speed up building the documentation.
As $(SPHINXOPTS) has no default in `Makefile.sphinx`, we can
communicate it to all sub-makes via `export`.

Change-Id: I25996f17348505722f3489a15a975de620331b5a
Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Nico Huber <nico.h@gmx.de>
Original-reviewed-on: https://review.coreboot.org/c/coreboot/+/77363
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77452
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-03 22:33:11 +00:00
Tyler Wang c0986a4b9f mb/google/rex/var/karis: Drop unused audio codecs and amplifiers
BUG=b:294155897, b:295112765
TEST=emerge-rex coreboot

Change-Id: Ic7e272a484ea76dfc3a314b3597cbc18c856a9ca
Signed-off-by: Tyler Wang <tyler.wang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77602
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-02 16:29:22 +00:00
Tyler Wang bfcd046e69 mb/google/rex/var/karis: Add audio codec ALC5650
Add audio codec ALC5650 related settings.

BUG=b:294155897, b:295112765
TEST=emerge-rex coreboot

Change-Id: I2b54dd600b47ecdfd1f488a8c623bc0599c8936f
Signed-off-by: Tyler Wang <tyler.wang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77360
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-02 16:27:18 +00:00
Mario Scheithauer a52d38b637 mb/siemens/mc_apl2: Set Full Reset Bit into Reset Control Register
With the introduction of a new Linux version a problem has appeared
after a software initiated reset via CF9h register. The problem
manifests itself in the fact that the Linux kernel does not start after
the reboot. The problem is solved by setting bit 3 to 1 in Reset Control
Register (I/O port CF9h). This leads to the fact that the PCH will drive
SLP_S3 active low in the reset sequence. It leads to the same behavior
as in commit 04ea73ee78 ("siemens/mc_apl3: Set Full Reset Bit into
Reset Control Register") explained.

Change-Id: Ibc6d538c939e38732f42995d5ec6c8b61f979a6a
Signed-off-by: Mario Scheithauer <mario.scheithauer@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77603
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-by: Jan Samek <jan.samek@siemens.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-02 16:25:30 +00:00
YH Lin fd6908a748 mb/google/rex/var/screebo: add hook for WiFi SAR table
As a preparation for WiFi SAR table addition, adding hook for it.

BUG=b:291155207
TEST=emerge-rex coreboot

Change-Id: Ia313cfddec278e6bf8498407b242c027a5891deb
Signed-off-by: YH Lin <yueherngl@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77598
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-02 16:22:07 +00:00
YH Lin f03a6ef113 mb/google/rex/var/screebo: add FP_MCU fw_config
Add FP_MCU definitions for fw_config according to the current
build matrix.

BUG=b:291155207
TEST=emerge-rex coreboot

Change-Id: Id67b20a750d14eb23c62be9a30a5ef21d80e486a
Signed-off-by: YH Lin <yueherngl@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77597
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-02 16:21:23 +00:00
YH Lin 21db65d95b mb/google/rex/var/screebo: remove SD_ABSENT
Remove SD_ABSENT since it's not being used, and CBI FW_CONFIG
in current build does not reflect this config neither.

BUG=b:291155207
TEST=emerge-rex coreboot

Change-Id: Icfa472ff5570ac728038ec67a762289407760812
Signed-off-by: YH Lin <yueherngl@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77596
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-02 16:20:24 +00:00
Dtrain Hsu 5879b61302 mb/google/nissa/var/uldren: Enable Weida touchscreen
Support Weida WDT8790A touchscreen.

BUG=b:297453122
BRANCH=firmware-brya-14505.B
TEST=touchscreen is workable and evtest shows WDHT2601
$evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:      Lid Switch
/dev/input/event1:      Power Button
/dev/input/event10:     sof-cs42l42 HDMI/DP,pcm=2
/dev/input/event11:     sof-cs42l42 HDMI/DP,pcm=3
/dev/input/event12:     sof-cs42l42 HDMI/DP,pcm=4
/dev/input/event13:     sof-cs42l42 HDMI/DP,pcm=5
/dev/input/event2:      AT Translated Set 2 keyboard
/dev/input/event3:      cros_ec_buttons
/dev/input/event4:      Elan Touchpad
/dev/input/event5:      WDHT2601:00 2575:0921
/dev/input/event6:      WDHT2601:00 2575:0921 Stylus
/dev/input/event7:      WDHT2601:00 2575:0921 Stylus
/dev/input/event8:      DELL Dell USB Entry Keyboard
/dev/input/event9:      sof-cs42l42 Headset Jack

Change-Id: If9539afaf891c8352bc7fc8e548fd77ea57ea6ca
Signed-off-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77575
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
Reviewed-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Reviewed-by: Derek Huang <derekhuang@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-02 16:19:14 +00:00
Tyler Wang b35429457a mb/google/rex/var/karis: Enable ELAN touchscreen
BUG=b:294155897
TEST=emerge-rex coreboot

Change-Id: I179df1e0e544783f77a485ad08293530e8a86ecd
Signed-off-by: Tyler Wang <tyler.wang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77592
Reviewed-by: Eran Mitrani <mitrani@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-02 16:17:47 +00:00
Wisley Chen 208cbdb6af mb/google/nissa/var/yaviks: Add wifi sar for yahiko
Add intel wifi sar table for yahiko

BUG=b:298280621
BRANCH=firmware-nissa-15217.B
TEST=build, enable iwlwifi debug option, and check dmesg

Change-Id: I38d2e640fc2f7cbde3986474ca1bf7de9b2d25b4
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77585
Reviewed-by: Derek Huang <derekhuang@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-02 16:16:37 +00:00
Mac Chiang eefdfb5c17 mb/google/brya/var/skolas: add nau8318 speaker support
Add variant of NAU8318(SPK) + NAU88L25B(Headphone) audio support
on brya and skolas board.
In fw_config settings, reuse max98360_enable_pads[] due to
identical i2s configurations as nau8318.
In addition, separated GPP_R7 as SPK_BEEP_EN pin.

BUG=b:236561637
TEST=emerge-brya coreboot
BRANCH=none

Signed-off-by: Mac Chiang <mac.chiang@intel.com>
Suggested-by: David Lin <CTLIN0@nuvoton.com>
Signed-off-by: AlanKY Lee <alanky_lee@compal.corp-partner.google.com>

Change-Id: Ife47a83fca902cf63e09d11206e9d99fac0dc9a1
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76925
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
2023-09-02 16:14:34 +00:00
Subrata Banik 96f7bd1318 soc/intel/meteorlake: Fix black screen after booting to OS
This patch ensures that the VR configuration for IA, SA, and GFX is
properly initialized, assigning zero values to VR causes a black screen
(no display) issue.

Problem Statement:
Override CEP (Current Excursion Protection) value with zero aka set to
disable results into black screen issue (no display).

Solution:
Keep CEP default enabled and don't override w/ zero value.

w/o this patch:
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[0] : 0x0
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[1] : 0x0
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[2] : 0x0

w/ this patch:
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[0] : 0x1
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[1] : 0x1
[SPEW ]   CPU_POWER_MGMT_VR_CONFIG : CepEnable[2] : 0x1

Change-Id: I8908e8b6c995390b559212d456db6ddf984448a3
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77611
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eran Mitrani <mitrani@google.com>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
2023-09-02 14:42:19 +00:00
Felix Singer 2aeb6e405a soc/intel/cannonlake/Kconfig: Deduplicate selections
All of the SoCs in the cannonlake directory select the following
options. So move them to the common option SOC_INTEL_CANNONLAKE_BASE
in order to deduplicate selections.

  * FSP_USES_CB_STACK
  * HAVE_INTEL_FSP_REPO
  * SOC_INTEL_CONFIGURE_DDI_A_4_LANES

Change-Id: I6ce5edb2ba2c138b44601b32c3ecba2e761136f7
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77447
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
2023-09-02 01:42:44 +00:00
Felix Singer 53adf21174 soc/intel/cannonlake/Makefile.inc: Remove dead code of CNL SoC
Intel Cannon Lake was removed with commit d456f65056. Thus, remove this
dead code.

Change-Id: I53cd9d53b01e26f530684aa9c404f50b305c1f54
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77446
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-02 01:42:35 +00:00
Subrata Banik 898678d8a2 drivers/mrc_cache: Fix extra space at the beginning of line
Change-Id: Ic49cb6c67aa707efa6495788137b550683008868
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77594
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-01 21:27:18 +00:00
Matt DeVillier ecf2b42e73 soc/intel/{adl,jsl,mtl,tgl}: Add ACPI name for GNA device
Add SA_DEV_SLOT_GNA definition to SoCs missing it, so the name
resolves properly.

TEST=tested with rest of patch train

Change-Id: I31c8b14e5083fc8e212a4e32330125fa72696c73
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Signed-off-by: CoolStar <coolstarorganization@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77576
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-01 21:26:47 +00:00
Matt DeVillier bed01d794f soc/intel/common/acpi: Add stub for GNA scoring accelerator
Allows boards which enable the GNA device to provide an attachment
point for the OS drivers.

TEST=tested with rest of patch train

Change-Id: I3398eefb80e4407594883dd39128cd7885105ac3
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Signed-off-by: CoolStar <coolstarorganization@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77528
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-01 21:24:12 +00:00
Pratikkumar Prajapati 5849f5bd32 soc/intel/common: Rename crashlog macros
Remove MAILBOX word from CPU_CRASHLOG_MAILBOX_WAIT_STALL
and CPU_CRASHLOG_MAILBOX_WAIT_TIMEOUT macros, because they
can be used for other interface as well.

BUG=b:262501347
TEST=Able to build google/rex.

Change-Id: I62b04fa4b05c427db494a536ca6504db02dfeb68
Signed-off-by: Pratikkumar Prajapati <pratikkumar.v.prajapati@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77236
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:22:37 +00:00
Pratikkumar Prajapati 458e2553f5 soc/intel/meteorlake: Skip crashlog region with metadata tag
Region with metadata tag contains information about BDF entry for
SOC PMC SRAM and IOE SRAM. We don't need to parse this as we already
define BDFs in soc/pci_devs.h for these SRAMs. Also we need to skip
to region as it does not contain any crashlog data.

BUG=b:262501347
TEST=Able to build google/rex. Able to trigger crashlog and decode
correctly.

Change-Id: Id8ed40b865cde8e89045f5c9e713398fcbff5890
Signed-off-by: Pratikkumar Prajapati <pratikkumar.v.prajapati@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76834
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:21:44 +00:00
Pratikkumar Prajapati b757facac2 soc/intel/common: Add metadata tag definition for crashlog
When parsing descriptor table the record can have tag type = 7.
This tag contains metadata depending on SOC. The platform may
choose to parse it based on implementation of crashlog.

BUG=b:262501347
TEST=Able to build google/rex.

Change-Id: I60dda06950974f7949fa5635141e4b7798c4d1f2
Signed-off-by: Pratikkumar Prajapati <pratikkumar.v.prajapati@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76833
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-01 21:19:55 +00:00
Pratikkumar Prajapati 6cba976989 soc/intel/meteorlake: Validate CPU crashlog discovery table and records
CPU crashlog discovery table and crashlog record is considered
invalid if first 32bits of the table is either 0x0 (no crashlog)
or 0xdeadbeef (invalid crashlog).

Crashlog record is considered consumed if bit 31 is set. So in this
case stop processing the subsequent records.

BUG=b:289600699
TEST=Able to build and verified invalid records are skipped on
google/rex.

Change-Id: Ia81bd293a533217425e44473ae85b2115c85faf6
Signed-off-by: Pratikkumar Prajapati <pratikkumar.v.prajapati@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76333
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:18:29 +00:00
Pratikkumar Prajapati 0dc607f68d soc/intel/meteorlake: Adjust discovery table offset based on CPUID
CPUID CPUID_METEORLAKE_B0 onwards the discovery table offset needs
to be left-shifted by 3.

Reference: EDS Vol 1 (640228)

BUG=b:289600699
TEST=Able to boot google/rex with crashlog enabled.

Change-Id: I90647fb6190a52b42298398263978beaf931b035
Signed-off-by: Pratikkumar Prajapati <pratikkumar.v.prajapati@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76400
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2023-09-01 21:14:37 +00:00
Naresh Solanki 4d0b18480d acpi/acpi.c: Accomodate 64bit MMCONF base in MCFG table
Allow the use of 64bit MMCONF base in MCFG table.
Previously only 32 bits were utilized for MMCONF base, while the
remaining 32bits were reserved & held value of zero as evident from MCFG
table disassembly. This commit entails updating the 'base_address' field
in the 'mmconfig' structure to 64 bits and removing the 'base_reserved'
field.

TEST=Confirmed the functionality of the 64bit MMCONF base in the MCFG
table disassembly below

            Signature : "MCFG"
         Table Length : 0000003C
             Revision : 01
             Checksum : BD
               Oem ID : "COREv4"
         Oem Table ID : "COREBOOT"
         Oem Revision : 00000000
      Asl Compiler ID : "CORE"
Asl Compiler Revision : 20230628

             Reserved : 0000000000000000

         Base Address : 0000001010000000
 Segment Group Number : 0000
     Start Bus Number : 00
       End Bus Number : FF
             Reserved : 00000000

Signed-off-by: Naresh Solanki <Naresh.Solanki@9elements.com>
Change-Id: I2f4bc727c3239bf941e1a09bc277ed66ae6b0185
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77539
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:13:09 +00:00
Varshit Pandya d888f61f08 mb/amd/onyx: Add minimal code for onyx compilation
Change-Id: I25807e116869d1bd7b8324525bc5ae1691e072e4
Signed-off-by: Varshit Pandya <pandyavarshit@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77601
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:07:58 +00:00
Arthur Heymans 6d3682ee9b soc/amd/genoa: Add minimal viable code for compilation
This adds a dummy soc (genoa) based on EXAMPLE_MIN86 with
amd linker script hooked up.

Default to 64bit code as that will be a sensible default for this
platform (high memory access required for RAS setup).

Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Change-Id: I69253466084d17c4359d7e824d69f12490b076e4
Reviewed-on: https://review.coreboot.org/c/coreboot/+/76495
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
2023-09-01 21:07:10 +00:00
Robert Zieba 372c4151d4 mainboard/google/skyrim: Enable MP2 FW loading
This board will use custom MP2 FW to dump the contents of the STB when
the SOC fails to enter/exit S0i3. Enable `PSP_LOAD_MP2_FW` by default.

BUG=b:259554520
TEST=Built and ran on skyrim device, verified that MP2 FW loads.

Change-Id: I4222521d01e2c98708f0e5b6693a8aee9e59edf2
Signed-off-by: Robert Zieba <robertzieba@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/72118
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:06:08 +00:00
Martin Roth db48680ebc Update amd_blobs submodule to upstream master
Updating from commit id 6a1e1457afdd:
2023-08-18 16:32:27 -0600 - (Add GenoaPI 1.0.0.4 blobs)

to commit id 591d5fb62cbb:
2023-08-21 13:57:09 -0600 - (mendocino: Update MP2 FW to 0A.0D.00.06)

This brings in 1 new commit:
591d5fb mendocino: Update MP2 FW to 0A.0D.00.06

Signed-off-by: Martin Roth <gaumless@gmail.com>
Change-Id: Iebb8334a4ca89745dfbeedf6d3e72a1b9d74d708
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77541
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
2023-09-01 21:05:51 +00:00
Arthur Heymans 4c88d105d0 soc/intel/cpu: Only show MP PPI option when meaningful
Older FSP releases don't have an option to do MP init via PPI, so it
should not be visible.

Change-Id: I74b4bd5dd72980b859763e89ead7d7f619321e66
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63759
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 21:05:27 +00:00
Bernardo Perez Priego b41d48a09c mb/google/rex: Add `rex4es_ec_ish` variant
This patch creates rex ES variant with EC ISH enabled.

BUG=b:296886409
TEST=Able to build and boot rex4es_ec_ish variant.

Signed-off-by: Bernardo Perez Priego <bernardo.perez.priego@intel.com>
Change-Id: I2b1cdb8cffd66badd90a7bf9825d9decb07941a8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77358
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2023-09-01 21:03:45 +00:00
Elyes Haouas dd3d260e6a include/input-event-codes.h: Update to upstream
This update 'input-event-codes.h' file to master branch.

Change-Id: I09839886824868cfaff6127fe44ff02d7e21ba42
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/69675
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2023-09-01 20:59:32 +00:00
Sean Rhodes 4011ee0cb7 mb/starlabs/starbook/rpl: Disable dynamic Tc-cold handshake
With the Tc-cold handshake, there's a fast flicker when connecting
external displays. With it disabled, it's just one "flick", so use
this as it's lesser of two evils.

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: Ie42b935d3e69beff6a1e503a8dee69554123b4f0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/77564
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2023-09-01 20:58:58 +00:00
Martin Roth b7cac4c375 Documentation: Update coding_style.md with refactoring section
The rule being added to the refactoring section is already present
in the "coding style" section of the guide, but is currently easy
to miss.  Adding it to its own section makes it a little more plain
and makes it more strongly worded.

Update a couple of other areas:
- Make kernel specific phrasing better aligned with coreboot.
- Remove duplicate "try to match" phrase in coding style section.
- Remove section on Data structures - it doesn't apply to coreboot.
- Update text to make it clearer and more coreboot-centric.

Signed-off-by: Martin Roth <gaumless@gmail.com>
Change-Id: Ic3508529f639ea0609d2ea2032cc52407e9543e5
Reviewed-on: https://review.coreboot.org/c/coreboot/+/71067
Reviewed-by: Varshit Pandya <pandyavarshit@gmail.com>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-by: Matt DeVillier <matt.devillier@amd.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <eric_lai@quanta.corp-partner.google.com>
2023-09-01 14:29:25 +00:00
Michał Żygowski 97112481f5 mb/msi/ms7d25: Configure ASPM and Clock PM based on Kconfig
Add support for FSP ASPM and Clock PM configuration based on Kconfig
options: PCIEXP_ASPM, PCIEXP_CLK_PM and PCIEXP_L1_SUB_STATE. For some
use cases it may be desirable to disable ASPM and Clock PM to achieve
more deterministic and higher performance of PCIe devices.

TEST=Boot MSI PRO Z690-A DDR4 without ASPM and Clock PM. Confirm all
PCIe devices are still working and ASPM and Clock PM capabilities
are not present on the PCIe Root Ports.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I6d9d11016bed89dcfee6909d0d3e3e2e56237a2f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/69825
Reviewed-by: Krystian Hebel <krystian.hebel@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 13:20:34 +00:00
Zheng Bao 69cef8e694 amd/soc/common: Use relative offset for AMDFW
The amdfw.rom is mostly in region COREBOOT. Calculate the relative
address as the CBFS module address. That is for future 32M flash size
support.

TEST=binary identical test on amd/birman amd/majolica amd/gardenia
  amd/mayan amd/bilby amd/mandolin amd/chausie amd/pademelon
  pcengines/apu2
  google/skyrim google/guybrush google/zork google/kahlee google/myst

This commit is part of a series of patches to support 32/64M flash.
BUG=b:255374782

Change-Id: I2add8e4e6755e582b3be6a150cf83d1468f2f1be
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/72961
Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2023-09-01 11:48:02 +00:00
Zheng Bao 6bc06983ed util/amdfwtool: Deal with psp position in flash offset directly
It is based on work by Arthur Heymans, 69852.

Get rid of the confusing "position index" and use the relative flash
offset as the Kconfig setting instead.

TEST=binary identical on amd/birman amd/majolica amd/gardenia
  amd/mayan amd/bilby amd/mandolin amd/chausie amd/pademelon
  pcengines/apu2
  google/skyrim google/guybrush google/zork google/kahlee google/myst
  (The test should be done with INCLUDE_CONFIG_FILE=n)

Change-Id: I26bde0b7c70efe9f5762109f431329ea7f95b7f2
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/72939
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2023-09-01 11:47:15 +00:00