Exemplo n.º 1
0
u32 vcd_get_fw_property(u32 prop_id, void *prop_details)
{
	u32 status = true;
	struct vcd_fw_details *fw_details;
	switch (prop_id) {
	case VCD_FW_ENDIAN:
		{
			*(u32 *) prop_details = VCD_FW_BIG_ENDIAN;
			break;
		}
	case VCD_FW_BOOTCODE:
		{
			fw_details =
			    (struct vcd_fw_details *)prop_details;
			fw_details->fw_buffer_addr =
			    vcd_firmware.boot_code.align_physical_addr;
			fw_details->fw_size =
			    vcd_firmware.boot_code.buffer_size;
			break;
		}
	case VCD_FW_DECODE:
		{
			fw_details =
			    (struct vcd_fw_details *)prop_details;
			status = get_dec_fw_image(fw_details);
			break;
		}
	case VCD_FW_ENCODE:
		{
			fw_details =
			    (struct vcd_fw_details *)prop_details;
			status = get_enc_fw_image(fw_details);
			break;
		}
	default:
		{
			status = false;
			break;
		}
	}
	return status;
}
Exemplo n.º 2
0
u32 vcd_get_fw_property(u32 prop_id, void *prop_details)
{
    u32 b_return = TRUE;
    struct vcd_fw_details_type *p_fw_details;
    switch (prop_id) {
    case VCD_FW_ENDIAN:
    {
        *(u32 *) prop_details = VCD_FW_BIG_ENDIAN;
        break;
    }
    case VCD_FW_BOOTCODE:
    {
        p_fw_details =
            (struct vcd_fw_details_type *)prop_details;
        p_fw_details->p_fw_buffer_addr =
            vcd_firmware.boot_code.p_align_physical_addr;
        p_fw_details->n_fw_size =
            vcd_firmware.boot_code.n_buffer_size;
        break;
    }
    case VCD_FW_DECODE:
    {
        p_fw_details =
            (struct vcd_fw_details_type *)prop_details;
        b_return = get_dec_fw_image(p_fw_details);
        break;
    }
    case VCD_FW_ENCODE:
    {
        p_fw_details =
            (struct vcd_fw_details_type *)prop_details;
        b_return = get_enc_fw_image(p_fw_details);
        break;
    }
    default:
    {
        b_return = FALSE;
        break;
    }
    }
    return b_return;
}