Commit Graph

15141 Commits (ae6c7c60f91c89cbf755a2f3c8ec9c66635849fd)

Author SHA1 Message Date
Jimmy Brisson 5ad1002b6a Use passed in target data everywhere when doing lib config 2018-04-20 15:31:55 +01:00
Jimmy Brisson a89c8212fe Return correct configuration dict 2018-04-20 15:31:55 +01:00
Jimmy Brisson 751d38f0f6 Allow library configs to override target configs 2018-04-20 15:31:55 +01:00
Christopher Haster 86d049d812 littlefs: Fixed lookahead overflow and removed unbounded lookahead pointers
As pointed out by davidefer, the lookahead pointer modular arithmetic
does not work around integer overflow when the pointer size is not a
multiple of the block count.

To avoid overflow problems, the easy solution is to stop trying to
work around integer overflows and keep the lookahead offset inside the
block device. To make this work, the ack was modified into a resetable
counter that is decremented every block allocation.

As a plus, quite a bit of the allocation logic ended up simplified.
2018-04-20 15:31:55 +01:00
Christopher Haster 790ca4d31c littlefs: Fixed issue with lookahead trusting old lookahead blocks
One of the big simplifications in littlefs's implementation is the
complete lack of tracking free blocks, allowing operations to simply
drop blocks that are no longer in use.

However, this means the lookahead buffer can easily contain outdated
blocks that were previously deleted. This is usually fine, as littlefs
will rescan the storage if it can't find a free block in the lookahead
buffer, but after changes that caused littlefs to more conservatively
respect the alloc acks (e611cf5), any scanned blocks after an ack would
be incorrectly trusted.

The fix is to eagerly scan ahead in the lookahead when we allocate so
that alloc acks are better able to discredit old lookahead blocks. Since
usually alloc acks are tightly coupled to allocations of one or two blocks,
this allows littlefs to properly rescan every set of allocations.

This may still be a concern if there is a long series of worn out
blocks, but in the worst case littlefs will conservatively avoid using
blocks it's not sure about.

Found by davidefer
2018-04-20 15:31:55 +01:00
Amanda Butler 0286455c68 Copy edit UARTCellularInterface.h
Copy edit file for grammar.
2018-04-20 15:31:55 +01:00
Amanda Butler 6431ae2e9d Copy edit PPPCellularInterface.h
Copy edit file for grammar.
2018-04-20 15:31:55 +01:00
Amanda Butler 5499b377a6 Copy edit OnboardCellularInterface.h
Copy edit file for grammar.
2018-04-20 15:31:55 +01:00
Amanda Butler a7160844b8 Copy edit CellularInterface.h
Copy edit for grammar.
2018-04-20 15:31:55 +01:00
Teppo Järvelin 1e4e656609 Cellular: Updated doxygen for deprecated API's. 2018-04-20 15:31:55 +01:00
Paul Thompson 0bfc5ca8c0 Explicitly ignore return value or bare expression (macro expands to a number)
Compile: lwip_stack.c
In file included from ../features/FEATURE_LWIP/lwip-interface/lwip_stack.c:41:0:
../features/FEATURE_LWIP/lwip-interface/lwip_stack.c: In function 'mbed_lwip_bringup_2':
../features/FEATURE_LWIP/lwip-interface/ppp_lwip.h:58:44: warning: statement with no effect [-Wunused-value]
 #define ppp_lwip_disconnect()              ERR_IF
                                            ^
../features/FEATURE_LWIP/lwip-interface/lwip_stack.c:858:21: note: in expansion of macro 'ppp_lwip_disconnect'
                     ppp_lwip_disconnect();
                     ^~~~~~~~~~~~~~~~~~~
../features/FEATURE_LWIP/lwip-interface/ppp_lwip.h:58:44: warning: statement with no effect [-Wunused-value]
 #define ppp_lwip_disconnect()              ERR_IF
                                            ^
../features/FEATURE_LWIP/lwip-interface/lwip_stack.c:875:21: note: in expansion of macro 'ppp_lwip_disconnect'
                     ppp_lwip_disconnect();

                     ^~~~~~~~~~~~~~~~~~~
2018-04-20 15:31:55 +01:00
Marcus Chang be172ab5e6 Enable flow control in Greentea
Flow control is enabled in Greentea for targets that has
console-uart-flow-control set.
2018-04-20 15:31:55 +01:00
Mahesh Mahadevan 72e7d6068c LPC546XX: Add TRNG support
Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
Tony Wu 7f10afc717 rtl8195am - fix wifi_util.c warnings
Fix the following warnings:

[Warning] wifi_util.c@791,20: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] wifi_util.c@835,21: comparison between signed and unsigned integer expressions [-Wsign-compare]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu fed1786596 rtl8195am - fix dhcps.c warnings
Fix the following errors:

[Warning] dhcps.c@158,1: label 'Exit' defined but not used [-Wunused-label]
[Warning] dhcps.c@161,13: 'dump_client_table' defined but not used [-Wunused-function]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu 574f602a15 rtl8195am - fix wifi_promisc.c warnings
Fix the following warnings:

[Warning] wifi_promisc.c@113,61: missing braces around initializer [-Wmissing-braces]
[Warning] wifi_promisc.c@297,52: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] wifi_promisc.c@403,52: comparison between signed and unsigned integer expressions [-Wsign-compare]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu e87cc1fb34 rtl8195am - fix lwip_intf.c warnings
Fix the following warning:

[Warning] lwip_intf.c@134,5: this 'if' clause does not guard... [-Wmisleading-indentation]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu 04a2e92d54 rtl8195am - fix tcm_heap.c warnings
Fix the following warnings:

[Warning] tcm_heap.c@70,18: format '%x' expects argument of type 'unsigned int', but argument 2 has type 'MemChunk * {aka struct _MemChunk *}' [-Wformat=]
[Warning] tcm_heap.c@70,28: format '%x' expects argument of type 'unsigned int', but argument 3 has type 'MemChunk * {aka struct _MemChunk *}' [-Wformat=]
[Warning] tcm_heap.c@336,6: unused variable 'i' [-Wunused-variable]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu c6279e2420 rtl8195am - fix rtw_emac.cpp warnings
Fix the following warnings:

[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 3 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 4 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 5 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 6 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 7 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@62,104: format '%x' expects argument of type 'unsigned int*', but argument 8 has type 'uint8_t* {aka unsigned char*}' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 3 has type 'char*' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 4 has type 'char*' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 5 has type 'char*' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 6 has type 'char*' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 7 has type 'char*' [-Wformat=]
[Warning] rtw_emac.cpp@201,101: format '%x' expects argument of type 'unsigned int*', but argument 8 has type 'char*' [-Wformat=]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu 2873f2cba0 rtl8195am - fix wifi_conf.c warnings
Fix the following warnings:

[Warning] wifi_conf.c@326,28: suggest parentheses around comparison in operand of '|' [-Wparentheses]
[Warning] wifi_conf.c@451,39: format '%x' expects argument of type 'unsigned int *', but argument 3 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@451,43: format '%x' expects argument of type 'unsigned int *', but argument 4 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@451,47: format '%x' expects argument of type 'unsigned int *', but argument 5 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@451,51: format '%x' expects argument of type 'unsigned int *', but argument 6 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@451,55: format '%x' expects argument of type 'unsigned int *', but argument 7 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,39: format '%x' expects argument of type 'unsigned int *', but argument 3 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,43: format '%x' expects argument of type 'unsigned int *', but argument 4 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,47: format '%x' expects argument of type 'unsigned int *', but argument 5 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,51: format '%x' expects argument of type 'unsigned int *', but argument 6 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,55: format '%x' expects argument of type 'unsigned int *', but argument 7 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,59: format '%x' expects argument of type 'unsigned int *', but argument 8 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,63: format '%x' expects argument of type 'unsigned int *', but argument 9 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 10 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 11 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 12 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 13 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 14 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@460,35: format '%x' expects argument of type 'unsigned int *', but argument 15 has type 'u32 * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@831,16: format '%d' expects argument of type 'int *', but argument 3 has type 'rtw_security_t * {aka long unsigned int *}' [-Wformat=]
[Warning] wifi_conf.c@1335,2: suggest parentheses around assignment used as truth value [-Wparentheses]
[Warning] wifi_conf.c@1398,13: pointer targets in passing argument 1 of 'rtw_mfree' differ in signedness [-Wpointer-sign]
[Warning] wifi_conf.c@1724,7: variable 'ret' set but not used [-Wunused-but-set-variable]
[Warning] wifi_conf.c@1770,6: variable 'ret' set but not used [-Wunused-but-set-variable]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu b6c18a26a5 rtl8195am - fix osdep_service.c warnings
Fix the following warnings:

[Warning] osdep_service.c@58,11: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] osdep_service.c@208,61: suggest braces around empty body in an 'else' statement [-Wempty-body]
[Warning] osdep_service.c@1063,16: pointer targets in passing argument 1 of '_rtw_mfree' differ in signedness [-Wpointer-sign]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu de59ccee40 rtl8195am - fix spi_api.c warnings
Fix the following warnings:

