Commit Graph

876 Commits (2b52c5861a72511aa751e4543a36fff4d5cb8ec0)

Author SHA1 Message Date
Przemyslaw Stekiel f6acb51893 Update find_ports() FPGA testing utility function to loop through the form factor pins instead the pin-map
This change is required to fully remove gpio pin-maps which were already added for FPGA testing.
One use case of adding gpio pinmap was that pin-map must have the specific format - must be ended with NC pin. Functions that deal with pin-maps loops through the pin-map until NC pin is encountered.
Also, our FPGA testing utility function to find pins for testing does that. When gpio pinmaps are fully removed we will have one generic gpio pinmap which provides Arduino pins: D0, D1, D2, etc. (only Arduino form factor is supported at the moment).
In some cases may happen that an arduino pin is not connected (e.g. KW24D: D4 == NC). As a result we will have NC not only at the end, but also in the middle of the gpio pin-map.
In this case find_ports() function will finish processing pin-map to early (when first NC is encountered).
The proposition is to change the find_ports() FPGA testing utility function to loop through form factor pins (instead pin-map) and then check if the pin is not NC and is available on the specific pin-map before using it for testing.
2020-02-24 14:44:33 +01:00
Anna Bridge 8c17270306
Merge pull request #12480 from 0xc0170/fix_spdx
Fix SPDX identifiers and licenses (excluding features and targets)
2020-02-21 16:34:30 +00:00
Martin Kojtal 8f1bf967d3
Merge pull request #11942 from michalpasztamobica/remove_deprecated_apis
IPCore String-based API removal
2020-02-21 12:14:06 +00:00
Martin Kojtal a18259abb9
Merge pull request #12446 from boomer41/i2cee-add-eight-bit-address
Add Eight-Bit-Addressing mode to I2CEEBlockDevice.
2020-02-21 12:12:16 +00:00
Martin Kojtal c0ed178830 component storage: fix SPDX identifiers 2020-02-21 07:01:09 +00:00
Martin Kojtal c43f808f3d component psa: fix SPDX identifiers 2020-02-21 07:01:08 +00:00
Martin Kojtal 01e273ee04 component mcr20: fix SPDX identifiers 2020-02-21 07:01:07 +00:00
Martin Kojtal b9e00de2d9 psa: fix licenses + SPDX 2020-02-21 07:01:05 +00:00
Martin Kojtal ab76e0a59e component storage: fix SPDX identifiers 2020-02-21 07:01:04 +00:00
Martin Kojtal 7789ecae16 component wifi: fix SPDX identifier 2020-02-21 07:01:03 +00:00
Stephan Brunner 440fa4985b
Remove paging and sync from I2CEEBlockDevice::read(), as it is not needed 2020-02-19 18:23:46 +01:00
Martin Kojtal 829a3cded3
Merge pull request #12318 from VeijoPesonen/sfdp_split_smptbl
SFDP: Move Sector Map Parameter Table parsing under SFDP module
2020-02-19 15:49:40 +00:00
Martin Kojtal 69a0542ade
Merge pull request #12453 from jeromecoutant/PR_TRACEGROUP
STM32 TRACE_GROUP update
2020-02-19 14:33:17 +00:00
Martin Kojtal 4ce25266fa
Merge pull request #12427 from DavidLin1577/patch-1
Minor optimisation to  mcr20a-rf-driver code
2020-02-19 12:54:41 +00:00
Stephan Brunner 4d0c3463a0
Fix Code style and reorder class members to get besser packing 2020-02-19 12:49:28 +01:00
Stephan Brunner 3741440b77
Fix typo and clarify documentation 2020-02-19 11:58:07 +01:00
Stephan Brunner 532f3786a0
Remove overcomplicated code from I2CEEBlockDevice 2020-02-18 19:13:50 +01:00
David Lin f1c479651f
Minor optimisation to mcr20a-rf-driver code
This is a minor optimisation to the mcr20a-rf-driver code:

Note that function parameter is pointer. The code is more readable when 'NULL' instead of using '0'.
2020-02-18 20:00:00 +08:00
Stephan Brunner 7c589ae172
Fix astyle 2020-02-17 23:04:23 +01:00
Stephan Brunner 76a177fafa
Use pageSize-constant instead of hardcoded value 2020-02-17 21:25:47 +01:00
Stephan Brunner 267d8cc223
Preserve original size as it is modified inside the handler function.
The value is const reference bound inside do_paged and must not be
modified, it is used inside the paging loop.
2020-02-17 20:57:58 +01:00
Stephan Brunner e850984715
Correctly check return codes from bytewise write function of I2C. 2020-02-17 20:50:49 +01:00
Stephan Brunner 52aed22978 Refactor paged_handler to directly give the paged device address. 2020-02-17 20:49:43 +01:00
Stephan Brunner 8d1978e05c
I2CEEBlockDevice: Add paging to eight bit mode 2020-02-17 20:22:18 +01:00
jeromecoutant f000b87911 STM32 TRACE_GROUP update
Only 4 characters is allowed
2020-02-17 16:38:42 +01:00
Stephan Brunner cd34860bd0 Add Eight-Bit-Adressing mode to I2CEEBlockDevice.
When dealing with EEPROMs without a 16 bit adressing, the current
implementation does not work, as it writes a 16 bit address to the chip.
This may cause undefined behaviour.
This change adds a new constructor argument to enable this new eight-bit
mode. It defaults to false to not break existing code.
This constructor argument should actually never be necessary to manually
set, except when dealing with cheap devices.
2020-02-16 12:54:51 +01:00
jeromecoutant c9aead485b STMOD_CELLULAR: add DISCO_L562_QE support 2020-02-14 17:49:41 +01:00
David Lin 57d3a14e0f
Minor optimisation to mcr20a-rf-driver code
This is a minor optimisation to the mcr20a-rf-driver code:
1. The function parameter is 'uint8_t *byteArray',  (byteArray == NULL) instead of using (byteArray == 0). The code is more readable.
2020-02-13 22:35:57 +08:00
Martin Kojtal bde0f5660b
Merge pull request #12392 from GaborAbonyi/psa_crypto_fix
Fix psa_key_management_operations
2020-02-12 13:11:27 +00:00
Martin Kojtal d3078a39b1
Merge pull request #12379 from mprse/STDIO_UART_restricted_all
Add STDIO UART as restricted for FPGA testing for all targets and support for restricting GPIO
2020-02-11 10:20:25 +00:00
Martin Kojtal 8c51f4f163
Merge pull request #12395 from boomer41/fix-i2ceepromblockdevice
Fix I2CEEBlockdevice
2020-02-10 14:28:11 +00:00
Martin Kojtal deb4995dae
Merge pull request #12150 from Patater/update-tls-crypto-20191220
Update Mbed TLS and Mbed Crypto to latest as of 2019-12-20
2020-02-10 13:04:12 +00:00
Stephan Brunner d7f3fcc3d3
Add error check for _sync() in I2CEEBlockDevice::read 2020-02-10 10:31:41 +01:00
Przemyslaw Stekiel 0d9a54f92e Provide pinmap_uart_restricted_peripherals() function under DEVICE_SERIAL 2020-02-10 08:17:55 +01:00
Stephan Brunner 97c00f1a22 Fix I2CEEBlockDevice read()
When reading a data block, the returned error codes from the I2C subsystem
are different from normal single byte operations. We have to verify that
the read-function for multiple bytes does return zero, because it
returns "readBytes != expectedLength".

Additionally, sync before trying to read from the eeprom as slow devices
may not yet be ready to return data, especially with low-priced ones
used with fast controllers.
2020-02-07 22:57:04 +01:00
Gabor Abonyi c94b3e41ee Fix psa_key_management_operations
At these locations, psa_key_attribute variables are used without
initialisation. The function getting it (psa_get_key_attributes),
is freeing attributes->domain_parameters, which can contain random
address from the stack.

Signed-off-by: Gabor Abonyi <gabor.abonyi@arm.com>
2020-02-07 16:23:20 +01:00
Martin Kojtal d847f9f164
Merge pull request #12305 from kivaisan/remove_multi_athandler_support_v2
Cellular: Remove support for multiple ATHandlers
2020-02-07 11:00:41 +00:00
Przemyslaw Stekiel 3c0982d939 Add pinmap_gpio_restricted_pins() to provide list of restricted GPIO pins
This is a special case since targets do not provide by default GPIO pin-maps.
This extension is required for FPGA GPIO tests - if some pins have limitations (e.g. fixed pull-up) we need to skip these pins while testing.
To do that we were adding a dummy pin-map with commented out pins that can't be tested because of the limitations.
This solution is redundant and the proposition is to provide a list of restricted gpio pins if required (by default weak implementation is provided with an empty list).

