This commit is contained in:
2024-07-12 15:19:46 +08:00
commit 7ca1af130d
895 changed files with 282694 additions and 0 deletions
+47
View File
@@ -0,0 +1,47 @@
########################################################################################
#
# @file SAdditions
#
# @brief Additional script instructions for REFIP build
#
# Copyright (C) RivieraWaves 2009-2015
#
#########################################################################################
#-----------------------------------------------------------
# Additional link files
#-----------------------------------------------------------
# add the file where the link info must be stored
linkinfo_path = os.path.join(build_dir, 'linkinfo.'+buildtool+'.txt')
env.Replace(LINKINFOFILE = scutils.ext_path(linkinfo_path))
# check if there is a link map file
if buildtool == "rvds":
if 'Cortex' in env['CPU']:
linkmap_path = os.path.join(plf_config_dir, 'maps', buildtool, 'map_ram_cortex.txt')
else:
linkmap_path = os.path.join(plf_config_dir, 'maps', buildtool, 'map_ram_arm.txt')
elif buildtool == 'gnuarm':
linkmap_path = os.path.join(plf_config_dir, 'maps', buildtool, 'map_ram.txt')
elif buildtool == 'armgcc_4_8':
linkmap_path = os.path.join(plf_config_dir, 'maps', buildtool, 'map_ram.txt')
elif buildtool == 'armgcc':
linkmap_path = os.path.join(plf_config_dir, 'maps', buildtool, 'map_ram.txt')
env.Replace(LINKMAPFILE = scutils.ext_path(linkmap_path))
Depends(target, linkmap_path)
#-----------------------------------------------------------
# Additional axf->bin step for RVDS
#-----------------------------------------------------------
# only convert to binary for rvds
if buildtool == "rvds":
# extra command to convert ELF to binary format
target = scutils.rvds_elf2bin(env, os.path.join(build_dir, env['PROGNAME']), target)
#elif buildtool == "armgcc_4_8":
# # optional part to convert ELF to binary format
# target = scutils.arm_none_eabi_elf2bin(env, os.path.join(build_dir, env['PROGNAME']), target)
+143
View File
@@ -0,0 +1,143 @@
########################################################################################
#
# @file SCompile
#
# @brief Compilation instructions for REFIP build
#
# Copyright (C) RivieraWaves 2009-2015
#
#########################################################################################
#
#import sys
#import os
#import os.path
#
#import SCons.Util
#import scutils
#-----------------------------------------------------------
# Build tool and default settings
#-----------------------------------------------------------
# Get build tool from command line or default
defaulttool = ARGUMENTS.get('BT','armgcc_4_8')
buildtool = ARGUMENTS.get('BT_ARM', defaulttool).lower()
# sanity checks
assert(buildtool in ('rvds', 'gnuarm','armgcc_4_8','armgcc'))
# create environment
if buildtool == 'rvds':
tool = scutils.rvds_find()
env = Environment(tools = [tool])
elif buildtool == 'armgcc_4_8':
env = Environment(tools = ['armgcc_4_8'], ENV = {'PATH':os.environ['PATH']})
elif buildtool == 'armgcc':
env = Environment(tools = ['armgcc'], ENV = {'PATH':os.environ['PATH']})
else:
env = Environment(tools = ['gnuarm'], ENV = {'PATH':os.environ['PATH']})
# save buildtool in environment
env['BUILDTOOL'] = buildtool
# initialize the environment from the command line arguments
scutils.env_init(env)
#-----------------------------------------------------------
# Target specific settings
#-----------------------------------------------------------
# preprocessor macros
env['CPPDEFINES'] = []
# environment settings
env['PROGNAME'] = 'fw'
env['TYPE'] = 'fw'
env['ARCH'] = 'ble'
# use arm7 by default
if env['CPU'].lower() == 'arm7':
env['CPU'] = 'arm7tdmi-s'
elif env['CPU'].lower() == 'arm9' or env['CPU'] == '':
env['CPU'] = 'arm926ej-s'
#-----------------------------------------------------------
# Environment configuration
#-----------------------------------------------------------
if buildtool == 'rvds':
if env['CPU'] == 'Cortex-M1':
env['ENTRY'] = 'rw_main'
else:
env['ENTRY'] = '0x00'
# msg 193-D is for undefined preprocessor identifier
env['CCFLAGS'] = ( ' -Ospace --asm --interleave --diag_style=gnu --debug --dwarf2 --c99 '
+ ' --diag_warning=C193 --thumb --apcs=/interwork --split_sections ')
if 'Cortex' in env['CPU']:
env['CCFLAGS'] += ' -DCFG_CPU_CORTEX_M1 '
env['ASFLAGS'] = ' --diag_style=gnu --debug'
env['LINKFLAGS'] = (' --map --symbols --diag_style gnu --remove '
+ ' --info architecture,common,debug,exceptions,inline,inputs,libraries,sizes,stack,'
+ 'tailreorder,totals,unused --callgraph --entry $ENTRY --datacompressor off '
+ '--diag_suppress L6329 ')
if env['REM']:
env.Append(CCFLAGS = ' --remarks --diag_suppress=1301,2530,826 ')
else:
env['CCFLAGS'] += '--diag_suppress=177,3017'
if env['WARN'] == 'err':
env.Append(CCFLAGS = ' --diag_error=warning ')
elif buildtool == 'gnuarm':
env['CCFLAGS'] = ' -mabi=aapcs -mfloat-abi=soft -mfpu=fpa -g3 -fms-extensions ' \
+ ' -Wall -Wchar-subscripts -Wformat ' \
+ ' -Winit-self -Wignored-qualifiers -Wswitch-default -Wunused -Wundef -std=c99 '
if(env['OPTIM'] not in '0'):
env['CCFLAGS'] += ' -Wuninitialized '
env['ASFLAGS'] = ' -mfloat-abi=soft -mfpu=fpa -g'
env['LINKFLAGS'] = ' --cref --gc-sections'
if env['SAVETMP']:
env.Append(CCFLAGS = ' --save-temps ')
if env['WARN'] == 'err':
env.Append(CCFLAGS = ' -Werror ')
elif buildtool == 'armgcc_4_8':
env['CCFLAGS'] = ' -mabi=aapcs -mfloat-abi=soft -mfpu=vfp -g3 -fms-extensions ' \
+ ' -Wall -Wchar-subscripts -Wformat -Wuninitialized ' \
+ ' -Winit-self -Wignored-qualifiers -Wswitch-default -Wunused -Wundef -std=c99 '
env['ASFLAGS'] = ' -mfloat-abi=soft -mfpu=vfp -g'
env['LINKFLAGS'] = ' --cref --gc-sections'
if env['SAVETMP']:
env.Append(CCFLAGS = ' --save-temps ')
if env['WARN'] == 'err':
env.Append(CCFLAGS = ' -Werror ')
elif buildtool == 'armgcc':
env['CCFLAGS'] = ' -mabi=aapcs -mfloat-abi=soft -mfpu=vfp -g3 -fms-extensions ' \
+ ' -Wall -Wchar-subscripts -Wformat -Wuninitialized ' \
+ ' -Winit-self -Wignored-qualifiers -Wswitch-default -Wunused -Wundef -std=c99 '
env['ASFLAGS'] = ' -mfloat-abi=soft -mfpu=vfp -g'
env['LINKFLAGS'] = ' --cref --gc-sections'
if env['SAVETMP']:
env.Append(CCFLAGS = ' --save-temps ')
if env['WARN'] == 'err':
env.Append(CCFLAGS = ' -Werror ')
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,39 @@
/// @mainpage RivieraWaves Platform Reference IP
///
/// @section intro_sec Overview and Notice
///
/// REFIP is the Platform Reference IP of RivieraWaves. This documentation
/// exhibits and presents the Platform Design of the RWBT Software stack.
/// Browse at @ref REFIP "REFIP" to see an overview of the different modules
/// which are present in the RWBT Reference Platform Software.
///
/// This documentation is provided <b><i>AS IS</i></b> and is subject to change without
/// notice. RivieraWaves S.A.S. makes no warranty of any kind with regards to
/// this documentation, including, but not limited to, representations and warranties
/// of accuracy, completeness, non-infringement, merchantability and suitability for
/// a specific purpose. RivieraWaves shall not be liable for any errors or for special,
/// direct, incidental, indirect or consequential damages in connection with the use
/// or distribution of this documentation.
///
/// Copyright &copy; RivieraWaves, 2009-2016. All rights reserved.
///
/// The REFIP software and documentation are furnished under license and may be used
/// or copied only in strict accordance with the terms of such license.
///
/// BLUETOOTH is a trademark owned by the Bluetooth SIG, Inc., U.S.A. and licensed to
/// RivieraWaves S.A.S. Third party brands and names are the property of their respective
/// owners.
///
/// For customer support and other inquiries:
///
/// RivieraWaves S.A.S. - A Ceva Company <br>
/// Les Bureaux Greenside 5 - Bat 6 <br>
/// 400 Avenue de Roumanille <br>
/// 06410 Biot Sophia Antipolis CEDEX <br>
/// FRANCE
///
/// Website: http://www.rivierawaves.com <br>
/// Email: sales@rivierawaves.com
///
/// @defgroup REFIP