On 09/18/2017 12:59 AM, Simon Glass wrote: > This function can fail but gives no indication of failure. Update it to > return an error when something goes wrong. > > Signed-off-by: Simon Glass <s...@chromium.org> > --- > > include/efi_loader.h | 10 ++++++++-- > lib/efi_loader/efi_smbios.c | 6 ++++-- > 2 files changed, 12 insertions(+), 4 deletions(-) > > diff --git a/include/efi_loader.h b/include/efi_loader.h > index 2051fc994e..79d2dad22c 100644 > --- a/include/efi_loader.h > +++ b/include/efi_loader.h > @@ -150,8 +150,14 @@ int efi_disk_register(void); > int efi_gop_register(void); > /* Called by bootefi to make the network interface available */ > int efi_net_register(void **handle); > -/* Called by bootefi to make SMBIOS tables available */ > -void efi_smbios_register(void); > +/** > + * efi_smbios_register() - write out SMBIOS tables > + * > + * Called by bootefi to make SMBIOS tables available > + * > + * @return 0 if OK, -ENOMEM if no memory is available for the tables > + */ > +int efi_smbios_register(void); > > /* Called by networking code to memorize the dhcp ack package */ > void efi_net_set_dhcp_ack(void *pkt, int len); > diff --git a/lib/efi_loader/efi_smbios.c b/lib/efi_loader/efi_smbios.c > index ac412e7362..3b87294dc3 100644 > --- a/lib/efi_loader/efi_smbios.c > +++ b/lib/efi_loader/efi_smbios.c > @@ -13,7 +13,7 @@ > > static const efi_guid_t smbios_guid = SMBIOS_TABLE_GUID; > > -void efi_smbios_register(void) > +int efi_smbios_register(void)
Please, use efi_status_t as return type. > { > /* Map within the low 32 bits, to allow for 32bit SMBIOS tables */ > uint64_t dmi = 0xffffffff; > @@ -22,11 +22,13 @@ void efi_smbios_register(void) > int memtype = EFI_RUNTIME_SERVICES_DATA; > > if (efi_allocate_pages(1, memtype, pages, &dmi) != EFI_SUCCESS) > - return; > + return -ENOMEM; Use return EFI_OUT_OF_RESOURCES This matches the value returned by efi_install_configuration_table. > > /* Generate SMBIOS tables */ > write_smbios_table(dmi); > > /* And expose them to our EFI payload */ > efi_install_configuration_table(&smbios_guid, (void*)(uintptr_t)dmi); This function can return EFI_OUT_OF_RESOURCES. > + > + return 0; Use return EFI_SUCCESS; Regards Heinrich > } > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot