| 1 | ############################################################ |
|---|
| 2 | # Copyright (c) 2005-2007, 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: Makefile.core $ |
|---|
| 11 | # $brcm_Revision: 15 $ |
|---|
| 12 | # $brcm_Date: 1/11/07 2:32p $ |
|---|
| 13 | # |
|---|
| 14 | # Module Description: |
|---|
| 15 | # |
|---|
| 16 | # Revision History: |
|---|
| 17 | # |
|---|
| 18 | # Created: 02/09/2001 by Marcus Kellerman |
|---|
| 19 | # |
|---|
| 20 | # $brcm_Log: /BSEAV/api/build/legacy/Makefile.core $ |
|---|
| 21 | # |
|---|
| 22 | # 15 1/11/07 2:32p jgarrett |
|---|
| 23 | # PR 27004: Adding transition.inc |
|---|
| 24 | # |
|---|
| 25 | # 14 9/25/06 2:44p gmohile |
|---|
| 26 | # PR 24129: Add sds proxy path for 7313 |
|---|
| 27 | # |
|---|
| 28 | # 13 9/20/06 11:48a gmohile |
|---|
| 29 | # PR 24129: Added support for 7313 |
|---|
| 30 | # |
|---|
| 31 | # 12 11/2/05 6:11p vsilyaev |
|---|
| 32 | # PR 16982: PR17883: moved out raptor microcode from the kernel |
|---|
| 33 | # |
|---|
| 34 | # 11 9/15/05 11:31a erickson |
|---|
| 35 | # PR17148: add required basemodules |
|---|
| 36 | # |
|---|
| 37 | # 10 9/15/05 10:27a erickson |
|---|
| 38 | # PR17048: default CONFIG_XVD_SUPPORT for 97318AVC |
|---|
| 39 | # |
|---|
| 40 | # 8 7/20/05 6:45p vsilyaev |
|---|
| 41 | # PR 16385: Merge IP record feature |
|---|
| 42 | # |
|---|
| 43 | # PROD_IPSTB_REFSW_Devel/1 6/30/05 11:03a wesleyl |
|---|
| 44 | # PR15072: Add bsettop_timer.c |
|---|
| 45 | # |
|---|
| 46 | # 7 4/27/05 2:51p wesleyl |
|---|
| 47 | # PR15072: change to big-endian for vxworks |
|---|
| 48 | # |
|---|
| 49 | # 6 3/9/05 7:44p vsilyaev |
|---|
| 50 | # PR 14402: Moved compose into the toplevel makefile. |
|---|
| 51 | # |
|---|
| 52 | # 5 3/5/05 3:06p vsilyaev |
|---|
| 53 | # PR 14226: Compile images only for platforms where it's necessary. |
|---|
| 54 | # |
|---|
| 55 | # 4 2/28/05 5:02p vsilyaev |
|---|
| 56 | # PR 14226: Added 7411 microcode. |
|---|
| 57 | # |
|---|
| 58 | # 3 2/18/05 3:58p erickson |
|---|
| 59 | # PR14180: vxworks cleanup |
|---|
| 60 | # |
|---|
| 61 | # 2 2/15/05 4:50p vsilyaev |
|---|
| 62 | # PR13158: XVD moved into the kernel driver. |
|---|
| 63 | # |
|---|
| 64 | # 1 2/7/05 6:52p dlwin |
|---|
| 65 | # Merge down for release 2005_REFSW_MERGETOMAIN: |
|---|
| 66 | # |
|---|
| 67 | # Irvine_BSEAVSW_Devel/16 1/28/05 11:13a erickson |
|---|
| 68 | # PR13908: refactor to make external include of Makefile.core correct |
|---|
| 69 | # |
|---|
| 70 | # Irvine_BSEAVSW_Devel/15 1/26/05 3:38p bandrews |
|---|
| 71 | # PR13158: 97318AVC support |
|---|
| 72 | # |
|---|
| 73 | # Irvine_BSEAVSW_Devel/14 1/26/05 3:37p bandrews |
|---|
| 74 | # PR13158: 97318AVC support |
|---|
| 75 | # |
|---|
| 76 | # Irvine_BSEAVSW_Devel/13 1/26/05 11:25a erickson |
|---|
| 77 | # PR13908: moved BCM_BOARD_NO to api.mak and cleaned up use of magnum |
|---|
| 78 | # .inc fles |
|---|
| 79 | # |
|---|
| 80 | # Irvine_BSEAVSW_Devel/12 1/25/05 5:12p erickson |
|---|
| 81 | # PR13908: Settop API makefile rework |
|---|
| 82 | # |
|---|
| 83 | # Irvine_BSEAVSW_Devel/11 1/12/05 12:29p vsilyaev |
|---|
| 84 | # PR 13803: Added 7411 initialization code. |
|---|
| 85 | # |
|---|
| 86 | # Irvine_BSEAVSW_Devel/10 12/14/04 12:23p vsilyaev |
|---|
| 87 | # PR13158: Added 7411 support to 97318 platform |
|---|
| 88 | # |
|---|
| 89 | # Irvine_BSEAVSW_Devel/9 11/24/04 3:44p vsilyaev |
|---|
| 90 | # PR13165: Added timer module. |
|---|
| 91 | # |
|---|
| 92 | # Irvine_BSEAVSW_Devel/8 11/5/04 10:42a arbisman |
|---|
| 93 | # PR13139: Add vxWorks support for legacy platforms |
|---|
| 94 | # |
|---|
| 95 | # Irvine_BSEAVSW_Devel/7 7/6/04 4:30p erickson |
|---|
| 96 | # PR11771: settop api dataflow redesign |
|---|
| 97 | # |
|---|
| 98 | # Irvine_BSEAVSW_Devel/6 7/6/04 3:54p erickson |
|---|
| 99 | # PR11771: settop api dataflow redesign |
|---|
| 100 | # |
|---|
| 101 | # Irvine_BSEAVSW_Devel/5 5/12/04 10:23a erickson |
|---|
| 102 | # PR10967: added standard header |
|---|
| 103 | ############################################################ |
|---|
| 104 | |
|---|
| 105 | # |
|---|
| 106 | # Makefile.common is included by all Makefile.XXX's. |
|---|
| 107 | # It is used to build the settop api libraries. |
|---|
| 108 | # |
|---|
| 109 | |
|---|
| 110 | include $(BSEAV)/api/build/Makefile.common |
|---|
| 111 | |
|---|
| 112 | BCM_CHIP = ${CHIP} |
|---|
| 113 | BCM_BOARD = bcm${BCM_BOARD_NO} |
|---|
| 114 | ifeq (${SYSTEM}, vxworks) |
|---|
| 115 | BCM_ENDIAN = be |
|---|
| 116 | else |
|---|
| 117 | BCM_ENDIAN = le |
|---|
| 118 | endif |
|---|
| 119 | include ${BSETTOP}/build/legacy/settop.mak |
|---|
| 120 | |
|---|
| 121 | ifeq (${SYSTEM}, vxworks) |
|---|
| 122 | # All legacy chips use the same kernel interface code |
|---|
| 123 | KERNELINTF_OS = ${SETTOP}/kernelinterface/vxworks/bcm97110 ${SETTOP}/kernelinterface/vxworks |
|---|
| 124 | OS=vxworks |
|---|
| 125 | else |
|---|
| 126 | KERNELINTF_OS = ${SETTOP}/kernelinterface/linuxuser |
|---|
| 127 | OS=linuxuser |
|---|
| 128 | endif |
|---|
| 129 | |
|---|
| 130 | BCM_INCLUDE = \ |
|---|
| 131 | $(HWINTF) \ |
|---|
| 132 | $(HW_CHIP) \ |
|---|
| 133 | $(HW_CHIP_ENDIAN) \ |
|---|
| 134 | $(HW_CHIP_BME) \ |
|---|
| 135 | $(HW_BOARD_ENDIAN) \ |
|---|
| 136 | $(HW_BOARD) \ |
|---|
| 137 | $(DEVICE) \ |
|---|
| 138 | $(KERNELINTF_OS) \ |
|---|
| 139 | $(KERNELINTF) \ |
|---|
| 140 | $(KFIR_INC) \ |
|---|
| 141 | ${PI_INCLUDE} \ |
|---|
| 142 | ${SUPERIO} \ |
|---|
| 143 | ${SURFACEDRAW} \ |
|---|
| 144 | $(GFXCTRL) \ |
|---|
| 145 | $(GFX_CHIP) \ |
|---|
| 146 | $(GFX2D) \ |
|---|
| 147 | $(PI_GFX2D) \ |
|---|
| 148 | $(TRANSPORT) \ |
|---|
| 149 | $(MISCLIB) \ |
|---|
| 150 | $(MPEGVIDEO_INC) \ |
|---|
| 151 | $(DISPCTRL) \ |
|---|
| 152 | $(MPEGAUDIO) \ |
|---|
| 153 | ${SDS_PF} \ |
|---|
| 154 | ${QAMMAIN} \ |
|---|
| 155 | ${QAM_3250_BOARD} \ |
|---|
| 156 | $(SL_CFG_DISP) \ |
|---|
| 157 | $(SL_MPEGVIDEO) \ |
|---|
| 158 | $(MPEGVIDEO) \ |
|---|
| 159 | ${SL_CHANLIB} \ |
|---|
| 160 | ${DMACTRL} \ |
|---|
| 161 | ${PI_RFMOD} \ |
|---|
| 162 | ${VID_CHIP} \ |
|---|
| 163 | ${SMARTCARD} |
|---|
| 164 | |
|---|
| 165 | # vbi |
|---|
| 166 | BCM_INCLUDE += \ |
|---|
| 167 | ${PI_CCE_CHIP} \ |
|---|
| 168 | ${PI_CCE_CHIP} \ |
|---|
| 169 | ${PI_CCE} \ |
|---|
| 170 | ${PI_CCD_CHIP} \ |
|---|
| 171 | ${PI_CCD} \ |
|---|
| 172 | ${PI_TT_CHIP} \ |
|---|
| 173 | ${PI_TT} \ |
|---|
| 174 | ${SL_TT} \ |
|---|
| 175 | ${SL_VBI} |
|---|
| 176 | |
|---|
| 177 | # M2M DMA (or BLT_DMA) is broken on 7312 7318 7327 7329 |
|---|
| 178 | ifneq ($(findstring $(CHIP),7312 7313 7318 7327 7329), $(CHIP)) |
|---|
| 179 | BSETTOP_CFLAGS += -DCONFIG_M2M_DMA_SUPPORT |
|---|
| 180 | endif |
|---|
| 181 | |
|---|
| 182 | # Tuner support |
|---|
| 183 | ifneq ($(findstring $(CHIP),7318), $(CHIP)) |
|---|
| 184 | BSETTOP_CFLAGS += -DCONFIG_TUNER_SUPPORT |
|---|
| 185 | endif |
|---|
| 186 | |
|---|
| 187 | # SDS_TURBO_SUPPORT |
|---|
| 188 | # TODO: This should be moved to a central config file and it should only be enabled if CONFIG_DEMOD_SDS_SUPPORT=y |
|---|
| 189 | ifneq ($(findstring $(CHIP),7312 7313 7318 7327), $(CHIP)) |
|---|
| 190 | BSETTOP_CFLAGS += -DCONFIG_SDS_TURBO_SUPPORT |
|---|
| 191 | endif |
|---|
| 192 | |
|---|
| 193 | ifeq ($(findstring $(CHIP),7312 7313 7314 7315 7317 7318 7319 7320 7327 7328 7329), $(CHIP)) |
|---|
| 194 | DRIVER_SUBDIR=973xx |
|---|
| 195 | CFLAGS += -DBCM73XX |
|---|
| 196 | DSS_SUPPORT = y |
|---|
| 197 | else |
|---|
| 198 | DRIVER_SUBDIR=971xx |
|---|
| 199 | endif |
|---|
| 200 | |
|---|
| 201 | ifeq ($(SYSTEM), vxworks) |
|---|
| 202 | DRIVER_DIR=$(BSEAV)/vxworks/driver |
|---|
| 203 | else |
|---|
| 204 | DRIVER_DIR=$(BSEAV)/linux/driver |
|---|
| 205 | endif |
|---|
| 206 | BSETTOP_CFLAGS += -I${DRIVER_DIR}/common -I${DRIVER_DIR}/${DRIVER_SUBDIR} |
|---|
| 207 | |
|---|
| 208 | # |
|---|
| 209 | # The following depend on api.mak |
|---|
| 210 | # |
|---|
| 211 | |
|---|
| 212 | ODIR = $(BSETTOP_BIN) |
|---|
| 213 | |
|---|
| 214 | BCM_INCLUDE += \ |
|---|
| 215 | $(HWINTF) \ |
|---|
| 216 | $(HW_CHIP) \ |
|---|
| 217 | $(HW_CHIP_ENDIAN) \ |
|---|
| 218 | $(HW_CHIP_BME) \ |
|---|
| 219 | $(HW_BOARD_ENDIAN) \ |
|---|
| 220 | $(HW_BOARD) \ |
|---|
| 221 | $(DEVICE) \ |
|---|
| 222 | $(KERNELINTF_OS) \ |
|---|
| 223 | $(KERNELINTF) \ |
|---|
| 224 | $(KFIR_INC) \ |
|---|
| 225 | ${PI_INCLUDE} \ |
|---|
| 226 | ${SUPERIO} \ |
|---|
| 227 | ${SURFACEDRAW} \ |
|---|
| 228 | $(GFXCTRL) \ |
|---|
| 229 | $(GFX_CHIP) \ |
|---|
| 230 | $(GFX2D) \ |
|---|
| 231 | $(PI_GFX2D) \ |
|---|
| 232 | $(TRANSPORT) \ |
|---|
| 233 | $(MISCLIB) \ |
|---|
| 234 | $(MPEGVIDEO_INC) \ |
|---|
| 235 | $(DISPCTRL) \ |
|---|
| 236 | ${SDS_PF} \ |
|---|
| 237 | $(MPEGAUDIO) \ |
|---|
| 238 | ${QAMPF} \ |
|---|
| 239 | ${QAMMAIN} \ |
|---|
| 240 | ${QAM_3125} \ |
|---|
| 241 | ${QAM_3250} \ |
|---|
| 242 | ${QAM_3250_BOARD} \ |
|---|
| 243 | $(SL_CFG_DISP) \ |
|---|
| 244 | $(SL_MPEGVIDEO) \ |
|---|
| 245 | $(MPEGVIDEO) \ |
|---|
| 246 | ${SL_CHANLIB} \ |
|---|
| 247 | ${DMACTRL} \ |
|---|
| 248 | ${PI_RFMOD} \ |
|---|
| 249 | ${MPEGENCODER} \ |
|---|
| 250 | ${PI_BTSC} \ |
|---|
| 251 | ${VID_CHIP} |
|---|
| 252 | |
|---|
| 253 | ifeq ($(DSS_SUPPORT),y) |
|---|
| 254 | CFLAGS += -DDSS_SUPPORT |
|---|
| 255 | endif |
|---|
| 256 | |
|---|
| 257 | ifeq ($(INTERNAL_DOCSIS_SUPPORT),y) |
|---|
| 258 | CFLAGS += -DINTERNAL_DOCSIS_SUPPORT |
|---|
| 259 | endif |
|---|
| 260 | |
|---|
| 261 | CFLAGS += -I${BSETTOP}/src/legacy |
|---|
| 262 | |
|---|
| 263 | |
|---|
| 264 | # Flavors |
|---|
| 265 | ifeq ($(PLATFORM),97319) |
|---|
| 266 | CFLAGS += -DB_CHIP_FLAVOR=7319 |
|---|
| 267 | endif |
|---|
| 268 | ifeq ($(PLATFORM),97111) |
|---|
| 269 | CFLAGS += -DB_CHIP_FLAVOR=7111 |
|---|
| 270 | endif |
|---|
| 271 | ifeq ($(PLATFORM),97112) |
|---|
| 272 | CFLAGS += -DB_CHIP_FLAVOR=7112 |
|---|
| 273 | endif |
|---|
| 274 | ifeq ($(PLATFORM),97317) |
|---|
| 275 | CFLAGS += -DB_CHIP_FLAVOR=7317 |
|---|
| 276 | endif |
|---|
| 277 | ifeq ($(PLATFORM),97314) |
|---|
| 278 | CFLAGS += -DB_CHIP_FLAVOR=7314 |
|---|
| 279 | endif |
|---|
| 280 | |
|---|
| 281 | CFLAGS += $(patsubst %, -I%, ${BCM_INCLUDE}) |
|---|
| 282 | |
|---|
| 283 | vpath %.c $(BSETTOP)/src/legacy |
|---|
| 284 | |
|---|
| 285 | ROCKFORD := ${MAGNUM}/../rockford |
|---|
| 286 | include $(ROCKFORD)/modules/basemodules.inc |
|---|
| 287 | CFLAGS += -I$(MAGNUM)/basemodules/chp |
|---|
| 288 | CFLAGS += -I$(MAGNUM)/basemodules/reg |
|---|
| 289 | |
|---|
| 290 | ifeq ($(PLATFORM),97318AVC) |
|---|
| 291 | CONFIG_XVD_SUPPORT=y |
|---|
| 292 | endif |
|---|
| 293 | |
|---|
| 294 | ifeq (${CONFIG_XVD_SUPPORT}, y) |
|---|
| 295 | CFLAGS += -DCONFIG_XVD_SUPPORT=1 |
|---|
| 296 | SRCS += bsettop_image.c |
|---|
| 297 | CFLAGS += -I${DRIVER_DIR}/7411 |
|---|
| 298 | include $(ROCKFORD)/modules/img.inc |
|---|
| 299 | include $(ROCKFORD)/modules/7411_img.inc |
|---|
| 300 | include $(ROCKFORD)/modules/7411/rap_img.inc |
|---|
| 301 | endif |
|---|
| 302 | |
|---|
| 303 | ifeq ($(PLATFORM),97313) |
|---|
| 304 | CFLAGS += -I$(SDS_PROXY) |
|---|
| 305 | endif |
|---|
| 306 | |
|---|
| 307 | |
|---|
| 308 | SRCS += \ |
|---|
| 309 | bsettop.c \ |
|---|
| 310 | bsettop_priv.c \ |
|---|
| 311 | bsettop_decode.c \ |
|---|
| 312 | bsettop_display.c \ |
|---|
| 313 | bsettop_graphics.c \ |
|---|
| 314 | bsettop_message.c \ |
|---|
| 315 | bsettop_stream.c \ |
|---|
| 316 | bsettop_stubs.c \ |
|---|
| 317 | bsettop_tuner.c \ |
|---|
| 318 | bsettop_user_io.c \ |
|---|
| 319 | bsettop_pcm.c \ |
|---|
| 320 | bsettop_smartcard.c \ |
|---|
| 321 | bsettop_vbi.c \ |
|---|
| 322 | bsettop_base.c \ |
|---|
| 323 | bsettop_api_thunks.c \ |
|---|
| 324 | bsettop_config.c \ |
|---|
| 325 | bsettop_core.c \ |
|---|
| 326 | driver_io.c \ |
|---|
| 327 | reg.c \ |
|---|
| 328 | bsettop_cipher.c |
|---|
| 329 | |
|---|
| 330 | ifeq (${SYSTEM}, vxworks) |
|---|
| 331 | SRCS += \ |
|---|
| 332 | bsettop_core.c \ |
|---|
| 333 | bsettop_thread.c \ |
|---|
| 334 | bsettop_vxworks.c \ |
|---|
| 335 | bsettop_timer.c |
|---|
| 336 | else |
|---|
| 337 | SRCS += \ |
|---|
| 338 | bsettop_timer.c \ |
|---|
| 339 | proxy_graphics.c \ |
|---|
| 340 | bsettop_linux.c \ |
|---|
| 341 | bsettop_base_mem.c |
|---|
| 342 | endif |
|---|
| 343 | |
|---|
| 344 | # Include transition.inc file at the end of the build |
|---|
| 345 | # Do not fail on this, it should be harmless on older builds |
|---|
| 346 | ifeq ($(wildcard $(ROCKFORD)/modules/transition.inc),) |
|---|
| 347 | $(warning $(ROCKFORD)/modules/transition.inc is missing. This may cause problems in your build.) |
|---|
| 348 | else |
|---|
| 349 | include $(ROCKFORD)/modules/transition.inc |
|---|
| 350 | endif |
|---|
| 351 | |
|---|