Commit graph

62,395 commits

Author SHA1 Message Date
Matt DeVillier
53b53ddd1c util/chromeos/crosfirmware: Increase lookahead when parsing bios_image
Newer recovery images change the manifest format yet again, so increase
the lookhead when parsing the bios_image field to ensure we can find it.

TEST=run `./crosfirmware.sh craaskbowl` without erroring out

Change-Id: Idb1862e38a82f3cec8db55993ccf421cf3572c6f
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86777
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
2025-03-12 12:41:35 +00:00
Sean Rhodes
c93ac71883 mb/starlabs/lite/glk: Disable PMC device
These boards use BootGuard, which isn't fully working in coreboot as
it requires the bootblock to be relocatable.

Turn off the PMC to workaround the missing BootGuard requirements, so
that they will turn on when pressing the power button.

Change-Id: Idd03684d9fb4573fc160e17ac2c28c39bc8b2ddd
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86830
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-03-12 09:07:30 +00:00
Matt DeVillier
6f35296975 Update intel-microcode submodule to upstream main branch
Updating from commit id 8ac9378a8487 (2024-11-12):
  microcode-20241112 Release

to commit id 8a62de41c011 (2025-02-11):
  microcode-20250211 Release

This brings in 1 new commit:
8a62de41c0 microcode-20250211 Release

Change-Id: I3ba126335e4dc3deb93ea8e362ea354f18bbbf38
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86799
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
2025-03-12 09:07:11 +00:00
Kulkarni, Srinivas
dcc6fbb59a vc/intel/fsp/ptl: Update header files from 3015_00 to 3071_00
Update header files for FSP for Panther Lake platform to version
3071_00, with the previous version being 3015_00.

Changes includes:
FSPM:
- Offset changes
- Added UPD's - TXDQSDCC, WeaklockEn, RxDqsDelayCompEn
FSPS:
- Reserved bit changes

BUG=b:396535191
TEST=Able to build Google/fatcat.

Change-Id: I9657eb2b6db1b05adc721b3ef2cf8661642d91e8
Signed-off-by: Kulkarni, Srinivas <srinivas.kulkarni@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86642
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Jayvik Desai <jayvik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Dinesh Gehlot <digehlot@google.com>
2025-03-12 05:00:04 +00:00
Momoko Hattori
d0367e38a9 mb/google/brya/var/redrix: Enable use_gpio_for_status for touchscreen
The _STA method of redrix i2c3's power resource currently always returns
true. This causes the device to be powered on by the kernel in a boot
critical path (in acpi_bus_init_power) and blocks it for 300ms due to
the sleep in the _ON method. To prevent this sleep from blocking the
boot, enable use_gpio_for_status so that the implementation of _STA
returns the device's actual power state and the kernel powers on the
device in another place that doesn't block boot.

BUG=b:397355818
TEST=Boot the device, confirm that kernel doesn't sleep for 300ms during
     acpi_bus_init_power and the touchscreen works without any problems.

Change-Id: I517a9477f7b59b621337c56eedbfcf17b82dc39b
Signed-off-by: Momoko Hattori <momohatt@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86749
Reviewed-by: Sam McNally <sammc@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 21:41:03 +00:00
Momoko Hattori
68b8565fc4 drivers/i2c/generic: Add option to generate proper PowerResource _STA
The _STA method of drivers/i2c/generic PowerResource currently always
returns true. To allow generating _STA that returns the device's actual
power state, this CL adds a new boolean option `use_gpio_for_status` to
the `drivers_i2c_generic_config` struct, and propagates the value to
`acpi_power_res_params` to reuse the feature implemented for acpi/device
in [1].

[1] https://review.coreboot.org/c/coreboot/+/55027

BUG=b:397355818
TEST=Dump SSDT on redrix with CB:86749

Change-Id: I5c0a423730788d634a780d1d1d8c87a7007cc150
Signed-off-by: Momoko Hattori <momohatt@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86759
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Sam McNally <sammc@google.com>
2025-03-11 21:40:57 +00:00
Sean Rhodes
534f9e7514 mb/starlabs/starbook/adl_n: Correct alignment in devicetree
Change-Id: I3a67abc7f8a169fc9484c6dd0efd2ef92404d8f3
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86786
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 17:04:07 +00:00
Sean Rhodes
4dcaf5a227 mb/starlabs/starbook/adl_n: Add generic Graphics driver config
This provides entries in the SSDT for all display devices, which
allows the kernel to enumerate them.

