Commit Graph

49461 Commits

Author SHA1 Message Date
Sean Rhodes a0f3b86e13 mb/starlabs/lite/glkr: Enable configuring Fast Charging on the Lite Mk IV
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I714867d455c4e0d01d6cb1cb9dc64669fb41100c
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66319
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-10-06 18:17:25 +00:00
Sean Rhodes 8de7c01e8b ec/starlabs/merlin: Add support for enabling fast charge
The Lite Mk IV's can enable fast charging, with support up to 100W
via USB-C PD 3.0.

The default for this is disabled, as it can reduce battery life
span. This patch adds the option to enable fast charging, by
writing 0x01 to 0x18 in the EC space.

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: Ie01eb59d3f41b242190973fd9c58b1494320c12a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66298
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-10-06 18:17:01 +00:00
Sean Rhodes 47ee85f4d5 mb/starlabs/lite: Add variant specific cmos.layout and cmos.default
Add variant specific cmos files, which avoid options like "FastCharge"
existing in platforms that don't support such options.

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I04264cf72d47ef719acfd144d8bf9acb0ceccc11
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66297
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-10-06 18:15:53 +00:00
Sean Rhodes 976ca5e477 mb/starlabs/starbook: Add variant specific cmos.layout and cmos.default
Add variant specific cmos files, which avoid options like "Thunderbolt"
existing in platforms that don't support such options.

This change also removes entries that were never used, including:
* smi_handler
* usb_always_on

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: I359e5c5bbf29eb474f2d3bc42a8e80afc0a5d38a
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66296
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2022-10-06 18:15:25 +00:00
Elyes Haouas 33e2b923e9 sb/intel/common/gpio.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Iba746431496b30daba098716337b688314eac283
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68081
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:14:45 +00:00
Elyes Haouas b6ad6b66a8 sb/intel/i82801gx/bootblock.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I61d4a188dc9526b71277c05dd317255fc9727414
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68080
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:14:32 +00:00
Elyes Haouas f360006454 sb/intel/i82801gx/early_init.c: Include common/rcba.h
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I5d9bc4ae942ba171a5d3ef4f77da69398fbac692
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68079
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:14:17 +00:00
Elyes Haouas d8cd835c4a lib/prog_loaders.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I00e9636fa49c402f38119ba0bfc85c8c193fec12
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68052
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:13:30 +00:00
Elyes Haouas 1dc827a1d9 lib/prog_ops.c: Add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Ibacf704d362eecea3f7216ffcb02c2ef6f9a6d8f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68051
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:13:19 +00:00
Elyes Haouas 072c99a0df nb/intel/i945/memmap.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Ie5d7d1dd446428d12a2f904545682e8fb9cd82f9
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68050
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:13:05 +00:00
Elyes Haouas 89d9bf900f sb/intel/common/pmbase.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Ie23472d45c8232f5c907ec1757a648fa1a27d533
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68049
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:12:56 +00:00
Elyes Haouas ddd43de586 sb/intel/common/rtc.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Ibcd61e44f8e165627851e2c5325985f0765634b6
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68048
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 18:12:46 +00:00
Elyes Haouas 606f4f6c2d sb/intel/common/early_smbus.h: Add <device/pci_type.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: Icf459f07948cd29eb251b49fcecefb98c5f5f259
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68047
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
2022-10-06 17:02:21 +00:00
Elyes Haouas 07ad894195 security/memory/memory.h: Add <stdbool.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I908445b9f87b3db90527955116db22bbee674e1f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68046
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
2022-10-06 17:01:52 +00:00
Elyes Haouas 7132b62413 nb/intel/i945/rcven.c: Sort includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I360e4f8ed3b87225a09c7cbb761c570a579771cf
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68045
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:01:25 +00:00
Elyes Haouas 4114fdc9a8 nb/intel/i945/raminit.c: Clean up includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I94a81a30950cca6be5ba36a25f8bc6f87c2aad2f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68044
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:01:15 +00:00
Elyes Haouas ecb5e2db52 device/device_const.c: Clean up includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I7e84760566db5da7ff88dcbe9fb028ebcb390bdc
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68043
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:01:06 +00:00
Elyes Haouas 9fd53fdb04 cpu/x86/pae/pgtbl.c: Clean up includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I0ab39ff20b0fb59026063e064e20ce901c2985fe
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68042
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:57 +00:00
Elyes Haouas 7b7b8e48d8 cpu/intel/common/fsb.c: Sorte includes and add <stdint.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I9b85836ac21da5b885a97f05e3973fb23a052fd5
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68041
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:47 +00:00
Elyes Haouas 7df5c68689 cpu/intel/car/romstage.c: Clean up includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I84639389ac1066468b82bb13d684e5423b909fcb
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68040
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:35 +00:00
Elyes Haouas 419c5785c5 console/vtxprintf.c: Add <stdarg.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I221a2bdb19cc7d17265c69d3fe3e1dfb490e7186
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68039
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:25 +00:00
Elyes Haouas 9483001e72 console/printk.c: Add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I55412395071f0fccb839c40fefda998befaddebb
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68037
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:15 +00:00
Elyes Haouas 89822add55 console/die.c: Add <stdarg.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I2ee8ef017d8a3409cbf47f1ed252a512dead224e
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68036
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 17:00:04 +00:00
Elyes Haouas a1f245ca53 console/console.c: Sort includes and add <types.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I1d2d85ff8cfca58295117b5cb625cadfc9008311
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68035
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:59:54 +00:00
Elyes Haouas 6f0531cc3a arch/x86/timestamp.c: Add missing <stdint.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I6870fb9f3d41ef5dc6599e979ce0c890a1e145ab
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68034
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:59:32 +00:00
Elyes Haouas f0b28d8d89 arch/x86/mmap_boot.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I85e60c189c1ec1da5cf0e5b864447ef6f7b3f548
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68033
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:59:22 +00:00
Elyes Haouas afc5f9b8b2 cpu/x86/smm/smm_module_loader.c: Clean up includes
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I36c54e62797e67c1732f8deaf8843daf35610e22
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68032
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:59:10 +00:00
Elyes Haouas 69c02b0cd8 cpu/x86/mtrr/mtrr.c: Add missing <stdbool.h>
Remove <stdint.h>, <stddef.h> and add <stdbool.h>. All of them are
included through <types.h>.

Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: If5296988c68302896e3676d7b80d0f133d5d4264
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68031
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:59:00 +00:00
Elyes Haouas 0932435a02 console/vsprintf.c: Add <stdarg.h>
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Change-Id: I8c61f2a033f9630d3fa3eb5e364e6f38de5c7064
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68038
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2022-10-06 16:58:21 +00:00
Shelley Chen 4b5ba94363 soc/qualcomm: Update the wait time for checking PCIe link up
Currently, after the PCIe link is initialized, we wait 100ms every
time the link is not up anymore.  However, this causes significant
delay.  Assuming the first check is false, we'd like to increase the
frequency of checks for the link to be up.  Changing to check every
10ms instead.  This seems to save about 90ms in the device
configuration stage of bootup on herobrine.

