Commit Graph

45510 Commits

Author SHA1 Message Date
Subrata Banik 724fc89887 soc/intel/common/gpio: Skip GPP pad lock config if config is not set
Don't perform GPP lock configuration if
SOC_INTEL_COMMON_BLOCK_SMM_LOCK_GPIO_PADS config is not selected.

This patch fixes a compilation issue when APL/GLK boards are
failing while gpio_lock_pads() function is getting called from
IA common gpio block.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I392dc2007dba8169e480f82b58b7f0a1578bb09f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60776
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-06 15:19:44 +00:00
Subrata Banik d43d864fc0 soc/intel/common/gpio: Modify pad_config.pad type from `int` to 'gpio_t'
This patch modifies struct pad_config.pad type from `int` to 'gpio_t'
as pad offset inside GPIO community is unsigned type and also to
maintain parity with `struct gpio_lock_config.pad` type.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I15da8a1aff2d81805ba6584f5cc7e569faf456e1
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60773
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
2022-01-06 15:19:24 +00:00
Subrata Banik 0dc0772118 soc/intel/common/gpio: Rename struct gpio_lock_config.gpio to .pad
This patch renames struct gpio_lock_config variable `gpio` to `pad`,
to represent the pad offset within the GPIO community.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I6bed99c401435c96c9543f99406a934d7141c575
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60772
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
2022-01-06 15:19:13 +00:00
Subrata Banik 90c6cff159 soc/intel/alderlake: Fix GPIO reset mapping as per GPIO BWG
This patch fixes the documentation discrepancy of GPIO reset type
between PCH EDS and GPIO BWG. As per GPIO BWG, there are four GPIO
reset types in Alder Lake as below:
- Power Good - (Value 00)
- Deep - (Value 01)
- Host Reset/PLTRST - (Value 10)
- RSMRST for GPD/Reserved for GPP - (Value 11)

Hence, created two different reset types for `GPP` and `GPD`.
Also, replaced PAD_CFG0_LOGICAL_RESET_x macros with PAD_RESET().

BUG=b:213293047

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I4b8742c7a0cc1dc420e3e22e34a16355294ed61b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60789
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maulik V Vaghela <maulik.v.vaghela@intel.com>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-06 15:19:02 +00:00
Rex-BC Chen c46cadd22b soc/mediatek/mt8186: Increase CBFS_MCACHE size to 8KiB
The current CBFS mcache size (roughly 7KiB) is insufficient for mt8186,
so we need to increase it by 1KiB (and decrease the stack by 1KiB).

Error logs:
CBFS ERROR: mcache overflow, should increase CBFS_MCACHE size!
CBFS: mcache @0x0010e004 built for 63 files, used 0xde4 of 0xdfc bytes

BUG=b:202871018
TEST=no cbfs error logs.

Signed-off-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Change-Id: I1e627ede3774665575006f752f89101e3c5bde9f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60529
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-01-06 02:24:39 +00:00
Rex-BC Chen a8a9552d75 mb/google/corsola: Configure audio
According schematics, we configure audio by turning on setting of
audio power and selecting I2S pin-mux.

Schematics references:
kingler: schematic_kingler_proto0_gerber_20211115.pdf
krabby: crab_proto 0_20211112_final.pdf

BUG=b:204164695
TEST=Verified by CLI command(badusbbeep/devbeep) on kingler and krabby

Signed-off-by: Jiaxin Yu <jiaxin.yu@mediatek.com>
Change-Id: Ia6374d0e5535b7cff4df8759312786fef8b94b6b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60738
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Reviewed-by: Hung-Te Lin <hungte@chromium.org>
2022-01-06 02:24:33 +00:00
FrankChu df1d2b4bb9 mb/google/volteer/var/delbin: Add fw_config probe for ALC5682-VD & VS
ALC5682-VD/ALC5682I-VS load different kernel driver by different hid
name. Update hid name depending on the AUDIO_CODEC_SOURCE field of
fw_config. Define FW_CONFIG bits 41 - 43 (SSFC bits 9 - 11)
for codec selection.

ALC5682-VD: _HID = "10EC5682"
ALC5682I-VS: _HID = "RTL5682"

