FreeCalypso > hg > fc-tourmaline
view src/cs/services/audio/audio_compatibilities.h @ 280:82665effff30
keypad boot init overhaul: handle initially held-down keys
This change fixes two previous behavioural defects:
1) On Compal phones, the PWR key had to be released before the boot
sequence would proceed at all - it was stuck in an endless IRQ loop
at the point of Nucleus enabling interrupts, before anything else.
2) On both Compal and sane platforms including Luna, if some regular
non-PWR key was held down at boot time, the boot sequence would
proceed and complete normally, but all non-PWR keypad buttons would
be dead for the remainder of that boot cycle.
The fix is a generic solution - no Compal-specific hack ended up being
needed for the special case of their idiotic PWON-to-ROW4 hw wiring.
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 24 Sep 2021 00:47:12 +0000 |
parents | 4e78acac3d88 |
children |
line wrap: on
line source
/****************************************************************************/ /* */ /* File Name: audio_compatibilities.h */ /* */ /* Purpose: This file contains the compatibilities table between the */ /* audio feature as describe in the S916 specification (annex) */ /* */ /* Version 0.1 */ /* */ /* Date Modification */ /* ------------------------------------ */ /* 12 November 2001 Create */ /* */ /* Author Francois Mazard */ /* */ /* (C) Copyright 2001 by Texas Instruments Incorporated, All Rights Reserved*/ /****************************************************************************/ #include "rv/rv_defined_swe.h" #ifdef RVM_AUDIO_MAIN_SWE #ifndef __AUDIO_COMPATIBILITIES_H_ #define __AUDIO_COMPATIBILITIES_H_ #ifdef __cplusplus extern "C" { #endif /* Define the number of audio features */ #define AUDIO_NUMBER_OF_FEATURES (13) typedef struct { BOOLEAN feature[AUDIO_NUMBER_OF_FEATURES]; } T_AUDIO_ACTIVE_FEATURE; /* Define the list of the audio features */ #define AUDIO_KEYBEEP_FEATURE (0) #define AUDIO_TONES_FEATURE (1) #define AUDIO_MELODY_E1_FEATURE (2) #define AUDIO_VOICE_MEMO_PLAY_FEATURE (3) #define AUDIO_VOICE_MEMO_RECORD_FEATURE (4) #define AUDIO_SR_ENROLL_FEATURE (5) #define AUDIO_SR_UPDATE_FEATURE (6) #define AUDIO_SR_RECO_FEATURE (7) #define AUDIO_MELODY_E2_FEATURE (8) #define AUDIO_TTY_FEATURE (9) #define AUDIO_VOICE_MEMO_AMR_PLAY_FEATURE (10) #define AUDIO_VOICE_MEMO_AMR_RECORD_FEATURE (11) #define AUDIO_MIDI_FEATURE (12) /* It isn't a starting message */ #define AUDIO_NO_START_MESSAGE (-1) typedef struct { BOOLEAN compatibilities_flag[AUDIO_NUMBER_OF_FEATURES]; } T_AUDIO_COMPATIBILITES; #ifdef __cplusplus } #endif #endif /* __AUDIO_COMPATIBILITIES_H_ */ #endif /* #ifdef RVM_AUDIO_MAIN_SWE */