| 1 | ############################################################ |
|---|
| 2 | # (c)2007-2011 Broadcom Corporation |
|---|
| 3 | # |
|---|
| 4 | # This program is the proprietary software of Broadcom Corporation and/or its licensors, |
|---|
| 5 | # and may only be used, duplicated, modified or distributed pursuant to the terms and |
|---|
| 6 | # conditions of a separate, written license agreement executed between you and Broadcom |
|---|
| 7 | # (an "Authorized License"). Except as set forth in an Authorized License, Broadcom grants |
|---|
| 8 | # no license (express or implied), right to use, or waiver of any kind with respect to the |
|---|
| 9 | # Software, and Broadcom expressly reserves all rights in and to the Software and all |
|---|
| 10 | # intellectual property rights therein. IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU |
|---|
| 11 | # HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY |
|---|
| 12 | # NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE. |
|---|
| 13 | # |
|---|
| 14 | # Except as expressly set forth in the Authorized License, |
|---|
| 15 | # |
|---|
| 16 | # 1. This program, including its structure, sequence and organization, constitutes the valuable trade |
|---|
| 17 | # secrets of Broadcom, and you shall use all reasonable efforts to protect the confidentiality thereof, |
|---|
| 18 | # and to use this information only in connection with your use of Broadcom integrated circuit products. |
|---|
| 19 | # |
|---|
| 20 | # 2. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS" |
|---|
| 21 | # AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR |
|---|
| 22 | # WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO |
|---|
| 23 | # THE SOFTWARE. BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES |
|---|
| 24 | # OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE, |
|---|
| 25 | # LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION |
|---|
| 26 | # OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF |
|---|
| 27 | # USE OR PERFORMANCE OF THE SOFTWARE. |
|---|
| 28 | # |
|---|
| 29 | # 3. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR ITS |
|---|
| 30 | # LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, INDIRECT, OR |
|---|
| 31 | # EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY RELATING TO YOUR |
|---|
| 32 | # USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM HAS BEEN ADVISED OF |
|---|
| 33 | # THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT |
|---|
| 34 | # ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE |
|---|
| 35 | # LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF |
|---|
| 36 | # ANY LIMITED REMEDY. |
|---|
| 37 | # |
|---|
| 38 | # $brcm_Workfile: audio.inc $ |
|---|
| 39 | # $brcm_Revision: 16 $ |
|---|
| 40 | # $brcm_Date: 11/2/11 6:26p $ |
|---|
| 41 | # |
|---|
| 42 | # Module Description: |
|---|
| 43 | # |
|---|
| 44 | # Revision History: |
|---|
| 45 | # |
|---|
| 46 | # $brcm_Log: /nexus/modules/audio/7422/audio.inc $ |
|---|
| 47 | # |
|---|
| 48 | # 16 11/2/11 6:26p jgarrett |
|---|
| 49 | # SW7422-400: Adding routines for audio DSP debug |
|---|
| 50 | # |
|---|
| 51 | # 15 10/11/11 4:46p jgarrett |
|---|
| 52 | # SW7425-1349: Adding AudioDummyOutput |
|---|
| 53 | # |
|---|
| 54 | # 14 8/26/11 12:03p jgarrett |
|---|
| 55 | # SW7425-742: Merge to main branch |
|---|
| 56 | # |
|---|
| 57 | # SW7425-724/1 8/24/11 11:55a jgarrett |
|---|
| 58 | # SW7425-724: Adding RF Audio Encoder |
|---|
| 59 | # |
|---|
| 60 | # 13 8/18/11 5:51p jgarrett |
|---|
| 61 | # SWDTV-6306: Merge DTV APE changes to main branch |
|---|
| 62 | # |
|---|
| 63 | # Nexus_APE_Integration/2 8/17/11 4:28p jgarrett |
|---|
| 64 | # SWDTV-6306: Merging latest changes from main branch |
|---|
| 65 | # |
|---|
| 66 | # 12 8/4/11 7:33p mphillip |
|---|
| 67 | # SW7422-404: Update audio region verification code |
|---|
| 68 | # |
|---|
| 69 | # Nexus_APE_Integration/1 7/1/11 5:50p jgarrett |
|---|
| 70 | # SWDTV-6306: Integrated to latest 7422 baseline and nexus audio |
|---|
| 71 | # directory structure |
|---|
| 72 | # |
|---|
| 73 | # 11 6/20/11 5:42p jgarrett |
|---|
| 74 | # SW7425-409: Merging VP6 support to main branch |
|---|
| 75 | # |
|---|
| 76 | # SW7425-409/1 6/6/11 7:16p jgarrett |
|---|
| 77 | # SW7425-409: Adding DSP video decoder extensions for VDE |
|---|
| 78 | # |
|---|
| 79 | # 10 5/16/11 5:19p jgarrett |
|---|
| 80 | # SWDTV-6762: Adding Audyssey ADV/ABX |
|---|
| 81 | # |
|---|
| 82 | # 9 5/16/11 4:57p jgarrett |
|---|
| 83 | # SWDTV-6763: Adding 3D Surround |
|---|
| 84 | # |
|---|
| 85 | # 8 5/13/11 6:32p jgarrett |
|---|
| 86 | # SW7425-410: Adding AVL |
|---|
| 87 | # |
|---|
| 88 | # 7 4/27/11 6:52p jgarrett |
|---|
| 89 | # SW7420-1826: Adding AudioOutputGroup |
|---|
| 90 | # |
|---|
| 91 | # 6 4/18/11 9:04p jgarrett |
|---|
| 92 | # SW7425-342: Disabling VP6 firmware by default |
|---|
| 93 | # |
|---|
| 94 | # 5 4/13/11 5:07p jgarrett |
|---|
| 95 | # SW7422-388: Moving APE to main branch |
|---|
| 96 | # |
|---|
| 97 | # 4 3/24/11 11:48a jgarrett |
|---|
| 98 | # SW7422-146: Fixing kernel mode builds |
|---|
| 99 | # |
|---|
| 100 | # 3 1/10/11 3:26p jgarrett |
|---|
| 101 | # SW7422-146: Adding full nexus API set |
|---|
| 102 | # |
|---|
| 103 | # 2 1/4/11 2:39p jgarrett |
|---|
| 104 | # SW7422-146: Adding 7425 APE support |
|---|
| 105 | # |
|---|
| 106 | # 1 12/17/10 3:56p jgarrett |
|---|
| 107 | # SW7422-146: Adding initial nexus on APE for 7422 |
|---|
| 108 | # |
|---|
| 109 | ############################################################ |
|---|
| 110 | |
|---|
| 111 | # |
|---|
| 112 | # Conditional Options for this Makefile |
|---|
| 113 | # |
|---|
| 114 | |
|---|
| 115 | ###################### |
|---|
| 116 | # Define this module # |
|---|
| 117 | ###################### |
|---|
| 118 | NEXUS_MODULES += AUDIO |
|---|
| 119 | |
|---|
| 120 | ################## |
|---|
| 121 | # Module Options # |
|---|
| 122 | ################## |
|---|
| 123 | NEXUS_AUDIO_OPTIONS = BAPE_DDP_SUPPORT BAPE_WMA_SUPPORT BAPE_AC3_SUPPORT BAPE_WMAPRO_SUPPORT BAPE_EMULATION |
|---|
| 124 | |
|---|
| 125 | # Default VP6 off to safe some space for now |
|---|
| 126 | BDSP_VP6_SUPPORT ?= n |
|---|
| 127 | |
|---|
| 128 | ################## |
|---|
| 129 | # Root directory # |
|---|
| 130 | ################## |
|---|
| 131 | ifeq ($(findstring $(BCHP_CHIP), 35230 35125), $(BCHP_CHIP)) |
|---|
| 132 | NEXUS_AUDIO_MODULE_PATH := $(NEXUS_TOP)/modules/audio/${BCHP_CHIP}_ape |
|---|
| 133 | else |
|---|
| 134 | NEXUS_AUDIO_MODULE_PATH := $(NEXUS_TOP)/modules/audio/${BCHP_CHIP} |
|---|
| 135 | endif |
|---|
| 136 | |
|---|
| 137 | ################### |
|---|
| 138 | # Module Includes # |
|---|
| 139 | ################### |
|---|
| 140 | NEXUS_AUDIO_PUBLIC_INCLUDES = ${NEXUS_AUDIO_MODULE_PATH}/include |
|---|
| 141 | NEXUS_AUDIO_PRIVATE_INCLUDES := ${NEXUS_AUDIO_MODULE_PATH}/src |
|---|
| 142 | |
|---|
| 143 | NEXUS_AUDIO_PRECOMPILED_HEADER := ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_module.h |
|---|
| 144 | |
|---|
| 145 | ################## |
|---|
| 146 | # Module Sources # |
|---|
| 147 | ################## |
|---|
| 148 | NEXUS_AUDIO_SOURCES := \ |
|---|
| 149 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_3d_surround.c \ |
|---|
| 150 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_ac3_encode.c \ |
|---|
| 151 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_analog_audio_decoder.c \ |
|---|
| 152 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_analog_audio_input.c \ |
|---|
| 153 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_capture.c \ |
|---|
| 154 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dac.c \ |
|---|
| 155 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_decoder.c \ |
|---|
| 156 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_decoder_trick.c \ |
|---|
| 157 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dsp.c \ |
|---|
| 158 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dummy_output.c \ |
|---|
| 159 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_encoder.c \ |
|---|
| 160 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_equalizer.c \ |
|---|
| 161 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_input.c \ |
|---|
| 162 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_mixer.c \ |
|---|
| 163 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_module.c \ |
|---|
| 164 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_mux_output.c \ |
|---|
| 165 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_output.c \ |
|---|
| 166 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_output_group.c \ |
|---|
| 167 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_playback.c \ |
|---|
| 168 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_return_channel.c \ |
|---|
| 169 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audyssey_abx.c \ |
|---|
| 170 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audyssey_adv.c \ |
|---|
| 171 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_auto_volume_level.c \ |
|---|
| 172 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dolby_volume.c \ |
|---|
| 173 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dolby_digital_reencode.c \ |
|---|
| 174 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dts_encode.c \ |
|---|
| 175 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_i2s_input.c \ |
|---|
| 176 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_i2s_output.c \ |
|---|
| 177 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_decoder.c \ |
|---|
| 178 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_decoder_status.c \ |
|---|
| 179 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_encoder.c \ |
|---|
| 180 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_spdif_input.c \ |
|---|
| 181 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_spdif_output.c \ |
|---|
| 182 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_studio_sound.c \ |
|---|
| 183 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_surround_hd.c \ |
|---|
| 184 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_surround_xt.c \ |
|---|
| 185 | ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_volume.c |
|---|
| 186 | |
|---|
| 187 | ####################### |
|---|
| 188 | # Module Dependencies # |
|---|
| 189 | ####################### |
|---|
| 190 | NEXUS_AUDIO_DEPENDENCIES := BASE CORE TRANSPORT HDMI_OUTPUT I2C RFM SECURITY FRONTEND |
|---|
| 191 | |
|---|
| 192 | #################### |
|---|
| 193 | # Default Settings # |
|---|
| 194 | #################### |
|---|
| 195 | |
|---|
| 196 | ###################### |
|---|
| 197 | # Module Definitions # |
|---|
| 198 | ###################### |
|---|
| 199 | ifeq ($(NEXUS_CONFIG_IMAGE),y) |
|---|
| 200 | ifeq ($(NEXUS_MODE),proxy) |
|---|
| 201 | BDSP_IMG_ONLY := y |
|---|
| 202 | BAPE_IMG_ONLY := y |
|---|
| 203 | else |
|---|
| 204 | BDSP_IMG_EXTERNAL := y |
|---|
| 205 | BAPE_IMG_EXTERNAL := y |
|---|
| 206 | endif |
|---|
| 207 | endif |
|---|
| 208 | |
|---|
| 209 | ################## |
|---|
| 210 | # Magnum Modules # |
|---|
| 211 | ################## |
|---|
| 212 | # Always include the base module |
|---|
| 213 | NEXUS_AUDIO_MAGNUM_MODULES = $(MAGNUM)/basemodules/dsp/bdsp.inc $(MAGNUM)/portinginterface/ape/bape.inc |
|---|
| 214 | ifeq ($(findstring $(BCHP_CHIP), 35230 35125 35233), $(BCHP_CHIP)) |
|---|
| 215 | NEXUS_AUDIO_MAGNUM_MODULES += \ |
|---|
| 216 | $(MAGNUM)/portinginterface/ana/bana.inc |
|---|
| 217 | endif |
|---|
| 218 | |
|---|
| 219 | ############### |
|---|
| 220 | # Thunk Layer # |
|---|
| 221 | ############### |
|---|
| 222 | NEXUS_AUDIO_PRIVATE_INCLUDES += ${NEXUS_AUDIO_MODULE_PATH}/src $(NEXUS_SYNCTHUNK_DIR) |
|---|
| 223 | NEXUS_AUDIO_SOURCES += $(NEXUS_SYNCTHUNK_DIR)/nexus_audio_thunks.c |
|---|
| 224 | |
|---|
| 225 | ##################### |
|---|
| 226 | # Module Extensions # |
|---|
| 227 | ##################### |
|---|
| 228 | ifneq ($(NEXUS_AUDIO_EXTENSION_INC),) |
|---|
| 229 | include $(NEXUS_AUDIO_EXTENSION_INC) |
|---|
| 230 | endif |
|---|
| 231 | ifeq ($(NEXUS_AUDIO_BUFFER_CAPTURE),y) |
|---|
| 232 | include $(NEXUS_TOP)/extensions/audio/buffer_capture/$(BCHP_CHIP)/buffer_capture.inc |
|---|
| 233 | endif |
|---|
| 234 | ifeq ($(BDSP_VP6_SUPPORT),y) |
|---|
| 235 | include $(NEXUS_TOP)/extensions/audio/dsp_video_decoder/$(BCHP_CHIP)/dsp_video_decoder.inc |
|---|
| 236 | endif |
|---|
| 237 | |
|---|
| 238 | ifeq ($(AUDIO_REGION_VERIFICATION_SUPPORT),y) |
|---|
| 239 | include $(NEXUS_AUDIO_SECURITY_EXTENSION_INC) |
|---|
| 240 | endif |
|---|