Change-Id: I350af852ffed5afda4bbc5a85f5b9db035a99995
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86785
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 17:03:58 +00:00
Sean Rhodes
1a799eb7ac mb/starlabs/starbook/adl_n: Change USB Type-C macro
As the USB-C port on this board is not TBT, change the macro to a
regular port as it is more reliable.

Change-Id: I4dae9ff95d448924f1c2a199053be1ad0ca1cece
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86784
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 17:03:50 +00:00
Sean Rhodes
e545a233a5 mb/starlabs/starbook/adl_n: Remove the WiFi Generic entry
The entry only provided CNVi configuration, and this board does not
use CNVi, so this entry is not required.

Change-Id: I737bed22f5d1545fe91e37d8e55c7c43d1d841fd
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86783
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-03-11 17:03:44 +00:00
Sean Rhodes
e2ba4330dd mb/starlabs/starbook/adl_n: Adjust the TCC offsets
Commit 3a8835f0e8 ("mb/starlabs/*: Unify tcc_offset settings")
unified the TCC offsets based on:
* 70, 80 and 90 degrees for fanless boards
* 80, 90 and 100 degrees for fanned boards

This board has a fan, so make it follow the above.

Change-Id: Ic40ec1a317c787cf7695b37246b2cb337043af2d
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86782
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-03-11 17:03:36 +00:00
Sean Rhodes
296e732e22 mb/starlabs/starbook/mtl: Change USB Type-C macro
As the USB-C port on this board is not TBT, change the macro to a
regular port as it is more reliable.

Change-Id: Ibcafae6b9bf495e3d41e3a2c49cda070db1c2e0c
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86791
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-03-11 17:03:22 +00:00
Sean Rhodes
bd453f2b6f mb/starlabs/starlite_adl: Add generic Graphics driver config
This provides entries in the SSDT for all display devices, which
allows the kernel to enumerate them.

Change-Id: Ie3fe24be948b256b47eb8d48fd8a84d6daa2702f
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86742
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 17:03:05 +00:00
Ana Carolina Cabral
637c35cd67 mb/amd/birman_plus/ec: Rectify ECRAM register bits
Rectify wrong EC module RAM register bits
based on PI source code 1.0.0.1b

Change-Id: I1a13d99a55a4aa02a5cb0e67ffa4ed555f91a471
Signed-off-by: Ana Carolina Cabral <ana.cpmelo95@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86084
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
2025-03-11 15:36:51 +00:00
Jayvik Desai
27f3427f4a mb/google/fatcat/var/fatcat: Update GSPI0 CS pin for FPS
GPP_F18 is currently shared between the fingerprint sensor GSPI0-CS and
the touchpad THC1-INT.

This commit moves the FPS GSPI0-CS signal to GPP_E17, which is a GSPI-0
CS alternative option and moves the current GSPI0A-CS pin GPP_F18 to
not connected.

Schematic version dated march'25 has the rework details.

BUG=b:395147436
TEST=Build and boot google/fatcat. Able to fetch the FPS version using
`ectool --name=cros_fp version`

Change-Id: I1131962e9b6423bbf68fb92189b8910eab49645e
Signed-off-by: Jayvik Desai <jayvik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86702
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-11 07:55:55 +00:00
Yuval Peress
ec83019b50 mb/google/brya/var/trulo: Update ISH firmware name
Renames ish_fw.bin to trulo_ish.bin to prevent potential conflicts with
other Nissa projects. This aligns with the naming used in the
chromeos-zephyr-ish package.

BUG=b:397821047
TEST=Flash trulo, disassemble SSDT, search for trulo_ish.bin
BRANCH=none

Change-Id: I855ecc87ddb7b69c2c2c8e4287bd9d6ec2e2e991
Signed-off-by: Yuval Peress <peress@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86769
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-03-11 04:52:23 +00:00
Derek Huang
9b4b0eeda1 mb/google/rex/deku: Define TCSS port and EC port mapping
Deku design has a non-sequential mapping between CPU Type-C ports
and EC Typec-C ports. This patch maps the CPU Type-C port to the
correct EC Type-C port for the Intel re-timer driver.

