Commit graph

57,737 commits

Author SHA1 Message Date
Elyes Haouas
9ae0fa08cc Update arm-trusted-firmware submodule to upstream master
Updating from commit id c5b8de86c:
2024-07-22 18:07:11 +0200 - (Merge "feat(debugv8p9): add support for FEAT_Debugv8p9" into integration)

to commit id 8fb91783f:
2024-08-23 14:45:12 +0200 - (Merge "fix(intel): add in missing ECC register" into integration)

This brings in 213 new commits.

Change-Id: Ib52672e949a8e57fafc1ee9ae965a752020932b2
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84071
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin L Roth <gaumless@gmail.com>
2024-09-25 17:33:38 +00:00
Nicolas Kochlowski
8923dceaf7 vc/amd/opensil: Move openSIL interface declarations to common header
The declarations describing interface functions between SoCs
and openSIL glue code are common for the stub and Genoa POC,
and likely with future SoC openSIL implementations. Therefore,
move these out of SoC-specific header files and into
vc/amd/opensil/opensil.h.

This change facilitates swapping out the stub for the actual
openSIL glue code.

Change-Id: Icc8783ddb868f9f0c4cd357245604313eadfe531
Signed-off-by: Nicolas Kochlowski <nickkochlowski@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84428
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-by: Varshit Pandya <pandyavarshit@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 15:03:33 +00:00
Jian Tong
42a6c0c24d mb/google/brox/var/lotso: Add RTS522A vdd ctrl by GPP_A17
For next DVT build, hw adds this power ctrl.

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

Change-Id: Id256b3a94d3c8ed6f6832d63ecc74c2438c7d15a
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84254
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 12:28:45 +00:00
Jian Tong
658e274b9f mb/google/brox/var/lotso: Update cpu power limits
When battery not present, increase PL4 limit from 9 to 40.
Get PL setting from internal thermal and power team.
AC+DC/DC:
PL1=15W
PL2=25W
PL4=114W

AC ONLY:
PL1=15W
PL2=25W
PL4=40W

BUG=b:355094551
TEST=emerge-brox sys-boot/coreboot sys-boot/chromeos-bootimage
Confirm on lotso EVT board, as expected.

Change-Id: I5848c776399a1bdc455db604bb3b22d16f6b2928
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84202
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 12:28:40 +00:00
Jian Tong
91990ae11e mb/google/brox/var/lotso: Generate RAM ID for H58G56BK7BX068
BUG=b:342929824
BRANCH=None
TEST=boot to kernel success

Change-Id: Ibc13137488948ec6cea1904b3964ffed4ff7ea7d
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84499
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 12:28:22 +00:00
Jeremy Compostella
b95c498635 mb/google/fatcat: Add HDA verb tables
We use ALC256 as HDA codec on fatcat hence, added the verb table.

BUG=b:348678529
TEST=Tested audio playback using HDA ALC256 codec on PTL reference
     board

Change-Id: I914f73ff06bfb801fc319b45b23d7ce4cb7a6d55
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84409
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 03:03:04 +00:00
Jeremy Compostella
ae7bfd11e7 mb/google/fatcat: Add memory settings
BUG=b:348678529
TEST=Memory training is successful on google fatcat board

Change-Id: I914f73ff06bfb801fc319b45b23d7ce4cb7a6d51
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84406
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-25 03:00:02 +00:00
Subrata Banik
e047687a56 mainboard/google/fatcat: Update SoC to Panther Lake
This commit updates the fatcat mainboard to use the Panther Lake SoC
instead of Meteor Lake.

The changes include:

- Selecting the `SOC_INTEL_PANTHERLAKE_U_H` config option.
- Updating the `mainboard_update_soc_chip_config()` function to use the
  `soc_intel_pantherlake_config` struct.
- Updating the devicetree to use the `soc/intel/pantherlake` chip.
- Updating variant header files to reflect the SoC change.

This update enables support for the Panther Lake SoC and its
features on the fatcat mainboard.

BUG=b:347669091
TEST=Able to build google/fatcat.

