Commit Graph

16921 Commits (4dfc20ccd80fdab01bd5d8947e7e52152613bc86)

Author SHA1 Message Date
Kevin Bracey b2a6e94cd8 Kinetis EMAC: Correct TX ring pointer array size
TX pointer array was using RX ring length in its declaration.
Wasted memory if RX ring > TX ring, as is the default, but would
be broken if RX ring < TX ring.
2018-06-15 13:30:56 +01:00
Kevin Bracey cedccc7daf Kinetis EMAC: Make number of buffers configurable
16 RX buffers and 8 TX buffers is probably excessive. Nanostack
version of driver successfully used 4+4, and data pump should be
broadly equivalent.

This means that switching K64F devices from Nanostack to EMAC increases
base heap usage by 18K - observed in Nanostack border router builds.

Add a config option to make it possible to lower the number of buffers.
Defer consideration of lowering the default to later.
2018-06-15 13:30:56 +01:00
Michael Schwarcz 4a4c9069f7 Upgrade uvisor to v0.31.1 2018-06-15 13:30:56 +01:00
Jimmy Brisson 6259e81451 Add show full path option to armc6 linker
### Description
Full paths in the map file are required to have correct memap parsing.
This PR adds the option `--show_full_path` to ARMC6 in every profile.
This option only affects the map file output, so it's safe to add.
2018-06-15 13:30:56 +01:00
Kevin Bracey 7c3c8c9d01 Make Nanostack C++ constructor initialise Nanostack
Nanostack object constructor didn't actually initialise Nanostack.
Nanostack initialisation was deferred until an interface was actually
attached to the stack, which generally happened at first interface
connect.

Not normally a problem, unless you're trying to make direct Nanostack
setup calls prior to connect - some applications do this, and were
relying on ThreadInterface::initialise to do Nanostack
initialisation.

Unfortunately in 5.9 ThreadInterface::initialise no longer does
initialise Nanostack immediately, because the mesh interfaces were
aligned and integrated with the Ethernet interfaces, which did
initialisation on connect().

Make the Nanostack object constructor initialise Nanostack (as the LWIP
constructor does for lwIP), so calling Nanostack::get_instance() is the
5.9 API for Nanostack initialisation.

For future work, APIs like ns_file_system_set_root_path should be
exposed as methods of Nanostack, so everything happens with a single
Nanostack::get_instance().file_system_set_root_path().
2018-06-15 13:30:56 +01:00
jeromecoutant aba7367d8b ISM pin configuration is now in ISM driver json file 2018-06-15 13:30:56 +01:00
jeromecoutant 34bfb084c4 Add ISM43362 driver support for STM32 wifi DISCO boards
2 DISCO boards:
- DISCO_F413ZH
- DISCO_L475VG_IOT01A

3 tests supported:
- tests-netsocket-tcp
- tests-netsocket-udp
- tests-network-wifi
2018-06-15 13:30:56 +01:00
Mika Leppänen f0bea4b0a9 Fixed DNS resolution in case all sendto operations fail
DNS resolver now counts how many sendto operations are successful
during one DNS server attempt cycle (attempting to contact DNS
servers from 0 to last index, including stack specific ones). If all
socket sendto operations fail, DNS resolution is aborted.

