Ejemplo n.º 1
0
void nvram_assign_table_entry(kal_uint16 position, ltable_entry_struct* ldi)
{
	kal_uint32 onefilesize = 0; 
    
    logical_data_item_table[position] = ldi;

#if defined(__SHADOW_NVRAM__)
    /* Calc SHADOW Total and Size */
    #if defined(__SHADOW_SUPPORT_MS__)
    if(logical_data_item_table[position]->category&NVRAM_CATEGORY_SHADOW_MS)
    #elif defined(__SHADOW_SUPPORT_SB__)
    if(logical_data_item_table[position]->category&NVRAM_CATEGORY_SHADOW)
    #endif
    {
        /* shadow items count*/
        shadow_total_to_verify++;
        
        /* shadow size */
        shadow_size_to_verify += logical_data_item_table[position]->size * logical_data_item_table[position]->total_records;

        /* max shadow record size */
        if (max_shadow_rec < logical_data_item_table[position]->total_records)
            max_shadow_rec = logical_data_item_table[position]->total_records;
            
        /* shadow table index */
        logical_data_item_table[position]->record_ID = j++;
    }
#endif          

        /* Output data item size */
        onefilesize = logical_data_item_table[position]->size * logical_data_item_table[position]->total_records;
        if(onefilesize)
        {
            fprintf(logOfSize, "%4d%20d                    %s\n", logical_data_item_table[position]->LID, onefilesize, logical_data_item_table[position]->description);

            if (NVRAM_IS_ATTR_MULTIPLE(logical_data_item_table[position]->attr))
                    fprintf(logOfSize, "%4d%20d                    %s\n", logical_data_item_table[position]->LID, onefilesize, logical_data_item_table[position]->description);

        }

        if (logical_data_item_table[position]->category & NVRAM_CATEGORY_CUSTPACK)
        {
            custpack_total_to_verify++;
        }

        if (logical_data_item_table[position]->attr & NVRAM_ATTR_OTP)
        {
            otp_total_to_verify++;
            otp_size_to_verify += logical_data_item_table[position]->size * logical_data_item_table[position]->total_records;
        }
}
/*****************************************************************************
 * FUNCTION
 *  nvram_make_lid_filename
 * DESCRIPTION
 * PARAMETERS
 * RETURNS
 *****************************************************************************/
void nvram_util_make_lid_filename(nvram_ltable_entry_struct *ldi, NVRAM_FILE_NAME nvramname, kal_bool first_copy)
{
    /*----------------------------------------------------------------*/
    /* Local Variables                                                */
    /*----------------------------------------------------------------*/

    /*----------------------------------------------------------------*/
    /* Code Body                                                      */
    /*----------------------------------------------------------------*/

    if (ldi == NULL)
    {
        ASSERT(0);
        return;
    }

#ifdef __NVRAM_PSEUDO_MERGE__
    if (NVRAM_IS_ATTR_PACKAGE(ldi->attr))
    {
        nvram_make_package_filename(nvramname, 'A');
        return;
    }
#endif

    if (NVRAM_IS_ATTR_MULTIPLE(ldi->attr))
    {
        if (first_copy)
        {
            nvram_util_make_filename(nvramname, ldi->fileprefix, 'A', ldi->fileverno);
        }
        else
        {
            nvram_util_make_filename(nvramname, ldi->fileprefix, 'B', ldi->fileverno);
        }
    }
    else
    {
        nvram_util_make_filename(nvramname, ldi->fileprefix, '_', ldi->fileverno);
    }

    return;

}