Change-Id: Ie0c6257dfb9dd1f627472ad220614f9b24c911ef
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84537
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 02:59:54 +00:00
Subrata Banik
35cb5d7e52 mainboard/google/fatcat: Remove unused virtual GPIOs
This commit removes the virtual GPIOs for recovery and write protection
from the fatcat variant.

These GPIOs are not utilized on the fatcat platform, and their removal
simplifies the GPIO configuration and improves code readability.

The `CROS_GPIO_DEVICE_NAME` macro is no longer applicable for Panther
Lake SoCs. Future changes will introduce a suitable GPIO device name
that meets the requirements of Panther Lake.

BUG=b:347669091
TEST=Able to build google/fatcat.

Change-Id: I492fec28637edb2f84e9290b28dabce3f23aa867
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84536
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 02:59:47 +00:00
Subrata Banik
bfa61e6fb6 mb/google/brya: Enable SOC_INTEL_COMMON_BASECODE_RAMTOP for vell
Enable the SOC_INTEL_COMMON_BASECODE_RAMTOP Kconfig option for the
google/vell mainboard. This option ensures improving the boot time
on google/vell by 40ms in an average.

BUG=b:352330495
TEST=Able to reduced google/vell boot time by 40ms.

Signed-off-by: Subrata Banik <subratabanik@google.com>
Change-Id: Iedfd346c62b1ac79796042dd3569d846007b8f10
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84525
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-25 02:59:35 +00:00
Elyes Haouas
37dcaf8603 include/stdbool: Don't unconditionally typedef bool
When compiling with the C23 standard, bool, true, and false are
pre-defined by the language, so defining them in stdbool.h isn't allowed.
This fixes the following error:
src/include/stdbool.h:6:17: error: two or more data types in declaration specifiers
    6 | typedef _Bool   bool;
      |                 ^~~~
src/include/stdbool.h:6:1: error: useless type name in empty declaration [-Werror]
    6 | typedef _Bool   bool;
      | ^~~~~~~

Change-Id: Iec9b4e3f308008ece773ce3460daff97370161ea
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/83909
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-25 01:05:32 +00:00
Elyes Haouas
ad0d88bb80 ssoc/intel/tigerlake: Use boolean for enable_c6dram
"enable_c6dram" needs only 2 "states" to be clearly defined.
C provides "true/false", so use it instead of using unsigned int.

Change-Id: Icff1b42ceb2e89cc0b2e7abab6743430c635db7b
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84155
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-25 01:01:54 +00:00
Shuo Liu
0dac2ad3aa soc/intel/xeon_sp: Support GNR PCIe root ports
Add device IDs for GNR PCIe root ports so that these devices can
be supported by the Xeon-SP PCIe root port driver.

Change-Id: I450c0088aa2e3be60489becf0600f534ea90d7a4
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84311
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-24 13:40:47 +00:00
Johnny Lin
ac47ea8675 soc/intel/xeon_sp/gnr: Enable VMX by FSP
Configure FSP UPD VMX from Kconfig ENABLE_VMX.

Change-Id: I0c03f535b6f93761419657127e791c02e8ee4988
Signed-off-by: Johnny Lin <johnny_lin@wiwynn.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84327
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-24 11:17:28 +00:00
Lu, Pen-ChunX
8f62113a7b soc/intel/xeon_sp/gnr: Remove duplicated HPET table
Both lpc.c and chip.c will create HPET table.
remove hpet_device_ops for avoiding create two HPET table.

Change-Id: I32628e98b5c1fac4b72ea3abf755b62847161bec
Signed-off-by: Lu, Pen-ChunX <pen-chunx.lu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84326
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
2024-09-24 11:16:27 +00:00
Jincheng Li
1b5e3a2707 soc/intel/xeon_sp/gnr: Implement SMM methods
Change-Id: I578b2c213ff1b33b4ca37e0422f690bedc9f5ba1
Signed-off-by: Jincheng Li <jincheng.li@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84325
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-24 11:14:20 +00:00
Shuo Liu
909da87a09 soc/intel/common/block/lpc: Support IBL eSPI
IBL eSPI should be correctly configured by LPC driver so that console
input is usable.

