Commit graph

50,957 commits

Author SHA1 Message Date
Nick Vaccaro
c5488c0d6d mb/google/ocelot/var/ocelot: update gpios
Update gpio configuration for GPP_A08, GPP_E17, and GPP_F18 to
match ocelot schematic.

Change GPP_H16 (WWAN_PWR_EN) to GPP_E01 (EN_WWAN_PWR) in fw_config.c.

Change GPP_V06 and GPP_V11 to "No Connect" as they are test points.

Change trace names from "SNDW3_" to "SDW3_" to match names on ocelot
schematic.

BUG=b:412736286
BRANCH=None
TEST=`emerge-ocelot coreboot` and verify it compiles without error.

Change-Id: I8996dc1b2b0f85490d55a86dc2ca6a90c1604638
Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87750
Reviewed-by: Pranava Y N <pranavayn@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-27 15:05:41 +00:00
Nick Vaccaro
6602a4462b mb/google/ocelot/var/ocelot: Enable hda device for AUDIO_ALC721_SNDW.
BUG=b:412736286
BRANCH=None
TEST=`emerge-ocelot coreboot` and verify it compiles without error.

Change-Id: I0c3d2c30af8839540a7c6d53dc11c83782b92d25
Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87751
Reviewed-by: Pranava Y N <pranavayn@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-27 15:05:32 +00:00
Vince Liu
99b6ff25d4 soc/mediatek/mt8189: Add MTK FSP loader in ramstage
To support the MTK firmware support package (FSP), reserve a 2MB region
in DRAM for loading `mtk_fsp_ramstage.elf` during ramstage.

BUG=b:379008996
BRANCH=none
TEST=build passed

Signed-off-by: Vince Liu <vince-wl.liu@mediatek.corp-partner.google.com>
Change-Id: If153d9746bea8c7faa8f9787029b44192c18899d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87813
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-05-27 05:22:26 +00:00
Vince Liu
c4fe5e2483 mb/google/skywalker: Pass reset GPIO parameter to BL31
Pass the reset GPIO parameter to BL31 to support SoC reset.

BUG=b:395795640
BRANCH=none
TEST=run reboot command in depthcharge

Signed-off-by: Vince Liu <vince-wl.liu@mediatek.corp-partner.google.com>
Change-Id: I87063d58d04ea6437195a59abab9c54f2da7eac0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87814
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
2025-05-27 02:23:06 +00:00
Frank Wu
f59ced2c7c mb/google/fatcat/var/francka: boot up by pressing power button in S5
Currently Francka cannot boot up immediately by pressing power button
when its power state is S5.
This patch fixes the power on process for this scenario.

BUG=b:419406610
BRANCH=none
TEST=Francka boots up immediately by pressing power button in S5.

Change-Id: I52fba7f58faa890955cd07728a6790520df29321
Signed-off-by: Frank Wu <frank_wu@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87807
Reviewed-by: Dtrain Hsu <dtrain_hsu@compal.corp-partner.google.com>
Reviewed-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-26 18:41:19 +00:00
Ian Feng
d9bd7ce89f mb/google/fatcat/var/francka: Enable audio codec ALC721
Enable Realtek ALC721 soundwire codec for francka.

BUG=b:417133565
TEST=Build and boot to OS in francka and SoundWire driver
probe successfully.

Output Devices:
	ID	MaxCha	LastOpen	Name
	13	0	UNK		sof-soundwire: :0,7
	12	0	UNK		sof-soundwire: :0,6
	11	0	UNK		sof-soundwire: :0,5
	8	2	UNK		sof-soundwire: :0,0
	7	2	UNK		sof-soundwire: :0,2
Output Nodes:
Stable Id	ID	Type		MaxCha Name
(8c7788a4)	13:0	HDMI            0 sof-soundwire HDMI/DP,pcm=7
(40acdf7f)	12:0	HDMI            0 sof-soundwire HDMI/DP,pcm=6
(742af104)	11:0	HDMI            0 sof-soundwire HDMI/DP,pcm=5
(db5babbe)	8:0	HEADPHONE       2 Headphone
(5c5b2998)	7:0    INTERNAL_SPEAKER 2*Speaker