BUG=b:204523176
BRANCH=volteer
TEST=ALC5682-VD/ALC5682I-VS audio codec can work

Signed-off-by: FrankChu <frank_chu@pegatron.corp-partner.google.com>
Change-Id: Ieef638f78edd3428e572a76f06fb9c8757278971
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59557
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
2022-01-05 21:41:46 +00:00
Joey Peng a265c49eaa mb/google/brya/var/taeko:Remove duplicate DB_SD fw_config fields.
Since fw config fields for DB_SD can share the same driver, we will
remove the duplicate fields DB_SD_GL9750 and DB_SD_RTS5232S.

BUG=b:212240358
TEST=emerge-brya coreboot and can boot to OS.
Signed-off-by: Joey Peng <joey.peng@lcfc.corp-partner.google.com>
Change-Id: If7814c35f63fd6fa27195d448c4d51fc980aaa9c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60409
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
2022-01-05 20:26:44 +00:00
Paul Menzel 6f1435e0a9 mb/google/sarien: Add VBT extracted from Chrome OS
The VBT is extracted from Chromium OS in developer mode with the device
running firwmare .

    $ sudo dmesg | grep ' DMI:'
    [    0.000000] DMI: Dell Inc. Sarien/Sarien, BIOS Google_Sarien.12200.99.0 07/29/2020
    $ sudo cbmem -1
    coreboot-v1.9308_26_0.0.22-8761-gdba94f429a Wed Jul 29 16:09:30 UTC 2020 bootblock starting (log level: 8)...
    […]
    coreboot-v1.9308_26_0.0.22-8761-gdba94f429a Wed Jul 29 16:09:30 UTC 2020 ramstage starting (log level: 8)...
    […]
    CBFS: Locating 'vbt.bin'
    CBFS: Found @ offset 614c0 size 4a0
    Found a VBT of 4608 bytes after decompression
    […]
    $ sudo cp /sys/kernel/debug/dri/0/i915_vbt vbt.bin

Using the Chrome OS recovery image, Matt DeVillier verified, that the
Sarien VBT is identical to Arcada, so add the VBT for all variants.

Change-Id: Ibab8a7b0b3f721ca434ac38b51528b81e66f3bb7
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60735
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-05 17:44:58 +00:00
Paul Menzel 1ef30cbf75 mb/google/sarien/Kconfig: Remove blank line at beginning
Change-Id: I0410be48f360bdd00e4ed7599cbee405915344b9
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60767
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-05 17:44:46 +00:00
Sean Rhodes 0bb9104ead mb/starlabs/labtop: Remove display from devicetree
Remove display from devicetree as Intel's brightness
controls are not used on this platform.

This solves the below errors appearing in dmesg:

    No Local Variables are initialized for Method [_BCL]
    No Arguments are initialized for method [_BCL]

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: Icf2f2fa33abd11952c888c9502d1d5ef1ad6544f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59258
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2022-01-05 17:43:29 +00:00
Elyes HAOUAS 6a8e0b14f7 src/northbridge: Remove unused <delay.h>
Change-Id: I5449feeb65c49c79bc7657a1c3777a0f128a13b1
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60606
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-05 17:42:31 +00:00
Elyes HAOUAS 8def542ff9 src/soc/amd: Remove unused <delay.h>
Found using:
diff <(git grep -l '#include <delay.h>' -- src/) <(git grep -l 'get_timer_fsb(\|init_timer(\|udelay(\|mdelay(\|delay(' -- src/) |grep "<"

Change-Id: Iefb37d28c7f13563fa652cd6b2f661f462a3a32e
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60605
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2022-01-05 17:42:22 +00:00
Elyes HAOUAS 47235990d4 src/soc/intel: Remove unused <delay.h>
Change-Id: Id8e6221a9801d5198171dc9cd564000d19720a42
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60604
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-05 17:42:01 +00:00
Elyes HAOUAS 35eabc7c23 src/soc/mediatek: Remove unused <delay.h>
Change-Id: I414ad3824819f441f316567795999ed9539cba7b
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60603
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2022-01-05 17:41:40 +00:00
Elyes HAOUAS 667f51193a src/southbridge: Remove unused <delay.h>
Found using:
diff <(git grep -l '#include <delay.h>' -- src/) <(git grep -l 'get_timer_fsb(\|init_timer(\|udelay(\|mdelay(\|delay(' -- src/) |grep "<"

