Commit Graph

15669 Commits (ac6fb71c909cc00378519b36fbc65a04973fcc4c)

Author SHA1 Message Date
Hasnain Virk ac6fb71c90 Datarate bug fix in rx windows configs
While configuring RX parameters for the radio, we need to feed in
rx windows 1 and 2 parameters which are computed when we do the transmission.
We are actually setting the physical value of the data rate rather than
data rate table index and the expectation was to set the data rate index.
2018-05-08 16:45:26 +03:00
Hasnain Virk cc09e44cfb Moving msg flags to lorawan_types.h
Message flags are used in the application so the logical place for
them is in lorawan_types.h and not in lorawan_data_structures.h
2018-05-08 16:45:26 +03:00
Hasnain Virk 1a0d90555e Doc fix
Structure naming in the docs was wrong.
2018-05-08 16:45:25 +03:00
Hasnain Virk f63ed86cfc Adding custom channel plan support in AS923
The asia pacific region supports custom channel planning and
downlink channel request. By virtue of a mistake, this information
was missing and hence a custom channel support was not working.
Fixes issue #6783.
2018-05-08 16:45:25 +03:00
Hasnain Virk 9f36baab1b State Machine rework
There had been essentially two state machines running in our stack
which was too cumbersome and was not alligned in any symmetry.

In this work we make sure that:
 * There are no callbacks from the MAC layer to Stack controller layer.
 * Primitives are made local to the mac layer and are presented as
   read-only to the stack controller layer.
 * Interrupt handling and processing is moved to the stack controller layer.
 * Reception is divided into smaller units, seperating handling of Join Accept
   and normal data frames. MIC gets its own unit.
 * Extraction of data and MAC commands from the payload is also being done now in
   its own method.
 * To ensure integrity of the stack, and sanctity of the radio payload, we copy the
   radio payload buffer immediately in the rx interrupt and hoist a flag that prevents
   another interrupt from happening for a short while when we are processing the previous
   packet.
 * If an automatic uplink is on going, we do not send a TX_DONE event to application
   anymore as that is logically incorrect.
 * state_controller() is the central engine for the state machine. To save code space and
   memory, we are not handling each and every state in the state_controller(). Some of the states
   which have no processing to be done, are explicitely set.
 * For all the states who need special processing, seperate methods are added.
 * Class A always run to completion to IDLE and CLass C always runs to completion as RECEIVING.
