Commit graph

60,654 commits

Author SHA1 Message Date
Elyes Haouas
ecbca16bf4 tree: Replace union {0} initializers with {} for C23 compliance
This change addresses GCC-15 behavior where {0} union initializers only
clear the first member, leaving padding bits uninitialized. The new {}
initializer ensures full union clearing as required by C23.

Change-Id: I1d9b063d8bdd3d2f0b0f67e6c20eb484ff6a5cc5
Signed-off-by: Elyes Haouas <ehaouas@noos.fr>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88732
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
2025-08-11 16:40:34 +00:00
Eren Peng
b74d2b77d2 mb/google/trulo/var/kaladin: Add WIFI SAR table
Add WIFI SAR table for intel WIFI SAR table

BUG=b:434861866
TEST=Build and flash to DUT, check that SAR table is loaded by cbmem -c | grep SAR

Change-Id: Idf48254ec43535ff51859ecbec3ea75b7c35e70c
Signed-off-by: Eren Peng <peng.eren@inventec.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88702
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-11 15:23:05 +00:00
Walter Sonius
4b46a0690e mb/hp: Add HP ProDesk 600 G1 SFF Business PC (Haswell / NPCD379 SIO)
The HP ProDesk 600 G1 SFF comes with a mainboard named "Merlin Rev.A"
which is also used by the EliteDesk 800 G1 SFF and Z230 SFF series.
Differences are in available USB2, USB3 and SATA (headers / ports)
, PCIe (slots / length), video outputs (number / type) or chipset used.
While the EliteDesk 800 G1 SFF shares the same OEM BIOS update file, the
Z230 SFF differs. This port was made on a model with 2 DP / DP++, 1 VGA,
4 USB2 and 2 USB3 backpanel ports, 4 SATA ports and 4 PCIe slots
(1 16x and 3 1x length) using a Q85 chipset (without heat sink).

Model: HP ProDesk 600 G1 SFF Business PC
Regulatory Model: TPC-F046-SF
Product No. J0E94ET#ABH, PROMO600PDeSi54590500hq4X46k NL (C8T44AV)
Mainboard: Merlin Rev.A, 795972-001

Pure autoport (initial commit) doesn't boot, more patches will bring up
general Haswell fixes, vendor/product naming corrected, RAM SPD MAP
slot detection, devicetree edits enabled all PCIe ports and some NPCD379
code from other HP desktops makes most superio related functions work.

Flash instructions:
After setting the FDO jumper on the motherboard the whole ROM can be
dumped, however writing is locked for some part of the BIOS region.
An external flasher ch341a_spi (3.3v mod) was used with a SOIC 8 pomona
probe to flash the MX25L12873F in situ without any issues. Only the
power of the USB programmer was used, and the board's main PSU was
disconnected during flash!

Tested:
 - coreboot 25.06-77-g812d0e2f626d as base
 - EDK2 (MrChromebox/2502)
 - SeaBIOS 1.16.3
 - Broadwell mrc.bin (tidus)
 - Haswell mrc.bin (peppy)
 - Haswell NRI
 - libgfxinit textmode (SeaBIOS) / framebuffer (EDK2)
 - both DP / DP++ (HDMI) & VGA output available during POST, BOOT and OS
 - Pentium G3220 / Xeon E3-1225 v3 / Xeon E3-1231 v3
 - RAM 1/2/3/4 slots filled using mixed 1.35 / 1.5v 1333 / 1600MHz DIMMs
	(NRI & mrc.bin)
	0/1: 4GB DDR3-1600 - Samsung M378B5173BH0-CK0 (2013-W30)
	0&2: 4GB DDR3-1600 - Kingston 9905402-174.A00G (2015-W33)
	1/2: 2GB DDR3-1333 - Kingston 99U5458-001.A00LF (2010-W29)
	0/3: 2GB DDR3-1600 - Micron 8JTF25664AZ-1G6M1 (2013-W37)
 - Fedora MATE 42 (Kernel 6.14)
 - KDE NEON 6.4 (Kernel 6.11)
 - MS Windows 10 / 11
 - Audio Outputs: 2x DP, Headphone, Line Out, Speaker (left&right chan.)
 - Audio Input: Line In (back)
 - USB2/3 all ports (including internal headers)
 - Intel I217-LM Gb LAN
 - SATA 4 ports
 - PCIe 16x slot @2.5GT/s (or 8x @8GT/s) and three 1x slots @5GT/s
 - dGPU nVidia GeForce GT640-2GD3 / AMD Radeon RX460 4GB (PCIe 8x)
	(disabled Hide PEG devices, option ROMs load in SeaBIOS & EDK2)
 - PS/2 ports (both Keyboard and Mouse)
 - Serial port (coreboot console & OS)
 - PowerButton (Poweron/Poweroff/Wake)
 - LEDs HDD & POWER (both off during suspend)
 - Shutdown/Reboot/Suspend
 - power_on_after_fail= Disable / Enable / Keep
 - Strip down the Intel ME/TXE firmware (make menuconfig)
 - Disabling ME HECI (manually disable in devicetree.cb)
 - flashrom -p internal -c "MX25L12835F/MX25L12873F" #(read & write)

