view src/gpf/frame/frame.def @ 78:c632896652ba

mfw/ti1_key.c: properly initialize notified_keys array The code in this ti1_key.c layer needs to call kpd_subscribe() and kpd_define_key_notification() functions in order to register with the KPD driver. The original code passed KPD_NB_PHYSICAL_KEYS in nb_notified_keys - this constant is defined to 24 in kpd_cfg.h on all platforms of interest to us - but it only filled the first 23 slots in the notified_keys array, resulting in stack garbage being passed to KPD API functions. The fix consists of initializing the last missed array slot to KPD_KEY_RECORD, the key ID for the right side button on the D-Sample handset. On our current hw targets this "Record" button exists as the EXTRA button on our Luna keypad board and as the camera button on the Pirelli DP-L10. There is no support whatsoever for this button in current BMI+MFW, we have no plans of doing anything with Pirelli's camera button even if we do get our UI fw running on that phone, and the Mother's dream of building our own FreeCalypso handset with the same button arrangement as D-Sample (including the right side button) is currently very nebulous - but let us nonetheless handle the full set of buttons on the KPD to MFW interface, and let upper layers weed out unsupported buttons.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 25 Oct 2020 23:41:01 +0000
parents 4e78acac3d88
children
line wrap: on
line source

LIBRARY
DESCRIPTION "GPS Frame"
EXPORTS
 vsi_m_new
 vsi_m_free
 vsi_m_cfree
 vsi_m_cnew
 vsi_m_attach
 vsi_m_init
 vsi_p_create
 vsi_p_exit
 vsi_p_delete
 vsi_p_start
 vsi_p_stop
 vsi_p_handle
 vsi_p_name
 vsi_c_open
 vsi_c_close
 vsi_c_clear
 vsi_c_send
 vsi_c_free
 vsi_c_pfree
 vsi_c_new
 vsi_c_new_sdu
 vsi_c_pnew
 vsi_c_await
 vsi_c_primitive
 vsi_c_psend
 vsi_c_pmax_size
 vsi_c_sync
 vsi_c_alloc_send
 vsi_c_ppass
 vsi_free
 vsi_drpo_new
 vsi_drp_new
 vsi_dp_new
 vsi_dp_sum
 vsi_dp_max_size
 vsi_t_start
 vsi_t_pstart
 vsi_t_stop
 vsi_t_status
 vsi_t_config
 vsi_s_open
 vsi_s_close
 vsi_s_get
 vsi_s_release
 vsi_o_ttrace
 _vsi_o_ttrace
 vsi_o_itrace
 _vsi_o_itrace
 vsi_o_ptrace
 vsi_o_error_ttrace
 vsi_o_func_ttrace
 vsi_o_event_ttrace
 vsi_o_strace
 vsi_o_assert
 vsi_o_set_htrace
 vsi_gettaskname
 vsi_gettaskhandle
 vsi_e_name
 vsi_e_handle
 vsi_gettaskflags
 vsi_gettracemask
 vsi_settracemask
 vsi_t_time
 vsi_t_sleep
 vsi_d_create
 vsi_d_init
 vsi_d_exit
 vsi_d_open
 vsi_d_close
 vsi_d_read
 vsi_d_write
 vsi_d_setsignal
 vsi_d_resetsignal
 vsi_d_setconfig
 vsi_d_getconfig
 vsi_d_flush
 vsi_trc_free
 vsi_trcsuspend
 vsi_object_info
 pf_StartAllTasks
 pf_CreateAllEntities
 pf_Init
 pf_get_frameenv
 os_CreateTask
 os_DestroyTask
 os_StartTask
 os_StopTask
 os_GetTaskName
 os_GetTaskHandle
 os_SuspendTask
 os_TaskInformation
 os_CreateQueue
 os_DestroyQueue
 os_OpenQueue
 os_GetQueueName
 os_create_extq
 os_CloseQueue
 os_SendToQueue
 os_ReceiveFromQueue
 os_QueueInformation
 os_CreatePartitionPool
 os_AllocatePartition
 os_DeallocatePartition
 os_CreateMemoryPool
 os_AllocateMemory
 os_DeallocateMemory
 os_PartitionInformation
 os_MemoryInformation
 os_CreateTimer
 os_DestroyTimer
 os_StartTimer
 os_StopTimer
 os_QueryTimer
 os_TimerInformation
 os_CreateSemaphore
 os_DestroySemaphore
 os_OpenSemaphore
 os_CloseSemaphore
 os_ObtainSemaphore
 os_ReleaseSemaphore
 os_SemaphoreInformation
 os_GetTime
 os_ObjectInformation
 SuppressOK
 rt_RouteRead
 EntityNameBuf
 trc_hCommTrace
 FRM_TST_NAME
 FRM_RCV_NAME
 FRM_SYST_NAME
 FRM_PCO_NAME
 ext_data_pool_handle
 int_data_pool_handle
 PrimGroupHandle
 DmemGroupHandle