2018-05-08 16:45:18 +03:00
Hasnain Virk a75af9799e Adding thread safety
Making our LoRaWAN stack thread safe. If RTOS is not present, locks
don't do anything. ScopedLock is used to automate the lock release on
context expiry.
2018-05-08 16:24:34 +03:00
Hasnain Virk a331c4b59a Immutable payload pointer in LoRaPHY 2018-05-08 16:24:34 +03:00
Hasnain Virk 73e433e4e5 Immutable payload pointer to LoRaMacCommand class 2018-05-08 16:24:34 +03:00
Hasnain Virk 0be41f0e69 Remove useless extraction
Channel plan datastructure already contains channel parameters.
Extraction is not needed.
2018-05-08 16:24:34 +03:00
Hasnain Virk bec61cea27 Initializing band for default channels
We went through an exercise of adding band information to
any new channel being added. Default channels were looked over.
This commits duly adds missing band information to default channels.
2018-05-08 16:24:34 +03:00
Hasnain Virk e5e8e79a7a Immutable Payload from radio
Received data buffer from radio driver should be immutable.
2018-05-08 16:24:34 +03:00
Cruz Monrreal 11901f115b
Merge pull request #6800 from kivaisan/fix_loracrypto_asserts
Lora: Fix LoRaMacCrypto asserts
2018-05-07 19:34:56 -05:00
Cruz Monrreal ceeedfd99c
Merge pull request #6805 from theotherjimmy/reorder-test-configs
tools: Reorder test configuration priority
2018-05-07 19:15:14 -05:00
Cruz Monrreal 0f51ea031e
Merge pull request #6610 from pauluap/stm32_eth_remove_tx_rx_locking_interrupt_perforation
Stm32 eth remove tx rx locking interrupt perforation
2018-05-07 10:51:03 -05:00
Cruz Monrreal 53d3c4344f
Merge pull request #6781 from theotherjimmy/refactor-notify
tools: Refactor notification API
2018-05-07 10:48:48 -05:00
Cruz Monrreal 5038135c7d
Merge pull request #6577 from SeppoTakalo/remove_features
Get rid of FEATURE_COMMON_PAL and FEATURE_NANOSTACK
2018-05-07 10:44:50 -05:00
Cruz Monrreal 53aa1b04ab
Merge pull request #6654 from kjbracey-arm/fault_cr
Add missing carriage returns to fault handler
2018-05-07 10:41:40 -05:00
Cruz Monrreal ab81b61e6c
Merge pull request #6657 from tsailer/exporter-codeblocks-ncs
add ncs36510 fib and trim generation
2018-05-07 10:40:51 -05:00
Cruz Monrreal 6ab4091653
Merge pull request #6728 from 0xc0170/fix-issue-template
Fix issue template - simplified version
2018-05-07 10:38:49 -05:00
Cruz Monrreal 7a99cd199d
Merge pull request #6773 from OpenNuvoton/nuvoton_fix_timer_stack_size
Enlarge timer thread stack size for Cortex-M23/M33
2018-05-07 10:37:36 -05:00
Cruz Monrreal e023bb67c4
Merge pull request #6771 from marcuschangarm/fix-uart-init
Fix UART initialization for NRF52
2018-05-07 10:35:40 -05:00
Cruz Monrreal 2ddce27a42
Merge pull request #6769 from theotherjimmy/fix-subtract-basepath
Move subtract basepath into the resources class
2018-05-07 10:33:36 -05:00
Cruz Monrreal 809f183eeb
Merge pull request #6768 from deepikabhavnani/iar_nan0130
Nano 100: Lower HEAP size for IAR
2018-05-07 10:32:30 -05:00
Cruz Monrreal 7a1ab1890b
Merge pull request #6792 from jarvte/cellular_dynamic_alloc_and_destr
Cellular: Add dynamic alloc and destruction to easycellular
2018-05-07 10:28:43 -05:00
Cruz Monrreal c52a8d6044
Merge pull request #6793 from theotherjimmy/fix-test-config-passing
tools: Pass app-config to get_config
2018-05-07 10:28:03 -05:00
Cruz Monrreal 39fd120064
Merge pull request #6797 from OpenNuvoton/nuvoton_fix_noserial
Fix compile error with DirectSerial in serial-less build
2018-05-07 10:27:27 -05:00
Cruz Monrreal 7a5ba60674
Merge pull request #6819 from adbridge/master
Remove example update scripting from tools
2018-05-07 10:25:42 -05:00
Martin Kojtal 5a77f42882
Merge pull request #6796 from marcuschangarm/fix-nrf52-tick
Fix us_ticker for NRF52 series
2018-05-07 08:17:58 +01:00
Martin Kojtal 6361e92d62
Merge pull request #6798 from marcuschangarm/fix-mbr
Fix bug in MBR for NRF52 series
2018-05-04 18:58:14 +01:00
adbridge cfe2676b30 Remove example update scripting from tools
The examples updating functionality has now been moved to the
mbed-release script and thus can be removed from here.
2018-05-04 13:57:18 +01:00
Jimmy Brisson 81f969e127 Reduce memory consumption and lock contension
29% speedup (old: 45sec, new: 35sec) on my machine
2018-05-03 13:47:58 -05:00
Martin Kojtal e43d21d4ef
Merge pull request #6713 from theotherjimmy/arm-no-asm-inc
Drop include paths for ARM assembler
2018-05-03 16:31:04 +01:00
Martin Kojtal 45b3fffe9a
Merge pull request #6729 from JammuKekkonen/f411re_add_bootloader_support
Add bootloader support for NUCLEO_F411RE target
2018-05-03 16:30:29 +01:00
Martin Kojtal f09ab67af2
Merge pull request #6740 from kivaisan/fix_max_tx_power
Lora: Fix max tx power check
2018-05-03 16:28:55 +01:00
Martin Kojtal b47a3057b6
Merge pull request #6762 from OpenNuvoton/nuvoton_fix_armc6_memtrace
Fix compile error with MBED_MEM_TRACING_ENABLED and ARMC6
2018-05-03 16:27:54 +01:00
Martin Kojtal 1a5a2f0134
Merge pull request #6774 from geky/littlefs-fix-trailing-dots
littlefs: Fix issue with trailing dots in file paths
2018-05-03 16:26:47 +01:00
Martin Kojtal 1f6ded136c
Merge pull request #6778 from maximmbed/max32625mbed-update-leds
Add support for open drain leds
2018-05-03 16:25:04 +01:00
Martin Kojtal 2729c7aa23
Merge pull request #6780 from bmcdonnell-ionx/fix-lwip-compiler-warning
resolve LWIP compiler warning
2018-05-03 16:24:31 +01:00
Martin Kojtal 0c61cf4a37
Merge pull request #6785 from codeauroraforum/Fix_KL82Z_PWMOUT
KL82Z: Fix clock selection for PWMOUT driver
2018-05-03 16:24:07 +01:00
Martin Kojtal fb2d0a7517
Merge pull request #6786 from deepikabhavnani/mbed_heap_fix
Moved stats test to platform folder
2018-05-03 16:23:25 +01:00
Martin Kojtal 4984340621
Merge pull request #6787 from codeauroraforum/Fix_KW41_SDK_TPM_Driver
KW41Z: Update SDK TPM driver
2018-05-03 16:21:57 +01:00
Jimmy Brisson c186c3ce86 Use mocked notifier for individual tests
That way we separate the collection of notifications from everything else
2018-05-03 10:06:47 -05:00
Jimmy Brisson d338e672de Apply subtract basepath to features
A bug, #6755, was the result of the `subtract_basepath` function not
being applied to a resources object's children (it's features). This PR
fixes this bug by moving this functionality into the resources class.
Then, I applied the `subtract_basepath` method to the children resource
objects recursively. This has been tested on Partnerbeta and is to
upstream the fix.
2018-05-03 08:54:55 -05:00
Jimmy Brisson 33eb3ea427 Reorder test configs
Old order:
 * --test-config
 * --app-config
 * test config (as defined in test_config)
 * `mbed_app.json` in root.