Change-Id: I77cc6dd67b36035974e7f268d32b8473e8d83483
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84309
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
2024-09-24 11:13:11 +00:00
Arthur Heymans
5d03b1d216 soc/intel/meminit: Check array size
Work around a GCC LTO bug. Even if no buffer overflow is bound to happen
as the soldered down path is taken GCC LTO complains about this.

Change-Id: Ib3d4ed8032bb06b6d08fbc2dc4b697df88745243
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84205
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-24 10:40:44 +00:00
Curtis Chen
735ca7f24a mb/google/rex/{deku,karis}: Enable RTD3 for SSD
Deku S0ix is blocked by the SSD. Enable RTD3 for the SSD to unblock
S0ix. RTD3 for SSDs has already been enabled on Rex and Screebo, too.
To prevent this S0ix blocking issue, RTD3 should also be enabled for
Karis.

BUG=361011799
TEST=Run suspend_stress_test and check whether DUT can enter S0iX.

suspend_stress_test w/o this CL
(with Phison PCIE Gen4 SSD PSENN256GA87FC0)
    Suspend failed, s0ix count did not increment from 19182060
    Substate   Residency
    S0i2.0     0
    S0i2.1     0
    S0i2.2     0
    And PC10 residency is only 60% (by SoCWatch)

suspend_stress_test w/ this CL
(with Phison PCIE Gen4 SSD PSENN256GA87FC0)
    Substate   Residency
    S0i2.0     0
    S0i2.1     19186
    S0i2.2     3389654
    And PC10 residency is ~90% (by SoCWatch)

Change-Id: Iaded43a84ad1e245106d36a9d4aa83c40b046649
Signed-off-by: Curtis Chen <curtis.chen@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84452
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Derek Huang <derekhuang@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-24 05:19:22 +00:00
Subrata Banik
2df166f700 mb/google/brya/var/vell: select SOC_INTEL_RAPTORLAKE
Select SOC_INTEL_RAPTORLAKE to force coreboot to use the RPL FSP headers
for FSP as vell is using a converged firmware image.

This effort also helps to save vell boot time by 80-100ms as RPL FSP is
better optimized.

Additionally, Raptor Lake platform only needs 1 SIPI-SIPI which saves
10ms of the boot time.

BUG=b:352330495
TEST=Able to build and boot google/vell.

warm reboot time w/o this CL

```
Total Time: 1,408,669
```

warm reboot time w/ this CL

```
Total Time: 1,235,651
```

Change-Id: I8f7dd76f00cfeff2908aeb805524706ac23403fa
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84491
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-24 02:10:50 +00:00
Subrata Banik
ccf67fd971 mb/google/brya/var/vell: Disable I2C6 controller
This patch disables unused I2C6 controller for the 'vell' variant of
the 'brya' mainboard.

BUG=b:352330495
TEST=Able to build and boot google/vell.

Change-Id: I5b39e44bb64bf2285c962249c0d94a8d5325f0c7
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84490
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2024-09-24 02:10:44 +00:00
Jamie Ryu
279946792d soc/intel/pantherlake: Disable Total Memory Encryption
TME, Total Memory Encryption will be enabled once the feature is
fully verified with Panther Lake.

Change-Id: I600c8a499df3b8796df35813422d0e89f67cc630
Signed-off-by: Jamie Ryu <jamie.m.ryu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84418
Reviewed-by: Wonkyu Kim <wonkyu.kim@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Jérémy Compostella <jeremy.compostella@intel.com>
2024-09-23 16:31:57 +00:00
Ana Carolina Cabral
183a17e42f mb/amd/birman_plus: Fix menuconfig option for EC firmware path
Menu option wasn't showing due to wrong config flag.

