hal_ti/simplelink
Benedikt Streicher 0bd7020449 HwiP: added AUX software event interrupts
Added AUX_SWEV0 and AUX_SWEV1 interrupts to allow the Sensor Controller to
trigger these events and the System CPU to evaluate them. Also changed 
HwiP_Params_init and the enabling of interrupts in HwiP_construct to allow
interrupts to be constructed without directly enabling them. This is used
by the sensor controller interface when registering the interrupts.

Signed-off-by: Benedikt Streicher <streicher.b@posteo.de>
2024-04-09 18:05:48 +05:30
..
kernel/zephyr/dpl HwiP: added AUX software event interrupts 2024-04-09 18:05:48 +05:30
source/ti simplelink: slnetsock: fix sys/time.h include when sockets are enabled 2023-09-14 22:02:03 +05:30
CMakeLists.txt simplelink: ti: devices: Add CC13X2X7 and CC26X2X7 support 2023-03-19 14:07:41 -04:00
README cc13x2_cc26x2: update to TI SimpleLink SDK 4.40.04.04 2022-05-31 22:19:26 -04:00

README

The SimpleLink SDKs provide peripheral driver and WiFi libraries
and hardware register access header files for the Texas Instruments
SimpleLink SoCs.

For an explanation of the SimpleLink family SDK directory structure, see:
http://dev.ti.com/tirex/content/simplelink_cc32xx_sdk_2_40_01_01/docs/simplelink_mcu_sdk/Users_Guide.html#directory-structure

1. CC13x2/26x2 SDK

The current version supported in Zephyr is the SimpleLink CC13x2 and CC26x2 SDK
4.40.04.04, downloaded from:

  http://www.ti.com/tool/simplelink-cc13x2-26x2-sdk

The driver library source is copied from the SDK, as follows:

  EXT_DIR=$HOME/hal_ti/simplelink/source/ti
  pushd simplelink_cc13x2_26x2_sdk_4_40_04_04/source/ti
  find devices/cc13x2_cc26x2/{driverlib,inc,rf_patches} -depth -name '*.[c|h]' -print0 | cpio --null -pvdm $EXT_DIR
  find devices/cc13x2_cc26x2/startup_files -depth -name ccfg.c -print0 | cpio --null -pvd $EXT_DIR
  cp -r drivers/power/* $EXT_DIR/drivers/power/.
  mkdir $EXT_DIR/drivers/temperature
  cp -r drivers/temperature/* $EXT_DIR/drivers/temperature/.
  cp drivers/Temperature.* $EXT_DIR/drivers/.
  mkdir $EXT_DIR/drivers/rf
  cp drivers/rf/RF.h $EXT_DIR/drivers/rf/.
  cp drivers/rf/RFCC26X2.h $EXT_DIR/drivers/rf/.
  cp drivers/rf/RFCC26X2_multiMode.c $EXT_DIR/drivers/rf/.
  find $EXT_DIR/devices/cc13x2_cc26x2 -name '*.[c|h]' -exec dos2unix {} \;
  find $EXT_DIR/drivers/power -name '*.[c|h]' -exec dos2unix {} \;
  find $EXT_DIR/drivers/rf -name '*.[c|h]' -exec dos2unix {} \;
  find $EXT_DIR/drivers/temperature -name '*.[c|h]' -exec dos2unix {} \;
  popd

Afterwards, search through the `git diff` for the 'Zephyr' word in comments and
reapply specific patches.

The source file devices/cc13x2_cc26x2/startup_files/ccfg.c has been
modified to use the appropriate sections when linking.

TI provides the driver library functions burned into ROM at the factory,
or updated via a service pack patch, thus saving application code space.

After setting CONFIG_HAS_CC13X2_CC26X2_SDK=y in Kconfig, most of the
peripheral driver library functions will be accessible from ROM.

2. CC32xx SDK

The current version supported in Zephyr is the SimpleLink CC32xx SDK
4.10.00.07, downloaded from:

	http://www.ti.com/tool/download/simplelink-cc32xx-sdk

Source files from select subdirectories are copied from the
source/ti/ subdirectory of the SDK installation, as follows:

	EXT_DIR=$HOME/hal_ti/simplelink/source/ti
	find devices -not -path '*/\.*' -name '*.[c|h]' | \
		cpio -pdm $EXT_DIR
	find drivers -name '*.[c|h]' | \
		cpio -pdm $EXT_DIR
	find net -maxdepth 1 -name '*.[c|h]' | cpio -pdm $EXT_DIR
	cd $EXT_DIR
	find . -name '*.[c|h]' -exec chmod 664 {} \;
	find $EXT_DIR/devices/cc32xx -name '*.[c|h]' -exec dos2unix {} \;
	find $EXT_DIR/drivers -name '*.[c|h]' -exec dos2unix {} \;

When updating to a new SDK, a comparison of the files in the 'devices'
and 'drivers' directories as copied above should be performed to pick up
any new changes. Header files in source/ti/drivers/dpl should also be
compared, both to pick up new changes and to ensure any modifications
that were previously made are kept in place after the update if
appropriate.

In addition, some files in the source/ti/drivers/net/wifi/porting
directory may need to be updated: notably user.h, cc_pal.c and cc_pal.h.
Files in kernel/zephyr/dpl copied verbatim from kernel/nortos/dpl in the
SDK, such as QueueP.h, QueueP_nortos.c and SwiP_nortos.c, should be
compared to see if new changes have been introduced.

Note: TI provides the driver library functions burned into ROM at the factory,
or updated via a service pack patch, thus saving application code space.

Calling driverlib APIs prefixed by "MAP_" will vector to those functions
already existing in ROM.

After setting CONFIG_HAS_CC3220SDK=y in Kconfig, most of the
peripheral driver library functions will be accessible from ROM,
except for some functions in the following modules, which are
compiled in the Kbuild file:
- driverlib/pin.c
- driverlib/utils.c
- driverlib/prcm.c

Setting CONFIG_SIMPLELINK_HOST_DRIVER=y builds the SimpleLink Host
Driver, which communicates over dedicated SPI to the
network coprocessor.

2. MSP432 SDK

The current version supported in Zephyr is MSP432 SDK V1.50.00.12, downloaded
from:

        http://www.ti.com/tool/simplelink-msp432-sdk

Files in source/ti/devices/msp432p4xx/driverlib/ and inc/ are copied from
a Linux SDK installation (without modification).

TI provides the driver library functions burned into ROM at the factory,
or updated via a service pack patch, thus saving application code space.

Calling driverlib APIs prefixed by "MAP_" will vector to those functions
already existing in ROM.

After setting CONFIG_HAS_MSP432P4XXSDK=y in Kconfig, most of the
peripheral driver library functions will be accessible from ROM.