############################################################ # (c)2007-2011 Broadcom Corporation # # This program is the proprietary software of Broadcom Corporation and/or its licensors, # and may only be used, duplicated, modified or distributed pursuant to the terms and # conditions of a separate, written license agreement executed between you and Broadcom # (an "Authorized License"). Except as set forth in an Authorized License, Broadcom grants # no license (express or implied), right to use, or waiver of any kind with respect to the # Software, and Broadcom expressly reserves all rights in and to the Software and all # intellectual property rights therein. IF YOU HAVE NO AUTHORIZED LICENSE, THEN YOU # HAVE NO RIGHT TO USE THIS SOFTWARE IN ANY WAY, AND SHOULD IMMEDIATELY # NOTIFY BROADCOM AND DISCONTINUE ALL USE OF THE SOFTWARE. # # Except as expressly set forth in the Authorized License, # # 1. This program, including its structure, sequence and organization, constitutes the valuable trade # secrets of Broadcom, and you shall use all reasonable efforts to protect the confidentiality thereof, # and to use this information only in connection with your use of Broadcom integrated circuit products. # # 2. TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SOFTWARE IS PROVIDED "AS IS" # AND WITH ALL FAULTS AND BROADCOM MAKES NO PROMISES, REPRESENTATIONS OR # WARRANTIES, EITHER EXPRESS, IMPLIED, STATUTORY, OR OTHERWISE, WITH RESPECT TO # THE SOFTWARE. BROADCOM SPECIFICALLY DISCLAIMS ANY AND ALL IMPLIED WARRANTIES # OF TITLE, MERCHANTABILITY, NONINFRINGEMENT, FITNESS FOR A PARTICULAR PURPOSE, # LACK OF VIRUSES, ACCURACY OR COMPLETENESS, QUIET ENJOYMENT, QUIET POSSESSION # OR CORRESPONDENCE TO DESCRIPTION. YOU ASSUME THE ENTIRE RISK ARISING OUT OF # USE OR PERFORMANCE OF THE SOFTWARE. # # 3. TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL BROADCOM OR ITS # LICENSORS BE LIABLE FOR (i) CONSEQUENTIAL, INCIDENTAL, SPECIAL, INDIRECT, OR # EXEMPLARY DAMAGES WHATSOEVER ARISING OUT OF OR IN ANY WAY RELATING TO YOUR # USE OF OR INABILITY TO USE THE SOFTWARE EVEN IF BROADCOM HAS BEEN ADVISED OF # THE POSSIBILITY OF SUCH DAMAGES; OR (ii) ANY AMOUNT IN EXCESS OF THE AMOUNT # ACTUALLY PAID FOR THE SOFTWARE ITSELF OR U.S. $1, WHICHEVER IS GREATER. THESE # LIMITATIONS SHALL APPLY NOTWITHSTANDING ANY FAILURE OF ESSENTIAL PURPOSE OF # ANY LIMITED REMEDY. # # $brcm_Workfile: audio.inc $ # $brcm_Revision: 16 $ # $brcm_Date: 11/2/11 6:26p $ # # Module Description: # # Revision History: # # $brcm_Log: /nexus/modules/audio/7422/audio.inc $ # # 16 11/2/11 6:26p jgarrett # SW7422-400: Adding routines for audio DSP debug # # 15 10/11/11 4:46p jgarrett # SW7425-1349: Adding AudioDummyOutput # # 14 8/26/11 12:03p jgarrett # SW7425-742: Merge to main branch # # SW7425-724/1 8/24/11 11:55a jgarrett # SW7425-724: Adding RF Audio Encoder # # 13 8/18/11 5:51p jgarrett # SWDTV-6306: Merge DTV APE changes to main branch # # Nexus_APE_Integration/2 8/17/11 4:28p jgarrett # SWDTV-6306: Merging latest changes from main branch # # 12 8/4/11 7:33p mphillip # SW7422-404: Update audio region verification code # # Nexus_APE_Integration/1 7/1/11 5:50p jgarrett # SWDTV-6306: Integrated to latest 7422 baseline and nexus audio # directory structure # # 11 6/20/11 5:42p jgarrett # SW7425-409: Merging VP6 support to main branch # # SW7425-409/1 6/6/11 7:16p jgarrett # SW7425-409: Adding DSP video decoder extensions for VDE # # 10 5/16/11 5:19p jgarrett # SWDTV-6762: Adding Audyssey ADV/ABX # # 9 5/16/11 4:57p jgarrett # SWDTV-6763: Adding 3D Surround # # 8 5/13/11 6:32p jgarrett # SW7425-410: Adding AVL # # 7 4/27/11 6:52p jgarrett # SW7420-1826: Adding AudioOutputGroup # # 6 4/18/11 9:04p jgarrett # SW7425-342: Disabling VP6 firmware by default # # 5 4/13/11 5:07p jgarrett # SW7422-388: Moving APE to main branch # # 4 3/24/11 11:48a jgarrett # SW7422-146: Fixing kernel mode builds # # 3 1/10/11 3:26p jgarrett # SW7422-146: Adding full nexus API set # # 2 1/4/11 2:39p jgarrett # SW7422-146: Adding 7425 APE support # # 1 12/17/10 3:56p jgarrett # SW7422-146: Adding initial nexus on APE for 7422 # ############################################################ # # Conditional Options for this Makefile # ###################### # Define this module # ###################### NEXUS_MODULES += AUDIO ################## # Module Options # ################## NEXUS_AUDIO_OPTIONS = BAPE_DDP_SUPPORT BAPE_WMA_SUPPORT BAPE_AC3_SUPPORT BAPE_WMAPRO_SUPPORT BAPE_EMULATION # Default VP6 off to safe some space for now BDSP_VP6_SUPPORT ?= n ################## # Root directory # ################## ifeq ($(findstring $(BCHP_CHIP), 35230 35125), $(BCHP_CHIP)) NEXUS_AUDIO_MODULE_PATH := $(NEXUS_TOP)/modules/audio/${BCHP_CHIP}_ape else NEXUS_AUDIO_MODULE_PATH := $(NEXUS_TOP)/modules/audio/${BCHP_CHIP} endif ################### # Module Includes # ################### NEXUS_AUDIO_PUBLIC_INCLUDES = ${NEXUS_AUDIO_MODULE_PATH}/include NEXUS_AUDIO_PRIVATE_INCLUDES := ${NEXUS_AUDIO_MODULE_PATH}/src NEXUS_AUDIO_PRECOMPILED_HEADER := ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_module.h ################## # Module Sources # ################## NEXUS_AUDIO_SOURCES := \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_3d_surround.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_ac3_encode.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_analog_audio_decoder.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_analog_audio_input.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_capture.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dac.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_decoder.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_decoder_trick.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dsp.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_dummy_output.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_encoder.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_equalizer.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_input.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_mixer.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_module.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_mux_output.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_output.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_output_group.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_playback.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audio_return_channel.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audyssey_abx.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_audyssey_adv.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_auto_volume_level.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dolby_volume.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dolby_digital_reencode.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_dts_encode.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_i2s_input.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_i2s_output.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_decoder.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_decoder_status.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_rf_audio_encoder.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_spdif_input.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_spdif_output.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_studio_sound.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_surround_hd.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_surround_xt.c \ ${NEXUS_AUDIO_MODULE_PATH}/src/nexus_tru_volume.c ####################### # Module Dependencies # ####################### NEXUS_AUDIO_DEPENDENCIES := BASE CORE TRANSPORT HDMI_OUTPUT I2C RFM SECURITY FRONTEND #################### # Default Settings # #################### ###################### # Module Definitions # ###################### ifeq ($(NEXUS_CONFIG_IMAGE),y) ifeq ($(NEXUS_MODE),proxy) BDSP_IMG_ONLY := y BAPE_IMG_ONLY := y else BDSP_IMG_EXTERNAL := y BAPE_IMG_EXTERNAL := y endif endif ################## # Magnum Modules # ################## # Always include the base module NEXUS_AUDIO_MAGNUM_MODULES = $(MAGNUM)/basemodules/dsp/bdsp.inc $(MAGNUM)/portinginterface/ape/bape.inc ifeq ($(findstring $(BCHP_CHIP), 35230 35125 35233), $(BCHP_CHIP)) NEXUS_AUDIO_MAGNUM_MODULES += \ $(MAGNUM)/portinginterface/ana/bana.inc endif ############### # Thunk Layer # ############### NEXUS_AUDIO_PRIVATE_INCLUDES += ${NEXUS_AUDIO_MODULE_PATH}/src $(NEXUS_SYNCTHUNK_DIR) NEXUS_AUDIO_SOURCES += $(NEXUS_SYNCTHUNK_DIR)/nexus_audio_thunks.c ##################### # Module Extensions # ##################### ifneq ($(NEXUS_AUDIO_EXTENSION_INC),) include $(NEXUS_AUDIO_EXTENSION_INC) endif ifeq ($(NEXUS_AUDIO_BUFFER_CAPTURE),y) include $(NEXUS_TOP)/extensions/audio/buffer_capture/$(BCHP_CHIP)/buffer_capture.inc endif ifeq ($(BDSP_VP6_SUPPORT),y) include $(NEXUS_TOP)/extensions/audio/dsp_video_decoder/$(BCHP_CHIP)/dsp_video_decoder.inc endif ifeq ($(AUDIO_REGION_VERIFICATION_SUPPORT),y) include $(NEXUS_AUDIO_SECURITY_EXTENSION_INC) endif