Commit graph

48,841 commits

Author SHA1 Message Date
Sumeet Pawnikar
2e1c89fc78 mb/google/brox/variants/brox: remove PL4 value modification
Remove PL4 value modification based on PsysPL3 value.

BUG=None
BRANCH=None
TEST=Built and boot on brox system

Signed-off-by: Sumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Change-Id: Ic7fbc6386769aa9f76a8665a742c97dfd790fd1d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83662
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Sowmya Aralguppe <sowmya.aralguppe@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-12 12:56:58 +00:00
Felix Singer
9dcfad722c soc/intel/raptorlake: Fall back to Intel microcode repo
With the release 20240910 of the Intel microcode repository, it also
includes the updated microcode file with version 0x129, which makes the
one from the coreboot blobs repo superfluous. Thus, use the one from the
Intel repository again.

Change-Id: I7fb58874719a8373072419e34b3f8923f7db927d
Signed-off-by: Felix Singer <felixsinger@posteo.net>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84295
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-11 21:21:58 +00:00
Jian Tong
b4aeb57591 mb/google/brox/var/lotso: Update verb table
Correct the number of NID entries.

BUG=b:349996984
TEST=emerge-brox sys-boot/coreboot sys-boot/chromeos-bootimage

Change-Id: I5f5553a5d8014f957d6b89ac4c1039594817bf32
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84184
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2024-09-11 16:12:32 +00:00
Ren Kuo
5e8b796353 mb/google/brox/var/jubilant: Enable ASPM for PCIe4 SSD of CPU
Enable ASPM of CPU PCIe4 for SSD to improve power consumption.

BUG=b:364441213
BRANCH=None
TEST="sh -c 'lspci -vvnn || lspci -nn'"
      01:00.0 Non-Volatile memory controller
      LnkCtl:	ASPM L1 Enabled

Change-Id: I4380bb8748f2847b1824e20edb19578c7aedfe4f
Signed-off-by: Ren Kuo <ren.kuo@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84279
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-11 15:15:35 +00:00
Maxim Polyakov
337b6f394f soc/intel/cml, pci_ids: Remove IDs of non-existent graphics devices
These identifiers are not included in the GPU list from Intel [1].
At the same time, 0x9B44 is not PCI DID of graphics device at all:
8086:9B44 - 10th Gen Core Processor Host Bridge/DRAM Registers [2].

[1] https://web.archive.org/web/20240731152818/https://
dgpu-docs.intel.com/devices/hardware-table.html

[2] https://web.archive.org/web/20231004011832/https://devicehunt.com/
view/type/pci/vendor/8086/device/9B44

Change-Id: I8ff7b062f930cb63ffd9caf240874742bd53fc23
Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83862
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-11 13:40:48 +00:00
Maxim Polyakov
2b04592175 soc/intel/cml, pci_ids: Fix IDs for Intel Comet Lake-S/H GT1
According to the Intel GPU list [1], these devices have the following
IDs:

8086:9BA8 - Comet Lake-S GT1 [UHD Graphics 610] [2]
8086:9BA5 - Comet Lake-S GT1 [UHD Graphics 610]

8086:9BA4 - Comet Lake-H GT1 [UHD Graphics 610] [3]
8086:9BA2 - Comet Lake-H GT1 [UHD Graphics 610]

Allows coreboot to correctly initialize IGD (8086:9ba8) in Intel Celeron
G5905 CPU (ID a0653, Cometlake-H/S G1 (6+2), ucode: 000000f9).

This can also be verified using devicehunt.com [2,3].

[1] https://web.archive.org/web/20240731152818/https://
dgpu-docs.intel.com/devices/hardware-table.html

[2] https://web.archive.org/web/20240731150632/https://devicehunt.com/
view/type/pci/vendor/8086/device/9BA8

[3] https://web.archive.org/web/20230928015210/https://devicehunt.com/
view/type/pci/vendor/8086/device/9BA4

