/* When binaries are put at the beginning, they will only
 * be selected if no other primary matches.
 */
enum ia_css_err
sh_css_init_binary_infos(void)
{
	unsigned int i;
	unsigned int num_of_isp_binaries = sh_css_num_binaries - 1;

	all_binaries = sh_css_malloc(num_of_isp_binaries *
						sizeof(*all_binaries));
	if (all_binaries == NULL)
		return IA_CSS_ERR_CANNOT_ALLOCATE_MEMORY;

	for (i = 0; i < num_of_isp_binaries; i++) {
		enum ia_css_err ret;
		struct ia_css_binary_info *binary = &all_binaries[i];
		bool binary_found;

		ret = init_binary_info(binary, i, &binary_found);
		if (ret != IA_CSS_SUCCESS)
			return ret;
		if (!binary_found)
			continue;
		/* Prepend new binary information */
		binary->next = binary_infos[binary->mode];
		binary_infos[binary->mode] = binary;
		binary->blob = &sh_css_blob_info[i];
	}
	return IA_CSS_SUCCESS;
}
예제 #2
0
/* When binaries are put at the beginning, they will only
 * be selected if no other primary matches.
 */
enum sh_css_err
sh_css_init_binary_infos(void)
{
	unsigned int i;
	unsigned int num_of_isp_binaries = sh_css_num_binaries - 1;

	all_binaries = sh_css_malloc(num_of_isp_binaries *
						sizeof(*all_binaries));

	for (i = 0; i < num_of_isp_binaries; i++) {
		enum sh_css_err ret;
		struct sh_css_binary_info *binary = &all_binaries[i];
		bool binary_found;

		ret = init_binary_info(binary, i, &binary_found);
		if (ret != sh_css_success)
			return ret;
		if (!binary_found)
			continue;
		/* Prepend new binary information */
		binary->next = binary_infos[binary->mode];
		binary_infos[binary->mode] = binary;
		binary->blob = &sh_css_blob_info[i];
	}
	return sh_css_success;
}
/* When binaries are put at the beginning, they will only
 * be selected if no other primary matches.
 */
enum sh_css_err
sh_css_init_binary_infos(void)
{
    int i;

    for (i = 0; i < SH_CSS_BINARY_NUM_IDS; i++) {
        enum sh_css_err ret;
        struct sh_css_binary_info *binary = &all_binaries[i];
        bool binary_found;

        binary->id = (enum sh_css_binary_id) i;
        ret = init_binary_info(binary, &binary_found);
        if (ret != sh_css_success)
            return ret;
        if (!binary_found)
            continue;
        /* Prepend new binary information */
        binary->next = binary_infos[binary->mode];
        binary_infos[binary->mode] = binary;
    }
    return sh_css_success;
}