/* @handle: handle of the loaded image @systable: system table */
static int setup(const efi_handle_t handle, const struct efi_system_table *systable)
/* @handle: handle of the loaded image @systable: system table */
static int setup(const efi_handle_t handle, const struct efi_system_table *systable)
{
	efi_status_t ret;
	boottime = systable->boottime;
	ret = boottime->locate_protocol(&hii_database_protocol_guid, NULL,
					(void **)&hii_database_protocol);
	if (ret != EFI_SUCCESS) {
		hii_database_protocol = NULL;
		efi_st_error("HII database protocol is not available.\n");
		return EFI_ST_FAILURE;
	}
	ret = boottime->locate_protocol(&hii_string_protocol_guid, NULL,
					(void **)&hii_string_protocol);
	if (ret != EFI_SUCCESS) {
		hii_string_protocol = NULL;
		efi_st_error("HII string protocol is not available.\n");
		return EFI_ST_FAILURE;
	}
	return EFI_ST_SUCCESS;
}