Not tested:
 - COMB (serial port header)
 - PAR (parallel port header)
 - Audio Input Microphone Port (front)
 - USBDEBUG PORT
 - VBIOS

Not working:
 - CMOS checksum errors only on psu_fan_lvl resets to defaults sometimes
 - dual GPU (iGPU shows visual glitches while dGPU works fine)
	This occurs on both Broadwell, Haswell mrc.bin and Haswell NRI,
	may show i915 error in dmesg after waking from suspend!
	All dGPU testing have been done with a cheap PCIe riser cable!
 - Disable Intel ME PCI interface (make menuconfig)
 - PSU FAN control its either full OFF or full ON see instruction!
 - TPM Windows 10/11 detects it but "bios failed to communicate error"
 - Wake on LAN (Power on from coldboot work, but not wake from suspend)

PSU FAN instructions:
If the superio HWM (devicetree.cb node pnp 2e.8) is set to on, the FAN
will turn OFF during post and stays OFF. If the superio HWM pnp 2e.8 is
set to off the FAN will stay ON and will rampup after post in roughly a
minute to its maximum RPM and will stay that way (current default)!

NRI note:
EDK2 shows 0GB instead of the actual RAM amount installed. While using
Haswell mrc.bin EDK2 shows the correct amount of RAM. The earlier noted
RAM modules have also been tested using NRI in Memtest86+ v7.20 which
still correctly displays and test the total amount of RAM.

The data.vbt blob was extracted using debugfs from the OEM firmware
v2.65 enabling both Displayport / DP++ (HDMI) and VGA video outputs.

Theoretically like the "compaq_8200_elite_sff" it should be possible
to flash internally using a 2 step flash procedure using a minimized ME
a small SeaBIOS based coreboot and a temporary flash layout inside the
writeable BIOS region.

Change-Id: If1082e0b56364f32e43f954b589fa627cbaee50c
Signed-off-by: Walter Sonius <walterav1984@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88616
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-11 15:22:18 +00:00
Luca Lai
2339508b6c mb/google/trulo/var/pujjolo: Update P-sensor parameters
Because RF team verified the P-sensor related function and
give suggestion that follow pujjoga's setting.

BUG=b:411558536
TEST=Build and boot to OS and check with RF team.

Change-Id: I938505af02d9d3f5ba98f34fef58b67b48f049db
Signed-off-by: Luca Lai <luca.lai@lcfc.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88703
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-11 15:22:02 +00:00
Sowmya Aralguppe
cd2a969c82 soc/intel/pantherlake: Remove storage-off related code
Crashlog storage and power management in PTL is changed to a unified
and persistent model,removing the need for manual SRAM power-down
commands after crashlog extraction.

Change-Id: I5bea1c816bbb68a4b2b21cc3be6cf118b4282fe7
Signed-off-by: Sowmya Aralguppe <sowmya.aralguppe@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88512
Reviewed-by: Jamie Ryu <jamie.m.ryu@intel.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Bora Guvendik <bora.guvendik@intel.com>
2025-08-11 15:21:31 +00:00
Fabian Meyer
fe6fa36504 mb/asrock: Add SPR 1S server board ASRock Rack SPC741D8-2L2T/BCM
SPC741D8-2L2T/BCM is a Xeon SP 4th/5th gen (Eagle Stream) platform with:
- 1 SPR socket, 8 DDR5 DIMMs each
- 4x PCIe 5.0 / CXL 1.1 x16 slots
- 2x MCIO PCIe 5.0 x8 and 1 MCIO on PCH
- 2x M.2 PCH PCIe slots
- 2x 10 Gbit/s NIC and 2x 1 Gbit/s i210 NIC

It has an AST2600 BMC for remote management and most SuperIO functions
such as serial and an additional Nuvoton NCT6796D-E for others.

Working:
- All CPU cores of a 4/5th-gen Xeon SP are available at full speed
- All 8 memory DIMMs (KSM48R40BS8KMM-16HMR) with 32 bit execution
- All 4 PCIe slots
- On-board USB ports
- Video output via the AST2600 (on-board VGA)
- M.2 devices

Untested:
- TPM header

Not working:
- Serial port I/O, related to the AST2600 SuperIO not being located at
  the default address of 0x2E (it uses 0x4E instead).
- PC speaker (buzzer), for the same reason.
- M.2 SSDs only use PCIe 3.0 x2, however, they should be capable of
  PCIe 3.0 x4 speeds, which can be observed using the vendor firmware.
- Using more than 1 DIMM with 64 bit execution (the FSP
  temp_ram_exit function never returns)

TEST=build/boot to Linux 6.12 using mainline edk2

Change-Id: I5b00a6f4ee68f71203940644860bf095615a9412
Signed-off-by: Fabian Meyer <fabian.meyer@student.kit.edu>
Co-authored-by: Yussuf Khalil <yussuf.khalil@kit.edu>
Co-authored-by: Felix Zimmer <felix.zimmer@student.kit.edu>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/87747
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-by: Shuo Liu <shuo.liu@intel.com>
2025-08-11 15:21:19 +00:00
Luca Lai
b486c84b23 mb/google/trulo/var/pujjolo: Update DTT settings for thermal control
The DPTF parameters were defined by the thermal team.
Based on thermal table in b:420800911#comment1

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