This mechanism will be backward compatible, so the old method with dummy gpio pinmap will also work. The switch from dummy pin-maps to pinmap_gpio_restricted_pins() will be performed in separate commits/PRs.
2020-02-07 10:45:02 +01:00
Przemyslaw Stekiel 54f4777e64 Add STDIO UART as restricted for FPGA testing for all targets
Substantiation for this is that the STDIO UART peripheral is used by Mbed, so it should never be tested.

Also solve the potential problem with accidenty skipped peripherals in FPGA testing. Currently, we have a one `pinmap_restricted_peripherals()` function for all interfaces (UART, I2C, SPI, etc.).
The problem can be encountered if different interfaces have the same peripheral ids (e.g. `UART_0` = 0, `SPI_0` = 0). In this case, if `UART_0` is on the restricted list, then SPI tests will be also skipped for `SPI_0`.
The good news is that usually, the peripheral ids are the base addresses of the peripheral's register set, but we can't rely on this. It is also good that `pinmap_restricted_peripherals()` at this moment is only required for STDIO UART (Nuvoton and STM).

To solve this issue we will change name of `pinmap_restricted_peripherals()` to `pinmap_uart_restricted_peripherals()`, make STDIO UART restricted by default for all targets and update FPGA test utilily functions to use `pinmap_uart_restricted_peripherals()` to skip only uart peripherals.
In the future if needed we can consider to add support to restrict peripherals of other interfaces(SPI, I2C, etc).
2020-02-07 10:45:02 +01:00
Veijo Pesonen ba71b09902 astyle fixes 2020-02-07 09:52:12 +02:00
Veijo Pesonen 4f4ef6069e SFDP: Sector Map Parameter Table naming improvements 2020-02-07 09:52:12 +02:00
Veijo Pesonen f51600c089 SPIFBlockDevice: drops unnecessary wrapper function 2020-02-07 09:52:12 +02:00
Veijo Pesonen 57722666a1 SPIFBlockDevice: Consolidates SFDP info data
This far all SFDP Sector Map Table related data has been found in small
pieces inside SPIFBlockDevice. Purpose was to consolidate the data
under one SFDP structure where all the information gathered from
SFDP tables is stored.

More generic version of a function used for parsing a Sector Map Table
was taken into use to avoid duplicate code. The implementation taken
into use is the one which got split from QSPIFBlockDevice and resides
now under the SFDP module.
2020-02-07 09:52:11 +02:00
Veijo Pesonen 83c0fdf19f QSPIFBlockDevice: Sector Map Table parsing moved under SFDP 2020-02-07 09:52:11 +02:00
Veijo Pesonen 7518a35da3 SFDP: data structures got refactored 2020-02-07 09:52:11 +02:00
Veijo Pesonen 6108f384fb QSPIFBlockDevice: Consolidates SFDP info data
This far all SFDP Sector Map Table related data has been found in small
pieces inside QSPIFBlockDevice. Purpose was to consolidate the data
under one SFDP structure where all the information gathered from
SFDP tables is stored.

Parsing a Sector Map Table was made more generic so that later it can be
moved under SFDP module. Once that is done it can be shared with
SPIFBlockDevice to avoid code duplication.
2020-02-07 09:52:11 +02:00
Veijo Pesonen cba5bfc790 QSPIFBlockDevice: Reads Sector Map Table by using a SFDP Reader cb 2020-02-07 09:52:11 +02:00
Veijo Pesonen 4e1fb07633 SFDP: reorganizes internal info structure 2020-02-07 09:52:11 +02:00
Veijo Pesonen 6a6904043c QSPIFBlockDevice: drops unnecessary wrapper function 2020-02-07 09:52:11 +02:00
Michal Paszta 458957d399 IPCore deprecated string-based API removal
String-based functions should be replaced with an explicit DNS hostname resolution and a SocketAddress-based API.
2020-02-06 11:27:49 +02:00