Change-Id: I30592a8c3e57017473511366a8cf11928e55b5e9
Signed-off-by: Ana Carolina Cabral <ana.cpmelo95@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84438
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-23 15:24:11 +00:00
Tyler Wang
a46e5e09b8 mb/google/rex: Create kanix variant
Create the kanix variant of the rex0 reference board by copying
the template files to a new directory named for the variant.

(Auto-Generated by create_coreboot_variant.sh version 4.5.0).

BUG=b:368501705
TEST=util/abuild/abuild -p none -t google/rex -x -a
make sure the build includes GOOGLE_KANIX

Change-Id: Id74a084ed3cebb65625166e3098f43e41a63f5f9
Signed-off-by: Tyler Wang <tyler.wang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84432
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: David Wu <david_wu@quanta.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-23 10:37:35 +00:00
Jincheng Li
e8bff7c010 Documentation/soc/intel/xeon_sp: Update Xeon 6 test config
Change-Id: Ia54af1495a0146be3e5c3e74a0dcfef6785d6371
Signed-off-by: Jincheng Li <jincheng.li@intel.com>
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84331
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-23 08:37:40 +00:00
Shuo Liu
7f7728decd Documentation/soc/intel/xeon_sp: Update community preview guide
Update community preview guide for full Xeon 6 supports.

