coreboot/src/include/device
Matt DeVillier c731fd720c lib/spd_bin: Add support for DDR5 SPD parsing
Without explicit DDR5 support, print_spd_info() was decoding DDR5 DIMMs
with the DDR4 SPD layout, so banks, ranks, rows, columns, and module
size were all displaying incorrect values.

Add DDR5-specific decoding in spd_bin.c using JESD400-5 byte positions.
Define these offsets in ddr5.h and branch in each getter when
dram_type is DDR5 so printed SPD info matches the actual module.

Fix printk reporting DIMM module size to only report "per channel" when
the DIMM actually contains multiple channels.

TEST=build/boot on out-of-tree board Erying SRMJ4 and Starlabs Starbook
MTL. Verify DIMM info printed in cbmem console is correct.

Change-Id: I7f418db3f89c67c2a71b2c327bb511a78faf7300
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/91145
Reviewed-by: Sean Rhodes <sean@starlabs.systems>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
2026-02-17 20:46:41 +00:00
..
azalia_codec {device/azalia_codec,mainboard}: Use node ID enums for Realtek ALC887 2025-10-01 13:25:14 +00:00
dram lib/spd_bin: Add support for DDR5 SPD parsing 2026-02-17 20:46:41 +00:00
azalia_device.h device: Introduce reworked azalia verb table 2025-09-28 18:18:14 +00:00
cardbus.h include: Add SPDX-License-Identifiers to files missing them 2022-08-01 13:59:11 +00:00
device.h device/pci_rom: Keep track of VBIOS 2025-03-10 11:27:13 +00:00
fw_cfg.h mb/qemu-i440fx: refactor fw_cfg logic as separate driver 2025-01-22 20:38:55 +00:00
fw_cfg_if.h mb/qemu-i440fx: refactor fw_cfg logic as separate driver 2025-01-22 20:38:55 +00:00
gpio.h device + util/sconfig: introduce new device gpio 2020-12-28 17:47:04 +00:00
i2c.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
i2c_bus.h device/i2c_bus: Add routines to read and write multiple bytes 2022-09-04 14:55:59 +00:00
i2c_simple.h include/device/i2c_simple: add i2c_2ba_read_bytes function 2022-04-27 16:07:29 +00:00
mdio.h device/mdio: Provide helper functions for read and write 2022-11-24 05:58:28 +00:00
mmio.h Merge coreboot and libpayload <endian.h> into commonlib 2025-12-11 08:43:16 +00:00
path.h cpu/x86/topology: Add tile and die ID CPU topology fields 2025-10-13 17:09:18 +00:00
pci.h pci: Add method to read PME capability 2024-10-28 22:05:54 +00:00
pci_def.h device: Rename PCI_EXP_SEC_CAP_ID -> PCI_CAP_ID_SEC_PCIE 2026-01-14 11:19:33 +00:00
pci_ehci.h src/include: Add missing includes 2020-07-26 21:37:35 +00:00
pci_ids.h tree: Remove Ice Lake PCI ID remnants 2026-01-28 13:36:23 +00:00
pci_mmio_cfg.h include/device/pci_mmio_cfg: assert CONFIG_ECAM_MMCONF_BUS_NUMBER != 0 2024-01-15 21:15:36 +00:00
pci_ops.h device/device.h: Rename busses for clarity 2024-01-31 10:36:39 +00:00
pci_rom.h device/pci_device: Move PCI Option ROM code into pci_rom.c 2025-03-10 11:35:57 +00:00
pci_type.h soc/intel/*: drop UART pad configuration from common code 2021-03-12 08:48:03 +00:00
pciexp.h pci: Add support for assigning resources to SR-IOV VF BARs 2025-05-27 15:10:48 +00:00
pcix.h include: Add SPDX-License-Identifiers to files missing them 2022-08-01 13:59:11 +00:00
pnp.h treewide: Add 'IWYU pragma: export' comment 2022-11-03 13:05:17 +00:00
pnp_def.h include: Add SPDX-License-Identifiers to files missing them 2022-08-01 13:59:11 +00:00
pnp_ops.h src: Include <arch/io.h> when appropriate 2020-10-26 06:44:40 +00:00
pnp_type.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
resource.h include/device/resource: drop unused IORESOURCE_* definitions 2023-08-10 21:48:46 +00:00
smbus.h device/smbus: Add i2c_eeprom_read 2026-02-03 22:16:02 +00:00
smbus_def.h include: Add SPDX-License-Identifiers to files missing them 2022-08-01 13:59:11 +00:00
smbus_host.h src/include: Add missing includes 2020-07-26 21:37:35 +00:00
soundwire.h acpi/soundwire.[ch]: Fix dpn entry array overrun 2023-09-13 15:26:01 +00:00
spi.h treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
usbc_mux.h ec/google/chromeec: Split wait-loop for DP and HPD flags 2023-07-15 12:47:51 +00:00
xhci.h device/xhci: Add struct for capability registers 2023-03-07 17:11:58 +00:00