Change-Id: If7751b0e7d222979973518f57b310f5e2fe2bc25
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60601
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2022-01-05 17:41:25 +00:00
Elyes HAOUAS 056b2501e2 soc/mediatek: Remove unused <string.h>
Change-Id: I8f88541dce457e978a2cbea036d4f6eae387963f
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60559
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2022-01-05 17:39:27 +00:00
Elyes HAOUAS 9e95f6e0bc soc/amd: Remove unused <string.h>
Change-Id: Ibd3e7a62a2e833017f550eddd915b7dfb539d019
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60558
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2022-01-05 17:39:13 +00:00
Elyes HAOUAS a97f03513f device/dram/lpddr4.c: Remove unused <string.h>
Change-Id: Iba3135178f2d6021702971e4d887e9b4f8afeb76
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60556
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-05 17:38:39 +00:00
Elyes HAOUAS 249343bebb src/southbridge: Remove unused <string.h>
Change-Id: Idc0cd9d6865cd9c1b95e6c838795cce9dbc643a3
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60554
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-05 17:38:18 +00:00
Elyes HAOUAS 5a5ed1fb20 soc/intel: Remove unused <string.h>
Found using following command:
diff <(git grep -l '#include <string.h>' -- src/) <(git grep -l 'STRINGIFY\|memcpy(\|memmove(\|memset(\|memcmp(\|memchr(\|strdup(\|strconcat(\|strnlen(\|strlen(\|strchr(\|strncpy(\|strcpy(\|strcmp(\|strncmp(\|strspn(\|strcspn(\|strstr(\|strtok_r(\|strtok(\|atol(\|strrchr(\|skip_atoi(\|vsnprintf(\|snprintf(' -- src/)

Change-Id: Iae90ff482f534d8de2a519619c20a019d054e700
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60553
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-05 17:37:49 +00:00
Elyes HAOUAS 51b9eb74bf src/drivers/wifi/generic/smbios.c: Remove unused <string.h>
Found using following command:
diff <(git grep -l '#include <string.h>' -- src/) <(git grep -l 'STRINGIFY\|memcpy(\|memmove(\|memset(\|memcmp(\|memchr(\|strdup(\|strconcat(\|strnlen(\|strlen(\|strchr(\|strncpy(\|strcpy(\|strcmp(\|strncmp(\|strspn(\|strcspn(\|strstr(\|strtok_r(\|strtok(\|atol(\|strrchr(\|skip_atoi(\|vsnprintf(\|snprintf(' -- src/)

Change-Id: I2a6c5b67af1d2544159e92d4b8c06cc1f5504bd2
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60552
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2022-01-05 17:37:12 +00:00
Ariel Fang 6dfc0aebb3 mb/google/brya/var/primus: Fix some GPIO programming
After checking them against schematics, a few unused GPIOs that were inherited
from the baseboard were missed, so this CL programs them as PAD_NC.
   GPP_B2  => non-use
   GPP_B15 => non-use (for FPR)
   GPP_D3  => non-use (Test point)
   GPP_E21 => non-use (for LCLW Detect)

BUG=b:211721639
TEST= USE="project_primus" emerge-brya coreboot

Signed-off-by: Ariel Fang <ariel_fang@wistron.corp-partner.google.com>
Change-Id: I4e269bc6fb6eda7b2de57e1a9c900864d3e86e98
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60104
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
2022-01-05 17:26:39 +00:00
Seunghwan Kim 774ffe3998 mb/google/dedede/var/bugzzy: Increase reset_delay_ms for touch screen
Touch screen IC couldn't wake up after rebind with current 120 ms delay
after reset since the HID would be activated after 200 ms from reset.
This change increases the reset_delay_ms for touch device to 200 ms to
wait for the touch HID to be ready.

BUG=b:204950000
BRANCH=dedede
TEST=Verified that TSP IC could wake up after rebind