Change-Id: If0eb6d889e9c1c2ba162a94daeee260d51f48b83
Signed-off-by: Shuo Liu <shuo.liu@intel.com>
Signed-off-by: Jincheng Li <jincheng.li@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84330
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
2024-09-23 08:37:07 +00:00
Sowmya V
4e3c709ebe mb/google/nissa/var/nivviks: Update the power resource for NVM and VCM
Earlier change (https://review.coreboot.org/c/coreboot/+/84019)
pushed to resolve the privacy LED blinking issue regressed the camera
autofocus functionality. This change updates the power resource for
NVM and VCM in line with the tivviks schematics to fix the issue.

BUG=b:365899407
TEST=Build and boot tivviks. Verified the Autofocus and all the
camera basic sanity tests.

Change-Id: Id3e256d59982ac176844e289f18ee450079704b9
Signed-off-by: Sowmya V <v.sowmya@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84420
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Ronak Kanabar <ronak.kanabar@intel.com>
2024-09-23 08:28:38 +00:00
Yang Wu
8031de24d4 mb/google/corsola: Distinguish MT8186T's SKU ID from MT8186
Compared to MT8186, MT8186T requires initializing the PMIC MT6319 in the DTS file, which necessitates using different SKU ID to distinguish between the MT8186 and MT8186T.

For MT8186, factory pre-flashed 0x7fffffff as unprovisioned SKU ID and
kernel can use the corresponding DTS file. To make MT8186T functional
on unprovisioned devices, change the SKU ID to 0x7ffffeff, so that the
correct DTS file will be selected by the payload.

BUG=b:365730137
TEST=1. Pre-flashed 0x7fffffff and boot OS.
     2. Check OS boot normally by 0x7ffffeff.
BRANCH=corsola

Change-Id: I91306d3abd508e104851916882fb36a4fd302036
Signed-off-by: Yang Wu <wuyang5@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84342
Reviewed-by: Knox Chiou <knoxchiou@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
2024-09-23 04:07:41 +00:00
Subrata Banik
44907f28ec mb/google/fatcat: Update Flash Map layout
This patch updates the fatcat flash map layout to accommodate the growth
in Panther Lake IFWI blobs over Meteor Lake.

Release FMD:
 SI_ALL: 8MB -> 9MB
 SI_BIOS: 24MB -> 23MB
   RW_UNUSED: 4MB -> 3MB

Debug FMD:
 SI_ALL: 8MB -> 9MB
 SI_BIOS: 24MB -> 23MB
   RW_UNUSED: 3MB -> 2MB

TEST=Able to build google/fatcat inside chroot.

Change-Id: I8febb4df5d3b3eb07ebff8e56a1ce2dfd2f52e7d
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84453
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Pranava Y N <pranavayn@google.com>
2024-09-23 02:06:26 +00:00
Nicholas Sudsgaard
29394aa789 mb/gigabyte/ga-b75-d3v: Correct number of jacks in hda_verb.c
This was found due to the `_Static_assert()` from CB:84360 failing.

Change-Id: I6012fd948b4350bda7af5390badac737553fa872
Signed-off-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84430
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-22 07:10:30 +00:00
Julia Kittlinger
ad20ddeb8c MAINTAINERS: Add Julia Kittlinger as reviewer for ACER G43T-AM3
Change-Id: I389934afcc533702078fc5533736f5e4a98cd553
Signed-off-by: Julia Kittlinger <julia.kittlinger@pm.me>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84444
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>
2024-09-22 00:15:34 +00:00
Jeremy Compostella
f2462d417d soc/intel/ptl: Remove usb2_port_reset_msg_en config structure field
Similarly to what is done in Meteor Lake, the PortResetMessageEnable
UPD can be set based on usb2_port[].type_c setting and therefore
usb2_port_reset_msg_en is not necessary.

BUG=b/348678529
TEST=Build for fatcat

Change-Id: I914f73ff06bfb801fc319b45b23d7ce4cb7a6d57
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84429
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-21 05:03:35 +00:00
Jeremy Compostella
ecc3596cb2 soc/intel/ptl: Provide the TCSS port policy setting options
Each TCSS port can be associated a setting via the tcss_cap_policy
device tree field. The setting can be picked within five values listed
by this commit.

BUG=b/348678529
TEST=fatcat board build tcss_cap_policy[0]=TCSS_TYPE_C_PORT_FULL_FUN

Change-Id: I914f73ff06bfb801fc319b45b23d7ce4cb7a6d56
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84419
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Pranava Y N <pranavayn@google.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-21 05:03:30 +00:00
Jeremy Compostella
7e67198e41 efi: Set EFIAPI to 32-bit ABI for FSP1_1
Because PLATFORM_USES_FSP2_X86_32 default to false when
PLATFORM_USES_FSP1_1, efi_datatype.h wrongly defines EFI as
__attribute__((__ms_abi__)).

TEST=When some code involved in the build of a platform using
     FSP 1.1 such as Google/CYAN includes efi_datatype.h, it does
     not hit the following error: '__ms_abi__' calling convention
     is not supported for this target

Change-Id: I914f73ff06bfb801fc319b45b23d7ce4cb7a6d5d
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84402
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-20 23:25:30 +00:00
Nicholas Sudsgaard
dd7b671f46 mb/intel: Correct number of jacks in hda_verb.c
This was found due to the `_Static_assert()` from CB:84360 failing.

Change-Id: I08881e3fb25abca8c34a04b3bea6534c0dbf391a
Signed-off-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84424
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-20 23:24:30 +00:00
Nicholas Chin
cb7c58f626 Makefile.mk: Skip unnecessary recompiles when static.{c,h} are updated
The generated static.c file output by sconfig is currently added as a
prerequisite for all objects to ensure that static.h exists before
compiling anything that might need it. However, this forces every single
object out of date when the compiled devicetree is updated, even though
not every file actually needs static.h.

Only static.h actually needs to exist before compilation of other
objects, since static.c is an independent compilation unit that doesn't
need to exist before other objects can be built. Thus, change the
prerequisite from static.c to static.h, and add a rule for static.h that
depends on static.c. The recipe is a simple `true` since sconfig
generates static.c and static.h at the same time. To prevent unnecessary
recompiles, make static.h an order-only prerequisite [1] using the new
generated files argument for create_cc_template to ensure that the
header exists before any object might need it, but without forcing a
recompile of all objects by default whenever it is updated.

On a clean build, all objects will be compiled since they do not exist,
and these will occur after static.h is generated due to the default
order-only prerequisite. On subsequent incremental compiles, sources
that do need static.h will be appropriately marked out of date due to
the generated .d dependency files from the compiler, which list static.h
as a normal prerequisite for each objects that do include it, which
overrides the default order-only prerequisite. The dependency files
generated for all other objects will not include static.h, and thus the
objects will not be updated since the default order-only dependency does
not force them out of date.

After updating the devicetree of qemu-i440fx after a clean build,
comparing the build log with `make --debug=why` with the generated
dependency files indicates that only objects that actually depend on
static.h were rebuilt, instead of every object. Running a timeless
incremental build after making a change in the devicetree yielded
identical roms when performed with this patch and main, with the only
difference being the number of objects that needed to be rebuilt. Also
tested with the E6430.

[1] https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html

Change-Id: I34efc162760ae703285f3982fa16cc23a86b37f6
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84387
Reviewed-by: Nico Huber <nico.h@gmx.de>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-20 13:04:10 +00:00
Nicholas Chin
924337184e Makefile: Allow defining order-only prerequisites in create_cc_template
Generated files such as static.h are currently added as prerequisites
for all compilation units to ensure that they exist and are up to date
before anything that might need them is compiled. However, this has the
side effect of forcing every compilation unit out of date when such
files are regenerated, even if the object has no dependency on the
generated file. GNU Make has order-only prerequisites [1] which are used
to define prerequisites that must be updated before a given target, but
which don't force the target out of date.

Add a new argument to create_cc_template, similar to the "additional
dependencies" argument, which allows dependencies on such generated
files for a specified object class and source suffix to be defined. This
new functionality will be utilized in subsequent commits to fix up the
dependencies on generated files.

Objects that do depend on generated headers will still be handled
correctly due to the .d dependency files that are generated by the
compiler during the build, which declare normal prerequisites to any
headers an object directly or indirectly includes. As per the GNU Make
documentation, normal prerequisites take precedence over order-only
prerequisites, so the header dependencies declared in the .d files will
override the order-only one declared through create_cc_template.

This does mean that a necessary rebuild of an object due to a generated
file may be missed if the dependency file from the compiler is missing,
but this is an unusual situation that is unlikely to occur during normal
incremental builds.

[1] https://www.gnu.org/software/make/manual/html_node/Prerequisite-Types.html

Change-Id: I50d87b3d9012967eefb197be12b2e0f096b0b67c
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84386
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-20 13:04:05 +00:00
kiwi liu
c867f746fe soc/mediatek/common: Correct eMMC src clk frequency to 400 MHz
Mediatek SoCs start operating at eMMC clock around 3MHz right after
power-on due to wrong src_hz value. In JEDEC spec, eMMC clock needs
under 400kHz.

When we need to set a clock output frequency, we actually set a
frequency division value. Originally, we set the source clock
frequency to 50MHz, the target frequency to 400KHz, and get the
division value 128. However, the actual source clock frequency is
400MHz, so the final actual output is 400MHz/128=3.125MHz.

So we correct source clock frequency to 400MHz for eMMC output
clock of 400KHz.

BUG=b:356578805
TEST=test boot ok; measure eMMC clock ok; no boot time impact

Change-Id: I9c8836b23fb21e9b0bdc80fbe85142ea0fa5e381
Signed-off-by: Mengqi Zhang <mengqi.zhang@mediatek.corp-partner.google.com>
Signed-off-by: Kiwi Liu <kiwi.liu@mediatek.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84298
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
2024-09-20 12:31:09 +00:00
Cliff Huang
7fc3c34dc3 soc/intel/common/block/acpi: Fix GPE1 blocks to ACPI FADT table
Use CONFIG_SOC_INTEL_COMMON_BLOCK_ACPI_HAVE_GPE1 to add GPE1 block
rather than checking if GPE1_STS(0) is '0'.

BUG:362310295
TEST=with the flag, boot google/fatcat or intel/ptlrvp to OS and check
that FADT table includes GPE1. FADT should have:
GPE1 Block Address : 00001810
GPE1 Block Length : 18
GPE1 Base Offset : 80
Without the flag, boot to OS and check that FADT table does not include
GPE1. FADT should have:
GPE1 Block Address : 0
GPE1 Block Length : 0
GPE1 Base Offset : 0

Signed-off-by: Cliff Huang <cliff.huang@intel.com>
Change-Id: Idd8115044faff3161ea6bd1cae6c0fe8aa0ff8d7
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84392
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-20 12:29:12 +00:00
Kevin Yang
fe2384a95c mb/google/dedede/var/beadrix: Add LTE only daughterboard support
Due to beadrix DB has C1 port before, and add FW_CONFIG without C1 port for LTE sku.

BUG=b:364431483
BRANCH=firmware-dedede-13606.B
TEST=emerge-dedede coreboot chromeos-bootimage

Set fw config to DB_PORTS_LTE and check
1.fw_config match found: DB_PORTS=DB_PORTS_LTE <= show LTE present message
2.USB3 port 3: enabled 1 <= LTE port enable

Change-Id: Ica5a2d6e19421b132a0bdbad77806a17e2c1ce69
Signed-off-by: Kevin Yang <kevin.yang@ecs.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84232
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2024-09-20 12:27:43 +00:00
Sowmya Aralguppe
0aa854f96b mb/google/brox: Remove psys related implementation
psys is not an optimal solution for no/low battery boot. Hence remove
function and macros related to psys implementation.

BUG=b:335046538
BRANCH=None
TEST=Build and boot on brox board

Change-Id: I6c0e9561367b5846b00be27012f002dd7c299414
Signed-off-by: Sowmya Aralguppe <sowmya.aralguppe@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84397
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Reviewed-by: Ashish Kumar Mishra <ashish.k.mishra@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-19 22:37:15 +00:00
Nicholas Sudsgaard
ec3a0d674e mb/gigabyte/ga-945gcm-s2l: Correct number of jacks in hda_verb.c
This was found due to the `_Static_assert()` from CB:84360 failing.

Change-Id: I01db9dad872cd4c9238b6c6aac73f3e6367710a4
Signed-off-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84416
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
2024-09-19 16:10:45 +00:00
Nicholas Sudsgaard
e4084aa96b mb/system76/oryp9: Correct number of jacks in hda_verb.c
This was found due to the `_Static_assert()` from CB:84360 failing.

Change-Id: I3870bcd2482e55a5abcbd27cd0be18f25a35afbc
Signed-off-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84415
Reviewed-by: Tim Crawford <tcrawford@system76.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-19 16:08:42 +00:00
Tim Crawford
190856897d mb/system76/mtl: Enable gfx register for GMA ACPI
Add gfx register so GMA ACPI data is generated. Fixes brightness
controls on Windows.

Change-Id: I10948fb2ba670ba5232f1b116acdd1820ad0c07d
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84224
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-19 15:25:11 +00:00
Jeremy Soller
7664ad8a2f soc/intel/mtl: Hook up GMA ACPI brightness controls
Add function needed to generate ACPI backlight control SSDT, along with
Kconfig values for accessing the registers.

Change-Id: Ied08e5e9fe4913bd60474ed7dcf88b945172558d
Signed-off-by: Jeremy Soller <jeremy@sysetm76.com>
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/82729
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2024-09-19 15:25:00 +00:00
Cliff Huang
5105888e2d soc/intel/common/block/acpi: exclude DMI fixed memory range if no DMI
In newer SOC,  such as PTL, there is no DMI. Exclude DMI memory range in
northbridge.asl if DMI_BASE_SIZE is '0'

BUG=b:348678529
TEST=Build CB with DMI_BASE_SIZE set to '0' in the SOC directory. Boot
to OS and check ACPI PDRC device from the ACPI DSDT table. There should
not have an entry for DMI in its _CRS method.

Verified on Intel® Simics® Pre Silicon Simulation platform
     for PTL using google/fatcat mainboard.

Signed-off-by: Cliff Huang <cliff.huang@intel.com>
Change-Id: I971af2eb214b5940fa09d9dc0f9717bb5f0dfb4d
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84349
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-19 13:47:09 +00:00
David Wu
c6493d3b80 mb/google/nissa/var/riven: enable WIFI SAR
According to the CL:chrome-internal:7651905,
Riven will use the fw_config to separate SAR setting.

CNVI + ID_0 --> wifi_sar_0.hex for WIFI6
PCIE + ID_1 --> wifi_sar_9.hex for WIFI7

BUG=b:366060274
TEST=build, enabled iwlwifi debug, and check dmesg as below.
iwl_sar_fill_table   Chain[0]:
iwl_sar_fill_table     Band[0] = 132 * .125dBm
iwl_sar_fill_table     Band[1] = 136 * .125dBm
iwl_sar_fill_table     Band[2] = 136 * .125dBm
iwl_sar_fill_table     Band[3] = 136 * .125dBm
iwl_sar_fill_table     Band[4] = 136 * .125dBm
iwl_sar_fill_table     Band[5] = 144 * .125dBm
iwl_sar_fill_table     Band[6] = 144 * .125dBm
iwl_sar_fill_table     Band[7] = 144 * .125dBm
iwl_sar_fill_table     Band[8] = 144 * .125dBm
iwl_sar_fill_table     Band[9] = 144 * .125dBm
iwl_sar_fill_table     Band[10] = 144 * .125dBm
iwl_sar_fill_table   Chain[1]:
iwl_sar_fill_table     Band[0] = 132 * .125dBm
iwl_sar_fill_table     Band[1] = 136 * .125dBm
iwl_sar_fill_table     Band[2] = 136 * .125dBm
iwl_sar_fill_table     Band[3] = 136 * .125dBm
iwl_sar_fill_table     Band[4] = 136 * .125dBm
iwl_sar_fill_table     Band[5] = 144 * .125dBm
iwl_sar_fill_table     Band[6] = 144 * .125dBm
iwl_sar_fill_table     Band[7] = 144 * .125dBm
iwl_sar_fill_table     Band[8] = 144 * .125dBm
iwl_sar_fill_table     Band[9] = 144 * .125dBm
iwl_sar_fill_table     Band[10] = 144 * .125dBm

Cq-Depend: chrome-internal:7651905
Change-Id: I647d64a008991a7a20791b2c87ea6308af6bb82e
Signed-off-by: David Wu <david_wu@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84339
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2024-09-19 13:46:43 +00:00
Mario Scheithauer
9c51ca52a4 soc/intel/ehl/fsp_params: Do not re-enable 'PchPwrOptEnable' for real-time tuning
If real-time tuning was enabled, 'PchPwrOptEnable' was set two times
with different values. This patch fixes the issue.

BUG=none
TEST=Enabled FSP UPD debug output and checked 'PchPwrOptEnable' offset

Change-Id: I2f31015c1da51a4ae1b8d5226f5d7b60a6023f3d
Signed-off-by: Mario Scheithauer <mario.scheithauer@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84399
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-19 09:07:32 +00:00
Mario Scheithauer
5d96f0d2e8 mb/siemens/{mc_ehl2,mc_ehl3,mc_ehl5}: Enable real-time tuning in FSP
The real-time feature should also be activated for all mc_ehl
mainboards, as it has already been done for mainboard mc_ehl1. It
improves performance in the real-time environment for these mainboards.

Change-Id: I04859b2f32bc11344b0620925f2414e7a6df625e
Signed-off-by: Mario Scheithauer <mario.scheithauer@siemens.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84391
Reviewed-by: Werner Zeh <werner.zeh@siemens.com>
Reviewed-by: Uwe Poeche <uwe.poeche@siemens.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-18 21:54:07 +00:00
Jameson Thies
0f9de13d3a mb/google/brox: Switch USB-C port locations
The ordering of the USB-C port locations is swapped. When facing the
left panel, the correct ordering is port 1 (left) then port 0 (right).
Swap the positions of the two USB-C ports to their correct values.

BUG=b:349822718
TEST=Booted to OS, confirmed correct physical_location at
/sys/class/typec.

Change-Id: I98e3042c64aba885b602c99916734c2dbb9d66bd
Signed-off-by: Jameson Thies <jthies@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84403
Reviewed-by: Caveh Jalali <caveh@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2024-09-18 21:53:34 +00:00