coreboot/src/lib
Subrata Banik 7b36319fd9 {drivers, lib}: Move low-battery user notification logic outside FSP
This patch refactors low-battery user notification logic (Kconfig,
APIs to check if low-battery rendering is required, low-battery
shutdown is required) outside FSP driver code to ensure in future
non-FSP platforms might still be able to leverage this feature/logics
to render the low-battery indicator icon during boot.

Specifically, it:

- Moves Kconfig options related to low-battery notifications from
  drivers/intel/fsp to lib/
- Relocates the low-battery check and shutdown APIs drivers/intel/fsp
  to bootsplash.h
* Adjusts the vendor driver to utilize the new APIs for low-battery
  rendering decisions.
* Drop the unwanted header file "fsp/api.h" from bmp_logo.c

This change avoids tight coupling of low-battery functionality to FSP,
promoting code reusability across platforms.

BUG=b:400738815
TEST=Able to build and boot google/brox.

Change-Id: Iaa730dac2bb4866183408b6390221f0bb8411a48
Signed-off-by: Subrata Banik <subratabanik@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/86756
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kapil Porwal <kapilporwal@google.com>
2025-03-08 07:17:32 +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 {drivers, lib}: Move low-battery user notification logic outside FSP 2025-03-08 07:17:32 +00:00
boot_device.c
bootblock.c
bootmem.c drivers/efi/uefi_capsules.c: coalesce and store UEFI capsules 2024-08-30 15:48:25 +00:00
bootmode.c security/vboot: Set VBOOT_ALWAYS_ENABLE_DISPLAY if BMP_LOGO 2024-07-03 08:43:01 +00:00
bootsplash.c lib/jpeg: return string (not int) error messages 2024-09-18 21:51:40 +00:00
cb.ads
cbfs.c treewide: Move list.h to commonlib 2024-02-24 11:49:46 +00:00
cbfs_master_header.c
cbmem_common.c
cbmem_console.c
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 drivers/option: Add forms in cbtables 2024-12-18 18:16:51 +00:00
crc_byte.c
decompressor.c
delay.c
dimm_info_util.c
dp_aux.c
edid.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
edid_fill_fb.c drivers/intel/gma: Fix mismatching types for fb_add_framebuffer_info 2024-09-02 09:33:59 +00:00
espi_debug.c
ext_stage_cache.c ext_stage_cache: Make sure variables are initialized 2024-08-30 07:35:10 +00:00
fallback_boot.c
fit.c include/device_tree.h: Fix function name fdt_node_name 2024-06-28 12:29:13 +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
fw_config.c util/sconfig: Probe device when fw_config is unprovisioned 2024-08-22 13:53:18 +00:00
gcc.c
gcov-glue.c
gcov-io.c
gcov-io.h
gcov-iov.h
gpio.c
halt.c treewide: Move stdlib.h to commonlib 2024-03-15 10:09:43 +00:00
hardwaremain.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
hexdump.c
hexstrtobin.c
hw-time-timer.adb
identity.c
imd.c
imd_cbmem.c cbmem.h: Change return type of cbmem_get_region 2024-08-29 13:58:21 +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 {drivers, lib}: Move low-battery user notification logic outside FSP 2025-03-08 07:17:32 +00:00
Kconfig.cbfs_verification
libgcc.c
libgcov.c treewide: Move stdlib.h to commonlib 2024-03-15 10:09:43 +00:00
lzma.c
lzmadecode.c lib/lzmadecode: Allow for 8 byte reads on 64bit 2024-02-21 16:19:05 +00:00
lzmadecode.h lib/lzmadecode: Allow for 8 byte reads on 64bit 2024-02-21 16:19:05 +00:00
Makefile.mk {drivers, lib}: Rename FSP*_LOGO_FILE_NAME to BMP_LOGO_FILE_NAME 2025-03-06 19:02:15 +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
memchr.c
memcmp.c
memcpy.c
memmove.c
memrange.c tree: Remove blank lines before '}' and after '{' 2024-04-11 19:19:08 +00:00
memset.c
metadata_hash.c
nhlt.c
primitive_memtest.c
prog_loaders.c cbmem_top: Change the return value to uintptr_t 2024-07-10 12:55:46 +00:00
prog_ops.c
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
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
reset.c
rmodule.c
rmodule.ld
romstage_handoff.c
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
smbios.c lib/smbios: Improve Type9 2024-10-28 22:06:01 +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 LPDDR5X dram_type in use_ddr4_params 2024-03-28 07:26:45 +00:00
spd_cache.c
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
timer_queue.c
timestamp.c
ubsan.c lib: Replace 'unsigned long int' by 'unsigned long' 2025-01-12 04:51:51 +00:00
uuid.c
ux_locales.c lib: Add low battery UX locale message 2025-02-15 18:58:48 +00:00
version.c
wrdd.c
xxhash.c