}; /* Tables to retrieve queue offsets */ static uint32_t *qdsp_queue_offset_table[] = { qdsp_combo_queue_offset_table, qdsp_gaudio_queue_offset_table, qdsp_qtv_lp_queue_offset_table, }; #define QDSP_MODULE(n, clkname, clkrate, verify_cmd_func, patch_event_func) \ { .name = #n, .pdev_name = "adsp_" #n, .id = QDSP_MODULE_##n, \ .clk_name = clkname, .clk_rate = clkrate, \ .verify_cmd = verify_cmd_func, .patch_event = patch_event_func } static struct adsp_module_info module_info[] = { QDSP_MODULE(AUDPLAY0TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPPTASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDRECTASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPREPROCTASK, NULL, 0, NULL, NULL), QDSP_MODULE(VFETASK, "vfe_clk", 0, adsp_vfe_verify_cmd, adsp_vfe_patch_event), QDSP_MODULE(QCAMTASK, NULL, 0, NULL, NULL), QDSP_MODULE(LPMTASK, NULL, 0, adsp_lpm_verify_cmd, NULL), QDSP_MODULE(JPEGTASK, "vdc_clk", 0, adsp_jpeg_verify_cmd, adsp_jpeg_patch_event), QDSP_MODULE(VIDEOTASK, "vdc_clk", 96000000, adsp_video_verify_cmd, NULL), QDSP_MODULE(VDEC_LP_MODE, NULL, 0, NULL, NULL), QDSP_MODULE(VIDEOENCTASK, "vdc_clk", 96000000, adsp_videoenc_verify_cmd, NULL), };
qdsp_gaudio_task_to_module_table, qdsp_qtv_lp_task_to_module_table, }; /* Tables to retrieve queue offsets */ static uint32_t *qdsp_queue_offset_table[] = { qdsp_combo_queue_offset_table, qdsp_gaudio_queue_offset_table, qdsp_qtv_lp_queue_offset_table, }; #define QDSP_MODULE(n) \ { .name = #n, .pdev_name = "adsp_" #n, .id = QDSP_MODULE_##n } static struct adsp_module_info module_info[] = { QDSP_MODULE(AUDPPTASK), QDSP_MODULE(AUDRECTASK), QDSP_MODULE(AUDPREPROCTASK), QDSP_MODULE(VFETASK), QDSP_MODULE(QCAMTASK), QDSP_MODULE(LPMTASK), QDSP_MODULE(JPEGTASK), QDSP_MODULE(VIDEOTASK), QDSP_MODULE(VDEC_LP_MODE), }; int adsp_init_info(struct adsp_info *info) { info->send_irq = 0x00c00200; info->read_ctrl = 0x00400038; info->write_ctrl = 0x00400034;
#define QDSP_MODULE_RMTASK 0x01090f8e #define QDSP_MODULE_MAX 0x7fffffff /* DO NOT USE: Force this enum to be a 32bit type to improve speed */ #define QDSP_MODULE_32BIT_DUMMY 0x10000 static uint32_t *qdsp_task_to_module[IMG_MAX]; static uint32_t *qdsp_queue_offset_table[IMG_MAX]; #define QDSP_MODULE(n, clkname, clkrate, verify_cmd_func, patch_event_func) \ { .name = #n, .pdev_name = "adsp_" #n, .id = QDSP_MODULE_##n, \ .clk_name = clkname, .clk_rate = clkrate, \ .verify_cmd = verify_cmd_func, .patch_event = patch_event_func } static struct adsp_module_info module_info[] = { QDSP_MODULE(AUDPLAY0TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY1TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY2TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY3TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPPTASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPREPROCTASK, NULL, 0, NULL, NULL), QDSP_MODULE(RMTASK, NULL, 0, NULL, NULL), #if !defined(CONFIG_ARCH_MSM7X30) QDSP_MODULE(AUDRECTASK, NULL, 0, NULL, NULL), QDSP_MODULE(VFETASK, NULL, 0, adsp_vfe_verify_cmd, adsp_vfe_patch_event), QDSP_MODULE(QCAMTASK, NULL, 0, NULL, NULL), QDSP_MODULE(LPMTASK, NULL, 0, adsp_lpm_verify_cmd, NULL), QDSP_MODULE(JPEGTASK, "vdc_clk", 96000000, adsp_jpeg_verify_cmd, adsp_jpeg_patch_event), QDSP_MODULE(VIDEOTASK, "vdc_clk", 96000000,
#define QDSP_MODULE_AUDREC1TASK 0x01096970 #define QDSP_MODULE_MAX 0x7fffffff /* DO NOT USE: Force this enum to be a 32bit type to improve speed */ #define QDSP_MODULE_32BIT_DUMMY 0x10000 static uint32_t *qdsp_task_to_module[IMG_MAX]; static uint32_t *qdsp_queue_offset_table[IMG_MAX]; #define QDSP_MODULE(n, clkname, clkrate, verify_cmd_func, patch_event_func) \ { .name = #n, .pdev_name = "adsp_" #n, .id = QDSP_MODULE_##n, \ .clk_name = clkname, .clk_rate = clkrate, \ .verify_cmd = verify_cmd_func, .patch_event = patch_event_func } static struct adsp_module_info module_info[] = { QDSP_MODULE(AUDPLAY0TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY1TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY2TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPLAY3TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPPTASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDPREPROCTASK, NULL, 0, NULL, NULL), QDSP_MODULE(AFETASK , NULL, 0, NULL, NULL), QDSP_MODULE(AUDREC0TASK, NULL, 0, NULL, NULL), QDSP_MODULE(AUDREC1TASK, NULL, 0, NULL, NULL), }; int adsp_init_info(struct adsp_info *info) { uint32_t img_num; info->send_irq = 0x00c00200;