Commit Graph

76 Commits

Author SHA1 Message Date
Antonio Lignan
6fc4e2535c Merge pull request #1665 from g-oikonomou/contrib/cc26xx-bsl
Consolidate .upload for all CC26xx/CC13xx boards and add login make target
2016-06-01 23:37:29 +02:00
Antonio Lignan
f065971efc Merge pull request #1619 from simonduq/pr/tsch-rtimer16-fix
Fix bug in TSCH for platforms with 16-bit rtimer
2016-06-01 23:03:50 +02:00
George Oikonomou
80efd730ae Extend the flash driver to support the MX25R1635F
According to the CC1310LP design files, the flash on it is the same as the flash on the CC2650 LP (MX25R8035F 8Mbit). However, the flash on some CC1310 LPs reportedly identifies itself as the 16Mbit one (MX25R1635F). Instruction sets are identical, we simply need to tell the driver to recognise this part's Device ID.
2016-05-14 20:34:08 +01:00
George Oikonomou
06f4463996 Extend documentation to include the CC1310 LaunchPad 2016-05-14 20:32:17 +01:00
George Oikonomou
099a933c90 Add support for the CC1310 LaunchPad 2016-05-14 20:32:17 +01:00
George Oikonomou
cd5a0ef291 Consolidate .upload for all CC26xx/CC13xx boards
The block that controls the `.upload` target is unnecessarily replicated in multiple sub-board Makefiles. This was originally done because the SmartRF and the Launchpad can be programmed with the c2538-bsl script, whereas the sensortag cannot.

This commit moves the `cc2538-bsl` / `.upload` target logic to the top level cpu Makefile (`cpu/cc26xx-cc13xx/Makefile.cc26xx-cc13xx`). Board makefiles simply set the make variable `BOARD_SUPPORTS_BSL` to 1 to signal that they can be programmed by the BSL script. If `BOARD_SUPPORTS_BSL` is not equal to 1, trying to use the `.upload` target will return an error message.

For example:

```
$ make BOARD=sensortag/cc2650 cc26xx-demo.upload
using saved target 'srf06-cc26xx'
This board cannot be programmed with the ROM bootloader and therefore does not support the .upload target.
```
2016-05-14 19:30:53 +01:00
Pablo Corbalán
5bc158fa75 Add upload script to Makefile.launchpad 2016-05-13 23:06:33 +01:00
Simon Duquennoy
bb5e5d5c6b TSCH: use RTIMER_CLOCK_DIFF to compute estimated drift, fixing a bug that would occur on 16-bit rtimer platforms 2016-04-27 14:13:33 +02:00
George Oikonomou
de2ecf8e3a Document that LaunchPads can be programmed with cc2538-bsl 2016-03-21 00:00:38 +00:00
George Oikonomou
deb633216c Document support for the CC2650 LaunchPad 2016-01-28 11:23:20 +00:00
George Oikonomou
387bb96ca4 Add support for the CC2650 LaunchPad 2016-01-28 11:23:20 +00:00
George Oikonomou
5eb0470ad4 Move the SPI and Ext Flash Driver to a common directory
This commit creates a `common` directory, aimed to host drivers supported by multiple boards of the CC13xx/CC26xx family.

We move the Sensortag SPI and External Flash drivers to this location and we change the Sensortag build system to pull the  respective files from therein.
2016-01-28 11:23:20 +00:00
George Oikonomou
24871b0702 Extend the Sensortag external flash Driver to support more parts
The driver currently supports two Winbond external flash parts with identical instruction sets. The instruction set of the Macronix MX25R8035F appears to be a superset. We therefore change the driver to add the MID/DID of the Macronix to the list of supported parts.

This will subsequently allow us to share the same driver for both the SensorTag and the CC2650 LauchPad.
2016-01-28 11:23:19 +00:00
Antonio Lignan
9f1376d37a Merge pull request #1453 from g-oikonomou/contrib/test-with-arm-gcc-5
Change travis arm tests to use gcc-arm-embedded v5
2016-01-25 21:32:28 +01:00
George Oikonomou
9e9e6d07b0 Adjust READMEs to point explicitly to the arm-gcc version used by travis 2016-01-24 13:59:19 +00:00
George Oikonomou
6933b35bb5 Rename select() in various sensortag sensor drivers
This is to prevent a compile error caused by function prototype conflict between a function called `select()` (present in a number of sensortag peripheral drivers) and the one in `sys/select.h`. The error manifests itself with gcc-arm-embedded version 5.2.1 20151202 (2015-q4).

To fix the error we simply rename our function.

Fixes #1434
2016-01-10 15:47:34 +00:00
Simon Duquennoy
ebc8d9fb1c Merge pull request #1344 from tsparber/fix-doxygen
doxygen: Fixed all warnings
2015-11-30 22:07:15 +01:00
Jelmer Tiete
715946ece3 Restructured cc26xx readme, included use of .upload and PORT variable. Added sleepy demo example to examples section. 2015-11-23 11:09:06 -08:00
Jelmer Tiete
9a8e749f6f Updated cc26xx Readme to mention serial upload script 2015-11-23 11:09:05 -08:00
Jelmer Tiete
97095c8bb5 Updated makefiles of srf06 platform to support uploading via cc2538-bsl script 2015-11-23 11:07:19 -08:00
Tommy Sparber
938d17576b doxygen: Fix many warnings
This commit fixes nearly all of the reported doxygen warnings.

