[Optimus One, P500 Original Android Development] andy572:
Now, checked all the driver code for our camera - result is small but usable i think.

VFETASK is now running with small changes in driver code but seems that does not change the not-functional camera app:

dmesg output today:

<6>[ 52.900409] [adsp.c:handle_adsp_rtos_mtoa_app] INIT_INFO Event
<6>[ 52.901004] [adsp.c:msm_adsp_get] opening module QCAMTASK
<3>[ 52.901028] DEBUG: opening module QCAMTASK
<3>[ 52.901958] DEBUG: module QCAMTASK has been registered
<6>[ 52.901989] [adsp.c:msm_adsp_get] opening module VFETASK
<3>[ 52.902008] DEBUG: opening module VFETASK
<3>[ 52.903638] DEBUG: module VFETASK has been registered
<6>[ 52.903668] [adsp.c:msm_adsp_enable] enable 'VFETASK'state[0] id[17227140]
<3>[ 52.903689] DEBUG qdsp5/adsp.c @line 985: module is VFETASK, state is: 0
<6>[ 52.909311] [adsp.c:handle_adsp_rtos_mtoa_app] module VFETASK: READY
<6>[ 52.909408] msm_enqueue: queue event new max is 1
<6>[ 53.091659] msm_enqueue: queue event new max is 2
<3>[ 53.110349] DEBUG: enabling module QCAMTASK
<6>[ 53.110383] [adsp.c:msm_adsp_enable] enable 'QCAMTASK'state[0] id[17227151]
<3>[ 53.110406] DEBUG qdsp5/adsp.c @line 985: module is QCAMTASK, state is: 0
<6>[ 53.112236] [adsp.c:handle_adsp_rtos_mtoa_app] module QCAMTASK: READY
<6>[ 53.114211] msm_enqueue: queue control new max is 1
<3>[ 53.114656] DEBUG: enabling module VFETASK
<6>[ 53.114683] [adsp.c:msm_adsp_enable] enable 'VFETASK'state[2] id[17227140]
<3>[ 53.114703] DEBUG qdsp5/adsp.c @line 985: module is VFETASK, state is: 2

File /arch/arm/mach-msm/qdsp5/adsp.c function calls:

