Commit Graph

28181 Commits (de7768ce2925a8b94e23d51a2b6a00ca603d92d4)

Author SHA1 Message Date
Kevin Bracey 0b28553ac2 Remove deprecated Callback methods 2019-12-02 15:27:10 +02:00
Kevin Bracey cf13cd48bc LittleFS test: silence sign mismatch warning 2019-12-02 14:45:37 +02:00
Kevin Bracey 7a219260c1 LittleFS: correct CRC calculation
When using MbedCRC, init value must be non-reversed, regardless of
`reflect_data` or `reflect_out` settings. This means we need to reflect
the intermediate output before passing using it as the next init value.

(In GCC this ends up putting in two `RBIT` instructions back-to-back,
because it's implemented as assembler, so it doesn't know how to
optimise. In ARMC6, `__RBIT` is implemented as an intrinsic, so adding
this reflection cancels the existing reflection and makes the code
smaller).
2019-12-02 14:45:37 +02:00
Kevin Bracey c67816b5ff Adjust code for MbedCRC changes
* Make mbed_error use bitwise MbedCRC call rather than local
  implementation.
* Remove use of POLY_32BIT_REV_ANSI from LittleFS.
* Move some MbedCRC instances closer to use - construction cost is
  trivial, and visibility aids compiler optimisation.
2019-12-02 14:45:37 +02:00
Kevin Bracey a995c162ac Revise MbedCRC template
* Use compile-time detection of hardware CRC capability, so unneeded
  code and tables do not go into the image.
* Add global JSON config option to allow choice between no tables,
  16-entry tables or 256-entry tables for software CRC. Default set
  to 16-entry, reducing ROM size from previous 256-entry.
* Allow manual override in template parameter to force software or
  bitwise CRC for a particular instance.
* Micro-optimisations, particularly use of `RBIT` instruction and
  optimising bitwise computation using inline assembler.

Incompatible changes:

* Remove special-case "POLY_32BIT_REV_ANSI" - users can use standard
  POLY_32BIT_ANSI, which now uses the same 16-entry tables by default,
  or can use hardware acceleration, which was disabled for
  POLY_32BIT_REV_ANSI. MbedCRC<POLY_32BIT_ANSI, 32, CrcMode::TABLE> can
  be used to force software like POLY_32BIT_REV_ANSI.
* The precomputed table for POLY_16BIT_IBM had errors - this has been
  corrected, but software CRC results will be different from the previous
  software calculation.
* < 8-bit CRC results are no longer are shifted up in the output value,
  but placed in the lowest bits, like other sizes. This means that code
  performing the SD command CRC will now need to use `(crc << 1) | 1`,
  rather than `crc | 1`.
2019-12-02 14:45:37 +02:00
Kevin Bracey fe22bc023e Update HAL CRC API
* Change "is supported" check to be a macro, so it can be done at
  compile-time.