BUG=b:399032094
TEST=Check the Type-C port and EC port mapping in coreboot log

deku-rev1 ~ # cbmem -c |grep "USB Type-C"
[INFO ]  USB Type-C 0 mapped to EC port 0
[INFO ]  USB Type-C 1 mapped to EC port 2
[INFO ]  USB Type-C 2 mapped to EC port 1
[INFO ]  USB Type-C 3 mapped to EC port 3

Change-Id: I80fa45a5f40d15c86087dca98bd0fb80a9121e50
Signed-off-by: Derek Huang <derekhuang@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86705
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-03-10 15:24:26 +00:00
Derek Huang
c5db254b12 drivers/intel/usb4: Move log message from SoC code to driver code
This patch moves the debug print which prints the mapping between CPU
Type-C port and EC Type-C port from SoC code to generic driver code.

BUG=b:399032094
TEST=Check the Type-C port and EC port mapping in coreboot log

Change-Id: Iaef5813cc825569a53feba975258f7d5fadecfab
Signed-off-by: Derek Huang <derekhuang@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86704
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 15:24:19 +00:00
Derek Huang
c53b3efa4e drivers/intel/usb4: Add parameter to explicitly define EC Type-C port
This patch adds the parameter which allows for custom port mapping
between CPU Type-C port and EC Type-C port to accommodate the
non-sequential mapping. Mainboard code must configure this parameter
if the CPU Type-C port to EC Type-C port mapping is not sequential.

BUG=b:399032094
TEST=build and verify TCSS port and EC port mapping

Change-Id: Id92f942e5c6b27342777b3e6fd12aff264ccec1b
Signed-off-by: Derek Huang <derekhuang@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86703
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 15:24:11 +00:00
Michał Żygowski
ba92b66454 soc/intel/common/block/graphics: Add missing TWL GT SKUs
IDs taken from ADL-N and TWL EDS Vol 1 Rev 2.5 doc #645548.

Change-Id: I53c41e17324cbb19c2150d986c538a11eb1140af
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86750
Reviewed-by: Michał Kopeć <michal.kopec@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 15:23:53 +00:00
Michał Kopeć
365947827a mb/novacustom/mtl-h/devicetree.cb: Enable pch_hda_audio_link_hda_enable
Now that pch_hda_audio_link_hda_enable is hooked up in soc code, enable
it in devicetree to enable the HDA audio link.

Change-Id: I3f902d9b994cb0aac75cda69476500ec7c47b763
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86696
Reviewed-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 15:23:26 +00:00
Michał Kopeć
59aa4cab1e ec/dasharo/ec: Gate options behind EC_DASHARO_EC
In CB:86109 it was reported that some options incorrectly don't depend
on EC_DASHARO_EC. Remove `depends on` from all options and instead put
everything behind an `if EC_DASHARO_EC` to ensure options don't cause
issues with boards not using Dasharo EC.

Change-Id: If6303bf7f155749bfcf9145fb93b018247350009
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86698
Reviewed-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 15:22:37 +00:00
Michał Kopeć
e30d99f994 mb/novacustom/mtl-h/devicetree.cb: Re-enable c-state auto-demotion
It was disabled while debugging S0ix issues during development.
Re-enable it now that S0ix is functional.

Change-Id: Ieab5229474ef93e96908b70e5986949b406fc0fa
Signed-off-by: Michał Kopeć <michal.kopec@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86693
Reviewed-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 15:22:08 +00:00
Masa Nakura
ae532fe641 payloads/libpayload: Add fast data types to types.h
libpayload stdint.h only supports typedefs for datatypes of exact
bits. This makes libpayload less flexible to support libraries
that reference different data types.

Add fast data types in types.h.

BUG=b:386913035

Change-Id: Ie9197866ae9b6c27d3f26c11d8409ecb90321c74
Signed-off-by: Masa Nakura <nakura@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86632
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Hsuan-ting Chen <roccochen@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 15:21:44 +00:00
Patrick Rudolph
97bf77e52e soc/amd/common/block/lpc: Limit ROM2 to 16MiB
Don't map more than 16MiB in ROM2 decode window when the SPI ROM
size is bigger than 16MiB.