Signed-off-by: Seunghwan Kim <sh_.kim@samsung.corp-partner.google.com>
Change-Id: I34cbc82e2d691266389d498e77d8389cdee23efe
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60273
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-05 17:11:52 +00:00
Subrata Banik 088667a2d9 mb/google/brya/(anahera,primus): Use eNEM for CAR by default
More Brya variants like Anahera and Primus have migrated to use
Alder Lake QS SoC which enables eNEM feature by default. Hence,
select eNEM for CAR by default for these variants.

BUG=b:168820083
TEST=Able to build and boot primus variant using eNEM mode.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I65d12de08adf85140976e1a7659ad7b684aa75c8
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60739
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
2022-01-05 16:37:06 +00:00
Zhi Li 159a3045ce mb/google/dedede/var/storo: Generate SPD ID for Samsung K4U6E3S4AA-MGCR
Add supported memory parts in the mem_parts_used.txt and generate the
SPD ID for Samsung K4U6E3S4AA-MGCR.

BUG=b:211950312
TEST=emerge-dedede coreboot

Signed-off-by: Zhi Li <lizhi7@huaqin.corp-partner.google.com>
Change-Id: Ic436db8fe3ef6fb8379ec629b128c05c691ea6fe
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60337
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: zanxi chen <chenzanxi@huaqin.corp-partner.google.com>
2022-01-05 10:14:00 +00:00
Subrata Banik eb14a979f9 mb/google/herobrine: Initialize `pins` to fix the compilation issue
Fix compilation issue introduced with commit 8b63dac0
(google/herobrine: configure gpio to detect board ID) by initialising
the gpio pins.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I084fec777b56f402efb3b04a1d358cd5b0891846
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60784
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
Reviewed-by: Patrick Georgi <patrick@coreboot.org>
2022-01-05 08:32:51 +00:00
Subrata Banik c045b099e4 mb/starlabs/labtop: Replace leading whitespace with tab
Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: I4d7324148ba182d0317b1f64e39f04a8a55fe79b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60733
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Sean Rhodes <admin@starlabs.systems>
Reviewed-by: EricR Lai <ericr_lai@compal.corp-partner.google.com>
2022-01-05 06:30:40 +00:00
Ravi Kumar Bokka 8b63dac061 google/herobrine: configure gpio to detect board ID
BUG=b:182963902, b:193807794
TEST=Validated on qualcomm sc7280 development board

Signed-off-by: Ravi Kumar Bokka <rbokka@codeaurora.org>
Change-Id: I6de2a7e7b11ecce8325e0fd44dc7221d73729390
Reviewed-on: https://review.coreboot.org/c/coreboot/+/56642
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Shelley Chen <shchen@google.com>
2022-01-05 02:35:13 +00:00
Hsuan Ting Chen bdad283237 docker/Makefile: Use all instead of all_without_gdb
After removing GDB from crossgcc in commit f32eed16 (buildgcc: Remove
GDB from crossgcc), there is no target named all_without_gdb anymore
and we should always build crossgcc with target all.

But in util/docker/Makefile, we still try to build crossgcc with
target all_without_gdb as default and will cause a build failure.

Set CROSSGCC_PARAM from all_without_gdb to all to fix this issue.

Signed-off-by: Hsuan Ting Chen <roccochen@chromium.org>
Change-Id: I06c6d8e36dfd4e6a00ddec8b640b608ab1ba614c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60268
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Reviewed-by: Martin Roth <martinroth@google.com>
Reviewed-by: HAOUAS Elyes <ehaouas@noos.fr>
2022-01-04 21:08:43 +00:00
Shelley Chen 8bdbe23a93 mb/google/herobrine: Transition BOARD_HEROBRINE to BOARD_HEROBRINE_REV0
Deprecating Herobrine Rev0 board.  The next board is very different
from the Rev0 board (ie: Most GPIOs have been remapped).  Deprecating
and reusing the GOOGLE_BOARD_HEROBRINE Kconfig for next board and
reslotting the old GOOGLE_BOARD_HEROBRINE source under
GOOGLE_BOARD_HEROBRINE_REV0 config.  Want to keep the code around in
case somebody needs it but we can remove this code in future after we
recall all the Rev0 devices.  Also updating the remapped GPIOs to
match those of the current herobrine board.

BUG=b:211644878
BRANCH=None
TEST=emerge-herobrine coreboot