Change-Id: I52890fb331f54c48a280a0e3210762a5c66c8bba
Signed-off-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87811
Reviewed-by: Jayvik Desai <jayvik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-26 18:39:52 +00:00
Ian Feng
48fbd99223 mb/google/fatcat/var/francka: Set the default HDA GPIO pin to an NC pin
This modification sets the HDA GPIO pin to NC by default.
Different audio configurations can be enabled via fw_config.

BUG=b:417133565
TEST=emerge-fatcat coreboot, HDA sound cards can be detected.

Change-Id: I0090a68d86de1067697d7efbb64c4638476c64ca
Signed-off-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87810
Reviewed-by: Pranava Y N <pranavayn@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-26 18:39:18 +00:00
Subrata Banik
3b975f92c7 soc/intel/pantherlake: Select TME support for the SoC
Enables CPU_SUPPORTS_INTEL_TME and TME_KEY_REGENERATION_ON_WARM_BOOT
for Panther Lake, providing hardware memory encryption capabilities.

TEST=Able to build and boot google/francka. Verified TME related
settings inside FSP are now enabled with this patch.

Change-Id: Iedc0d72d00e7e3c5b85916e2de4f020efd5ef024
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87801
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-05-26 16:51:50 +00:00
Subrata Banik
8408bd4863 soc/intel/pantherlake: Add TME configuration
This commit moves the TME configuration into its own static function,
`fill_tme_params`, which is then called from
`fill_fspm_security_params`.

The `TME_KEY_REGENERATION_ON_WARM_BOOT` option is now supported,
allowing a new TME key to be generated on warm reboots.

This feature leverages the `SOC_INTEL_COMMON_BASECODE_RAMTOP`
configuration to determine a memory exclusion range for the new key.

Additionally, disable the `BIOS Guard` UPD as part of security FSP
UPD configuration.

TEST=Able to build and boot google/fatcat. S0ix also works with this
patch.

Change-Id: I1030a25262f1c3c24cf9f4886718689ee2c8155e
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87808
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-26 16:51:44 +00:00
Subrata Banik
4c446751c6 {commonlib, drivers}: Track firmware splash screen rendering completion
This commit adds a new timestamp, `TS_FIRMWARE_SPLASH_RENDERED`
(ID 557), to precisely mark the moment the firmware splash screen has
finished displaying.

The timestamp is recorded in `src/drivers/intel/fsp2_0/silicon_init.c`
within the `do_silicon_init` function. It's conditionally added based on
the platform's configuration:

- For platforms using FSP's native BMP rendering (prior to FSP 2.2, with
  `CONFIG(BMP_LOGO)` and without
  `CONFIG(USE_COREBOOT_FOR_BMP_RENDERING)`).
- For platforms where coreboot handles BMP rendering (`CONFIG(BMP_LOGO)`
  and `CONFIG(USE_COREBOOT_FOR_BMP_RENDERING)`).

This enhancement provides better visibility into the boot process and
allows for more accurate performance analysis related to splash screen
display time.

BUG=b:418935715
TEST=Able to build and boot google/fatcat. Verified below details in
`cbmem -t`.

```
557:Firmware splash screen rendering finished    47,193,590 (2,235)
```

Change-Id: Ibef967dbc6e224741438e9708b42486ba03d0104
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87812
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-25 14:35:09 +00:00
Kapil Porwal
ccb8b34194 Revert "mb/var/uldrenite: Use VBT with limited resolution for 4GBx32 memory"
This reverts commit 3ecaf04dad.

Reason for revert: Build failure

```
make[2]: *** No rule to make target 'src/mainboard/google/brya/variants/uldrenite/data.vbt', needed by '/cb-build/coreboot-gerrit.0/gcc-chromeos/GOOGLE_ULDRENITE/coreboot.pre'.  Stop.
```

Change-Id: Ibc1c887c38950d22c91b0ecc76167c2ab7e6ae33
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87816
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-25 03:49:48 +00:00
Haikun Zhou
1a00629ae2 mb/google/skywalker: Set up open-drain ChromeOS pins
Set open-drain GPIOs for ChromeOS as input and bias-disable mode. Also
set AP_HDMI_RST_ODL to low, which is the only open-drain output pin.