BUG=b:218406702
BRANCH=None
TEST=reboot from AP console (on herobrine)
     prior to fix (from cbmem dump):
         40:device configuration 919,391 (202,861)
     after fix (from cbmem dump):
         40:device configuration 826,294 (112,729)

Change-Id: Ic67e7207c1e9f589b34705dc24f5d1ea423e2d56
Signed-off-by: Shelley Chen <shchen@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67884
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Reviewed-by: mturney mturney <quic_mturney@quicinc.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
2022-10-06 16:55:48 +00:00
Michał Żygowski 9baffae485 soc/intel/cmn/gfx: Add missing CML-U IGD device IDs
Intel Core i5-10210U can have the following IGD Device IDs
0x9B21/0x9B41/0x9BAC/0x9BCA/0x9BCC according to Intel ARK. Some of
these IDs were not present in coreboot source nor hooked to the
common graphics driver. Add the missing IDs so that the graphics
driver will probe on the mentioned processor and detect the
framebuffer.

TEST=Boot Protectli VP4650 with i5-10210U and see framebuffer is
detected when using FSP GOP and libgfxinit.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Iee720a272367aead31c8c8fa712bade1b6e53948
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67975
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-06 09:24:54 +00:00
Felix Singer 1538d15e5c ec/lenovo/h8/acpi: Fix wrongly used operator
Commit 37a89d519d ("ec/lenovo/h8/acpi: Replace Not() with ASL 2.0
syntax") mixed up boolean and bit-wise operators while replacing Not()
with ASL 2.0 syntax. Thus, fix that.

Built dsdt.aml of lenovo/x230 and differs, but it remains the same when
this commit is applied after commit 37a89d519d.

Change-Id: Ifa848aafb5480acaac4fabffcf90a3dbf5248e43
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/66380
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-05 22:59:34 +00:00
Nick Vaccaro d8994f8d2a mb/google/brya/var/brya0: use RPL FSP headers
To support an RPL SKU on brya0, brya0 must use the FSP for RPL.

Select SOC_INTEL_RAPTORLAKE for brya0 so that it will use the RPL
FSP headers for brya0.

BUG=b:248126749
BRANCH=firmware-brya-14505.B
TEST=cherry-pick Cq-Depends, then "emerge-brya intel-rplfsp
coreboot-private-files-baseboard-brya coreboot chromeos-bootimage",
flash and boot brya0 to kernel.

Cq-Depend: chromium:3893035, chrome-internal:4983198
Change-Id: I2dd84757532d734ad97b74ba960537d937fb313e
Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68094
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: YH Lin <yueherngl@google.com>
Reviewed-by: Bora Guvendik <bora.guvendik@intel.com>
2022-10-05 19:09:05 +00:00
Nick Vaccaro 0c84a9982b mb/google/brya/var/brya0: add new THERMAL FW_CONFIG field
Add a new THERMAL FW_CONFIG bitfield for describing power consumption
category of SoC.

BUG=b:250089101
TEST="emerge-brya coreboot chromeos-bootimage", flash and boot brya0
and skolas to kernel.

Change-Id: Iba3bd87abd4c112ceff4bbe51a7cf9eae3a694f2
Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68025
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Sumeet R Pawnikar <sumeet.r.pawnikar@intel.com>
Reviewed-by: YH Lin <yueherngl@google.com>
Reviewed-by: Tarun Tuli <taruntuli@google.com>
2022-10-05 19:08:55 +00:00
Nick Vaccaro 01ab9b11d8 mb/google/brya/var/skolas: sync brya0 and skolas FW_CONFIG
1) Make the skolas FW_CONFIG field defintions compatible with the
brya0 FW_CONFIG field definitions to support skolas being a SKU of
brya0, and in sync with the config.star definitions for the FW_CONFIG
field for brya0 and skolas.

 - brya0 specific changes:
    1) remove WFC_MIPI_OVTI5675 definition (was 1)
    2) redefine WFC_MIPI_OVTI8856 from 2 to 1
    3) define new WFC_MIPI_KBAE350 camera type as 2

 - skolas specific changes:
    1) remove WFC_MIPI_OVTI5675 definition (was 1)
    2) redefine WFC_MIPI_OVTI8856 from 2 to 1
    3) define new WFC_MIPI_KBAE350 camera type as 2