TEST: amd/birman+ still boots with bigger SPI flash sizes.

Change-Id: Ie811f6a38363f2e900611b3f3f407a94d8137c89
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86582
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 15:21:04 +00:00
Jeremy Compostella
bfeef0cc45 soc/intel/pantherlake: Bind SoC config VR settings to respective UPD
This commit binds the cep_enable, enable_fast_vmode and
fast_vmode_i_trip voltage regulator SoC settings to the CepEnable,
EnableFastVmode and IccLimit UPDs respectively.

BUG=b:357011633
TEST=CepEnable, EnableFastVmode and IccLimit are set accordingly

Change-Id: Ie72e4725cb97b4af7843a43eeaedd687d28b6752
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85131
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Pranava Y N <pranavayn@google.com>
2025-03-10 15:20:48 +00:00
Michał Żygowski
940d1d0868 soc/intel/cannonlake: Let coreboot lock MSR_IA32_DEBUG_INTERFACE
Intel TXT requires the debug interface to be disabled. There is no
way to program the MSR_IA32_DEBUG_INTERFACE using FSP as needed, so
let coreboot handle it.

TEST=Boot Linux with tboot on Protectli VP4670 with Intel TXT enabled

Change-Id: I7ed4382bbe68f03e8eca151245c13928609f434f
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83730
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
2025-03-10 15:19:26 +00:00
Wisley Chen
4a84a1bd61 mb/google/brya/var/anahera: add memory NT6AP512T32BL-J1
Generate SPD id for Nanya memory NT6AP512T32BL-J1

BUG=b:401424949
TEST=run part_id_gen to generate SPD id

Change-Id: I4b207076b73a03059262e0244f5dd0ea24625ff0
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86763
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 15:18:17 +00:00
Wisley Chen
0349aecda0 mb/google/brya/var/redrix: add memory NT6AP512T32BL-J1
Generate SPD id for Nanya memory NT6AP512T32BL-J1

BUG=b:401659784
TEST=run part_id_gen to generate SPD id

Change-Id: I655590e43fcd9c3eb704d09edd6dcee51b635256
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86762
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-03-10 15:18:11 +00:00
Wisley Chen
c6754fe0af spd/lp4x: Add Nanya memory part
Add Nanya memory part NT6AP512T32BL-J1 in lp4 list.

BUG=b:401424949
TEST=util/spd_tools/bin/spd_gen spd/lp4x/memory_parts.json lp4x

Change-Id: I953c09c7d8d2cdd670187c5285ebedfcc66aa021
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86761
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 15:18:02 +00:00
Shuo Liu
5495f7fc15 MAINTAINERS: Add Shuo to x86 maintainer
Add Shuo to x86 maintainer to focus on x86 arch changes impacting
Xeon-SP.

Change-Id: Ia273f3d6fc1e4b13bd1f695976209a95adc03f60
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86760
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
2025-03-10 15:17:46 +00:00
Nicholas Sudsgaard
30c4e79294 util/lint: Add support for FreeBSD
Change-Id: I9f7ceb2233d5d68b6e6f57faeaa0253390e0e003
Signed-off-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86768
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
2025-03-10 15:17:36 +00:00
Matt DeVillier
8fb1f6513e soc/intel/cmn/block/cnvi: Add missing parenthesis in ASL code
It was accidentally deleted in a recent commit, but missed in review
since it is in a comment and not the actual acpigen code.

Change-Id: I0d28c2a67579a135e9002eaab9450353e8eec2d5
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86773
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
2025-03-10 15:17:19 +00:00
Patrick Rudolph
dbcfa67c28 device/pci_device: Move PCI Option ROM code into pci_rom.c
Move PCI Option ROM handling code into device/pci_rom.c as it's
already using a majority of functions within this file.