I tried to not clutter the log with removed trailing spaces.
Removed whitespace and converted tab/spaces for all files affected by this commit
are in a separate branch.
2015-11-18 11:07:58 +11:00
Jelmer Tiete
7b4a9c8410 Small correction to cc26xx readme, code block in list was not propperly indented 2015-11-09 01:01:21 -08:00
George Oikonomou
984b8cd631 Configure ContikiMAC timings for CC13xx sub-ghz operation
This is required so that ContikiMAC will keep working correctly after the recent change that also turns off the RF analog part during duty cycling.
2015-11-01 23:21:04 +00:00
Antonio Lignan
90eca482ea Remove unused RPL_CONF_MAX_DAG_ENTRIES 2015-08-29 20:22:18 +02:00
Jonas Olsson
8cb7562684 Improve the SPI and external flash driver for the sensortag
For the SPI
* We improve the return semantics of _read() and _write()
* We set speed based on the value returned from ti_lib_sys_ctrl_clock_get() instead of using a hard-coded value

External flash changes:
* Rename macros to match instruction names
* verify_part(): Return a different value when the device is powered down and when communication fails
* Change return value semantics of static functions
* Adjust checks of board_spi_ return values
* Wait for BUSY to clear before attempting to send PD
* Accept two possible flash parts: W25X40CL (4MBit) as well as the W25X20CL (2MBit)
2015-08-23 20:41:13 +01:00
Jonas Olsson
e96b15773a Document how to use the debugger devpack 2015-08-23 20:41:12 +01:00
Jonas Olsson
f4576a635f Document CC26xx/CC13xx border router and slip-radio 2015-08-23 20:41:12 +01:00
Jonas Olsson
3d19b0036e Add support for SmarfRF06 + CC1310EM
This commit updates the srf06-cc26xx platform by adding support for the CC1310EM.

We generalise the way this platform selects CPU/board so that we can easily add more combinations in the future. These changes have implication on how to build for different devices, so make sure to have a look at the updated README
2015-08-23 19:54:43 +01:00
George Oikonomou
541688235c Update the CC26xx README in terms of CC26xxware 2015-05-17 15:01:02 +01:00
George Oikonomou
b4067560ba Remove references to obsolete peripheral clock scaling functions 2015-05-17 15:01:01 +01:00
George Oikonomou
8b1f2ef33c Reset I2C with HAPI call instead of register access 2015-05-17 15:01:00 +01:00
George Oikonomou
7a5b670f76 Remove references to IOC_JTAG_DISABLE 2015-05-17 14:09:52 +01:00
George Oikonomou
32840db66b Update driverlib version macros 2015-05-17 14:09:51 +01:00
George Oikonomou
7ae3cd49ba Make sure SSI0 is powered and clocked before accessing it
* Fail all SSI0 operations if the module is not powered and clocked
* Make sure SERIAL is powered before trying to enable run mode clock
2015-05-15 11:38:20 +01:00
George Oikonomou
019143226b Adjust main:
* Re-order OSC, VIMS cache, I/O latch configuration instructions
* Don't automatically enable UART RX: Let the example decide this
2015-05-15 09:21:04 +01:00
George Oikonomou
6e7d52b5df Improve MPU power-cycling logic:
* Keep MPU_PWR low when the sensor is not in use
* Deselect the sensor when not in use, in order to restore the I2C ping state
* Explicitly control the MPU_INT pin
* Don't shutdown the sensor when it's shut down
* Remove explicit shutdown-related API extension. It is no longer required
2015-05-15 09:21:04 +01:00
George Oikonomou
dcf0d11050 Re-map tag UART-related IOID defines 2015-05-15 09:21:03 +01:00
George Oikonomou
2cc59c524a Configure pins for unused tag peripherals 2015-05-15 09:21:03 +01:00
George Oikonomou
e893c914b6 Set SPI pins to a low leakage state 2015-05-15 09:21:03 +01:00
George Oikonomou
421fbfae25 Change the LPM locks API:
Instead of using a separate data structure to request that a PD remain powered during deep sleep,
we do the same within the main LPM data structure through an additional field.

This allows us to maintain only one linked list of LPM modules and overall improves code clarity
2015-05-15 09:21:02 +01:00
George Oikonomou
0e92b508b3 Don't clock GPT0 on device startup 2015-05-15 09:21:02 +01:00
George Oikonomou
6611acadc7 Don't fire-up SERIAL automatically 2015-05-15 09:21:02 +01:00
George Oikonomou
34be012661 Improve I2C power-cycling logic:
We only power, clock and enable the peripepheral when / if we need it

* We no longer automatically turn on the SERIAL PD when the CM3 is running
* Make sure the I2C peripheral is accessible (powered and clocked) before any operation
* If the peripheral is not accessible, automatically power it up and run the clock
* Put SDA, SCL, SDA HP and SCL HP in a low-leakage state when shutting down
* Don't automatically fire up the I2C controller when we wake up
2015-05-15 09:21:02 +01:00
George Oikonomou
0ad4b5f323 Add the ability to put the I2C in a known/default state 2015-05-15 09:21:01 +01:00
George Oikonomou
d1a1c16bd0 Define pins for more sensortag peripherals 2015-05-15 09:21:01 +01:00
George Oikonomou
4378217462 Improve sensortag external flash power management:
* Explicitly put in deep sleep on device startup
* Verify that the flash has actually dropped to deep sleep
* Update CLK pin to match the one used on the v1.2 sensortag

Obsoletes and Closes #988
2015-05-15 09:21:01 +01:00
George Oikonomou
cf99160706 Change lpm_shutdown() API call:
So that the caller can specify pin pull and wakeup state
2015-05-15 09:21:01 +01:00
George Oikonomou
5644e95fb6 Fix global interrupt manipulation 2015-05-15 09:21:00 +01:00
George Oikonomou
3f310e462f Tidy-up clock configuration 2015-05-15 09:20:59 +01:00
George Oikonomou
450550a7d1 Explicitly configure Srf pins for unused peripherals 2015-05-15 09:20:59 +01:00