| 1 | /*************************************************************************** |
|---|
| 2 | * Copyright (c) 2004-2010, Broadcom Corporation |
|---|
| 3 | * All Rights Reserved |
|---|
| 4 | * Confidential Property of Broadcom Corporation |
|---|
| 5 | * |
|---|
| 6 | * THIS SOFTWARE MAY ONLY BE USED SUBJECT TO AN EXECUTED SOFTWARE LICENSE |
|---|
| 7 | * AGREEMENT BETWEEN THE USER AND BROADCOM. YOU HAVE NO RIGHT TO USE OR |
|---|
| 8 | * EXPLOIT THIS MATERIAL EXCEPT SUBJECT TO THE TERMS OF SUCH AN AGREEMENT. |
|---|
| 9 | * |
|---|
| 10 | * $brcm_Workfile: bsynclib_audio_source.h $ |
|---|
| 11 | * $brcm_Revision: Hydra_Software_Devel/3 $ |
|---|
| 12 | * $brcm_Date: 3/22/10 5:39p $ |
|---|
| 13 | * |
|---|
| 14 | * Revision History: |
|---|
| 15 | * |
|---|
| 16 | * $brcm_Log: /magnum/syslib/synclib/noarch/bsynclib_audio_source.h $ |
|---|
| 17 | * |
|---|
| 18 | * Hydra_Software_Devel/3 3/22/10 5:39p bandrews |
|---|
| 19 | * SW7408-83: remove undefined functions; add unconditional video unmute |
|---|
| 20 | * |
|---|
| 21 | * Hydra_Software_Devel/2 1/26/10 9:00p bandrews |
|---|
| 22 | * SW7405-3774: added mute control support |
|---|
| 23 | * |
|---|
| 24 | * Hydra_Software_Devel/1 3/24/08 3:09p bandrews |
|---|
| 25 | * PR40865: Fixed |
|---|
| 26 | * |
|---|
| 27 | * Hydra_Software_Devel/3 2/20/08 10:03p bandrews |
|---|
| 28 | * PR37951: Updated based on feedback from usage |
|---|
| 29 | * |
|---|
| 30 | * Hydra_Software_Devel/2 1/3/08 5:17p bandrews |
|---|
| 31 | * PR37951: Updated based on initial feedback |
|---|
| 32 | * |
|---|
| 33 | * Hydra_Software_Devel/1 12/12/07 2:53p bandrews |
|---|
| 34 | * PR37951: Initial check-in |
|---|
| 35 | ***************************************************************************/ |
|---|
| 36 | |
|---|
| 37 | #include "bstd.h" |
|---|
| 38 | #include "bsynclib_delay_element.h" |
|---|
| 39 | #include "bsynclib_timer.h" |
|---|
| 40 | |
|---|
| 41 | #ifndef BSYNCLIB_AUDIO_SOURCE_H__ |
|---|
| 42 | #define BSYNCLIB_AUDIO_SOURCE_H__ |
|---|
| 43 | |
|---|
| 44 | typedef struct BSYNClib_AudioSource_Data |
|---|
| 45 | { |
|---|
| 46 | bool bDigital; |
|---|
| 47 | bool bSamplingRateReceived; |
|---|
| 48 | } BSYNClib_AudioSource_Data; |
|---|
| 49 | |
|---|
| 50 | typedef struct BSYNClib_AudioSource_Results |
|---|
| 51 | { |
|---|
| 52 | bool bMutePending; |
|---|
| 53 | } BSYNClib_AudioSource_Results; |
|---|
| 54 | |
|---|
| 55 | typedef struct BSYNClib_AudioSource |
|---|
| 56 | { |
|---|
| 57 | BSYNClib_DelayElement sElement; |
|---|
| 58 | |
|---|
| 59 | BSYNClib_Timer * psUnmuteTimer; |
|---|
| 60 | BSYNClib_Timer * psUnconditionalUnmuteTimer; |
|---|
| 61 | |
|---|
| 62 | BSYNClib_AudioSource_Data sData; |
|---|
| 63 | BSYNClib_AudioSource_Data sSnapshot; |
|---|
| 64 | BSYNClib_AudioSource_Results sResults; |
|---|
| 65 | BSYNClib_AudioSource_Config sConfig; |
|---|
| 66 | BSYNClib_Source_Status sStatus; |
|---|
| 67 | } BSYNClib_AudioSource; |
|---|
| 68 | |
|---|
| 69 | BSYNClib_AudioSource * BSYNClib_AudioSource_Create(void); |
|---|
| 70 | |
|---|
| 71 | void BSYNClib_AudioSource_Destroy(BSYNClib_AudioSource * psSource); |
|---|
| 72 | |
|---|
| 73 | bool BSYNClib_AudioSource_SyncCheck(BSYNClib_AudioSource * psSource); |
|---|
| 74 | |
|---|
| 75 | void BSYNClib_AudioSource_Reset_isr(BSYNClib_AudioSource * psSource); |
|---|
| 76 | |
|---|
| 77 | void BSYNClib_AudioSource_GetDefaultConfig(BSYNClib_AudioSource_Config * psConfig); |
|---|
| 78 | |
|---|
| 79 | void BSYNClib_AudioSource_P_SelfClearConfig_isr(BSYNClib_AudioSource * psSource); |
|---|
| 80 | |
|---|
| 81 | BERR_Code BSYNClib_AudioSource_P_ProcessConfig_isr(BSYNClib_AudioSource * psSource); |
|---|
| 82 | |
|---|
| 83 | void BSYNClib_AudioSource_Snapshot_isr(BSYNClib_AudioSource * psSource); |
|---|
| 84 | |
|---|
| 85 | void BSYNClib_AudioSource_P_GetDefaultStatus(BSYNClib_Source_Status * psStatus); |
|---|
| 86 | |
|---|
| 87 | BERR_Code BSYNClib_AudioSource_SetMute(BSYNClib_AudioSource * psSource, bool bMute); |
|---|
| 88 | |
|---|
| 89 | #endif /* BSYNCLIB_AUDIO_SOURCE_H__ */ |
|---|
| 90 | |
|---|