Change-Id: I776f434f3627d6fbd046a92eb736b1ffcac8274a
Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83861
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-11 13:40:07 +00:00
Maxim Polyakov
b61114a603 soc/intel/cml, pci_ids: Fix ID for Comet Lake-H GT2
According to the Intel GPU list[1], 0x3E9B is DID of "Intel UHD Graphics
630" for the Coffee Lake processor family and has already been added to
the pci_ids.h as PCI_IDE_INTEL_CFL_H_GT2.

At the same time, the real PCI DID for Comet Lake-H GT2 is 0x9BC2 [1],
which is missing in the file.

[1] https://web.archive.org/web/20240731152818/https://
dgpu-docs.intel.com/devices/hardware-table.html

Change-Id: Iacab0a03388af3f6fd5d78a597580037889e8ef2
Signed-off-by: Maxim Polyakov <max.senia.poliak@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83708
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-11 13:39:41 +00:00
Elyes Haouas
cfc85d073f tree: Use boolean for dmi_power_optimize_disable
Change-Id: Ifbe76bd69d847603345a4a1fa4f41e529634fa92
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84158
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-11 01:40:42 +00:00
Elyes Haouas
83481eb0a3 tree: use boolean for hybrid_storage_mode
Change-Id: I84aad5497d17065f9d42776452f2d2d24cd50a91
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84157
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2024-09-11 01:40:20 +00:00
Elyes Haouas
8dfef963fd tree: Use boolean for lpss_s0ix_enable
lpss_s0ix_enable is already defined as boolean:
`git grep lpss_s0ix_enable $(find -type f -name "*.h")
src/soc/intel/apollolake/chip.h:        bool lpss_s0ix_enable;`

Change-Id: I34bd568defe202daaad6136b9c184bc292a226b3
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84160
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
2024-09-10 19:39:38 +00:00
Nico Huber
d967af55df intel/alderlake: Order Kconfig selectors for FSP paths
Should make the sorting order of the paths more obvious.

Change-Id: Ie73e717f37f80a11a903e99cc094ea4d76e1ca1f
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83827
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-10 18:17:44 +00:00
Nico Huber
bfe5609cc6 intel/alderlake: Drop redundant Client/AlderLake* FSP paths
The Alder Lake "Client" FSP paths have been replaced by symlinks to
Raptor Lake in the FSP repo. Hence we get the same files anyway and
can spare us to maintain the individual paths.

Change-Id: Ia9b256ce1940894e2cf31acaa4a83ea39f6723b6
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83826
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-10 18:16:18 +00:00
Wentao Qin
e67aaf2da6 mb/google/brox/var/lotso: Enable ASPM for PCIe4 SSD of CPU
Check that lnkCap supports ASPM L1, so set it to ASPM_L1
to avoid excessive power consumption.

BUG=b:364484621, b:361828368
TEST=emerge-brox sys-boot/coreboot sys-boot/chromeos-bootimage

w/o this CL -
```
lspci -vv | grep -A30 "KIOXIA" | grep -E "LnkCap|LnkCtl"
 LnkCap: Port #0, Speed 16GT/s, Width x4, ASPM L1, Exit Latency L1 <64us
 LnkCtl: ASPM Disabled; RCB 64 bytes, LnkDisable- CommClk+
```

w/ this CL -
```
lspci -vv | grep -A30 "KIOXIA" | grep -E "LnkCap|LnkCtl"
 LnkCap: Port #0, Speed 16GT/s, Width x4, ASPM L1, Exit Latency L1 <64us
 LnkCtl: ASPM L1 Enabled; RCB 64 bytes, LnkDisable- CommClk+
```

Change-Id: I8a7f69bb82ad24b29566541d7694f87f9c6458d6
Signed-off-by: Wentao Qin <qinwentao@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84241
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: wen zhang <zhangwen6@huaqin.corp-partner.google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-10 15:08:48 +00:00
Sean Rhodes
45c1e249bf mb/starlabs/starbook/adl: Add USB ACPI to devicetree
Change-Id: I7050a4d12efd65c7026abf3e45961e2061b7170a
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84263
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-10 13:42:31 +00:00
Sean Rhodes
874dc909b9 mb/starlabs/starbook/adl: Remove PMC GPIO routing
These aren't used so remove them