Change-Id: I67a0b282710031b927ce9022c7c535bd8d4ca1aa
Signed-off-by: Shelley Chen <shchen@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60284
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2022-01-04 19:16:38 +00:00
David Wu a5b6ec05a8 mb/google/brya/var/kano: Add stylus probe
Kano has non-stylus sku. Add a FW_CONFIG field to indicate
stylus presence and add a probe statement to the devicetree for the
corresponding device.

BUG=b:208179467
TEST=non-stylus doesn't register garage driver.

Signed-off-by: David Wu <david_wu@quanta.corp-partner.google.com>
Change-Id: I24839c39280185a6d649a82dd9f025ee305c2eed
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60389
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 17:18:25 +00:00
David Wu fa7f37b75d mb/google/brya/var/kano: Enable stylus pen power
Set GPP_D16 (PEN_PWR_EN) to output high.

BUG=b:195853169
TEST=build pass.

Signed-off-by: David Wu <david_wu@quanta.corp-partner.google.com>
Change-Id: I25b6d1a40ed0939b303a03984cb0087fb6cab4d7
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60449
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 17:18:13 +00:00
Reka Norman e7640ccadd mb/google/brya: Add new baseboard nissa with variants nivviks and nereid
Add a new baseboard for nissa, an Intel ADL-N based reference design.
Also, add variants for the two reference boards, nivviks and nereid.
This commit is a stub which only adds the minimum code needed for a
successful build.

BUG=b:197479026
TEST=abuild -a -x -c max -p none -t google/brya -b nivviks
     abuild -a -x -c max -p none -t google/brya -b nereid

Change-Id: I2a3975fb7a45577fec8ea7c6c9f6ea042ab8cba5
Signed-off-by: Reka Norman <rekanorman@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60271
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kangheui Won <khwon@chromium.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2022-01-04 16:18:26 +00:00
Kevin Chang f1edd4fe60 mb/google/brya/var/taeko: Run-time probe for NVMe SSD and MMC
Taeko will use two PCIE port signals with one slot, one CLK and one
CLKREQ at next build. In order to accommodate this, probe statements
are added to the devicetree. This only affects NVME SSD and EMMC.

BUG=b:211914322
TEST=Build FSP with debug output enabled, and observe the correct root
ports being initialized depending on the FW_CONFIG values for BOOT_EMMC
and BOOT_NVME.

Cq-Depend: chromium:3358662
Signed-off-by: Kevin Chang <kevin.chang@lcfc.corp-partner.google.com>
Change-Id: I4486f23ea02374c84a9b1ce04f568d78aeabd573
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60341
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 16:15:31 +00:00
Elyes HAOUAS fc86f8bf27 src/mb: Remove unused <string.h>
Change-Id: I5f2710b2034882a24a041d99e37ec364193d85e6
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60551
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
2022-01-04 14:56:56 +00:00
Elyes HAOUAS 3a0355a8bc security/memory/memory.c: Include 'stdbool' instead of 'stdint'
Change-Id: I4eac157c8b48c1c10178bb84822b6462c245deca
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60550
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
2022-01-04 14:56:37 +00:00
Paul Menzel 5ca0015dc5 soc/intel/common/acpi/pep: Use correct size_t length modifier
Building an image for the Purism Mini v2 with `x86_64-linux-gnu-gcc-11`
fails with the format warning below as the size of size_t differs
between 32-bit and 64-bit.

        CC         ramstage/soc/intel/common/block/acpi/pep.o
    src/soc/intel/common/block/acpi/pep.c: In function 'read_pmc_lpm_requirements':
    src/soc/intel/common/block/acpi/pep.c:57:50: error: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
       57 |                                 printk(BIOS_ERR, "Failed to retrieve LPM substate registers"
          |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       58 |                                        "from LPM, substate %lu, reg %lu\n", i, j);
          |                                                                             ~
          |                                                                             |
          |                                                                             size_t {aka unsigned int}
    src/soc/intel/common/block/acpi/pep.c:58:62: note: format string is defined here
       58 |                                        "from LPM, substate %lu, reg %lu\n", i, j);
          |                                                            ~~^
          |                                                              |
          |                                                              long unsigned int
          |                                                            %u
    src/soc/intel/common/block/acpi/pep.c:57:50: error: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
       57 |                                 printk(BIOS_ERR, "Failed to retrieve LPM substate registers"
          |                                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       58 |                                        "from LPM, substate %lu, reg %lu\n", i, j);
          |                                                                                ~
          |                                                                                |
          |                                                                                size_t {aka unsigned int}
    src/soc/intel/common/block/acpi/pep.c:58:71: note: format string is defined here
       58 |                                        "from LPM, substate %lu, reg %lu\n", i, j);
          |                                                                     ~~^
          |                                                                       |
          |                                                                       long unsigned int
          |                                                                     %u