2) Add support back in for UFC_MIPI_OVTI5675 in brya0 now that FW_CONFIG
defines are fixed.

BUG=b:248126749
TEST="emerge-brya coreboot chromeos-bootimage", flash brya0 and
verify it boots successfully to kernel and that WFC, UFC, and audio
works on skolas and brya0.

Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Change-Id: I3be26e0a05f4dc08e5dc3f6ef7b71bdd8fd4f859
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67929
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: YH Lin <yueherngl@google.com>
2022-10-05 19:08:35 +00:00
Nick Vaccaro f0d5188cf5 mb/google/brya/variant/brya0: Add power limits for RPL SoC
Add the RPL CPU power limits to brya0's power limit table to support
both the brya0 ADL sku and the new RPL sku.

BUG=b:248126749
TEST="emerge-brya coreboot chromeos-bootimage", flash skolas with
image-brya0.serial.bin and verify skolas boots successfully to kernel.

Change-Id: I2ac067f98f1ff8f86cff0ed0e15010f454d9c91c
Signed-off-by: Nick Vaccaro <nvaccaro@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67880
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
Reviewed-by: Bora Guvendik <bora.guvendik@intel.com>
Reviewed-by: Tarun Tuli <taruntuli@google.com>
Reviewed-by: Sumeet R Pawnikar <sumeet.r.pawnikar@intel.com>
2022-10-05 19:08:04 +00:00
Michał Żygowski d02bb67dd6 drivers/crb: Initialize Intel PTT control area
On newer systems such as Alder Lake it has been noticed that Intel PTT
control area is not writable until PTT is switched to ready state. The
EDK2 CRB drivers always initialize the command/response buffer address
and size registers before invoking the TPM command. See STEP 2 in
PtpCrbTpmCommand function in
tianocore/edk2/SecurityPkg/Library/Tpm2DeviceLibDTpm/Tpm2Ptp.c