BUG=b:397102113
BRANCH=none
TEST=build pass

Change-Id: I4375c25768de8f1462c491b2c84b9cf31f118126
Signed-off-by: Haikun Zhou <zhouhaikun5@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87796
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-24 17:08:15 +00:00
Zhigang Qin
0f2942b513 mb/google/skywalker: Raise little core CPU frequency to 2.0 GHz
Increase the CPU little core frequency from 1.6 GHz to 2.0 GHz to
speed up the boot process.

BUG=b:379008996
BRANCH=none
TEST=check little core cpu frequency is 2GHz in kernel by commands
clkdbg() { echo $@ > /proc/clkdbg ; cat /proc/clkdbg ; }
clkdbg fmeter

See the little core CPU frequency:
fm_armpll_ll_ck          	: 1999968

Signed-off-by: Zhigang Qin <zhigang.qin@mediatek.corp-partner.google.com>
Change-Id: I979f44e9340ea5bd733dc7f0fe47af47a4f403b7
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87795
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-24 17:08:08 +00:00
Vince Liu
0ba0d03140 mb/google/skywalker: Implement regulator interface
Control regulator more easily with regulator interface.

BUG=b:379008996
BRANCH=none
TEST=build passed.

Signed-off-by: Zhigang Qin <zhigang.qin@mediatek.corp-partner.google.com>
Change-Id: Ie7bfc9c3fb4e5f50cdf1ed8174366bdafaf3c49a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87794
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
2025-05-24 17:08:01 +00:00
Vince Liu
090bce1042 soc/mediatek/common: Add VMODEM and VSRAM_MD bucks support for MT6359
Add support for VMODEM and VSRAM_MD buck converters in MT6359. These
buck converters are required for MT8189 to adjust voltage and CPU
frequency.

BUG=b:379008996
BRANCH=none
TEST=build passed.

Signed-off-by: Zhigang Qin <zhigang.qin@mediatek.corp-partner.google.com>
Change-Id: Ifdf43748a139050ec9fba50f918e071dc622a670
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87799
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-05-24 17:07:54 +00:00
Wentao Qin
c74610afae soc/mediatek/mt8189: Shut down PMIC on power key long press
Currently on power key long press, PMIC will be reset. It would cause
an unwanted reset pulse in the power-off sequence. To match expected
sequence, change PMIC behavior to "force shutdown".

BUG=b:395848137
BRANCH=none
TEST=long-pressing power key doesn't trigger PMIC_AP_RST_L pulse

Change-Id: Ia8fb9f4a1ffe05955fca51a58468ba338ef8e12d
Signed-off-by: Haikun Zhou <zhouhaikun5@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87798
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-05-24 17:07:47 +00:00
Cong Yang
d1f7565403 mb/google/skywalker: Notify EC that AP is in S0
GPIO_AP_SUSPEND_L is supposed to be high in S0, and low in S3. EC uses
this pin to determine the AP power state. This pin should be set as
early as possible in bootblock.

BUG=b:396030112
BRANCH=none
TEST=reboot pass. `powerinfo` shows S0 in EC console.

Change-Id: Ib7e9eaa19d232a37b3793bcbe268ba021e456ac7
Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87793
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
2025-05-24 17:07:40 +00:00
Kyösti Mälkki
cdcbb71936 mb/google/link: Use chromeec_smi_sleep()
SMI handler previously did not evaluate input slp_typ parameter and
apparently always acted as S3 was requested.

With the change keyboard is no longer a wakeup source from S4/S5, it is assumed MAINBOARD_EC_S5_WAKE attribute defined in ec.h is correct.

Change-Id: I54c7d7455a6737f731c65e57c91b6457643c7cb2
Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/74603
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Boris Mittelberg <bmbm@google.com>
2025-05-23 17:20:01 +00:00
Matt DeVillier
885aacf004 mb/google/byra/var/teliks: Add VBT for 11" panel option
Extracted from coreboot-Google_Teliks.15217.734.0.bin

