#===============================================================================
#
# Common Platform Library.
#
# GENERAL DESCRIPTION
#    build script
#
# Copyright 2016 by QUALCOMM, Incorporated.
# All Rights Reserved.
# QUALCOMM Proprietary/GTDR
#
#-------------------------------------------------------------------------------
#
#  $Header: //components/rel/ssg.tz/1.10/securemsm/platform/build/SConscript#1 $
#  $DateTime: 2019/12/10 22:12:10 $
#  $Author: pwbldsvc $
#                      EDIT HISTORY FOR FILE
#
#  This section contains comments describing changes made to the module.
#  Notice that changes are listed in reverse chronological order.
#
# when        who       what, where, why
# ----------  ---       --------------------------------------------------------
# 11/20/2016  pre       Initial revision
#===============================================================================
Import('env')
env = env.Clone()

#Find PLATFORM_CPUS / different ARM/QCOM implemented CPU used in the target.
env.SConscript('arch.scons', exports='env')

#-------------------------------------------------------------------------------
# HWIO
#-------------------------------------------------------------------------------

if env.has_key('HWIO_IMAGE'):
  # Modules depend on which CHIPSET is being build
   modules = []
   if env['CHIPSET'] in ['qcs405', 'qcs6200']:
      modules = [
        'APCS.*',
        'BIMC.*',
        'CRYPTO.*',
        'MPM2_PSHOLD',
        'PRNG.*',
        'SDC1_SDCC_ICE.*',
        'SECURITY_CONTROL_CORE',
        'TCSR.*',
        'TLMM.*',
        'LPASS.*',
        'MPM2_WDOG',
        'GCC_CLK_CTL_REG',
      ]
   elif env['CHIPSET'] in ['sdx24','sdx55','mdm9205']:
      modules = [
        'APCS.*',
        'TLMM.*',
        'LPASS.*',
        'SECURITY_CONTROL_CORE',
        'TCSR.*',
        'GCC_CLK_CTL_REG',
        'CRYPTO.*',
        'PRNG.*',
        'MSS_QDSP6SS.*',
        'MSS.*',
        'PSHOLD',
        'MPM2_PSHOLD',
        'MPM2_WDOG',
        'WDOG',
        'AOSS_CC_AOSS_CC_REG',
        'LLCC.*',
        'BIMC.*',
        'SECURITY_CONTROL_CORE',
        'QTMR_AC.*',
        'EUD_MODE_MANAGER2*',
      ]
   else:
      modules = [
        'APSS.*',
        'APCS.*',
        'APCLUS0.*',
        'APCLUS1.*',
        'GOLD_SAW4.*',
        'SILVER_SAW4.*',
        'GOLD_APSS_KRYO_CLK_CTL.*',
        'SILVER_APSS_KRYO_CLK_CTL.*',
        'L3_APSS_KRYO_CLK_CTL.*',
        'TLMM.*',
        'LPASS.*',
        'HDMI.*',
        'SECURITY_CONTROL_CORE',
        'TCSR.*',
        'GCC_CLK_CTL_REG',
        'RAMBLUR.*',
        'CRYPTO.*',
        'PRNG.*',
        'MSS.*',
        'SSC.*',
        'UFS_MEM_ICE.*',
        'UFS_MEM_ICE_LUT_KEYS',
        'UFS_CARD_ICE.*',
        'PSHOLD',
        'WDOG',
        'AOSS_CC_AOSS_CC_REG',
        'LLCC.*',
        'APSS_OSM.*',
        'TURING.*',
        'PERIPH_SS_SDC1_SDCC_ICE.*',
        'SDC1_SDCC_ICE.*',
        'DCC.*',
        'PERIPH_SS_EUD.*',
        'APPS_MMU500_SMMU.*',
        'EUD_MODE_MANAGER2',
        'AHB2PHY_2_EUD_MODE_MANAGER2',
        'AHB2PHY_USBEUD_MODE_MANAGER2',
        'BIMC.*',
        'GPU_GFX_MMU500_SMMU_GFX',
        'HWKM_MASTER_CFG_KM_TZ_TZ_PRNG_TZ'
      ]

   env.AddHWIOFile('HWIO', [
      {
         'filename': '${INC_ROOT}/ssg/securemsm/platform/config/inc/${CHIPSET}/tzbsp_hwio.h',
         'output-phys': True,
         'modules': modules,
         'header': '#include "msmhwiobase.h"'
      }
   ])


env.LoadSoftwareUnits()
env.Append(CFLAGS = " -Werror ")