Change-Id: I340b3474fba1bc7fbde520138ae99c3e355882bf
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84262
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-10 13:42:09 +00:00
Sean Rhodes
78f5c3b8c5 mb/starlabs/starbook/adl: Alphabetize and group FSP UPDs
Change-Id: I63612af7320dfdbe57029b898b4cf07e9d6f13b0
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84261
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-10 13:41:58 +00:00
Sean Rhodes
fe24a98343 ec/starlabs/merlin: Don't report the battery serial number to ACPI
Reporting the battery serial number to ACPI causes Windows to say
there isn't a battery present. As the serial number is as useful as
waterproof towel, don't do it.

Change-Id: I97a28b1d8d7bb45ea4790c8125cd3c1bc52ee5f9
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83633
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-10 13:41:31 +00:00
Sean Rhodes
c4a6eb09f9 ec/starlabs/merlin: Move the chip id check
As the merlin EC supports both the IT8987 and IT5570, move the
check into the code so the same variant directory can be used
for both chips.

Change-Id: I8c43a367e42f7e56ddd26b1c8fe7bf4b275d4ac3
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83632
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-10 13:41:16 +00:00
Nicholas Chin
d380ca64d0 mb/dell/snb_ivb_latitude: Move early_init.c out of variants
Now that the USB configs are in the devicetree, only the
bootblock_mainboard_early_init function remains in early_init.c. It is
identical between every variant except the E6230, which enabled fewer
decode ranges in the LPC_EN register. Enabling the additional decode
ranges probably shouldn't cause issues, so go with the majority.

TEST=Timeless builds do not change with the exception of the E6230.

Change-Id: Ic43915888f5893652991b7402ebab3bd3a2cf278
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84097
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-10 13:01:13 +00:00
zengqinghong
f922b7c93b mb/google/nissa/var/teliks: Update eMMC DLL tuning values
Update eMMC DLL tuning values for improved initialization reliability.

BUG=b:361013271
TEST=Cold reboot stress test over 2500 cycles

Change-Id: Icd1f9c7bdec2bc99152a13ac4ce0724a26718a52
Signed-off-by: Qinghong Zeng <zengqinghong@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84248
Reviewed-by: Weimin Wu <wuweimin@huaqin.corp-partner.google.com>
Reviewed-by: Jayvik Desai <jayvik@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>
2024-09-10 10:53:36 +00:00
Subrata Banik
39d5ec73f0 mb/google/nissa/var/joxer: Use DB_USB to probe conn1 device
Joxer experienced error messages during developer mode entry due to
failed USB-C1 probing.

This patch adds the `DB_USB DB_1C` probe directive to the `conn1`
device in the overridetree, ensuring USB-C1 is only probed when
`FW_CONFIG` supports the applicable hardware SKU.

This should resolve the error flood seen during dev mode entry on
Joxer.

BUG=b:364240631
TEST=Able to build and boot google/joxer to OS without any error.

w/o this patch:

send_packet: CrosEC result code 9
send_packet: CrosEC result code 3
Failed to get PD_MUX_INFO port1 ret:-3
update_all_tcss_ports_states: port C1: get_usb_pd_mux_info failed
send_packet: CrosEC result code 9
send_packet: CrosEC result code 3
Failed to get PD_MUX_INFO port1 ret:-3

w/ this patch:

No error reported during dev mode entry

Change-Id: I8cdefa01409d5a8a75032f30dacde40057e064dd
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84255
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Dinesh Gehlot <digehlot@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-10 04:56:24 +00:00
Elyes Haouas
6e704e3ffc include/console/system76_ec.h: Remove unused <stddef.h>
Change-Id: I3ac96786b4bbf7c8b3a8b57f58df396b1b754bd3
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83953
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-10 03:12:10 +00:00
Elyes Haouas
8e51d092be nb/amd/agesa/agesa_helper.h: Remove unused <stddef.h>
Change-Id: I991ce1e264c3ca01bc34904b5efe758a3eb58806
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83952
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-10 03:12:00 +00:00
Elyes Haouas
7f3185dff5 cpu/x86/smm/smm_module_handler: Remove <commonlib/bsd/compiler.h>
<commonlib/bsd/compiler.h> is automatically included.