Change-Id: I2c6b00ab0fc67b651256ec32d4d983b987435010
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87557
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:53:43 +00:00
Matt DeVillier
2ce777f178 mb/google/byra/var/yaviks: Add VBT for yavilla
Extracted from coreboot-Google_Yaviks.15217.552.0.bin

TEST=build/boot yaviks/yavilla variant with working display.

Change-Id: I775baf4216eef2a60bc1ac034cef3c5c7c38ea69
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87556
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2025-05-23 16:53:37 +00:00
Matt DeVillier
0db4444446 mb/google/byra/var/pujjo: Add VBT for pujjo1e
Extracted from coreboot-Google_Pujjo.15217.460.0.bin.

TEST=build/boot pujjo1e variant with working display.

Change-Id: I82425bdbbba93197fb7b6f7a866412dc49066cdf
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87555
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Eric Lai <ericllai@google.com>
2025-05-23 16:53:32 +00:00
Zhongtian Wu
8c3e6ea319 mb/google/nissa/var/pujjocento: Enable touchpad
Enable touchpad FTCS1000/GXTP5100/ELAN06FA for pujjocento.

BUG=b:417106542
BRANCH=none
TEST=Build and boot to pujjocento. Verify touchpad works.

Change-Id: I4c8cfdf9931282f366809b79198ec69c753b9814
Signed-off-by: Zhongtian Wu <wuzhongtian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87711
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
2025-05-23 16:53:07 +00:00
Zhongtian Wu
643bba345c mb/google/trulo/var/pujjocento: Enable touchscreen
Enable ELAN901C\PARA3406\PARA3408 touchscreen for pujjocento.

BUG=b:417106542
BRANCH=none
TEST=Build and boot to pujjocento. Verify touchscreen works.

Change-Id: I10b3234fc1656150c24750837f115e227221e039
Signed-off-by: Zhongtian Wu <wuzhongtian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87710
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:53:01 +00:00
John Su
3ecaf04dad mb/var/uldrenite: Use VBT with limited resolution for 4GBx32 memory
To have the best usage case on 4GBx32 memory sku, the external display
resolution must not exceed 2560x1700. So use the GPP_E13 signal level
to determine x32 memory configuration and apply the corresponding VBT
accordingly.

BUG=b:415850768
TEST=Check the log for the string "Use vbt-uldrenite_x32mem.bin"

Cq-Depend: chrome-internal:8258325
Change-Id: I82a7415b4c99de9278e04f07a9efb0dfa0bf753d
Signed-off-by: John Su <john_su@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87654
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:52:26 +00:00
Matt DeVillier
71ae2c7366 mb/google/octopus: Add VBTs for DOOD and FOOB variants
These variants were missing VBTs necessary for display init, so add
them. VBT files taken from the stock firmware images:
coreboot-Google_Dood.11297.368.0.bin
coreboot-Google_Foob.11297-169.0.bin

Since all variants other than the baseboard have VBTs, move the
selection of INTEL_GMA_HAVE_VBT to the baseboard and exclude the
octopus board.

TEST=build/boot various ocotpus variants, including dood/foob.

Change-Id: I67655b149de40e3e7f83971780f62cd7fce820c8
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87774
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:52:13 +00:00
Matt DeVillier
7a703fc1fb mb/google/rex: Select IOM_ACPI_DEVICE_VISIBLE
Needed for coolstar's IOM/TCSS drivers under Windows.

TEST=build/boot Win11 on google/screebo

Change-Id: Ib5a288d9b5d259c27f3b3b2b1b7b86e9c0e1f491
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86822
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2025-05-23 16:52:05 +00:00
Matt DeVillier
0121d0e3e0 ec/google/chromeec/smi: Clear events before enabling wake mask
On some older platforms (eg, google/link), setting the wake mask
before clearing the pending events will result in an immediate
wake from S3 sleep, so swap the ordering to ensure that doesn't
happen.

TEST=build/boot google/link, verify S3 sleep works properly.

Change-Id: I483dcfabd37a1f55fd0e56eed895f5b813f018d7
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87576
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Caveh Jalali <caveh@chromium.org>
2025-05-23 16:51:27 +00:00
Matt DeVillier
5a947da94e mb/google/sarien: Update VBT from v221 to v228
Update VBTs for both sarien and arcada variants from v221 to v228.
The current public CFL FSP uses/expects v228, and the older v221
causes a 180* rotation of the display at boot. Updating the VBT
to v228 fixes the issue. Also disable the fixed mode at boot
setting, so that the native panel resolution can be used by
the payload.