The variables `i` and `j` are of type size_t, so use the corresponding
length modifier `z`.

Fixes: 2eb100dd ("soc/intel/common/block/acpi: Add LPM requirements support to PEPD _DSM")
Change-Id: I27bce0a6c62b1c1ebbca732761de2f59b042a5d4
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59057
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 14:55:05 +00:00
Paul Menzel 0594bf87c1 soc/intel/common: irq: Use correct size_t length modifier
Building an image for the Purism Mini v2 with `x86_64-linux-gnu-gcc-11`
fails with the format warning below as the size of size_t differs
between 32-bit and 64-bit.

        CC         ramstage/soc/intel/common/block/irq/irq.o
    src/soc/intel/common/block/irq/irq.c: In function 'assign_fixed_pirqs':
    src/soc/intel/common/block/irq/irq.c:186:90: error: format '%lu' expects argument of type 'long unsigned int', but argument 5 has type 'size_t' {aka 'unsigned int'} [-Werror=format=]
      186 |                         printk(BIOS_ERR, "ERROR: Slot %u, pirq %u, no pin for function %lu\n",
          |                                                                                        ~~^
          |                                                                                          |
          |                                                                                          long unsigned int
          |                                                                                        %u
      187 |                                constraints->slot, fixed_pirq, i);
          |                                                               ~
          |                                                               |
          |                                                               size_t {aka unsigned int}
        CC         ramstage/soc/intel/common/block/gspi/gspi.o
        CC         ramstage/soc/intel/common/block/graphics/graphics.o
        CC         ramstage/soc/intel/common/block/gpio/gpio.o
        CC         ramstage/soc/intel/common/block/gpio/gpio_dev.o

The variable `i` is of type size_t, so use the corresponding length
modifier `z`.

Fixes: b59980b54e ("soc/intel/common: Add new IRQ module")
Change-Id: I09f4a8d22a2964471344f5dcf971dfa801555f4a
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59056
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 14:54:33 +00:00
Kevin Chiu cb8c3ddaea mb/google/guybrush/var/nipperkin: update USB 2.0 controller Lane Parameter
Enhance USB 2.0 SI by increasing the level of "HS DC Voltage Level"
and "Disconnect Threshold Adjustment" per port:

port#0: COMPDISTUNE0: 0x1->0x5 / TXVREFTUNE0: 0x3->0x9
port#1: COMPDISTUNE0: 0x1->0x5 / TXVREFTUNE0: 0x3->0x9
port#4: COMPDISTUNE0: 0x1->0x6 / TXVREFTUNE0: 0x3->0xE
port#5: COMPDISTUNE0: 0x1->0x5 / TXVREFTUNE0: 0x3->0x9

BUG=b:203049656
BRANCH=guybrush
TEST=1. emerge-guybrush coreboot chromeos-bootimage
     2. pass USB eye diagram verification

Change-Id: If5a6563e93bfa6beb529a5593fcc9124ce62d77f
Signed-off-by: Kevin Chiu <kevin.chiu@quantatw.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60089
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Rob Barnes <robbarnes@google.com>
2022-01-04 14:53:51 +00:00
Kevin Chang 219bda737e mb/google/brya/var/taeko: Modify DPTF setting for taeko
The new settings from the thermal team improve performance mainly with
respect to fan control settings.

BRANCH=None
BUG=b:212210824
TEST=Built and tested on taeko board