Change-Id: I5fe20642505be50194084cd859e8fa20b4127dd0
Signed-off-by: Luca Lai <luca.lai@lcfc.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88554
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-11 02:10:24 +00:00
Luca Lai
ece0072d1c mb/google/trulo/var/pujjolo: Update verb table to fix pop noise
Because there is a pop noise when bios booting stage, so modify
verb table to fix the issue.

Change description by vendor:
The Class-D K DC function has been added (which is the main solution
this time), along with enabling silence detect to filter out noise
below -84 dB to prevent it from being played through the speaker.

BUG=b:430749506
TEST= Build and boot to OS, and check by EE and Realtek vendor.

Change-Id: I3ac6cc82daf2ea78e73392ad67a5f4da131ddef5
Signed-off-by: Luca Lai <luca.lai@lcfc.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88623
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2025-08-11 02:10:17 +00:00
Subrata Banik
795157a606 mb/google/bluey: Increase MRC cache size
Increase the size of the Memory Reference Code (MRC) cache to prevent
boot failures.

Previously, the MRC cache was 64K (32K for recovery and 32K for
read/write), which was insufficient for the firmware. This change
expands the UNIFIED_MRC_CACHE to 128K, with RECOVERY_MRC_CACHE and
RW_MRC_CACHE each receiving 64K.

BUG=b:437402936
TEST=Able to build and boot google/quenbi till depthcharge.

w/o this patch:

```
[ERROR]  REGF metadata allocation failed: 3880 data blocks 2048 total blocks
[ERROR]  MRC: failed to update 'RW_MRC_CACHE'.
```

w/ this patch:

```
[DEBUG]  FMAP: area RW_MRC_CACHE found @ c10000 (65536 bytes)
...
[DEBUG]  FMAP: area RW_MRC_CACHE found @ c10000 (65536 bytes)
[DEBUG]  MRC: Checking cached data update for 'RW_MRC_CACHE'.
[DEBUG]  read SPI 0xc10010 0xf27c: 5011 us, 12387 KB/s, 99.096 Mbps
[DEBUG]  MRC: cache data 'RW_MRC_CACHE' needs update.
[INFO ]  REGF update can't fit. Will empty.
[DEBUG]  SF: Successfully erased 65536 bytes @ 0xc10000
[DEBUG]  MRC: updated 'RW_MRC_CACHE'.

```

Change-Id: Ie456f9ab870eab06c2d23cb5d2734faf644a2176
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88727
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-10 02:47:55 +00:00
smadhesu
34d9305dcc soc/qc/x1p42100: Pack QcLib DTB into CBFS
This patch enables packaging of the QcLib DTB into CBFS.

TEST=Verify QcLib execution on Bluey platform.