Change-Id: I50fc3bf45a1ab6572ab031b9e24ca2f882a13aad
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86733
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Ana Carolina Cabral <ana.cpmelo95@gmail.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2025-03-10 11:35:57 +00:00
Patrick Rudolph
d541890e76 device/pci_rom: Support non VGA iGPUs
Recent AMD iGPUs are not VGA compatible anymore, thus they don't
identify themself as "VGA compatible" anymore by the PCI class code.
Since the PCI VGA Option ROM code assumes it only runs on VGA
compatible devices, relax the ACPI code part to handle display devices
as well. In order to run a VBIOS in coreboot it still must be VGA
compatible, but for ACPI table generation, where no code is run, it's
not necessary any more.

The new code allows to use Linux's amdgpu driver on AMD/glinda.

TEST: On amd/birman+ the amdgpu kernel drivers starts and dmesg shows:
[    3.010224] [drm] amdgpu kernel modesetting enabled.

The coreboot log shows:

[INFO ]  CBFS: Found 'pci1002,150e.rom' @0x10a40 size 0x4400 in mcache @0x1b7dd184
[DEBUG]  In CBFS, ROM address for PCI: 00:02:00.0 = 0xff012a6c
[DEBUG]  Class Code mismatch ROM 00030000, dev 00038000
[DEBUG]  Copying non-VGA ROM image from 0xff012a6c to 0x000d0000, 0x4400 bytes
[...]
             Copying initialized VBIOS image from 0x000d0000
[DEBUG]  ACPI:    * VFCT at 1b5cb960

Change-Id: I623cd80b45b148b91f2796b22a589bbede0feeeb
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86386
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2025-03-10 11:27:18 +00:00
Patrick Rudolph
85e503e641 device/pci_rom: Keep track of VBIOS
Currently the VBIOS is placed somewhere in DRAM when necessary.
While generating ACPI tables the code attempts to find the VBIOS
by looking at "known" places.

Simplify the code and keep track of the VBIOS using a pointer in
struct device by filling it in pci_rom_load().

The following patches will reuse this pointer to generalize the
code even more.

Change-Id: Ib27d30e3b07740d6098d4f7a5c4f5d8bce976f00
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86385
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 11:27:13 +00:00
Patrick Rudolph
257375eb24 device/pci_rom: Update debug message
Do not assume that a VBIOS has been run when loaded below 1MiB.
On recent AMD platforms the VBIOS is loaded into the C/D-segment,
but it's not run as CONFIG_VGA_ROM_RUN is not set.

Since commit 5f5aa79 "device/pci_rom: Move VBIOS checksum fix" the
VBIOS has a valid checksum in ati_rom_acpi_fill_vfct(), thus it's
not possible to tell if it has been run or ATOMBIOS tables have
been modified.

Update the debug message to avoid confusion.