* Eliminate weird shift on 7-bit CRCs.
* Add support for 32-bit CRCs and reversals to TMPM3HQ.
2019-12-02 14:45:37 +02:00
Veijo Pesonen 5d3e859d1c NRF52840_DK: Fixes target id code 2019-12-02 13:00:19 +02:00
Veijo Pesonen 28a2327f7e MCU_NRF52840: Removes redundant component and errata definitions 2019-12-02 12:59:56 +02:00
Veijo Pesonen c479dab901 MCU_NRF52840: Removes redundant OS version and CMSIS Packs data 2019-12-02 12:59:39 +02:00
Martin Kojtal 48f544f9e4
Merge pull request #11980 from jeromecoutant/PR_L4R9I
DISCO_L4R9I: update clock configuration for all clock sources
2019-12-02 11:23:51 +01:00
Qinghao Shi 01d35911a6 TESTS: move include trace to test headers 2019-11-29 15:28:46 +00:00
Qinghao Shi 0971254ced TESTS: remove include missing header 2019-11-29 15:26:37 +00:00
Martin Kojtal 24c6c4cab5
Merge pull request #11935 from AriParkkila/cell-depr-device
Cellular: Mark to be deprecated in CellularDevice
2019-11-29 15:45:35 +01:00
Ari Parkkila 088140e04b Cellular: Mark CellularDevice::stop deprecated 2019-11-29 04:24:56 -08:00
Martin Kojtal f2d211b7c2
Merge pull request #11978 from hugueskamba/hk-fix-lpc55s69_ns-baremetal-compilation
LPC55S69_NS: Fix baremetal compilation error
2019-11-29 13:05:13 +01:00
Hamza Rizwan c15320d48e Fixes for Network WiFi Test Crashes 2019-11-29 14:52:25 +05:00
Martin Kojtal 7177d8fefe
Merge pull request #11950 from ABOSTM/DISCO_H747I_TICKLESS
DISCO_H747I: add support of MBED_TICKLESS
2019-11-29 09:48:09 +01:00
Martin Kojtal 9f34b255be
Merge pull request #11958 from mikaleppanen/ws_rf_ch_conf
Add support for Wi-SUN RF channel configuration
2019-11-29 09:47:05 +01:00
Martin Kojtal a656f51d07
Merge pull request #11963 from jeromecoutant/PR_USB_L4
STM32 USB : Add __HAL_RCC_PWR_CLK_ENABLE
2019-11-29 09:45:44 +01:00
Martin Kojtal b4a885d8b8
Merge pull request #11966 from hugueskamba/hk-remove-json-duplicate-keys
Fix targets.json syntax errors
2019-11-29 09:45:31 +01:00
Martin Kojtal 733f5e25c8
Merge pull request #11971 from ARMmbed/IOTSTOR-951
TDBStore: Unlock the master mutex even after garbage_collect()
2019-11-29 09:45:22 +01:00
Martin Kojtal 0b1210835e
Merge pull request #11979 from evedon/ed-baremetal-fixes
Bare metal greentea tests compilation fixes
2019-11-29 09:06:10 +01:00
jeromecoutant 354913a45e DISCO_L4R9I: correct clock tree for all clock sources 2019-11-28 16:29:11 +01:00
jeromecoutant 7e26cea796 DISCO_L4R9I : correct HSE frequency value 2019-11-28 16:29:10 +01:00
Michal Paszta ecc89c98c7 PPPinterface: remove address getters check for invalid pointer 2019-11-28 17:01:09 +02:00
Hugues Kamba 20f41a0540 LPC55S69_NS: Fix baremetal compilation error
As the `psa` library is not included in the baremetal profile, perform
a TFM system reset only if the `psa` library is included in
the build otherwise perform a normal CMSIS system reset.
2019-11-28 14:53:31 +00:00
Martin Kojtal d58e9d6e76
Merge pull request #11959 from hugueskamba/hk-fix-minimal-console
Minimal Console: Fix compilation error
2019-11-28 15:47:20 +01:00
Martin Kojtal aa168594a7
Merge pull request #11892 from mprse/feature-hal-spec-explicit-pinmap
Bring static pinmap extension to master
2019-11-28 15:46:38 +01:00
Evelyne Donnaes f32292952e Compilation fixes 2019-11-28 14:45:07 +00:00
Piotr Stolarz feb6a46619 [BUGFIX] LWIP system mailbox overflow fix 2019-11-28 14:32:36 +01:00
Martin Kojtal ffdd54315f
Merge pull request #11941 from michalpasztamobica/remove_internal_string_apis
Remove string-based API usage within mbed-os
2019-11-28 14:26:03 +01:00
Kevin Bracey fc05d51bcd Avoid crashes during fault handler
If the fault handler was hit before the stdio console was used and
initialised, the initialisation code caused a "mutex in ISR" trap,
stopping the register dump from happening.