Change-Id: I3e70a6615336cae783456f4d2f72b811fd9b6edc
Signed-off-by: smadhesu <smadhesu@qualcomm.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88723
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-10 02:47:39 +00:00
Julius Werner
8f09629fb1 spi_flash: Fix initialization of flags field in lb_spi_flash
Commit 8dec5fcaf8 ("drivers/spi: Add 4-byte address mode flag to
lb_spi_flash") split the existing 32-bit `erase_cmd` field into multiple
fields. The new `flags` field thus created is used to pass information
about whether the flash is in 4-byte address mode.

Unfortunately, we forgot to initialize the new fields in the case that
the flash is not in 4-byte address mode. This means it can have any
arbitrary value, including values where the new flag bit is accidentally
set (causing flash access errors in the payload).

This patch fixes the problem and tries to prevent further issues with
field changes in the future by explicitly zeroing the entire coreboot
table structure before starting to fill in the values.

Change-Id: I3ad9812fc76ae2989dcf4a294034c4e31456c74e
Signed-off-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88700
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
2025-08-09 01:36:39 +00:00
Zhongtian Wu
ab2ef8878c mb/google/trulo/var/pujjocento: Update touchscreen information
The properties of PARA3406 and PARA3408 are the same
Update PARA3406&PARA3408 to PARA340X

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

Change-Id: Ifed5dd9c2b0512c700f5262d7105578bc604a945
Signed-off-by: Zhongtian Wu <wuzhongtian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88705
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-08 09:33:29 +00:00
Zhongtian Wu
0bedce05d8 mb/google/nissa/var/pujjocento: Change touchpanel sequence to meet spec
Setup GPP_C0 and GPP_C1 in early and romstage to meet spec requirements
Spec require TP_Reset ON after VTSP ON 0-10ms.
Before modification,TP_Reset ON before VTSP ON.
After modification,TP_Reset ON after VTSP ON 1ms.

BUG=b:421455835
BRANCH=none
TEST=Build and boot to pujjocento. Verify touchpanel sequence

Change-Id: I7d3d79c9f67edf42b64316757c448fe385207a86
Signed-off-by: Zhongtian Wu <wuzhongtian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88704
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2025-08-08 09:31:22 +00:00
Jian Tong
543fb60ec4 mb/google/brox/var/lotso: Set slew rate to 1/8
Set slow slew rate VCCIA and VCCGT to SLEW_FAST_8.
The slope of the voltage measured by the oscilloscope 4 mV/us is close to the theoretical value of 3.75 mV/us.

BUG=b:404416910
TEST=emerge-brox coreboot chromeos-bootimage
	USE=fw_debug confirm SlowSlewRate set to 2 at FSP

Change-Id: I7ec05c6a20997fcc094b20fa763eb3bc030fefa1
Signed-off-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88696
Reviewed-by: Dengwu Yu <yudengwu@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-08-08 08:33:29 +00:00
Zheng Li
c114906239 mb/google/trulo/var/pujjocento: Update DTT settings for thermal control
Update DTT settings according to b:436759545#comment1 in
order to increase the limit of the charging current to 3A/1.5A.

BUG=b:436759545
TEST=emerge-nissa coreboot, and thermal engineer verifies OK.

Change-Id: I3f07884b2817904925050ef24957b5070a8cab65
Signed-off-by: Zheng Li <lizheng@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88699
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Kun Liu <liukun11@huaqin.corp-partner.google.com>
Reviewed-by: Eric Lai <ericllai@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-08 04:33:51 +00:00
Kapil Porwal
b603f23088 mb/google/bluey: Avoid using function call table
BUG=none
TEST=Build Google/Quenbi.

Change-Id: Ie2df9402c3a2cf95e150a4a4321477ddee7e9678
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88655
Reviewed-by: Julius Werner <jwerner@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-08 02:53:27 +00:00
Kapil Porwal
dc64b9659d soc/qc/cmn: Refactor qclib_load_and_run function
Move below code to `qclib_prepare_and_run()` -
1. Serial debug interface entry.
2. Enable serial output.
3. Dump interface table entries.
4. Handle reset requested by qclib.
5. Copy qclib log to cbmem.

BUG=none
TEST=Build Google/Quenbi.

Change-Id: I2f724d4da21a07fbc726dc5600cc706379b91138
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88654
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-08-08 02:53:22 +00:00
Alok Agarwal
e290bb6750 mb/baseboard/ptlrvp: Disable memory training progress bar
Set disable_progress_bar to disable the memory progress bar for fatcat
board. Removed the memory progress bar feature to enhance performance.

BUG=b:418675387
TEST=After setting disable_progress_bar, memory training progress bar is
disable.

Change-Id: Ic303aa57843039f49130c09da0345f7e7573b0e5
Signed-off-by: Alok Agarwal <alok.agarwal@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88613
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: <srinivas.kulkarni@intel.com>
2025-08-08 02:53:04 +00:00
alokagar
05a38e2af3 mb/google/fatcat: Disable memory training progress bar
Set disable_progress_bar to disable the memory progress bar for fatcat
board. Removed the memory progress bar feature to enhance performance.

BUG=b:418675387
TEST=After setting disable_progress_bar, memory training progress bar is
disabled.

Change-Id: I25302f6ed095603150d8e7e0bbe04ff96944f07c
Signed-off-by: Alok Agarwal <alok.agarwal@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88598
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-by: <srinivas.kulkarni@intel.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-08-08 02:52:58 +00:00
Patrick Rudolph
f789899dac sb/intel/common/gpio: Move register defines
Move ICH7 GPIO register defines into private scope. This enforces
the use of GPIO common code and mainboard can no longer directly
access GPIO I/O registers.

Change-Id: Iedf3e55f8aecf7b1ac6f47b29d9f88d58d1b6867
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88568
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2025-08-07 17:48:10 +00:00
Patrick Rudolph
d6ceaf72da mb/samsung/lumpy: Use gpio_base2_value
Instead of directly accessing GPIO I/O registers use existing
common code to read the SPD pin straps.

Change-Id: Ie758a4bfb35d1f81c16537cda0e26e43ac860b1e
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88567
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2025-08-07 17:47:43 +00:00
Patrick Rudolph
21639c3771 mb/getac/p470: Use common gpio functions
Use existing common code instead of directly accessing GPIO
I/O registers. Makes code more readable.

Change-Id: Ieebf37372f1c44a877ef6e77eecaa9049bf3aec4
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88566
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2025-08-07 17:47:37 +00:00
Patrick Rudolph
8d4bb94663 sb/intel/common/gpio: Add and use gpio_invert()
Introduce a new helper function to set the INVERT bits on
the first GPIO bank. Use it on google link instead of using
a custom implementation.

Change-Id: Icfdbc3dcae5678695b6fcc9dab7ff97d291963cd
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88565
Reviewed-by: Frans Hendriks <fhendriks@eltan.com>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-07 17:26:22 +00:00
Cindy Lu
85306062d8 mb/google/skywalker: Create variant Tarkin
Create the variant Tarkin.

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

Change-Id: Iad24d09b9d505fd95264c9179d8e202262b1d3dd
Signed-off-by: Cindy Lu <luyi8@huaqin.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88653
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yang Wu <wuyang5@huaqin.corp-partner.google.com>
2025-08-07 17:23:23 +00:00
Kapil Porwal
1da2f46db8 soc/intel/alderlake: Restore mem_init_override_channel_mask()
Commit 87c9bb3994 ("soc/intel/adl: Fill in SPD data on both channels
of DDR5 memory") accidentally deleted the function
mem_init_override_channel_mask().

Additionally, skip checking for channel 0 while consuming the channel
disable mask.

BUG=none
TEST=CQ

Change-Id: I6217b2801e88b8ab98b2a3acaa0cb9580b05bb64
Signed-off-by: Kapil Porwal <kapilporwal@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88697
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
2025-08-07 07:58:39 +00:00
Eren Peng
f0d5b25e02 mb/google/trulo/var/kaladin: Add firmware name and gpio for ISH
Add firmware name and update gpio pins GPP_B3 GPP_B4 for ISH

bug=b:434789824,b:434858349
TEST=Flash and boot to OS on kaladin, tested sensors work fine and unit can enter s0ix

Change-Id: Ia8dbf17a589a580116430cc4978b8d4ebbcf785e
Signed-off-by: Eren Peng <peng.eren@inventec.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88597
Reviewed-by: Kyle Lin <kylelinck@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-07 03:48:08 +00:00
zengqinghong
0b3fc8ce2d mb/google/nissa/var/pujjoniru: Decrease cpu power limits
Based on TWL 15W baseline, PL4 should set to 83W.
Ref: 646929_ADL_N_TWL_PowerMap_Rev2p6.xlsm

BUG=b:434861879
TEST=emerge-nissa coreboot chromeos-bootimage
     cbmem -c | grep PL shows PL4=83

Change-Id: I6fa929ad6f3444d323364f71687b27eb0c9c468c
Signed-off-by: Qinghong Zeng <zengqinghong@huaqin.corp-partner.google.com​>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88646
Reviewed-by: Eric Lai <ericllai@google.com>
Reviewed-by: Jian Tong <tongjian@huaqin.corp-partner.google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-08-06 05:48:10 +00:00
Subrata Banik
f01cc9258b mb/google/rex/var/screebo: Use ACPI for touchscreen power sequencing
This commit transitions the touchscreen power sequencing from static
coreboot GPIO configuration to ACPI-driven management using the
devicetree infrastructure for the Screebo variant.

BUG=b:430444353
TEST=Able to build and boot google/screebo. Verified touchscreen is
working as expected with this patch.

Change-Id: Ie3456032c232ac92ed7501c08b1c89b0ac274c8c
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88638
Reviewed-by: Jakub "Kuba" Czapiga <czapiga@google.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Pranava Y N <pranavayn@google.com>
Reviewed-by: Dinesh Gehlot <digehlot@google.com>
Reviewed-by: Jayvik Desai <jayvik@google.com>
2025-08-05 10:19:04 +00:00
Subrata Banik
ef11f95125 soc/qualcomm/x1p42100: Set 1ms TX delay
This commit overrides the `UART_BITBANG_TX_DELAY_MS` Kconfig option to
1ms for the `x1p42100` SoC configuration.

TEST=Able to build google/quenbi with proper AP console log.

```
[NOTE ]  coreboot-coreboot-unknown.9999.2712497 ....
[DEBUG]  ARM64: Exception handlers installed.
[DEBUG]  ARM64: Testing exception
[DEBUG]  ARM64: Done test exception
[DEBUG]  NCC Frequency bumped to 1.363(GHz)
```

Change-Id: Ic99ce17ea5e74fca483ef0cc8dd326d3459288b4
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88637
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-04 16:26:35 +00:00
Subrata Banik
2c8d157ea4 {drivers, soc/qualcomm/common}: Add configurable delay for UART bitbang
This commit introduces a new Kconfig option, UART_BITBANG_TX_DELAY_MS,
to make the UART TX pin stabilization delay configurable.

A default 5ms (CONFIG_UART_BITBANG_TX_DELAY_MS) delay is added in
uart_init() after the TX pin is set high. This addresses an issue
where the initial character sent by the UART could be corrupted due
to the pin not being stable. The delay ensures the line state is
properly established before data transmission begins.

This was found to resolve early boot console corruption on some boards.
The issue is likely a race condition where the first character starts
transmitting before the GPIO output is fully stabilized.

TEST=Able to build and boot google/zombie w/o any junk characters in
AP firmware log.

w/o this patch:

```
�ɍ���щ�����х�ѥ��b����ٕ��Jrrrjjm              UuI5�ፕ�ѥ���������ͥ��х�����jm             UuI5���ѥ���ፕ�ѥ��m��jm           UuI5����ѕ�ѕፕ�ѥ��m��[DEBUG]  NCC Frequency bumped to 1.363(GHz)
```

w/ this patch:

```
[NOTE ]  coreboot-25.06-78-gfe786406960e-dirty Fri Aug 01 17:12:22 UTC 2025 aarch64 bootblock starting (log level: 8)...
[DEBUG]  ARM64: Exception handlers installed.
[DEBUG]  ARM64: Testing exception
[DEBUG]  ARM64: Done test exception
[DEBUG]  Silver Frequency bumped to 1.5168(GHz)
[DEBUG]  L3 Frequency bumped to 1.1904(GHz)
```

Change-Id: I33c9ea65aa42d23acf3b89f977d4985569c144e8
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88633
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-04 16:26:29 +00:00
Subrata Banik
b0d2d522ea soc/qualcomm/x1p42100: Enable bootblock compression
Enable bootblock compression on the X1p42100 SoC to decrease boot
time by 10-20 ms.

This change helps to reduce the size of the bootblock, allowing it
to be loaded and decompressed faster, which improves overall boot
performance.

TEST=Able to build and boot google/quenbi.

Change-Id: I81cdbec4a05c8abacae39ff208cc0f7469206161
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88626
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-04 16:26:25 +00:00
Matt DeVillier
1e11bda5d0 soc/intel/cmn/smbus: Drop use of update_spd_len()
It doesn't make sense to use CONFIG_DIMM_SPD_SIZE to determine the
amount of data to read from the SPD, then override that value.

Clean up the mess and simply set the SPD length fror the spd_block
struct to CONFIG_DIMM_SPD_SIZE.

Change-Id: Ifec6cf1f6d7c931131460ea72440aa236590d0b6
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88523
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-03 01:29:04 +00:00
Jeremy Soller
910f111891 soc/intel/mtl: Fill in SPD data on both channels of DDR5 memory
Commit 91a1276d53 ("soc/intel/alderlake: Implement WA for DDR5 DIMM
modules") was added to allow FSP to perform the SPD read for DDR5
modules since coreboot did not properly support reading SPD from
EEPROM for DDR5. The same code was copied for Meteorlake.

Now that DDR5 SPD EEPROM reading has been fixed in commit e9cb352706
("soc/common/smbus: Support reading SPD5 hubs for DDR5"), remove the
now unneeded workaround for DDR5 and use coreboot's SPD read as we
do for all other module types.

Change-Id: I600d8fd480cb84d5dcb679e4f0bdeeaaebfab386
Signed-off-by: Jeremy Soller <jeremy@system76.com>
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/82733
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-03 01:28:49 +00:00
Matt DeVillier
0da943ed99 soc/intel/meteorlake: Fix DDR5 channel mapping
This patch applies commit 0e7cf3d81d ("soc/intel/alderlake: Fix DDR5
channel mapping") to Meteor Lake.

DDR5 memory modules have two separate 32-bit channels (40-bit on ECC
memory modules), and the SPD info refers to one channel: the primary
bus width is 32 (or 40) bits and the "DIMM size" is halved. On Meteor
Lake, there are 2 memory controllers with 4 32-bit channels each for
DDR5. FSP has 16 positions to store SPD data, some of which are only
used with LPDDR4/LPDDR5.

To try to make things less confusing, FSP abstracts the DDR5 channels
so that the configuration works like on DDR4. This is done by copying
each DIMM's SPD data to the other half-channel. Thus, fix the wrapper
parameters for DDR5 accordingly.

Change-Id: I00cd1fba855a50422a68fa662df4ca8ed2c6458d
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88636
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-03 01:28:33 +00:00
Jeremy Soller
87c9bb3994 soc/intel/adl: Fill in SPD data on both channels of DDR5 memory
Commit 91a1276d53 ("soc/intel/alderlake: Implement WA for DDR5 DIMM
modules") was added to allow FSP to perform the SPD read for DDR5
modules since coreboot did not properly support reading SPD from
EEPROM for DDR5.

Now that DDR5 SPD EEPROM reading has been fixed in commit e9cb352706
("soc/common/smbus: Support reading SPD5 hubs for DDR5"), remove the
now unneeded workaround for DDR5 and use coreboot's SPD read as we
do for all other module types.

Change-Id: I5a92199a7cd2718e9396f0dac8257df40e4f834c
Signed-off-by: Jeremy Soller <jeremy@system76.com>
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/75284
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
2025-08-02 16:49:28 +00:00
Ian Feng
a23be7a6fe mb/google/fatcat/var/francka: Disable ALC721 & ALC722 clock stop support
This change allows flag to be override via devicetree,
instead of relying on the default value in alc711_slave.
It helps fix the missing event issue when plugging or
unplugging the 3.5mm headphone jack.

BUG=b:417133565, b:420516709
TEST=Verified build and boot with ALC721 and ALC722.
Headphone path switches successfully via audio jack event.
Confirmed SSDT dump at PCI0.HDAS.SNDW.
Package (0x02)
{
    "mipi-sdw-simplified-clockstopprepare-sm-supported",
    Zero
},

Change-Id: I975ed83e8614bd88861f115ffeea7c2450e6a432
Signed-off-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88587
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Reviewed-by: Mac Chiang <mac.chiang@intel.com>
2025-08-02 16:48:14 +00:00
Ian Feng
227d434e2d drivers/soundwire/alc711: Support clock stop flag from devicetree
Allow overriding the default value (true) via devicetree configuration.
If disable_clkstop_sm_support is set in the devicetree,
the corresponding field in alc711_slave is set to false.

BUG=b:417133565, b:420516709
TEST=Verified build and boot with ALC721 and ALC722.
Headphone path switches successfully via audio jack event.
Confirmed SSDT dump at PCI0.HDAS.SNDW.
Package (0x02)
{
    "mipi-sdw-simplified-clockstopprepare-sm-supported",
    Zero
},

Change-Id: If958cd0c2136e4dd3f60cb9203d9394913d3f66e
Signed-off-by: Ian Feng <ian_feng@compal.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88586
Reviewed-by: Mac Chiang <mac.chiang@intel.com>
Reviewed-by: Simon Yang <simon1.yang@intel.com>
Reviewed-by: Subrata Banik <subratabanik@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 16:47:53 +00:00
Nicholas Chin
49219f1ce1 Docs: Use markdown autolinks instead of Sphinx doc directive
Several files use embedded reStructuredText blocks in order to use the
:doc: directive to reference other markdown files using a relative path.
MyST Parser supports a similar feature using the standard Markdown
autolink (angled bracket) syntax, so use this instead as it is cleaner.
Both methods use the first heading of the linked file as the text shown
in the reference, though MyST Parser also supports the standard [link
text](../path/to/file.md) syntax to explicitly set the link text.

Note that when using the autolink syntax, `project:` must be prepended
to the relative path as it expects a URI scheme for all autolinks. This
is not required when using the separate text and URI syntax.

Before:
    ```{eval-rst}
    Example text :doc:`../relative/path`.
    ```

After:
    Example text <project:../relative/path.md>

Using the Markdown syntax also avoids formatting issues if any plain
text in the eval-rst block uses Markdown formatting syntax where they
would unintentionally be parsed differently due to text being parsed as
reStructuredText.

Some :doc: instances still remain as they are used within reST style
tables in an eval-rst block, so these were left as is since the Markdown
syntax would be invalid in that context.

[1]: https://myst-parser.readthedocs.io/en/latest/syntax/cross-referencing.html#autolinks

Change-Id: I8828bf7efe13de6d6f628f6b64151fbd25289fa5
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88618
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
2025-08-02 16:47:10 +00:00
Zhigang Qin
6afc1ff9ac soc/mediatek/mt8189: Disable 8189G APU power to reduce power consumption
Since MT8189G does not support APU, the LDO_VSRAM_OTHERS and BUCK_VCORE
regulators for the APU power domain can be turned off. Disabling these
power supplies reduces overall system power consumption by about 1mW.

BUG=b:420874944,b:421989583,b:423081787
BRANCH=none
TEST=Verified by measuring system current in S3 state before and after
     disabling APU power.

Signed-off-by: Niklaus Liu <niklausi.liu@mediatek.corp-partner.google.com>
Signed-off-by: Vince Liu <vince-wl.liu@mediatek.corp-partner.google.com>
Signed-off-by: Zhigang Qin <zhigang.qin@mediatek.corp-partner.google.com>
Change-Id: I4e4eeb575327b554f5837bfc0f6a464ff7a1e228
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88631
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Yidi Lin <yidilin@google.com>
2025-08-02 16:46:26 +00:00
Vince Liu
965131e40f soc/mediatek/common: Fix build error by including stdint.h in cpu_id.h
Include `stdint.h` in `cpu_id.h` to ensure `u32` is properly defined.
This resolves build errors when files including `cpu_id.h` cannot find
the definition for `u32`.

BUG=b:379008996
BRANCH=none
TEST=build passed
Signed-off-by: Vince Liu <vince-wl.liu@mediatek.corp-partner.google.com>
Change-Id: If4b41a6eae38470d4d30baeeef50c8b1ebb82033
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88630
Reviewed-by: Yu-Ping Wu <yupingso@google.com>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Yidi Lin <yidilin@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 16:46:21 +00:00
Appukuttan V K
e49743755d mb/google/ocelot: Select EC_GOOGLE_CHROMEEC_MEC for MCHP variants
This commit updates the Kconfig for the Google Ocelot mainboard to
select EC_GOOGLE_CHROMEEC_MEC for the OcelotMCHP and OcelotMCHP4ES
variants.

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

Change-Id: Ie5f776d40029b52a57d82aa9b02b95fbf3905cfd
Signed-off-by: Appukuttan V K <appukuttan.vk@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88629
Reviewed-by: Pranava Y N <pranavayn@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Varun Upadhyay <varun.upadhyay@intel.com>
2025-08-02 16:45:56 +00:00
Tony Huang
32b944b77a mb/google/brox/var/caboc: Update hda_verb table
Update hda_verb table from vendor.

BUG=b:435345756
TEST=emerge-brox coreboot
     check system audio output is fine

Change-Id: Id46d1798b605e7d1fbdfacf2e1899bfc40a113a6
Signed-off-by: Tony Huang <tony-huang@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88627
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
2025-08-02 16:45:44 +00:00
Ivy Jian
ba228d160f mb/google/fatcat: Create new kinmen4es variant
This new variant will support PTL pre-production silicon. The existing
`kinmen` variant will support production silicon.

BUG=b:434847748
TEST=Able to build google/kinmen4es.

Change-Id: If0597c1b63179e46a83286f2d46f958189f627cc
Signed-off-by: Ivy Jian <ivy.jian@quanta.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88622
Reviewed-by: YH Lin <yueherngl@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Pranava Y N <pranavayn@google.com>
2025-08-02 16:45:30 +00:00
alokagar
6a42eb9134 soc/intel/pantherlake: Disable memory training progress bar
Introduce the disable_progress_bar setting in configuration to allow
disabling the memory training progress bar during firmware
initialization.

BUG=b:418675387
TEST=After setting disable_progress_bar, memory training progress bar
is disabled.

Change-Id: I35e8191df27c0eda634724580514e980bd620136
Signed-off-by: Alok Agarwal <alok.agarwal@intel.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88529
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
2025-08-02 04:57:03 +00:00
Jeremy Soller
e9cb352706 soc/common/smbus: Support reading SPD5 hubs for DDR5
DDR5 uses a Serial Presence Detect (SPD) with hub function
(SPD5 hub device) to store the SPD data. The SPD5 hub has 1024 bytes of
EEPROM (`CONFIG_DIMM_SPD_SIZE=1024`).

Ref: DDR5 SDRAM spec, JESD79-5C.01

Change-Id: Ic5e6c58f255bef86b68ce90a4f853bf4e7c7ccfe
Co-authored-by: Meera Ravindranath <meera.ravindranath@intel.com>
Signed-off-by: Jeremy Soller <jeremy@system76.com>
Signed-off-by: Tim Crawford <tcrawford@system76.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/52731
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 01:47:44 +00:00
Matt DeVillier
cba46a41b7 mainboard/{hardkernel,protectli}: Drop use of DRAM_SUPPORT_DDR5
This is now selected at the SoC level and therefore redundant.

Change-Id: Ib6ae94c359d3dac34886147e9078043e4f132f84
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88522
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 01:47:22 +00:00
Luca Lai
a79f341d29 mb/google/trulo/var/pujjolo: Disable mipi camera dmic LED
Because we do not want to enable the mipi camera dmic LED
at booting, so pull down the EN_PP2800_WCAM_X.
(Pujjolo_Pujjoquince_MB_EVT_20250523.pdf).

BUG=b:427962702
TEST= Build and boot to OS, check the LED is off. And
check the mipi camera function works fine.

Change-Id: Ia9ccf3e335ad65c9a8f68fe33226803cc8555228
Signed-off-by: Luca Lai <luca.lai@lcfc.corp-partner.google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88604
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Eric Lai <ericllai@google.com>
2025-08-02 01:47:03 +00:00
Martin Roth
9411c6e7c7 util/amdfwtool: Fix NULL pointer dereference in fill_dir_header
Move the NULL pointer check to the beginning of the fill_dir_header function
before any dereference of the directory pointer. This prevents the potential
segmentation fault that could occur if directory is NULL.

This fixes CID 1540835 - Dereference before null check (REVERSE_NULL).

Change-Id: I12bb146d59839381478034f974b7d408f92ae677
Signed-off-by: Martin Roth <gaumless@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88617
Reviewed-by: Patrick Rudolph <patrick.rudolph@9elements.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 01:46:47 +00:00
Nicholas Chin
280d3a25e8 util/lint/kconfig_lint: Fix operator precedence issue
Perl 5.42.0 added a new warning for possible precedence problems between
the `!` logical negation operator and various other operators [1]. In
particular, the kconfig_lint script uses `!` and `=~` (binding operator)
to check that a filename does not match a regex, but was written in a
way that would be parsed as negating the filename and then comparing it
to the regex. The resulting warning from the newer version of Perl
caused lint-stable to fail on the lint-stable-008-kconfig test due to
the non empty output, causing the pre-commit hook to fail.

Fix this by using the negated binding operator `!~` instead as
recommended by the Perl documentation [2].

[1] https://perldoc.perl.org/perl5420delta#New-Warnings
[2] https://perldoc.perl.org/perldiag#Possible-precedence-problem-between-!-and-%25s

Change-Id: I3631b8b0be92bf85a1510be1f1d4221a010be1ba
Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88619
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2025-08-02 01:46:36 +00:00
Matt DeVillier
fbc2d76ab3 soc/intel/*: Select 'DRAM_SUPPORT_DDRx' as appropriate
These will be used in subsequent patches which optimize the reading of
SPDs based on the supported memory type(s).

Change-Id: I8b0d4f37b4b992c42bede25d678cb9afc9db3dd6
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/88521
Reviewed-by: Nicholas Sudsgaard <devel+coreboot@nsudsgaard.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com>
Reviewed-by: Elyes Haouas <ehaouas@noos.fr>
2025-08-02 01:46:21 +00:00