Settings were exported from the v221 VBTs using the Intel BMP tool,
and imported/applied to the sample VBT provided in the FSP repo.

TEST=build/boot google sarien w/edk2 payload, verify screen orientation
correct and native panel resolution used.

Change-Id: Ib6669fc535a197f961abdfcd10616c97a0573df2
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87619
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:51:15 +00:00
Dinesh Gehlot
0fba735482 soc/intel/cmn/blk: Refactor CSE status flag and optimize forced sync
This patch enhances the forced CSE sync mechanism by eliminating the
boot partition check for RO. It uses the persistent CMOS flags to
preserve the forced CSE update status across boots.

This patch also replaces the CSE status boolean variable with a bit
field to optimize CMOS memory utilization. Consequently, the remaining
bits can potentially be utilized for additional CSE states in future.

BUG=b:380220737
TEST=Verified forced CSE sync on google/rex0.

Change-Id: If1e4180cb5fec3990fdee2b0e412173b1c8c6ded
Signed-off-by: Dinesh Gehlot <digehlot@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86153
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 16:51:07 +00:00
Bartłomiej Grzesik
bb8d069dd3 vc/google/chromeos: Move pvmfw cbmem and enable
This change moves pvmfw cbmem implementation to chromeos directory and
under CHROMEOS kconfig. The kconfigs have been renamed accordingly and
with this change CHROMEOS_PVMFW_CBMEM is enabled by default for
CHROMEOS.

BUG=b:410735713
TEST=The build with CONFIG_CHROMEOS=y allocates buffer for pvmfw, the
depthcharge adds the location and size of the buffer to the kernel
command line

Change-Id: I024f21ceee1334ebd7ae9bf1b897ad670ddc9ef9
Signed-off-by: Bartłomiej Grzesik <bgrzesik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87763
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 15:41:02 +00:00
Kun Liu
f562992da1 mb/google/trulo/var/pujjocento: Enable EC keyboard backlight
Enable EC keyboard backlight for pujjocento.

BUG=b:417141058
TEST=emerge-nissa coreboot chromeos-bootimage

Change-Id: Ibaffd70fc04cb7a42543684d2edaf1d3a5c2f4f6
Signed-off-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87770
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jayvik Desai <jayvik@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-23 14:01:13 +00:00
Kun Liu
d281a3c559 mb/google/trulo/var/pujjocento: Configure tcss_aux_ori
Resolve the issue that DP can only display on one side.

BUG=b:416842915
BRANCH=none
TEST=Build and boot to pujjocento. Verify typec works.

Change-Id: I55f2f28a0bdb052cafa05a98f51c8483fb343b8c
Signed-off-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87757
Reviewed-by: Derek Huang <derekhuang@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-23 14:01:03 +00:00
Wentao Qin
7150c5e2fe mb/google/skywalker: Create variant Anakin
Create the variant Anakin.

BUG=b:419419679
TEST=emerge-skywalker coreboot
BRANCH=None

Change-Id: I1f53b6a307934e6a1c58ee21dd0275c6a632e726
Signed-off-by: Wentao Qin <qinwentao@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87797
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yang Wu <wuyang5@huaqin.corp-partner.google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-05-23 05:06:11 +00:00
Wentao Qin
bcbe17dea3 mb/google/skywalker: Configure TPM
Initialize I2C bus 3 for TPM control and enable vboot secdata.

BUG=b:395723580
BRANCH=none
TEST=check boot log

Change-Id: I34da1a494e71bdaac0223d1db918fffe12f68df4
Signed-off-by: Wentao Qin <qinwentao@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87772
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-22 15:20:19 +00:00
Wentao Qin
3d40b7d018 soc/mediatek/mt8189: Increase bootblock size from 60KB to 70KB
Increase the bootblock size to support TPM.

BUG=b:395784036
BRANCH=none
TEST=Build pass

