1The SimpleLink SDKs provide peripheral driver and WiFi libraries 2and hardware register access header files for the Texas Instruments 3SimpleLink SoCs. 4 5For an explanation of the SimpleLink family SDK directory structure, see: 6http://dev.ti.com/tirex/content/simplelink_cc32xx_sdk_2_40_01_01/docs/simplelink_mcu_sdk/Users_Guide.html#directory-structure 7 81. CC13x2/26x2 SDK 9 10The current version supported in Zephyr is the SimpleLink CC13x2 and CC26x2 SDK 114.10.00.78, downloaded from: 12 13 http://www.ti.com/tool/simplelink-cc13x2-26x2-sdk 14 15The driver library source is copied from the SDK, as follows: 16 17 EXT_DIR=$HOME/hal_ti/simplelink/source/ti 18 pushd simplelink_cc13x2_26x2_sdk_4_10_00_78/source/ti 19 find devices/cc13x2_cc26x2/{driverlib,inc,rf_patches} -depth -name '*.[c|h]' -print0 | cpio --null -pvdm $EXT_DIR 20 find devices/cc13x2_cc26x2/startup_files -depth -name ccfg.c -print0 | cpio --null -pvd $EXT_DIR 21 cp -r drivers/power/* $EXT_DIR/drivers/power/. 22 mkdir $EXT_DIR/drivers/temperature 23 cp -r drivers/temperature/* $EXT_DIR/drivers/temperature/. 24 cp drivers/Temperature.* $EXT_DIR/drivers/. 25 mkdir $EXT_DIR/drivers/rf 26 cp drivers/rf/RF.h $EXT_DIR/drivers/rf/. 27 cp drivers/rf/RFCC26X2.h $EXT_DIR/drivers/rf/. 28 cp drivers/rf/RFCC26X2_multiMode.c $EXT_DIR/drivers/rf/. 29 find $EXT_DIR/devices/cc13x2_cc26x2 -name '*.[c|h]' -exec dos2unix {} \; 30 find $EXT_DIR/drivers/power -name '*.[c|h]' -exec dos2unix {} \; 31 find $EXT_DIR/drivers/rf -name '*.[c|h]' -exec dos2unix {} \; 32 find $EXT_DIR/drivers/temperature -name '*.[c|h]' -exec dos2unix {} \; 33 popd 34 35The source file devices/cc13x2_cc26x2/startup_files/ccfg.c has been 36modified to use the appropriate sections when linking. 37 38TI provides the driver library functions burned into ROM at the factory, 39or updated via a service pack patch, thus saving application code space. 40 41After setting CONFIG_HAS_CC13X2_CC26X2_SDK=y in Kconfig, most of the 42peripheral driver library functions will be accessible from ROM. 43 442. CC32xx SDK 45 46The current version supported in Zephyr is the SimpleLink CC32xx SDK 474.10.00.07, downloaded from: 48 49 http://www.ti.com/tool/download/simplelink-cc32xx-sdk 50 51Source files from select subdirectories are copied from the 52source/ti/ subdirectory of the SDK installation, as follows: 53 54 EXT_DIR=$HOME/hal_ti/simplelink/source/ti 55 find devices -not -path '*/\.*' -name '*.[c|h]' | \ 56 cpio -pdm $EXT_DIR 57 find drivers -name '*.[c|h]' | \ 58 cpio -pdm $EXT_DIR 59 find net -maxdepth 1 -name '*.[c|h]' | cpio -pdm $EXT_DIR 60 cd $EXT_DIR 61 find . -name '*.[c|h]' -exec chmod 664 {} \; 62 find $EXT_DIR/devices/cc32xx -name '*.[c|h]' -exec dos2unix {} \; 63 find $EXT_DIR/drivers -name '*.[c|h]' -exec dos2unix {} \; 64 65When updating to a new SDK, a comparison of the files in the 'devices' 66and 'drivers' directories as copied above should be performed to pick up 67any new changes. Header files in source/ti/drivers/dpl should also be 68compared, both to pick up new changes and to ensure any modifications 69that were previously made are kept in place after the update if 70appropriate. 71 72In addition, some files in the source/ti/drivers/net/wifi/porting 73directory may need to be updated: notably user.h, cc_pal.c and cc_pal.h. 74Files in kernel/zephyr/dpl copied verbatim from kernel/nortos/dpl in the 75SDK, such as QueueP.h, QueueP_nortos.c and SwiP_nortos.c, should be 76compared to see if new changes have been introduced. 77 78Note: TI provides the driver library functions burned into ROM at the factory, 79or updated via a service pack patch, thus saving application code space. 80 81Calling driverlib APIs prefixed by "MAP_" will vector to those functions 82already existing in ROM. 83 84After setting CONFIG_HAS_CC3220SDK=y in Kconfig, most of the 85peripheral driver library functions will be accessible from ROM, 86except for some functions in the following modules, which are 87compiled in the Kbuild file: 88- driverlib/pin.c 89- driverlib/utils.c 90- driverlib/prcm.c 91 92Setting CONFIG_SIMPLELINK_HOST_DRIVER=y builds the SimpleLink Host 93Driver, which communicates over dedicated SPI to the 94network coprocessor. 95 962. MSP432 SDK 97 98The current version supported in Zephyr is MSP432 SDK V1.50.00.12, downloaded 99from: 100 101 http://www.ti.com/tool/simplelink-msp432-sdk 102 103Files in source/ti/devices/msp432p4xx/driverlib/ and inc/ are copied from 104a Linux SDK installation (without modification). 105 106TI provides the driver library functions burned into ROM at the factory, 107or updated via a service pack patch, thus saving application code space. 108 109Calling driverlib APIs prefixed by "MAP_" will vector to those functions 110already existing in ROM. 111 112After setting CONFIG_HAS_MSP432P4XXSDK=y in Kconfig, most of the 113peripheral driver library functions will be accessible from ROM. 114