If one or more are successful, DNS resolution is continued until
total network attempts count is reached or all sendto operations
fails during a cycle.
2018-06-15 13:30:56 +01:00
ccli8 156e8a012a Remove superfluous MOVT in mbed_start_application/start_new_application 2018-06-15 13:30:56 +01:00
ccli8 a77e4072b2 Fix mbed_start_application on Cortex-M23
1. M23 doesn't support ICTR and supports up to 240 external interrupts.
2. Fix reset of SHPR
3. Fix inline assembly compile error with ARMC6
2018-06-15 13:30:56 +01:00
ccli8 4f9de80311 Fix start_new_application compile error on Cortex-M23
With "mov r2, #0", compile OK with GCC_ARM, but failed with ARMC6.
With "ldr r2, =0", compile OK with ARMC6, but failed with GCC_ARM.
Finally, with "movw r2, #0"/"movt r2, #0", compile OK with both ARMC6 and GCC_ARM.
2018-06-15 13:30:56 +01:00
ccli8 88259ac42f Support mbed_start_application for Cortex-M23 2018-06-15 13:30:56 +01:00
Andrew Leech 5d751dfb8f Move mbed_lib.json from targets folder to feature_ble folder The functionality added all affects BLE features in use so this location is a better fit. 2018-06-15 13:30:56 +01:00
Andrew Leech 4dc172b875 Expose softdevice configurations via new nordic-ble library definition file 2018-06-15 13:30:56 +01:00
Andrew Leech c0341fa363 Allow configuration (via defines) of some of the key settings for the NRF51 softdevice. * CENTRAL_LINK_COUNT * PERIPHERAL_LINK_COUNT * gatts_enable_params.attr_tab_size * gatts_enable_params.service_changed * common_enable_params.vs_uuid_count
These settings control the range of functionality enabled in the softdevice as well as ram consumption.
In particular reducing these values is critical to enable usage of 16K nrf51 devices.
2018-06-15 13:30:56 +01:00
Jimmy Brisson 752b6c2efe Use TerminalNotifier in singletest 2018-06-15 13:30:56 +01:00
Cruz Monrreal II 40cc4e3e64 Updated makefile exporter to not rely on enumerating over map. No longer supported in Py3. 2018-06-15 13:30:56 +01:00
Martin Kojtal 9ed564ef07 error: fix undeclared memcpy
Some targets do not get string header file in, results in the warning:
implicit declaration of function 'memcpy'
2018-06-15 13:30:56 +01:00
jeromecoutant 00e3e4165f STM32 : few targets does not support LPTICKER 2018-06-15 13:30:56 +01:00
ccli8 0b1faf1db2 Fix mbed_crc_ctor is missing in some MbedCRC constructor
This error leaves MbedCRC/_mode uninitialized and may cause mbed-os-tests-mbed_drivers-crc/
Test SD CRC polynomials failed.
2018-06-15 13:30:56 +01:00
Yossi Levy 57ea7e188f Fixing some coverity issues. 2018-06-15 13:30:56 +01:00
Marc Emmers 32ecbb71b5 Ticker test: Add ticker_irq_handler call because the time reaching the previous interrupt_timestamp would have triggered one anyway 2018-06-15 13:30:56 +01:00
Marc Emmers 8b1bcc31dc Only schedule mbed_ticker interrupt if queue->head is changed
Reverts change from commit 1057720114
2018-06-15 13:30:56 +01:00
Olli-Pekka Puolitaival 4146eab75e Check that no GPL licence inside code 2018-06-15 13:30:56 +01:00
Andrew Leech 2ba88ba8f6 Redirect NRF asserts to mbed error() in TARGET_NRF5x and SDK 14.2 Add related details to TARGET_NRF5x Readme's 2018-06-15 13:30:56 +01:00
Andrew Leech cee87d9cef Comment out the assert test that requires non-existent symbols from linker 2018-06-15 13:30:56 +01:00
Andrew Leech 5759e17a85 Only enable DEBUG_NRF_USER when NDEBUG is not set 2018-06-15 13:30:56 +01:00
Andrew Leech 2615631a4b Address known typo in nrf sdk 11
ref: https://devzone.nordicsemi.com/f/nordic-q-a/14000/nrf_drv_adc-c-doesn-t-compile-with--ddebug_nrf
2018-06-15 13:30:56 +01:00
Andrew Leech 97ba13b773 Enable ASSERTS's in nrf sdk to catch coding errors.
These will now flow through to mbed standard error handling.
2018-06-15 13:30:56 +01:00
jeromecoutant 87c14d3659 DISCO_F413ZH : pin value error 2018-06-15 13:30:56 +01:00
jeromecoutant f2901a42c3 DISCO_F413ZH : map SPI3 to WIFI module 2018-06-15 13:30:56 +01:00
Vladimir Umek ee0d0f9c02 RTX5 (Cortex-A): exception handling restructured, post processing moved after context save. 2018-06-15 13:30:56 +01:00
Vladimir Umek f5dfc74af2 RTX5: fixed nesting interrupt handling (Cortex-A) 2018-06-15 13:30:56 +01:00
Vladimir Umek 10ec047efc RTX5: ignoring CPUID field in GIC implementation updated interrupt handler for GCC and IAR 2018-06-15 13:30:56 +01:00
Vladimir Umek bbcf5f1aba RTX5: disabled OS Tick interrupt during post processing in IRQ handler for Cortex-A devices 2018-06-15 13:30:56 +01:00
Donatien Garnier d55cc644ab Cordio H4: Added some comments explaining the use of RawSerial as opposed to using Serial 2018-06-15 13:30:56 +01:00
Donatien Garnier 88e06862c3 BLE: Replace Serial with RawSerial in Cordio H4 Transport Driver 2018-06-15 13:30:56 +01:00
jeromecoutant f1f2bb4df4 STM32L4 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant 587c6d9e60 STM32L1 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant 720a5b6cd4 STM32L0 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant 11817b7db3 STM32F7 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant a95bdd8caf STM32F3 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant aa84af280c STM32F2 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant 525eb1ec6e STM32F1 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant 08d8df33c6 STM32F0 ADC internal channels update 2018-06-15 13:30:56 +01:00
jeromecoutant c4698a5bde STM32F4 ADC internal channels update 2018-06-15 13:30:56 +01:00
Mirela Chirica 51a3be6caf Cellular: BC95 socket creation to fail on missing socket id in the response 2018-06-15 13:30:56 +01:00
Martin Kojtal 445339616d AStyle: fix indentation for longer lines
Long lines like this would have parameters misaligned but shorter lines would be OK.

```
 void LoRaMac::check_frame_size(uint16_t size)
 {
     uint8_t value = _lora_phy.get_max_payload(_mcps_indication.rx_datarate,
-                                              _params.is_repeater_supported);
+                    _params.is_repeater_supported);
+
+    _lora_phy.a(_mcps_indication.b,
+                b.is_repeater_supported);
```

With this option (applied to the code above), we get

```
@@ -319,6 +319,9 @@ void LoRaMac::check_frame_size(uint16_t size)
     uint8_t value = _lora_phy.get_max_payload(_mcps_indication.rx_datarate,
                                               _params.is_repeater_supported);

+    _lora_phy.a(_mcps_indication.b,
+                b.is_repeater_supported);
```

Both are aligned the same. However there is a limit of astyle - 120 columns for this.
We do in most cases lines from 80 to 120 as suggested in our code lines thus this should
be good.
2018-06-15 13:30:56 +01:00
Martin Kojtal 8a436bff8f AStyle: don't indent cases
This was a bug in our configuration. Earlier versions of our style did not
specify this option. We found out for some code in our codebase that it was
changed because of the setting.

An example:

```
case: {
    // code here
}

//would be changed to

case: {
    // code here
   }
```

The first one is correct and do not need to be indented (it's enough switch is
indented).
2018-06-15 13:30:56 +01:00
Alan Chuang 467a994bc7 make uart console port configurable via mbed_app.json 2018-06-15 13:30:56 +01:00