Change-Id: Ieabb30b0458f6275bda14602126e0ccabbd7a714
Signed-off-by: Wentao Qin <qinwentao@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87771
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-05-22 15:20:13 +00:00
hailong.fan
8d25cf3ae7 soc/mediatek/mt8189: Add SSPM loader
Secure System Power Manager (SSPM) provides power control in secure
domain. The initialization flow is to load SSPM firmware to its SRAM
space and then enable it. It takes 19 ms to load sspm.bin.

coreboot logs:
CBFS: Found 'sspm.bin' @0x26740 size 0x645b in mcache @0xfffdd1ec
mtk_init_mcu: Loaded (and reset) sspm.bin in 19 msecs (59392 bytes)

BUG=b:379008996
BRANCH=none
TEST=build pass and see SSPM firmware loading log

Signed-off-by: Hailong Fan <hailong.fan@mediatek.corp-partner.google.com>
Change-Id: I9be0e7ee3d003b5ee9e07e4f136795755a11c5bc
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87761
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-22 15:19:35 +00:00
Zeroway Lin
8ab9f56470 mb/google/skywalker: Set up SPM in mainboard
Enable SPM booting process in mainboard.

BUG=b:379008996
BRANCH=none
TEST=build pass, spm init log:
[INFO ]  CBFS: Found 'spm_firmware.pm' @0x197c0 size
0x2e56 in mcache @0xffffeb20
[DEBUG]  read SPI 0x41b7f8 0x2e56: 1793 us, 6615 KB/s,
52.920 Mbps
[DEBUG]  SPM: binary array size = 0xdd3
[DEBUG]  spm_kick_im_to_fetch: ptr = 0x4900001e
[DEBUG]  mtk_init_mcu: Loaded (and reset) spm_firmware.pm
in 39 msecs (14224 bytes)

Signed-off-by: Zeroway Lin <zeroway.lin@mediatek.corp-partner.google.com>
Change-Id: Ie49cf0aea8bfaf507fff3cb8a8fc550634f83cbd
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87760
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
2025-05-22 15:19:19 +00:00
Justin Yeh
368eeb7da4 soc/mediatek/mt8189: Add MCUPM loader
Add MCUPM loader for mt8189.

It takes 36 ms to load mcupm.bin.

coreboot logs:
CBFS: Found 'mcupm.bin' @0x10d00 size 0x7fd6 in mcache @0xffffeb20
mtk_init_mcu: Loaded (and reset) mcupm.bin in 36 msecs (84124 bytes)

BUG=b:379008996
BRANCH=none
TEST=build pass and we can see the mcupm logs after reset releases.

Signed-off-by: Justin Yeh <justin.yeh@mediatek.corp-partner.google.com>
Change-Id: I4f3a4eb63d801df123e45f46fc715c39d858c377
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87758
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
2025-05-22 15:19:11 +00:00
Zeroway Lin
bc3af56fdd soc/mediatek/mt8189: Add SPM loader
Add support for loading SPM firmware from CBFS to SPM SRAM. SPM needs
its own firmware to enable SPM suspend/resume function which turns off
several resources such as DRAM/mainpll/26M clk when linux system
suspend.

coreboot log:
[INFO ]  CBFS: Found 'spm_firmware.pm' @0x197c0
size 0x2e56 in mcache @0xffffeb20
[DEBUG]  read SPI 0x41b7f8 0x2e56: 1793 us, 6615 KB/s,
52.920 Mbps
[DEBUG]  SPM: binary array size = 0xdd3
[DEBUG]  spm_kick_im_to_fetch: ptr = 0x4900001e
[DEBUG]  mtk_init_mcu: Loaded (and reset) spm_firmware.pm
 in 39 msecs (14224 bytes)

BUG=b:379008996
BRANCH=none
TEST=build pass

Signed-off-by: Zeroway Lin <zeroway.lin@mediatek.corp-partner.google.com>
Change-Id: Ia6731efbdf161353af537f3266edb578516fa92d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87759
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-22 15:18:58 +00:00
Ivy Jian
98782a59e9 mb/google/fatcat/var/kinmen: Add overridetree
Add override devicetree per schematic_20250520_v25.