Doing the same in coreboot allowed to perform PTT TPM startup
successfully and measure the components to PCRs in ramstage on an
Alder Lake S platform.

TEST=Enable measured boot and see Intel PTT is started successfully
and no errors occur during PCR extends on MSI PRO Z690-A DDR4 WIFI.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: Ia8e473ecc1a520851d6d48ccad9da35c6f91005d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/63957
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Krystian Hebel <krystian.hebel@3mdeb.com>
2022-10-05 11:00:36 +00:00
Meera Ravindranath 598c0dda15 soc/intel/alderlake: Fix UFS OCP fabric timeout
The delayed return of certain fetch instruction from memory to
the UFS causes the OCP fabric to timeout on the transaction
and become non-responsive.
As recommended by the SoC and IP teams,program the
OCP fabric register to avoid the timeout in the OCP fabric.

This patch adds the following changes
1. Program the OCP fabric registers in the PS0 routine.
2. Move the ssdt contents of UFS to dsdt asl code to avoid
duplication of UFS device creation

BUG=b:240222922
TEST=Build and boot Nirwen UFS board, observe no system hang
during Chrome PLT test.

Signed-off-by: Meera Ravindranath <meera.ravindranath@intel.com>
Change-Id: I949a4538ea5c5c378a4e8ff7bb88546db1412df2
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67770
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nick Vaccaro <nvaccaro@google.com>
2022-10-04 18:31:09 +00:00
Karthikeyan Ramasubramanian d49c3f278e mb/google/skyrim: Enable amdfw separation
Select the config to separate the AMDFW binary from the verified boot
section.

BUG=b:203597980
TEST=Build Skyrim BIOS image and boot to OS with PSP verstage passing
the hash table and PSP verifying the binaries against the hash table.
Observe boot time improvement of ~120 ms while operating  SPI bus at 66
MHz with PSP verstage enabled.
Before this patch series:
 508:finished loading body             1,978,053,432 (201,518)
After this patch series:
 508:finished loading body             7,948,797,849 (83,460)

Change-Id: I78ec6d28b4c5fc40bdade47489d58180a54dee4d
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67261
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
2022-10-04 15:35:26 +00:00
Jon Murphy 49332fe856 mb/google/skyrim: Update Kconfig to point to SPL
ChromeOS requires a custom SPL table.  Update Kconfig to point to the
ChromeOS version of the SPL resident in the blobs directory.

Bug=b:245727030
Test=Boots

Signed-off-by: Jon Murphy <jpmurphy@google.com>
Change-Id: I70dcb19983c970283ee887b78a18c0668e83d4b0
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67928
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-04 15:13:10 +00:00
Michał Żygowski c6ee1509da mb/msi/ms7d25: Populate SMBIOS product name based on CNVi presence
MSI PRO Z690-A WIFI DDR4 and MSI PRO Z690-A DDR4 are basically the
same boards, except the latter has no WiFi populated. Check the CNVi
WiFi presence and return correct SMBIOS product name string.

TEST=Check SMBIOS product name on both WiFi and non-WiFi variants in
Linux.

Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Change-Id: I5fedbce413dfb6a589a406d1e34e3e114ca6a40f
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68078
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-04 06:35:25 +00:00
Husni Faiz c86c9266f0 Documentation: document the new smbus console feature
This explains how to enable the SMBus console in coreboot
and its Kconfigs.

Change-Id: I50cafbbaaea133c9ea50131e455151287c96176a
Signed-off-by: Husni Faiz <ahamedhusni73@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67386
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2022-10-03 16:15:08 +00:00
Husni Faiz b80535a135 drivers/smbus: initialize SC16IS7XX I2C to UART converter chip
This patch adds the functionality to initialize the sc16is750
i2c to uart converter chip with a 14.7MHz input clock to support
115200 baud rate.

Change-Id: Ib31188b8c0f9b0ce9454da984e630eca9101d145
Signed-off-by: Husni Faiz <ahamedhusni73@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67342
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <inforichland@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
2022-10-03 16:14:25 +00:00
Jon Murphy 22baa3352c mb/google/skyrim: Adjust Makefile to look for SPD
Adjust the Makefile to look for SPD source Makefile.  The current
SPD guard isn't set up correctly and is attempting to build the
APCB with SPD when SPD isn't present.

