drivers/pc80/rtc: Avoid searching for cmos_layout.bin on each get/set_option
Avoid searching for cmos_layout.bin each time get/set_option is called on platforms with NO_CAR_GLOBAL_MIGRATION. Change-Id: Ie541017d2f8c8e9d4b592b71f44a08fd9670dd09 Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Reviewed-on: https://review.coreboot.org/c/coreboot/+/35848 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
62a6741bba
commit
88e9c5af57
|
@ -241,7 +241,7 @@ static enum cb_err get_cmos_value(unsigned long bit, unsigned long length,
|
||||||
static enum cb_err locate_cmos_layout(struct region_device *rdev)
|
static enum cb_err locate_cmos_layout(struct region_device *rdev)
|
||||||
{
|
{
|
||||||
uint32_t cbfs_type = CBFS_COMPONENT_CMOS_LAYOUT;
|
uint32_t cbfs_type = CBFS_COMPONENT_CMOS_LAYOUT;
|
||||||
struct cbfsf fh;
|
MAYBE_STATIC_BSS struct cbfsf fh = {};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* In case VBOOT is enabled and this function is called from SMM,
|
* In case VBOOT is enabled and this function is called from SMM,
|
||||||
|
@ -250,11 +250,13 @@ static enum cb_err locate_cmos_layout(struct region_device *rdev)
|
||||||
*
|
*
|
||||||
* Support only one CMOS layout in the 'COREBOOT' region for now.
|
* Support only one CMOS layout in the 'COREBOOT' region for now.
|
||||||
*/
|
*/
|
||||||
if (cbfs_locate_file_in_region(&fh, "COREBOOT", "cmos_layout.bin",
|
if (!region_device_sz(&(fh.data))) {
|
||||||
&cbfs_type)) {
|
if (cbfs_locate_file_in_region(&fh, "COREBOOT", "cmos_layout.bin",
|
||||||
printk(BIOS_ERR, "RTC: cmos_layout.bin could not be found. "
|
&cbfs_type)) {
|
||||||
|
printk(BIOS_ERR, "RTC: cmos_layout.bin could not be found. "
|
||||||
"Options are disabled\n");
|
"Options are disabled\n");
|
||||||
return CB_CMOS_LAYOUT_NOT_FOUND;
|
return CB_CMOS_LAYOUT_NOT_FOUND;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
cbfs_file_data(rdev, &fh);
|
cbfs_file_data(rdev, &fh);
|
||||||
|
|
Loading…
Reference in New Issue