BUG=b:409148565
TEST=emerge-fatcat coreboot

Change-Id: I05a89047331731321eae386076c6e4c2473d1a82
Signed-off-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87768
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-22 14:16:36 +00:00
Ivy Jian
bbcb222f0b mb/google/fatcat/var/kinmen: Update GPIO table
Configure GPIOs and related settings per schematic_20250520_v25.

BUG=b:409148565
TEST=emerge-fatcat coreboot

Change-Id: Ib18560de601b98f3b8f45adab5d81686ea236ac9
Signed-off-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87767
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-05-22 14:16:29 +00:00
Simon Yang
743e3a07f5 mb/google/brya/var/nissa: Remove duplicate ACPI device GFX0
Per discussion in CB:87660, this is another approach to fix duplicate
ACPI device GFX0.

The following GFX ACPI device is already declared in nissa/devicetree
by CB:83071, it declare a ACPI gfx device as below:

	device ref igpu on
		register "panel_cfg" = "{
		    .up_delay_ms = 200,
		    .down_delay_ms = 50,
		    .cycle_delay_ms = 500,
		    .backlight_on_delay_ms = 1,
		    .backlight_off_delay_ms = 200,
		    .backlight_pwm_hz = 200,
		}"
		register "gfx" = "GMA_DEFAULT_PANEL(0)"
	end

It will generate an ACPI \_SB.PCI0.GFX0 device.

However, some Nissa projects re-select DRIVERS_GFX_GENERIC in their
overridetree, which results in the generation of a second
\_SB.PCI0.GFX0. This duplication causes iasl to fail when disassembling
the SSDT table.

Error message from iasl:

	File appears to be binary: found 7485 non-ASCII characters, disassembling
	Binary file appears to be a valid ACPI table, disassembling
	Input file SSDT, Length 0x4A03 (18947) bytes
	ACPI: SSDT 0x0000000000000000 004A03 (v02 COREv4 COREBOOT 00000000 CORE 20230628)
	Pass 1 parse of [SSDT]
	Firmware Error (ACPI): Failure creating named object [\_SB.PCI0.GFX0._DOD], AE_ALREADY_EXISTS (20200925/dswload-387)
	ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20200925/psobject-264)
	Could not parse ACPI tables, AE_ALREADY_EXISTS

BUG=none
TEST=disassembling SSDT on pujjoniru successfully

Change-Id: I16e9875c12b4e8e42214da5972bed6a02c5567f4
Signed-off-by: Simon Yang <simon1.yang@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87745
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2025-05-22 14:16:21 +00:00
Yidi Lin
87110309d4 mt8196: Remove mcupm_plat.h header from mcupm_plat.h
A header file should not include itself.

BUG=none
TEST=none

Change-Id: I093396c9f848b3e82842d048e8e0d718971df11f
Signed-off-by: Yidi Lin <yidilin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87775
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-22 07:54:20 +00:00
P, Usha
d6fe379e9c mb/google/ocelot: Enable LP5 and DDR5 memory configuration
This commit introduces support for LP5 and DDR5 memory configurations
on ocelot. It adds board IDs for ocelot and integrates new memory
settings within the variant parameters. The new memory configuration
includes settings related to early command training and LP5/DDR5
specific training parameters.

LP5 memory configuration includes detailed DQ and DQS mapping for
different DDR channels. This facilitates accurate routing of signals
and initialization of memory. Additionally, SPD information retrieval
is adapted to accommodate DDR5-specific settings, such as DIMM module
topology and SMBus addresses.

BUG=b:394208231
TEST=Build Ocelot and verify it compiles without any error.

Change-Id: I828b1944d5a0d7f58aa8f545d567b1bb1b0da5ae
Signed-off-by: P, Usha <usha.p@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87684
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-22 02:22:56 +00:00
lizheng
2985af84c3 mb/google/trulo/var/pujjocento: Add Fn key scancode
The Fn key on pujjocento emits a scancode of 94 (0x5e).

BUG=b:417141058
TEST=Flash Pujjocento, boot to Linux kernel, and verify that KEY_FN is
generated when pressed using `evtest`.