BUG=b:249988439
TEST=util/abuild/abuild -x -t GOOGLE_MORTHAL --verbose
util/abuild/abuild -x -t GOOGLE_SKYRIM --verbose
util/abuild/abuild -x -t GOOGLE_WINTERHOLD --verbose

Change-Id: I9cf13acb1188309ea6a1e6bdacc37d80b01f70a8
Signed-off-by: Jon Murphy <jpmurphy@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68018
Reviewed-by: Robert Zieba <robertzieba@google.com>
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-03 03:24:01 +00:00
Kangheui Won 5fb435a691 soc/amd/(common,mendocino)/psp_verstage: Pass PSP FW hash table
Copy AMD PSP fw hash table into memory, then pass it to the PSP.
The PSP will use this hash to verify it's the correct firmware bundled
with coreboot build and not replaced.

BUG=b:203597980
TEST=Build Skyrim BIOS image with the hash table and boot to OS after
PSP verified the binaries against the hash table.

Change-Id: I84bea97c89620d0388b27891a898ffde77052239
Signed-off-by: Kangheui Won <khwon@chromium.org>
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60291
Reviewed-by: Tim Van Patten <timvp@google.com>
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:15:51 +00:00
Karthikeyan Ramasubramanian 6e44364908 soc/amd/mendocino: Add build rules to separate signed PSP/AMDFW
Add build rules to separate signed PSP/AMDFW. Also add build rules to
add the generated hash table containing SHA digest of individual PSP FW
components into CBFS. This will allow verified boot to load and verify
less components from SPI rom which means faster boot time.

BUG=b:206909680
TEST=Build Skyrim with modified fmap and Kconfig

Change-Id: If54504add72b30805b6874bee562e0b9482782b9
Signed-off-by: Kangheui Won <khwon@chromium.org>
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67260
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:14:18 +00:00
Kangheui Won 5b84dfd1c1 util/amdfwtool: Generate hashes for signed AMDFW components
Generate SHA256/SHA384 hash of the signed firmware so that PSP verstage
can pass it to PSP. The PSP will use these hashes to verify the
integrity of those signed firmwares.

BUG=b:203597980
TEST=Build Skyrim BIOS image.

Change-Id: I50d278536ba1eac754eb8a39c4c2e428a2371c44
Signed-off-by: Kangheui Won <khwon@chromium.org>
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/60290
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:13:38 +00:00
Karthikeyan Ramasubramanian bb31562e9e soc/amd/common: Add a config to keep signed AMD/PSP FW separately
Enabling this config will put signed amd firmwares into
SIGNED_AMDFW_[AB] region which is outside FW_MAIN_[AB]. Vboot only
verifies FW_MAIN_[AB] so these regions will not be verified by vboot,
instead the PSP will verify them.

As a result we have less to load and verify from SPI rom which means
faster boot time.

BUG=b:206909680
TEST=Build Skyrim with modified fmap and Kconfig.

Change-Id: If4fd3cff11a38d82afb8c5ce379f1d1b5b9adfbf
Signed-off-by: Kangheui Won <khwon@chromium.org>
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59867
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:11:57 +00:00
Kangheui Won 3c164e13e7 util/amdfwtool: Add options to separate signed firmwares
Add support for separating signed firmwares into another CBFS. If
sig_opt flag in AMD/PSPFW file header is 1, it means that the firmware
is signed against AMD chain of trust and will be verified by PSP. If
those firmware binaries are put outside FW_MAIN_[AB], vboot can skip
redundant verification, improving overall verification time.

BUG=b:206909680
TEST=Build amdfwtool. Build Skyrim BIOS image and boot to OS.

Change-Id: I9f3610a7002b2a9c70946b083b0b3be6934200b0
Signed-off-by: Kangheui Won <khwon@chromium.org>
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59866
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:11:13 +00:00
Karthikeyan Ramasubramanian 236245ec7d util/amdfwtool: Include the header with __packed definition
Checkpatch script recommends to use __packed instead of
__attribute__((packed)). Currently the build rule for amdfwtool does not
include the required header file with __packed definition. Update the
compiler flag to include the required header file.

BUG=None
TEST=Build amdfwtool.

Signed-off-by: Karthikeyan Ramasubramanian <kramasub@google.com>
Change-Id: I448cbad533608dd5c2bd4f2d827fcc5db5dee5cb
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67384
Reviewed-by: Jon Murphy <jpmurphy@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2022-10-02 22:09:01 +00:00