Change-Id: I63289ecf2c212f3d95e022e8c47dcd0ac610d970
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86732
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2025-03-10 11:25:55 +00:00
Sean Rhodes
89c7a5b766 mb/starlabs/*: Correct comments/use defs for sleep assertion
Correct the comments, and use the definations where available
for the sleep assertion values

Change-Id: Idfd382a166c8101b5d9a79bd18c40d6763c05e7b
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86753
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-03-10 09:04:30 +00:00
Arthur Heymans
b004ee591d soc/intel/xeon-sp/spr: Hook up public FSP bin and headers
vendorcode/intel/fsp/fsp2_0/sapphirerapids_sp/ is still needed due to
Intel FSP repo does not ship all header files.

TEST=Build and boot on intel/archercity CRB

Change-Id: I778d3535c273dff653330518653bdefcb45e66f4
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Signed-off-by: Jincheng Li <jincheng.li@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80360
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 08:08:48 +00:00
Felix Singer
7e8cf42fbb 3rdparty/fsp: Update submodule to upstream master
Updating from commit id 15c0f7b3f723:
2025-01-21 12:24:27 +0800 - (ECG ARL-S PV (4400_43) FSP)

to commit id 86c9111639d3:
2025-03-03 16:14:02 +0800 - (Edge Platforms RPL-P IPU 2025.2 (5402_02) FSP)

This brings in 19 new commits:
86c9111639d3 Edge Platforms RPL-P IPU 2025.2 (5402_02) FSP
85a0b8abf54c Edge Platforms RPL-S/RPL-S Refresh IPU 2025.2 (5402_02) FSP
9230a87a24bf Edge Platforms ADL-PS IPU 2025.2 (5402_02) FSP
39a1dab37cfb Edge Platforms ADL-S IPU 2025.2 (5402_01) FSP
c2aa77cde720 Merge branch 'master' of https://github.com/intel/FSP
508d8eb4bde8 Edge Platforms ADL-P IPU 2025.2 (5402_00) FSP
cdb5d570f5d8 Eagle Stream FSP (0115.D.05)
b4202af1b52e NEX TGL IPU 2025.2 (7021_05) FSP
99830941181e Update MemInfoHob.h
590d7f9bd8c7 IoT RPL-PS MR1 (5275_01) FSP
a92562452783 Merge branch 'master' of https://github.com/intel/FSP
6e84fc2ed0f6 IoT ADL-N MR6 (6023_00)
0acc6fac5bcc Update MemInfoHob.h
4b3e936c9701 Merge branch 'master' of https://github.com/intel/FSP
7207bafc8905 Elkhart Lake IPU2025.2 FSP
29e0f7ae5d26 ECG ARL-UH PV (4404_55) FSP
e369d3f2c21b ECG ARL-UH PV (4404_55) FSP
d746b5b93806 ECG ARL-S PV (4400_43) FSP
3ba9ffddac41 NEX AZB IPU 2025.2 (6033_00) FSP

Change-Id: I1e050bea8a8d625cfd842b6f008bf18ce6f66f84
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86744
Reviewed-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 08:08:27 +00:00
John Su
b78896348d ec/google/chromeec/acpi: Add support for Body Detect
The EC code will monitor Body to choose corresponding DPTF oem variable
table. When it changes, this event will send to the ACPI FW through host
event and then pass onto the DPTF kernel driver.

BUG=b:394177292
BRANCH=firmware-trulo-15217.771.B
TEST=emerge-nissa coreboot

Change-Id: I7ed72157d3480fca5fd1a58b5d9bc3e321f4a628
Signed-off-by: John Su <john_su@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86707
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 07:55:56 +00:00
John Su
68367ac69e mb/google/trulo/var/uldrenite: Support body detection to DPTF
Use DPTF_FEATURE_DYNAMIC_THERMAL_TABLE_SWITCH to support
body detection to DPTF on the Uldrenite.

BUG=b:394177292
BRANCH=firmware-trulo-15217.771.B
TEST=emerge-nissa coreboot

Change-Id: I6e98b9c3fd1b38d10a1aa7c30d5d92e1638449f2
Signed-off-by: John Su <john_su@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86494
Reviewed-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-10 07:55:42 +00:00
jamie_chen
c278be512b mb/google/trulo/var/uldrenite: Adjust Touchpad I2C timing
Adjust I2C/data fall Time to 13.5 ns and I2C data hold time to 353 ns

BUG=b:397150937
BRANCH=firmware-trulo-15217.771.B
TEST=Confirm the measured waveform of the Touchpad .

Change-Id: I16a9967f7e99892f2aa337ad9290252ab63a5b97
Signed-off-by: jamie_chen <jamie_chen@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86743
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-10 07:55:23 +00:00
Sowmya Aralguppe
c90315276e soc/intel/pantherlake: Decrease CRASHLOG_NODES_COUNT to 1
This patch changes child record count to 1 (i.e., compute die). The
number of crashlog agent/SRAM storage count is reduced in Crashlog
Discovery table (CRASHLOG_HEADER) for Panther Lake to 1 aka compute
die compared to MTL where crashlog units were compute die and GT die

source= 733648-LNLFAS-15.3.4,812562 PTL FAS 16.5.2 PTL
Dis-Aggreagation CrashLog

BUG=None
TEST=Build fatcat and verify the child record count

Change-Id: I209366d324c95b7a32afdcfb792c34d927a0508e
Signed-off-by: Sowmya Aralguppe <sowmya.aralguppe@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/85531
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-03-10 05:31:16 +00:00
Shuo Liu
98f3cf138e cbfstool: Fix the help text
The help text of cbfstool's memory map window assignment option
needs to be corrected to [--mmap flash-base:mmio-base:size] from
[--mmio flash-base:mmio-base:size].

P.S. The option --mmap was initially introduced by
commit 34a7e66faa ("util/cbfstool: Add a new mechanism to
provide a memory map").

Change-Id: I5f8224c8789e642fc68f6ae2242e8e7a7228c8de
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86639
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nicholas Chin <nic.c3.14@gmail.com>
2025-03-10 05:26:46 +00:00
Yidi Lin
2b131cc744 soc/mediatek/mt8196: Eliminate mt6685_hw.h and mt6685_rtc_hw.h
Utilize the constants in rtc_reg_common.h and rtc_common.h.

1. Maintain minimum defines in mt6685_rtc.h.
2. Remove mt6685_hw.h and mt6685_rtc_hw.h.
3. Remove redundant definitions.

The constains in mt6685_rtc.h are determined by below command,

aarch64-cros-linux-gnu-gcc -E src/soc/mediatek/mt8196/mt6685_rtc.c \
-I src/commonlib/bsd/include/ -I src/include/ \
-I src/commonlib/include/ -I src/soc/mediatek/mt8196/include/ \
-I src/soc/mediatek/common/include/ -I src/arch/arm64/include/armv8/ \
-I ./src/arch/arm64/include/

BRANCH=rauru
BUG=b:391067089
TEST=compare macro expansion result before and after applying the patch
TEST=boot to kernel without RTC error

Change-Id: I69ee165df6a1c9ea5853173f46f0aafc382153c1
Signed-off-by: Yidi Lin <yidilin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86264
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-03-10 04:04:59 +00:00
Angel Pons
5d291de601 haswell NRI: Do sense amplifier offset training
Quoting Wikipedia:

  A sense amplifier is a circuit that is used to amplify and detect
  small signals in electronic systems. It is commonly used in memory
  circuits, such as dynamic random access memory (DRAM), to read and
  amplify the weak signals stored in memory cells.

In this case, we're calibrating the sense amplifiers in the memory
controller. This training procedure uses a magic "sense amp offset
cancel" mode of the DDRIO to observe the sampled logic levels, and
sweeps Vref to find the low-high transition for each bit lane. The
procedure consists of two stages: the first stage centers per-byte
Vref (to ensure per-bit Vref offsets are as small as possible) and
the second stage centers per-bit Vref.

Because this procedure uses the "sense amp offset cancel" mode, it
does not rely on DRAM being trained. It is assumed that the memory
controller simply makes sense amp output levels observable via the
`DDR_DATA_TRAIN_FEEDBACK` register and that the memory bus is idle
during this training step (so the lane voltage is Vdd / 2).

Note: This procedure will need to be adapted for Broadwell because
it has per-rank per-bit RxVref registers, whereas Haswell only has
a single per-bit RxVref register for all ranks.

Change-Id: Ia07db68763f90e9701c8a376e01279ada8dbbe07
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/81948
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-08 22:55:39 +00:00
Angel Pons
b6d3af1361 haswell NRI: Implement fast boot path
When the memory configuration hasn't changed, there is no need to do
full memory training. Instead, boot firmware can use saved training
data to reinitialise the memory controller and memory.

Unlike native RAM init for other platforms, Haswell does not save the
main structure (the "mighty ctrl" struct) to flash. Instead, separate
structures define the data to be saved, which can be smaller than the
main structure.

This makes S3 suspend and resume work: RAM contents MUST be preserved
for a S3 resume to succeed, but RAM training destroys RAM contents.

Change-Id: I06f6cd39ceecdca104fae89159f28e85cf7ff4e6
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/81897
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
2025-03-08 22:55:32 +00:00
Angel Pons
a2f059c87e haswell NRI: Add final raminit steps
Implement the remaining raminit steps. Although many training steps are
missing, this is enough to boot on the Asrock B85M Pro4.

Change-Id: I94f3b65f0218d4da4fda4d84592dfd91f77f8f21
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/64198
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-03-08 22:54:35 +00:00
Angel Pons
174380c904 haswell NRI: Add write leveling
Implement JEDEC write leveling, which is done in two steps. The first
step uses the JEDEC procedure to do "fine" write leveling, i.e. align
the DQS phase to the clock signal. The second step performs a regular
read-write test to correct "coarse" cycle errors.

Change-Id: I27678523fe22c38173a688e2a4751c259a20f009
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/64197
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
2025-03-08 22:54:27 +00:00