Change-Id: If8ad29fccbd7c088ee793f3261df0b0999f25765
Signed-off-by: lizheng <lizheng@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87752
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-05-22 02:06:32 +00:00
Ivy Jian
dafd7d6eb9 mb/google/nissa/var/dirks: Deassert RTL8111H's ISOLATE_ODL earlier
RTL8111 was occasionally not detected after reboot. This change
moves the configuration of the ISOLATE_ODL pin to high earlier
in the sequence to ensure the device is properly visible during
PCIe bus enumeration.

BUG=b:407469351
TEST=Verified that the Ethernet NIC is enumerated after reboot.

before:
[DEBUG]  PCI: 00:1c.0 scanning...
[SPEW ]  do_pci_scan_bridge for PCI: 00:1c.0
[DEBUG]  PCI: pci_scan_bus for bus 01
[INFO ]  PCI: Static device PCI: 01:00.0 not found, disabling it.
[DEBUG]  GENERIC: 0.0 enabled
[WARN ]  PCI: Leftover static devices:
[WARN ]  PCI: 01:00.0
[WARN ]  PCI: Check your devicetree.cb.
[DEBUG]  scan_bus: bus PCI: 00:1c.0 finished in 34 msecs

after:
[DEBUG]  PCI: 00:1c.0 scanning...
[SPEW ]  do_pci_scan_bridge for PCI: 00:1c.0
[DEBUG]  PCI: pci_scan_bus for bus 01
[SPEW ]  PCI: 01:00.0 [10ec/0000] ops
[DEBUG]  PCI: 01:00.0 [10ec/8168] enabled
[DEBUG]  GENERIC: 0.0 enabled
[INFO ]  Enabling Common Clock Configuration
[INFO ]  L1 Sub-State supported from root port 28
[INFO ]  L1 Sub-State Support = 0xf
[INFO ]  CommonModeRestoreTime = 0x96
[INFO ]  Power On Value = 0xf, Power On Scale = 0x1
[INFO ]  ASPM: Enabled L1
[INFO ]  PCIe: Max_Payload_Size adjusted to 128
[INFO ]  PCI: 01:00.0: Enabled LTR
[INFO ]  PCI: 01:00.0: Programmed LTR max latencies
[DEBUG]  scan_bus: bus PCI: 00:1c.0 finished in 68 msecs

Change-Id: Idc0eb453c342828e0e8886ca5cacea8d7efcc437
Signed-off-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87734
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: David Wu <david_wu@quanta.corp-partner.google.com>
2025-05-21 17:19:43 +00:00
Werner Zeh
c1df30db18 mb/siemens/mc_rpl: Delete fw_config since it is not used
The FW_CONFIG feature is not used on mc_rpl. Delete the related source
file and the reference to it in Makefile.

Change-Id: Ifec1efc239801205f1aec2095082c8f744f84a55
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87672
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-05-21 17:19:25 +00:00
Werner Zeh
7fbea3175d mb/siemens/mc_rpl: Remove unused gpio and devicetree files
Since this board comes with a fixed SoC (Raptor Lake with ADL-P PCH),
there is no need to have multiple different gpio configuration files and
devicetree files. This patch deletes the unneeded files and adopts
Makefile.mk to not use them.

Change-Id: Iced9d695e3f21dec260795bb651109ff9b2beb59
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87671
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-05-21 17:19:19 +00:00
Werner Zeh
8fdf8694e3 mb/siemens/mc_rpl: Remove Chrome OS and EC as they are not used
This mainboard neither uses Chrome OS nor has any embedded controller
available. This patch removes all references from the build in this
regard. This also requires some refactoring in board_id.c.

Change-Id: If834480fbdac4b4843c265a257d3a77678f56aab
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87666
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-05-21 17:19:14 +00:00
Werner Zeh
e020979993 mb/siemens/mc_rpl: Adjust the flash map file
Rename chromeos.fmd to mc_rpl.fmd and adjust the flash layout settings
to match the needs of this board. There is e.g. no A/B scheme used and
CSME stitching is done externally, therefore no detailed CSME partitions
are required at all.

Change-Id: I6389960d816c5f1a4690a965961301d3797305ff
Signed-off-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87665
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-05-21 17:19:09 +00:00