Change-Id: I653f6c6099512c6e5ab64207f99e7813e4403f05
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83045
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-10 03:11:13 +00:00
Nico Huber
f79a50a655 intel/alderlake: Sort FSP paths, most specific selectors first
The `!FSP_USE_REPO` is most specific,  if we're not using the FSP repo,
we can ignore all the FSP-repo paths. Hence put these first.

Having `FSP_TYPE_IOT` selected is also more specific, we can ignore all
the "Client" paths then. This makes sure that we don't catch a "Client"
by accident (otherwise we'd have to add a `!FSP_TYPE_IOT` for those).

Change-Id: Ibe9931d8f964a337c46fde31a3bc22c69d40eded
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83825
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
Reviewed-by: Ronak Kanabar <ronak.kanabar@intel.com>
2024-09-09 20:54:59 +00:00
Yidi Lin
56e0ceb2c7 soc/mediatek/common: Move common GPIO definitions to gpio_defs.h
BUG=none
TEST=emerge-{asurada, cherry, corsola, geralt, rauru} coreboot

Change-Id: If35dcc4d88732f92c7c43a5eed0478ec52cf1802
Signed-off-by: Yidi Lin <yidilin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84221
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-09 12:58:55 +00:00
Zheng Bao
b23382c54b soc/amd/cezanne: Add an option to enable A/B recovery scheme
Extracted from NDA spec #56995:
"The A/B recovery scheme formally separates the SPI flash space into
different partitions; a primary, “A” and secondary, “B”, which hold
the same set of system firmware. Under this scheme, the partitions A
and B can hold identical contents initially, but each partition can be
updated individually.

Normally the system boots from partition A, but if the A partition is
found to be corrupted, the system will switch to partition B and
boot. The OEM BIOS can then choose to continue the boot from partition
B, or repair partition A using contents from partition B."

The Cezanne platform supports both A/B recovery and no recovery
method. It needs this flag passed to amdfwtool to enable the A/B
recovery layout.

Change-Id: Id1c8028faee9c544628d65fd77be2a378ed7eab6
Signed-off-by: Zheng Bao <fishbaozi@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84195
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2024-09-09 12:57:50 +00:00
Matt DeVillier
2c16092a21 mb/google/zork: Add Kconfig to set IGD UMA allocation via APCB
Add a Kconfig choice to select the IGD UMA allocation, which selects a
precompiled ACPB binary with the corresponding UMA value set. Default
to the previous value (128MB) for non-ChromeOS builds, and 64MB for
ChromeOS as that is the value used there.

TEST=build/boot google/morphius, verify UMA size changes with selection
via dxdiag tool under Windows.

Change-Id: I6debd10527c33ce37ef3ada20955c8f7b7500039
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84237
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-09 12:57:19 +00:00
Shuo Liu
42c5c6de95 soc/intel/xeon_sp: Reserve MMIO high range
Xeon-SP supports MMIO high range, a.k.a. MMIO range above 4G. FSP will
assign domain MMIO high windows from this range.

However, there will be unassigned parts among these high windows for
non-domain device usage (e.g. misc devices belonging to an IIO stack
but not belonged to any PCIe domains under that stack). This will cause
segmentation in MTRR UC coverage.

For example, in SPR-XCC where only CPM0/HQM0 are supported and
instantiated to PCIe domains, MMIO ranges are still reserved for
CPM1/HQM1. See more at src/soc/intel/xeon_sp/spr/ioat.c.

Reserve MMIO high range as a whole under domain0/00:0.0. During MTRR
calculation, this reservation will connect the discontinued domain MMIO
high windows together to form one continuous range, and save MTRR
register usage from inadequacy.

This change is initially raised for SPR but could be effective for GNR
as well.

TESTED = Build and boot in intel/archercity CRB, MTRR register usage
decreases from 7 to 3 in 2S system.

TESTED = Only setting MTRR for below 4GB ranges test fails with
LinuxBoot on SPR (through x86_setup_mtrrs_with_detect_no_above_4gb)

tsc: Detected 2000.000 MHz processor
last_pfn = 0x2080000 max_arch_pfn = 0x10000000000
x86/PAT: Configuration [0-7]: WB  WC  UC- UC  WB  WP  UC- WT
WARNING: BIOS bug: CPU MTRRs don't cover all of memory, losing 129024MB of RAM.
------------[ cut here ]------------
WARNING: CPU: 0 PID: 0 at arch/x86/kernel/cpu/mtrr/cleanup.c:978 mtrr_trim_uncached_memory+0x2b9/0x2f9
...
Call Trace:
 ? 0xffffffff8f600000
 ? setup_arch+0x4bb/0xaed
 ? printk+0x53/0x6a
 ? start_kernel+0x55/0x507
 ? load_ucode_intel_bsp+0x1c/0x4d
 ? secondary_startup_64_no_verify+0xc2/0xcb
random: get_random_bytes called from init_oops_id+0x1d/0x2c with crng_init=0
---[ end trace 0e56686fd458f0c5 ]---
update e820 for mtrr
modified physical RAM map:
modified: [mem 0x0000000000000000-0x0000000000000fff] reserved
...
modified: [mem 0x00000000ff000000-0x000000207fffffff] reserved
last_pfn = 0x6354e max_arch_pfn = 0x10000000000
Memory KASLR using RDRAND RDTSC...
x2apic: enabled by BIOS, switching to x2apic ops
Using GB pages for direct mapping
...
Initmem setup node 0 [mem 0x0000000000001000-0x000000006354dfff]
  DMA zone: 28769 pages in unavailable ranges
  DMA32 zone: 19122 pages in unavailable ranges
BUG: unable to handle page fault for address: ff24b56eba60cff8
BAD
Oops: 0000 [#1] SMP NOPTI
CPU: 0 PID: 0 Comm: swapper Tainted: G        W         5.10.50 #2
...
Call Trace:
 ? set_pte_vaddr_p4d+0x24/0x35
 ? __native_set_fixmap+0x21/0x28
 ? map_vsyscall+0x35/0x56
 ? setup_arch+0xa00/0xaed
 ? printk+0x53/0x6a
 ? start_kernel+0x55/0x507
 ? load_ucode_intel_bsp+0x1c/0x4d
 ? secondary_startup_64_no_verify+0xc2/0xcb
CR2: ff24b56eba60cff8
---[ end trace 0e56686fd458f0c6 ]---
RIP: 0010:fill_pud+0xa/0x62
...
Kernel panic - not syncing: Attempted to kill the idle task!
---[ end Kernel panic - not syncing: Attempted to kill the idle task! ]---

Change-Id: Ib2a0e1f1f13e797c1fab6aca589d060c4d3fa15b
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83538
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-09 09:16:56 +00:00
Nicholas Chin
ae8e568c46 mb/dell/snb_ivb_latitude/*/hda_verb.c: Use AZALIA_PIN_DESC macro
Use the AZALIA_PIN_DESC macro from include/device/azalia_device.h
instead of magic numbers, as well as the enums for each of the register
field values. The macros were generated by running util/hda-decoder
against the original azalia logs used for the original board ports.

TEST=Timeless builds for all variants did not change between main
and this patch

Change-Id: If5ecee39efbddbba101f820dead82efcb848b6bc
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84099
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
2024-09-08 21:46:23 +00:00
Matt DeVillier
603346281c mb/google/kahlee: Add Kconfig to set IGD UMA allocation
Add a Kconfig choice to select the IGD UMA allocation. Default to the
previous value (32MB).

TEST=build/boot google/liara, verify UMA size changes with selection.

Change-Id: Ia53d6d39d4f06c896ec13808234144b89da101f8
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84235
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-08 00:25:23 +00:00
Cliff Huang
897dccee02 soc/intel/ptl: Add GPIOs for Panther Lake SOC
Add definitions for the GPIO pins on Panther Lake SoC,
as well as GPIO IRQ routing information and defines for ACPI ASL.

For now, add the following GPIO communities and GPIO groups:

Comm. 0: GPP_V, GPP_C
Comm. 1: GPP_F, GPP_E
Comm. 3: CPUJTAG, GPP_H, GPP_A, VGPIO3
Comm. 4: GPP_S
Comm. 5: GPP_B, GPP_D, VGPIO

ref doc:
- PT EDS vol2
- Panther Lake H GPIO Implementation Summary (#817954)

BUG=b:348678529
TEST=Verify on Intel Silicon platform for PTL using google/fatcat
mainboard. Note that these GPIO changes cannot be verified along as
they are merely data structure and defines for the SOC. With the
GPIO ASL, we should see the following GPIO instances under
/sys/bus/acpi/devices when booting to OS:
INTC10BC:00/ INTC10BC:01/ INTC10BC:02/ INTC10BC:03/ INTC10BC:04/

Signed-off-by: Cliff Huang <cliff.huang@intel.com>
Change-Id: Iae1bc072841214efaec7a10719dbc742f2da795b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83789
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-07 19:52:05 +00:00
Michał Żygowski
d6d83c1912 soc/intel/{common,alderlake}: Add missing ADL-N SKUs
Based on DOC #767454 (public) version 1.2. Allows to boot the
HARDKERNEL ODROID H4+ with N97 SoC. Without this patch the MCH ID
was not recognized and the SA driver did not pick up the stolen
ranges, causing the PCI MMIO allocation to be placed in the stolen
areas.

TEST=Boot HARDKERNEL ODROID H4+ with N97 SoC to Ubuntu 23.04.

Change-Id: I0fbdb12c6411e4109e68a13960b4570701629bc9
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84212
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-07 15:41:21 +00:00
Matt DeVillier
5a59e418ee nb/intel/sandybridge: Add Kconfig to set default IGD allocation
Add a Kconfig choice to select the default IGD memory allocation, for
users/boards which do not use an option table to set it.

TEST=build/boot google/link, verify IGD size changes with selection.

Change-Id: I83d57cf4657cfccbb21416c5da05eeff9e95a44f
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84225
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2024-09-07 15:40:58 +00:00
Tongtong Pan
e5c5b1c3d2 mb/google/dedede/var/awasuki: Update touchscreen power sequence
Reduce resume time.

BUG=b:361728839
TEST=emerge-dedede coreboot chromeos-bootimage
& test touchscreen function on awasuki DUT

Change-Id: I32b2b1c709ecab964a0e449d416c5d0ee2c1d97d
Signed-off-by: Tongtong Pan <pantongtong@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84196
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Weimin Wu <wuweimin@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2024-09-07 15:40:00 +00:00
Subrata Banik
ef386e0768 drivers/intel/fsp2_0: Consolidate BUILDING_WITH_DEBUG_FSP option
Move the `BUILDING_WITH_DEBUG_FSP` Kconfig option from SoC-specific
files to the FSP2_0 driver Kconfig to avoid duplication. Also slightly
improves the option's prompt and help text.

TEST=Built and booted google/rex successfully.

Change-Id: I5c3dce59c396f6c1665a3ed1b8c1bb5df0f5a8d4
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84220
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-07 08:25:54 +00:00
Subrata Banik
9947d54577 drivers/intel/fsp2_0: Add Kconfig option to control MBP HOB creation
This patch adds a new Kconfig option `FSP_PUBLISH_MBP_HOB` to
control the creation of the ME_BIOS_PAYLOAD_HOB (MBP HOB) by FSP.

Disabling this option can improve boot time on platforms that
do not utilize the MBP HOB, such as ChromeOS devices.

The option is disabled by default on ChromeOS and enabled
by default on other platforms.

On ADL-P based platforms, this option is forced to be enabled
as ADL-P FSP relies on MBP HOB for ChipsetInit version for
ChipsetInit sync.

Removed SoC specific implementation of `FSP_PUBLISH_MBP_HOB` config
from MTL and TGL config file.

TEST=Tested on ADL-P and ADL-N platforms. Verified that MBP HOB is
created when `FSP_PUBLISH_MBP_HOB` is enabled and not created when
it is disabled.
Also verified that the system boots successfully in both cases.

Change-Id: I21da00259c0b9bcca6f545291a6259e9cce8d900
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84217
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-07 08:25:49 +00:00
Michał Żygowski
b14ec5fbab 3rdparty/open-power-signing-utils: add SecureBoot utility for OpenPOWER
Signing is performed with test keys by default, set
CONFIG_SIGNING_KEYS_DIR to a non-empty value to use other keys.

Depending on the version of the Talos II firmware this alone might not
allow booting because coreboot replaces only part of the stock firmware
and its newer versions enable secure boot by default (not to be confused
with SecureBoot in EFI).  The signing performed in this commit is still
a prerequisite and might as well be done on its own.  Fixing operation
with newer stock firmware will be done in a follow-up change.

Change-Id: Id88baef5ecb1f8ffd74a7f464bbbaaaea0ca643d
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67065
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Krystian Hebel <krystian.hebel@3mdeb.com>
2024-09-06 13:55:50 +00:00
Sean Rhodes
30394db475 mb/starlabs/byte_adl: Add Alder Lake N Byte Mk II
Tested using `edk2` from
`github.com/starlabsltd/edk2/tree/uefipayload_vs`:
* Windows 11
* Ubuntu 22.04
* Manjaro 22

No known issues.

https://starlabs.systems/pages/byte-specification

Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Change-Id: Idff2d883a8c29f0fee9d633708aac92061a45132
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80705
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-06 13:54:14 +00:00
Cliff Huang
216d8e1965 soc/intel/common/gpio: vm index changes as PTL vm entries are not continuous
Add specific virtual wire mapping structure for:
- First pad group does not starts with bit position 0.
- vw_index and position are not continuous in between groups within a
  community.

BUG=
TEST=boot to OS and use iotools to read the registers that use 16-bit
port ID such as IOM AUX Bias Ctrl register to verify the 16-bit group
ID field.

Signed-off-by: Cliff Huang <cliff.huang@intel.com>
Change-Id: I986d4f4fe59b110e5075cab8742dfe8b336d034b
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83997
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-06 13:36:57 +00:00
Shon
516a31551e mb/google/brask/var/bujia: Add PSYS setting
According to the Intel OPS spec, the DC power from display is
12~19V@8A max. It can't set PsysPmax by unknown voltage, so get
voltage by ec command "ectool adcread 4" then calculate PsysPmax value.
The OPS display can supply 90W power, configure psys_pl2 to limit
the system power to 90W.

BUG=b:329037849
BRANCH=firmware-brya-14505.B
TEST= USE="fw_debug" LOCALES="en"  emerge-brask chromeos-bmpblk
intel-rplfsp intel-adlfsp coreboot chromeos-bootimage

Check adcread value by ectool adcread 4. If get 19540, PsysPmax
should be 19540 * 8000 ~= 156 W.

Check FSP debug log have the following message.
PsysPmax = 156W

Change-Id: Ic6e9c6ce9f3179c7d63c1169695fbc23188456dd
Signed-off-by: Shon <shon.wang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83593
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Derek Huang <derekhuang@google.com>
2024-09-06 13:34:28 +00:00
Dinesh Gehlot
93db775bf7 vc/google/chromeos: Skip boot info logging if cse sync at payload
This patch skips event logging for current boot information at ramstage
if CSE sync is scheduled at payload. Given that CSE sync could initiate
a system reset, resulting in redundant boot information logs, the
payload should handle the logging of boot information following CSE
sync.

BUG=b:360082747
TEST=Verified elog boot info is not logged at ramstage

Change-Id: Ia29ec350facc6850c04bb988027ecb146e648a50
Signed-off-by: Dinesh Gehlot <digehlot@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84120
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-06 13:33:12 +00:00
Yidi Lin
e7a4515b5b soc/mediatek/mt8196: Add EINT support
Add support to configure GPIOs to pull for external interrupts (EINT).

BUG=b:334723688
TEST=Talk with Ti50 TPM using IRQ flow.

Change-Id: Ibeb2dafcd9909b4afbfa81728700718f01d3818f
Signed-off-by: Yidi Lin <yidilin@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84026
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-06 13:31:25 +00:00
Wisley Chen
4258b8bb3d mb/google/nissa/var/yavilla: Add 1.2V enable pin in VCM
Add control for the 1.2V enable pin in VCM to comply the mipi camera
power sequence.

2.8V enable --> 1.2V enable --> reset

BUG=b:362386165
TEST=Run ITS test

Change-Id: I495b2e266ee3d24ed3334bb9c173b3993d095e8e
Signed-off-by: Wisley Chen <wisley.chen@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84211
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-06 13:30:30 +00:00
Michał Żygowski
6c8b0e430f Makefile.mk: compile ECC tools and inject ECC to final image
$ build/cbfstool build/coreboot.rom print
FMAP REGION: COREBOOT
Name                           Offset     Type           Size   Comp
cbfs_master_header             0x0        cbfs header        32 none
fallback/romstage              0x80       stage           18495 LZ4  (30096 decompressed)
fallback/ramstage              0x4940     stage           24288 LZMA (61240 decompressed)
config                         0xa880     raw              1324 LZMA (3308 decompressed)
revision                       0xae00     raw               726 none
build_info                     0xb100     raw               122 none
(empty)                        0xb1c0     null           347108 none
header_pointer                 0x5fdc0    cbfs header         4 none

Change-Id: I8541aa6f1429ed6143830ed11c47c150183ddf0d
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/67064
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
2024-09-06 13:27:18 +00:00
Jian Tong
19922cb366 mb/google/brox/var/lotso: remove unused cam enable_gpio
Based on schematics NB7228A_LOTSO_INTEL_MB_PROTO_20240521A_BOM.pdf update devicetree settings.

BUG=b:333494257
TEST=emerge-brox coreboot chromeos-bootimage and boot on

Change-Id: Id8f30597ef9bceb9bdd4a3267266f1d189aa6fd8
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84198
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-06 13:15:15 +00:00
Jian Tong
d1243fcaad mb/google/brox/var/lotso: disable RTS5227 PCIE L0s support
Power consumption according to RTS5227 datasheet section 6.4, L0s is not supported, so set it to ASPM_L1.

lspci -vvvv -s 01:00 to verify LnkCtl: ASPM L1 Enabled.

BUG=b:359409425
TEST=emerge-brox sys-boot/coreboot sys-boot/chromeos-bootimage

Change-Id: I87bb0d195566d273951dee6eeb54c9b388dd7607
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84177
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2024-09-06 13:15:05 +00:00
Sumeet Pawnikar
4e1ed767ab mb/google/brox/variants/brox: Update PL1 Min
Update PL1 Min value from 6W to 15W based on the brox thermal cooling
capacity and hardware design.

BUG=None
BRANCH=None
TEST=Build and boot on brox board

Signed-off-by: Sumeet Pawnikar <sumeet.r.pawnikar@intel.com>
Change-Id: I266a78806e065bf7af0d5fcad9b22ab63aa892e2
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83661
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-06 13:14:40 +00:00
Sean Rhodes
9f6cb3e611 drivers/i2c/generic: Remove erroneous acpigen_pop_len
There are one too many acpigen_pop_len calls in the code
to generate the ROTM; remove one to fix an EMERG warning:
    [EMERG] ASSERTION_ERROR: file `src/acpi/acpigen.c`, line 38

The extra acpigen_pop_len() call was added commit
45d2c3d543 ("i2c/drivers/generic: Return ROTM in a package").

Change-Id: I913022144813f7f65eac1bcb7c97656f2c513c0b
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84197
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2024-09-06 13:03:53 +00:00
Jeremy Compostella
14292729e8 soc/intel/pantherlake: Hardcode IOM_BASE_ADDR_MAX value
iasl refuses to perform an arithmetic computation in a QWordMemory
parameter and fails with the following error.

dsdt.asl   2149: 0x4010800000, ((0x4010800000 + 0x10000) - 1), 0x0,
Error    6051 -            ^ Address Min is greater than Address Max

This commit replaces the arithmetic with the result to define
IOM_BASE_ADDR_MAX.

BUG=b:348678529
TEST=Build for google/fatcat mainboard.

Change-Id: Ia5cf899b049cb8eb27b4ea30c7f3ce7a14884f16
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84216
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-05 18:28:21 +00:00