<3>[ 50.318246] DEBUG: [adsp.c] msm_adsp_get
<3>[ 50.318278] DEBUG: [adsp.c] msm_get_init_info
<3>[ 50.320444] DEBUG: [adsp.c] handle_adsp_rtos_mtoa
<3>[ 50.320466] DEBUG: [adsp.c] handle_adsp_rtos_mtoa_app
<6>[ 50.320483] [adsp.c:handle_adsp_rtos_mtoa_app] INIT_INFO Event
<3>[ 50.320516] DEBUG: [adsp.c] rpc_send_accepted_void_reply
<3>[ 50.321173] DEBUG: [adsp.c] find_adsp_module_by_name
<6>[ 50.321198] [adsp.c:msm_adsp_get] opening module QCAMTASK
<3>[ 50.321213] DEBUG: opening module QCAMTASK
<3>[ 50.321226] DEBUG: [adsp.c] adsp_rpc_init
<3>[ 50.321249] DEBUG: [adsp.c] rpc_adsp_rtos_app_to_modem
<3>[ 50.321956] DEBUG: module QCAMTASK has been registered
<3>[ 50.321979] DEBUG: [adsp.c] msm_adsp_get
<3>[ 50.321994] DEBUG: [adsp.c] find_adsp_module_by_name
<6>[ 50.322013] [adsp.c:msm_adsp_get] opening module VFETASK
<3>[ 50.322028] DEBUG: opening module VFETASK
<3>[ 50.322041] DEBUG: [adsp.c] adsp_rpc_init
<3>[ 50.322063] DEBUG: [adsp.c] rpc_adsp_rtos_app_to_modem
<3>[ 50.322724] DEBUG: module VFETASK has been registered
<6>[ 50.500976] msm_enqueue: queue event new max is 1
<6>[ 50.520828] msm_enqueue: queue control new max is 1
<3>[ 50.607604] DEBUG: [adsp.c] msm_adsp_write
<3>[ 50.607639] DEBUG: [adsp.c] __msm_adsp_write
<3>[ 50.607656] DEBUG: [adsp.c] msm_adsp_enable
<6>[ 50.607679] [adsp.c:msm_adsp_enable] enable 'VFETASK'state[0] id[17227140]
<3>[ 50.607706] DEBUG qdsp5/adsp.c @line 985: module is VFETASK, state is: 0
<3>[ 50.607724] DEBUG: [adsp.c] rpc_adsp_rtos_app_to_modem
<3>[ 50.613336] DEBUG: [adsp.c] handle_adsp_rtos_mtoa
<3>[ 50.613359] DEBUG: [adsp.c] handle_adsp_rtos_mtoa_app
<3>[ 50.613378] DEBUG: [adsp.c] find_adsp_module_by_id
<3>[ 50.613396] DEBUG: [adsp.c] get_module_index
<6>[ 50.613418] [adsp.c:handle_adsp_rtos_mtoa_app] module VFETASK: READY
<3>[ 50.613456] DEBUG: [adsp.c] adsp_set_image
<3>[ 50.613473] DEBUG: [adsp.c] rpc_send_accepted_void_reply
<3>[ 50.613509] DEBUG: [adsp.c] read_event
<3>[ 50.613546] DEBUG: [adsp.c] prevent_suspend
<3>[ 50.613564] [adsp.c:__msm_adsp_write] module VFETASK not enabled before write
<3>[ 50.614294] DEBUG: enabling module QCAMTASK
<3>[ 50.614319] DEBUG: [adsp.c] msm_adsp_enable
<6>[ 50.614338] [adsp.c:msm_adsp_enable] enable 'QCAMTASK'state[0] id[17227151]
<3>[ 50.614358] DEBUG qdsp5/adsp.c @line 985: module is QCAMTASK, state is: 0
<3>[ 50.614374] DEBUG: [adsp.c] rpc_adsp_rtos_app_to_modem
<3>[ 50.615453] DEBUG: [adsp.c] handle_adsp_rtos_mtoa
<3>[ 50.615469] DEBUG: [adsp.c] handle_adsp_rtos_mtoa_app
<3>[ 50.615484] DEBUG: [adsp.c] find_adsp_module_by_id
<3>[ 50.615499] DEBUG: [adsp.c] get_module_index
<6>[ 50.615754] [adsp.c:handle_adsp_rtos_mtoa_app] module QCAMTASK: READY
<3>[ 50.615779] DEBUG: [adsp.c] adsp_set_image
<3>[ 50.615794] DEBUG: [adsp.c] rpc_send_accepted_void_reply
<3>[ 50.615829] DEBUG: [adsp.c] read_event
<6>[ 50.615848] msm_enqueue: queue event new max is 2
<3>[ 50.615909] DEBUG: enabling module VFETASK
<3>[ 50.615924] DEBUG: [adsp.c] msm_adsp_enable
<6>[ 50.615946] [adsp.c:msm_adsp_enable] enable 'VFETASK'state[2] id[17227140]
<3>[ 50.615964] DEBUG qdsp5/adsp.c @line 985: module is VFETASK, state is: 2
<3>[ 50.615986] DEBUG: [adsp.c] msm_adsp_vfetask_config
<6>[ 50.616001] +msm_adsp_vfetask_config
<3>[ 50.616019] DEBUG: [adsp.c] msm_adsp_write
<3>[ 50.616033] DEBUG: [adsp.c] __msm_adsp_write
<3>[ 50.616048] DEBUG: [adsp.c] adsp_validate_module
<3>[ 50.616064] DEBUG: [adsp.c] adsp_validate_queue
<3>[ 50.616081] DEBUG: [adsp.c] adsp_get_queue_offset
<6>[ 50.616101] -msm_adsp_vfetask_config
<3>[ 50.616434] DEBUG: [adsp.c] adsp_irq_handler
<3>[ 50.616451] DEBUG: [adsp.c] adsp_get_event
<3>[ 50.616466] DEBUG: [adsp.c] adsp_rtos_read_ctrl_word_cmd_tast_to_h_v
<3>[ 50.616484] DEBUG: [adsp.c] adsp_get_module
<3>[ 50.616499] DEBUG: [adsp.c] find_adsp_module_by_id
<3>[ 50.616513] DEBUG: [adsp.c] get_module_index
<3>[ 50.616529] DEBUG: [adsp.c] read_event_32
<3>[ 50.616549] DEBUG: [adsp.c] adsp_get_event

the problem is here:

<3>[ 50.613546] DEBUG: [adsp.c] prevent_suspend

<3>[ 50.613564] [adsp.c:__msm_adsp_write] module VFETASK not enabled before write

Think, the VFETASK gets closed by another function, so we need to re-enable this?

...more follows in a short time :D