[Warning] hal_ssi.h@28,85: suggest braces around empty body in an 'if' statement [-Wempty-body]
[Warning] spi_api.c@87,27: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] spi_api.c@76,14: unused variable 'MaxSsiFreq' [-Wunused-variable]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu 781829c6a3 rtl8195am - fix pwmout_api.c warnings
Fix the following warning:

[Warning] pwmout_api.c@65,29: comparison between signed and unsigned integer expressions [-Wsign-compare]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu 80ca6ee9b6 rtl8195am - fix log_uart_api.c warnings
Fix the following warnings:

[Warning] log_uart_api.c@58,38: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] log_uart_api.c@151,38: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] log_uart_api.c@260,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@268,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@276,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@290,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@328,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@338,27: unused variable 'pUartAdapter' [-Wunused-variable]
[Warning] log_uart_api.c@376,45: pointer targets in passing argument 2 of 'HalLogUartRecv' differ in signedness [-Wpointer-sign]
[Warning] log_uart_api.c@386,45: pointer targets in passing argument 2 of 'HalLogUartSend' differ in signedness [-Wpointer-sign]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Tony Wu d611d7bd10 rtl8195am - fix i2c_api.c warnings
Fix the following warnings:

[Warning] i2c_api.c@94,26: comparison between signed and unsigned integer expressions [-Wsign-compare]
[Warning] i2c_api.c@231,5: implicit declaration of function 'memset' [-Wimplicit-function-declaration]
[Warning] i2c_api.c@460,14: unused variable 'i2c_default_addr' [-Wunused-variable]

Signed-off-by: Tony Wu <tonywu@realtek.com>
2018-04-20 15:31:55 +01:00
Marcus Chang 87381def18 Optional hardware flow control for STDOUT
Some platforms have interface chips with hardware flow control
enabled by default. This commit adds configurable flow control to
STDOUT.

Usage:

* Define pin names STDIO_UART_RTS for Rx-flow-control and
  STDIO_UART_CTS for Tx-flow-control.
* Set target.console-uart-flow-control. Valid options are:
  null, RTS, CTS, and RTSCTS.
2018-04-20 15:31:55 +01:00
Edmund Hsu b1e12fa378 Add BUTTON pin names for EV_COG_AD4050LZ and EV_COG_AD3029LZ
Apart from reset and boot buttons, EV_COG_AD4050LZ and
EV_COG_AD3029LZ have 2 more user defined buttons:

- BUTTON1
- BUTTON2
2018-04-20 15:31:55 +01:00
Mahesh Mahadevan bd5b9e1998 MCUXpresso: Fix LPC I2C driver for byte operations
The ci-shield tests that manually generate the START, STOP
by calling the HAL functions were failing. The byte operation
HAL functions cannot use the MCUXpresso SDK driver API's.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
Mahesh Mahadevan 387ab11b77 MCUXpresso: Fix SDK LPC driver
Poll the Pending bit after START and STOP operations to ensure
operation completion.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
bcostm 64fdeaed1d STM32L496AG: Add IAR export 2018-04-20 15:31:55 +01:00
Jimmy Brisson 779374ab17 Use pyelftools for Realtek post-build script 2018-04-20 15:31:55 +01:00
Keyur Hariya 65f8786d13 Fix indentation 2018-04-20 15:31:55 +01:00
Keyur Hariya 44cbc0cc7f Improve SPI block write
Replace looping construct with actual block writes.
Transaction in spi_master_block_write funtion is protected by critical
section to ensure it is completed without interruption. A hardware
limitation may cause data corruption if the TX fifo is allowed to run
empty.
2018-04-20 15:31:55 +01:00
Jimmy Brisson 6dda7093d3 Shorten lines in get config 2018-04-20 15:31:55 +01:00
Jimmy Brisson c1e24d8e58 Heed filters in macro printing 2018-04-20 15:31:55 +01:00
Jimmy Brisson b9c1fe41d9 Print macros in a readable way 2018-04-20 15:31:55 +01:00
Jimmy Brisson 74469ef9e2 Simplify config param printing logic 2018-04-20 15:31:55 +01:00
Jimmy Brisson 7b1cb6ddba Remove needless _exit call 2018-04-20 15:31:55 +01:00
Jimmy Brisson 3617101154 Cleanup get_config imports 2018-04-20 15:31:55 +01:00
Yossi Levy cac4cea6ae Fix Travis CI docs issues 2018-04-20 15:31:55 +01:00
Yossi Levy 42eb2c729c Adding @deprecated functions to the inline documentation of deprecated functions 2018-04-20 15:31:55 +01:00
Mahesh Mahadevan 07974e726f MCUXpresso: Update Kinetis flash driver
Flash functions needed to be called before entering deepsleep mode

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
Mahesh Mahadevan 89dd8e2da0 LPC546XX: Fix deepsleep implementation
Add a check to return to 220MHz on LPC54628

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
Mahesh Mahadevan 5db1bfc032 MCUXpresso: Fix deepsleep implementation for Kinetis parts
1. Fix the check to look for if MCG has a PLL
2. Do setup before and after deep sleep mode execution

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2018-04-20 15:31:55 +01:00
ccli8 b5f23eceda Remove dead code with '#if 0' in SPI 2018-04-20 15:31:55 +01:00
ccli8 a35d547734 Refine SPI code
1. Remove dead code
2. Remove space in empty lines
3. Fix compile warnings
4. Fix some comments
2018-04-20 15:31:55 +01:00
ccli8 f0b037dc27 Fix SPI DMA transfer
1. Disable unnecessary TX/RX threshold interrupts to avoid potential trap in DMA transfer
2. Start TX/RX DMA transfer simultaneously to fit H/W spec and avoid potential RX FIFO overflow issue
2018-04-20 15:31:55 +01:00
ccli8 cbdf0615bc Use vector rather than SPI_CTL_SPIEN_Msk to judge if asynchronous transfer is on-going (spi_active) 2018-04-20 15:31:55 +01:00
ccli8 24496cb162 Introduce SPI_ENABLE_SYNC/SPI_DISABLE_SYNC to simplify enable/disable control 2018-04-20 15:31:55 +01:00
Joris Aerts 54ce719b71 Change detault output_ext for LPC11C24 to hex (for flashmagic) 2018-04-20 15:31:55 +01:00