coreboot/src/lib
Michał Żygowski bf148cae0a lib/dimm_info_util.c: Handle 16-bit memory bus extension for ECC
Some silicon initialization modules, like OpenSIL report bus width
extension as 16 bits for ECC for DDR5 memories. Handle this case
correctly for DDR5 and LPDDR5 memories by reporting appropriate
bitfield of the SPD width. This field is used later by coreboot to
calculate the bus extension again, which results in 16bit extension
for ECC.

Change-Id: Ia0a9c221a5d047dd7feb212027f5da2399ccb8e1
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/89482
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2026-02-19 19:20:28 +00:00
..
fonts lib: Implement anti-aliased text rendering 2026-02-13 11:32:22 +00:00
gnat lib,console,sbom: Rename Makefiles from .inc to .mk 2024-01-24 10:12:57 +00:00
asan.c Allow to build romstage sources inside the bootblock 2023-11-09 13:20:18 +00:00
b64_decode.c
bmp_logo.c lib: Add support for off-mode charging splash screen 2026-02-10 02:48:03 +00:00
boot_device.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
bootblock.c tree: Use boolean for s3resume 2025-10-23 13:34:15 +00:00
bootmem.c lib/bootmem: Replace conditional return with assert in bootmem_add_range_from 2026-01-05 03:09:45 +00:00
bootmode.c lib/bootmode: Enforce display init requirement for vboot 2025-04-12 17:34:09 +00:00
bootsplash.c lib/jpeg: return string (not int) error messages 2024-09-18 21:51:40 +00:00
cb.ads lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
cbfs.c CBFS verification: support Top Swap redundancy 2025-12-20 17:39:43 +00:00
cbfs_master_header.c treewide: Assume FMAP_SECTION_FLASH_START = 0 2025-04-18 14:57:05 +00:00
cbmem_common.c src/lib/cbmem_common: Delete a space(' ') in the source code 2025-08-28 20:13:34 +00:00
cbmem_console.c lib/cbmem_console.c: Use C99 flexible arrays 2023-07-30 09:59:46 +00:00
cbmem_stage_cache.c src/lib: Add memory/time saving special case for ramstage caching 2023-12-18 08:13:12 +00:00
coreboot_table.c tests/lib/coreboot_table-test.c: Add lb_string_platform_blob_version 2026-01-23 21:38:33 +00:00
crc_byte.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
decompressor.c timestamps: Rename timestamps to make names more consistent 2022-03-08 16:06:33 +00:00
delay.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
dimm_info_util.c lib/dimm_info_util.c: Handle 16-bit memory bus extension for ECC 2026-02-19 19:20:28 +00:00
dp_aux.c Use the fallthrough statement in switch loops 2022-02-16 21:29:53 +00:00
edid.c lib/edid: Support DisplayID 2.0 extension 2025-03-12 12:45:39 +00:00
edid_displayid.h lib/edid: Support DisplayID 2.0 extension 2025-03-12 12:45:39 +00:00
espi_debug.c lib/espi_debug: Add espi_show_slave_peripheral_channel_configuration 2021-04-23 21:20:26 +00:00
ext_stage_cache.c ext_stage_cache: Make sure variables are initialized 2024-08-30 07:35:10 +00:00
fallback_boot.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
fit.c lib/fit: Switch to commonlib/list public API 2026-02-01 02:25:58 +00:00
fit_payload.c cbmem.h: Change return type of cbmem_get_region 2024-08-29 13:58:21 +00:00
fmap.c region: Introduce region_create() functions 2024-08-11 17:07:32 +00:00
framebuffer_info.c lib: Rename fill_lb_framebuffer to get_lb_framebuffer 2026-01-14 04:17:14 +00:00
fw_config.c src/lib: use RO CBFS file as fw_config source 2025-03-26 16:37:25 +00:00
gcc.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
gcov-glue.c tree: Use __func__ instead of hard-coded names 2023-02-17 16:08:04 +00:00
gcov-io.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
gcov-io.h lib/gcov-io.h: Use C99 flexible arrays 2023-08-01 13:34:27 +00:00
gcov-iov.h lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
gpio.c gpio: Pull down HiZ pins after reading tristate GPIO strapping 2020-08-06 23:54:41 +00:00
halt.c treewide: Move stdlib.h to commonlib 2024-03-15 10:09:43 +00:00
hardwaremain.c {commonlib, lib}: Add timestamp for early chip initialization 2025-04-08 07:50:18 +00:00
hexdump.c lib/hexdump: remove hexdump32 and use hexdump instead 2021-05-27 15:41:15 +00:00
hexstrtobin.c treewide: Convert more license headers to SPDX style 2020-05-11 19:37:19 +00:00
hw-time-timer.adb treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
identity.c lib/version: Move board identification strings 2023-04-22 16:20:49 +00:00
imd.c lib: Remove unused <stdlib.h> and use <types.h> when appropriate 2022-04-24 17:43:57 +00:00
imd_cbmem.c tree: Use boolean for s3resume 2025-10-23 13:34:15 +00:00
io.c soc/amd/common/psp_verstage: Remove arch/io.h 2025-04-02 16:03:34 +00:00
jpeg.c lib/jpeg: return string (not int) error messages 2024-09-18 21:51:40 +00:00
jpeg.h lib/jpeg: return string (not int) error messages 2024-09-18 21:51:40 +00:00
Kconfig lib: Add support for text rendering on splash screen 2026-02-13 11:27:33 +00:00
Kconfig.cbfs_verification Kconfig.cbfs_verification: Update TOCTOU_SAFETY combination with VBOOT 2023-11-07 22:30:20 +00:00
libgcc.c treewide: Replace CONFIG(ARCH_xx) tests 2020-06-17 21:13:09 +00:00
libgcov.c treewide: Move stdlib.h to commonlib 2024-03-15 10:09:43 +00:00
lzma.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
lzmadecode.c lib/lzmadecode: Increase decoding speed by 30% 2025-09-09 14:40:45 +00:00
lzmadecode.h lib/lzmadecode: Allow for 8 byte reads on 64bit 2024-02-21 16:19:05 +00:00
Makefile.mk lib: Add support for text rendering on splash screen 2026-02-13 11:27:33 +00:00
malloc.c malloc/memalign: Return NULL if the request is too large 2024-01-29 19:12:43 +00:00
master_header_pointer.c treewide: Assume FMAP_SECTION_FLASH_START = 0 2025-04-18 14:57:05 +00:00
memchr.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
memcmp.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
memcpy.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
memmove.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
memrange.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
memset.c lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
metadata_hash.c cbfs/vboot: Adapt to new vb2_digest API 2022-09-02 23:51:29 +00:00
nhlt.c lib/nhlt, soc/intel/skl: Update NHLT to program feedback config 2022-12-21 13:57:48 +00:00
primitive_memtest.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
prog_loaders.c cbmem_top: Change the return value to uintptr_t 2024-07-10 12:55:46 +00:00
prog_ops.c lib/prog_ops.c: Add <types.h> 2022-10-06 18:13:19 +00:00
program.ld drivers/option: Add forms in cbtables 2024-12-18 18:16:51 +00:00
ramdetect.c riscv/mb/qemu: fix DRAM probing 2024-03-04 23:43:46 +00:00
ramtest.c commonlib/console/post_code.h: Change post code prefix to POSTCODE 2023-06-23 15:06:04 +00:00
reg_script.c tree: Drop duplicated <device/{path,resource}.h> 2024-04-12 04:24:20 +00:00
region_file.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
render_bmp.c lib: Integrate splash text rendering into low-battery/off-mode boot 2026-02-13 11:27:46 +00:00
render_bmp.h {lib, drivers/intel}: Move BMP rendering logic out of SoC code 2025-07-23 17:11:10 +00:00
render_text.c lib: Implement resolution-based text scaling 2026-02-13 11:32:28 +00:00
reset.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
rmodule.c payloads,src: Replace ALIGN(x, a) by ALIGN_UP(x, a) for clarity 2022-10-13 19:14:57 +00:00
rmodule.ld lib: Add SPDX identifiers to files missing them 2022-08-11 17:53:29 +00:00
romstage_handoff.c tree: Use boolean for s3resume 2025-10-23 13:34:15 +00:00
rtc.c lib/rtc: Fix off-by-one error in February day count in leap year 2024-02-29 13:07:02 +00:00
selfboot.c commonlib/bsd: Add zstd support 2025-12-20 17:36:01 +00:00
smbios.c src/lib/smbios: Advertise UEFI support for EDK2 2026-01-23 09:23:42 +00:00
smbios_defaults.c Kconfig: Rework SYSTEM_TYPE_XX to better map to SMBIOS 2025-02-19 16:45:42 +00:00
spd_bin.c lib/spd_bin: Add support for DDR5 SPD parsing 2026-02-17 20:46:41 +00:00
spd_cache.c soc/common/smbus: Support reading SPD5 hubs for DDR5 2025-08-02 01:47:44 +00:00
stack.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
string.c commonlib/bsd: Add strlen() and strnlen() functions 2024-08-14 03:09:03 +00:00
thread.c tree: Fix cast an object of type 'nullptr_t' to 'uintptr_t' error 2024-10-29 01:41:41 +00:00
timer.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
timer_queue.c lib/timer_queue.c: Fix function signature 2022-09-23 17:34:30 +00:00
timestamp.c lib/timestamp: Init TSC frequency early on x86 2025-09-02 19:12:10 +00:00
ubsan.c lib: Replace 'unsigned long int' by 'unsigned long' 2025-01-12 04:51:51 +00:00
uuid.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00
ux_locales.c lib: Add low battery UX locale message 2025-02-15 18:58:48 +00:00
version.c lib/version: Move board identification strings 2023-04-22 16:20:49 +00:00
vga_gfx.c lib/vga_gfx: Fix left-up and right-up orientations 2025-10-31 21:04:39 +00:00
wrdd.c treewide: Remove "this file is part of" lines 2020-05-11 17:11:40 +00:00