New order:
 * --test-config
 * --app-config
 * `mbed_app.json` in root.
 * test config (as defined in test_config)~

This matches the documentation and user expectation
2018-05-03 08:47:12 -05:00
Martin Kojtal 9747f19ff0 issue template: add tools version + name request 2018-05-03 11:57:28 +01:00
Martin Kojtal 90c4e239c5 issue template: fix order (same as in PR template) 2018-05-03 11:47:23 +01:00
Kimmo Vaisanen 5384cd6b63 Lora: Fix LoRaMacCrypto asserts
If Lora stack is built with incorrect mbedtls settings, crypto methods
should assert and return error value. This fixes MBED_ASSERTs to
work correctly.
2018-05-03 13:04:03 +03:00
Teppo Järvelin b22a16fe4a Cellular: Added dynamic alloc and destruction to easycellular.
Now application can call connect and disconnect multiple times and resources are freed and constructed properly.
Also whole easycellular can be deleted and constructed again.
2018-05-03 12:47:47 +03:00
Martin Kojtal 16ab71864e
Merge pull request #6765 from mirelachirica/at_handler_read_fix
Cellular: Fix AT Handler compile warning
2018-05-03 07:41:23 +01:00
Marcus Chang 41c1654a49 Fix bug in MBR for NRF52 series
The MBR VTOR state depends on how the application is booted.
This makes it difficult to initialize the MBR correctly since a
bug prevents the MBR from being initialized more than once.

This commit resets the MBR and SoftDevice to a known state before
initializing the MBR and setting the VTOR through the SoftDevice.
2018-05-02 21:10:41 -07:00