Signed-off-by: Kevin Chang <kevin.chang@lcfc.corp-partner.google.com>
Change-Id: I2d5c9b6dff87a2e8897d74f3be89c965db22fe16
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60400
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:55:41 +00:00
Kevin Chang 8550fbcea8 mb/google/brya/var/taeko: swap TPM i2c with TS i2c for the next build
Taeko is going to exchange i2c port for touchscreen and cr50.

BUG=b:211911780
TEST=build pass

Signed-off-by: Kevin Chang <kevin.chang@lcfc.corp-partner.google.com>
Change-Id: Ib7273ba107c58e4cd90db00e301a399d7a7df76d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60330
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: YH Lin <yueherngl@google.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:55:19 +00:00
David Wu 9980019e14 mb/google/brya/var/kano: Set vGPIO reset type
Due to the vGPIO is not reset when we power on through S5, we would
met MCA when PCIE send L1 request without following Ack

BUG=b:207527331
TEST=S0->S3->S5->power key->S3->S0, see if boot up normal

Signed-off-by: David Wu <david_wu@quanta.corp-partner.google.com>
Change-Id: I3df66eea13a3284d1453d7db6f7845e42a1dcb7b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60334
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: YH Lin <yueherngl@google.com>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:54:48 +00:00
Wisley Chen 1e0fd0b7bd mb/google/brya/anahera: Add new memory support
Add the new memory support:
Hynix H54G46CYRBX267
Samsung K4U6E3S4AB-MGCL
Hynix  H54G56CYRBX247
Samsung K4UBE3D4AB-MGCL

BUG=b:212328327
TEST=FW_NAME=anahera emerge-brya coreboot

Change-Id: Ib08a1348333accdbb7551ef428d8d130b621dd9f
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60411
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:54:29 +00:00
Wisley Chen 6feb70ec04 mb/google/brya/var/redrix: Add new memory support
Add the new memory support:
Hynix H54G46CYRBX267
Samsung K4U6E3S4AB-MGCL
Hynix  H54G56CYRBX247
Samsung K4UBE3D4AB-MGCL

BUG=b:212330664
TEST=FW_NAME=redrix emerge-brya coreboot

Change-Id: I32491f86813c8e6566774d4b3d7d82295f906bd3
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60410
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:54:18 +00:00
Shon Wang b510670774 mb/google/brya/var/vell: update overridetree for DP
update override devicetree for type-c display based on schematics

BUG=b:209489126
TEST=emerge-brya coreboot

Signed-off-by: Shon Wang <shon.wang@quanta.corp-partner.google.com>
Change-Id: Icd2f5de38df0eb89fb92ea2abe25851c0d6ec53f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60251
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
2022-01-04 11:53:55 +00:00
Sean Rhodes 51ab5e454d mb/starlabs/labtop: Enable I2C4
Enable unused I2C4 PCI device (00:19.0) so that UART2 (00:19.2) can be
enumerated properly, using `PchSerialIoSkipInit` to prevent FSP-S from
configuring anything regarding I2C4 (e.g. GPIOs).

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I9c2c4f67672ba5667ebdae9ecc01054449dd3dfd
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60264
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Andy Pont <andy.pont@sdcsystems.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-04 11:53:07 +00:00
Sean Rhodes 58f6a5d744 starlabs: Convert EC_GPE_SCI to Kconfig
Convert EC_GPI_SCI to Kconfig option with default value of
0x50 that is used by most boards.

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I8d47ebe76394fe1bcb217e0c6211db1566f82189
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60229
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-01-04 11:52:10 +00:00
Elyes HAOUAS 187bec7ac0 nb/intel/i945/raminit.c: Set "integrated_graphics" as bool
"integrated_graphics" is already used as a "bool" at line #2128.
So set it as "bool".

Change-Id: Ic5286e691c312e8e44bbbd8e782fdfd4a13cb60f
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60056
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
2022-01-04 11:51:43 +00:00
Alex James 2219d89d9d cbfstool: Avoid defining _XOPEN_SOURCE
This restricts availability of non-standard functions (such as memmem)
on FreeBSD and macOS. It also isn't necessary on glibc.

Change-Id: Iaee1ce7304c89f128a35a385032fce16a2772b13
Signed-off-by: Alex James <theracermaster@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60232
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Julius Werner <jwerner@chromium.org>
2022-01-04 11:51:06 +00:00