Temporarily set the `error_in_progress` flag at the top of the fault
handler, and restore it before calling `mbed_error`. Take the
opportunity to suppress fault dumps on recursive crashes, much as is
done inside `mbed_error`.
2019-11-28 15:03:26 +02:00
Seppo Takalo 7f7b191077 IOTSTOR-951: Unlock the master mutex even after garbage_collect() 2019-11-28 14:33:07 +02:00
Przemyslaw Stekiel 2e793842d8 STM QSPI driver: return init status, fix pin function setting 2019-11-28 12:41:40 +01:00
Martin Kojtal 7b0a3dcebd
Merge pull request #11918 from ARMmbed/IOTSTOR-978
IOTSTOR-978: Bugfixes to TDBStore and SecureStore
2019-11-28 12:33:03 +01:00
Martin Kojtal a467f0c54a
Merge pull request #11967 from ARMmbed/AnttiKauppila-patch-1
Fixed crashing nsapi_dns unittest
2019-11-28 12:32:33 +01:00
Antti Kauppila 367bae654d
Fixed crashing nsapi_dns unittest
Added missing "return" for NetworkStackMock's get_stack() method
2019-11-28 11:23:35 +02:00
Seppo Takalo b82e106a43 Astyle fixes 2019-11-28 10:59:48 +02:00
Seppo Takalo abbb2485d2 Greentea: Fix storage sizes for SecureStore tests.
Previously Greentea tests was not initialising its storage
before asking for bd->get_program_size(), causing FlashBlockDevice to
return zero. This caused both TDBStorage's to use zero for both
parameter to SlicingBlockDevice(bd, 0, 0), effetivaly both then
used same addresses for slice. This caused SecureStore tests
to fail, because writes to internal RBP storage overwrote keys
from external storage.

Fine-tune TDBStore sizes, so that all tests can fit into storage.
2019-11-28 10:47:47 +02:00
Veijo Pesonen 065ff2645e Fixes features-storage-tests-kvstore-static_tests test case bugs
At least with LPC55S69's default TDBStore configuration it's
impossible to run storage Greentea tests without exhausting the
memory reserved for storing keys.

Fixes an issue where number of keys were removed based on number of
threads which didn't have anything to do with the test case.

Fixes an issue where number of keys were assumed to be constant
but variable number was used for configuration.
2019-11-28 10:37:11 +02:00
Seppo Takalo 8f77de6453 TDBStore safety check: Erase if there is valid keys on the free space.
In case our are contains data from previous reset() or reset_area(),
we might  end up in the situation  where  free space contains valid
key headers,  but we have not erased that area  yet. This can cause
failures if the deinit() and init()  because  new scan of that area
would continue  as long as keys  are found. This causes keys on the
not-yet-erased  area to be included in the new instance of TDBStore.

To prevent this failure,  check  after each key-write that our free
space does not contain valid  key headers.  Also make sure  that we
erase one program unit sector over the master record.  If we erased
just the master record,first key might is still there, causing next
init() to find it.  Extend erase area by  one program unit, so that
build_ram_table() won't find any keys.
2019-11-28 10:37:07 +02:00
Hugues Kamba 444c0893e4 Fix targets.json syntax errors
Remove duplicated keys.
2019-11-28 08:30:58 +00:00
Przemyslaw Stekiel 3d03d3553e Add pwmout_init_direct() stub (fix for unittests) 2019-11-28 08:32:12 +01:00
Przemyslaw Stekiel b2dad08387 Change explicit pinmap to static pinmap 2019-11-28 08:32:12 +01:00
Przemyslaw Stekiel e3a34a57e1 Move GPIO_AF_NONE from PeripheralPins.h to PinNamesTypes.h 2019-11-28 08:32:10 +01:00
Przemyslaw Stekiel fcef50fcd2 Update Overview and background section 2019-11-28 08:32:10 +01:00
Przemyslaw Stekiel 1b3cce6dca Change naming: explicit to static 2019-11-28 08:32:09 +01:00
Przemyslaw Stekiel 181461dc71 Use html tables instead of images, add missing details. 2019-11-28 08:32:09 +01:00
Przemyslaw Stekiel ce2c10a6d3 Add design document for explicit pinmap extension 2019-11-28 08:32:08 +01:00
Przemyslaw Stekiel 7db99341fa Serial, QSPI: Fix style 2019-11-28 08:32:08 +01:00