* Start on fixing some unintentionally skipped tests
* Reactivate stats tests
* CI fixes
* Include cinttypes
* Fault & crash data RAM working on STM32H7!
* New version of memory bank information system
* Start upconverting linker scripts and target definitions
* Augh my script was being gitignored
* Add tests, update Cypress and STM32 linker scripts and target definitions
* Fix some CI issues
* Fix warning spam on LPC1768
* Fix STM32H745 family compile failure due to failure to include cmsis_nvic.h
* Respond to easy comments
* Break up function into pieces
* Improve type hints, don't write out a JSON file as a side effect
* Two more comments
* Fix PWM API for reading microseconds on LPC1768
* Fix semihosting related compile errors, fix pwm deinit
* Fix some mistakes, fix PWM frequency adjustment
* Fix a few more issues
* Fix teensy4 build
* Try and fix SCLK clock period issue for MIMXRT, add additional SPI pinmappings
* Add full UART pinmapping
* Make more robust to calling spi_format() after spi_frequency()
* Fix style
---------
Co-authored-by: Jamie Smith <jsmith@relativityspace.com>
* Start on documenting features and components
* Missed some renames
* Go through all cellular and 802.15.4 modules
* Fix build
* Fix style
* Update copyright year
* Fix null pointer dereferencing
Add null check for return values of functions that are mostly (but not
always) checked for null.
E.g., since 98% of calls to protocol_stack_interface_info_get_by_id
check for null, it is likely that the function can return null values in
some cases, and omitting the check could crash the program.
* Update MAX32660 peripheral drivers with final ones that use by SDK
* Apply MAX32660 delta
Update mbed hal function as per of SDK update
Signed-off-by: Sadik.Ozer <sadik.ozer@analog.com>
* M2354: Fix debug failure in Mbed Studio
In Mbed Studio, debugging, based on pyOCD, requires Mbed OS application code starting on the sector boundary.
Modification list:
1. Update TF-M import assets with MCUboot header padding to sector aligned
2. Following above, change header size argument (-H) in wrapper.py command line
3. Following below, fix min-write-size (--align) to 4 (per flash_area_align()) in wrapper.py command line
https://docs.mcuboot.com/design.html#image-trailer
Related issue:
https://github.com/ARMmbed/mbed-os/issues/15417
* Do not clear interrupt flag during initialization
This causes issue for repeaded initialization while using BufferedSerial mode
Signed-off-by: Sadik.Ozer <sadik.ozer@analog.com>
* MAX32660, MAX32670 UART performance improvement
Signed-off-by: Sadik.Ozer <sadik.ozer@analog.com>
* Handle negative values passed to close()
Calling close() with negative numbers causes out-of-bounds indexing of the filehandles array. For example, this can happen if open() returns an error and the value is later passed to close().
* Moved a { to the same line as if
Moved a { to the same line as if
* add nullpointer check in LWIP::socket_close
* Fix crash when using FDCAN3 RX IRQ on STM32G473 (and others)
* connectivity: drivers: Update Nuvoton M467 EMAC DMA_IE ctl
In IRQ Handler, to disable some interrupt type of DMA error.
It could avoid unexpected repeated interrupt.The masked bit of
DMA_IE could be recovered in next EMAC IRQ event.
Signed-off-by: cyliang tw <cyliang@nuvoton.com>
* Add workaround for G474 hardfault
* update drivers STM32WL CUBE V1.3.0
* Changed static to weak
* Fix: Do not disable SPI for manual drive mode during transaction setup
It has been reported that disabling SPI module causes glitch for manual SS drive mode
Signed-off-by: Sadik.Ozer <sadik.ozer@analog.com>
* make cellular event queue size configurable
update unit tests
---------
Signed-off-by: Sadik.Ozer <sadik.ozer@analog.com>
Signed-off-by: cyliang tw <cyliang@nuvoton.com>
Co-authored-by: Mingjie Shen <shen497@purdue.edu>
Co-authored-by: Ahmet Polat <Ahmet.Polat@maximintegrated.com>
Co-authored-by: Sadik.Ozer <sadik.ozer@analog.com>
Co-authored-by: Chun-Chieh Li <ccli8@nuvoton.com>
Co-authored-by: alrvid <126816223+alrvid@users.noreply.github.com>
Co-authored-by: Jost, Chris <79271064+chrJost@users.noreply.github.com>
Co-authored-by: Joseph Duchesne <joseph@avidbots.com>
Co-authored-by: cyliang tw <cyliang@nuvoton.com>
Co-authored-by: Maxim Markin <mak22223@ya.ru>
Co-authored-by: Charles <hallard04@free.fr>
Co-authored-by: Lukas Karel <lukas.karel@world-direct.at>
* Add upload target for Arduino Nano 33 BLE, fix linker script preprocessing, add option for USB serial by default
* astyle error
* Use HINTS instead of PATHS so that the Arduino dir is searched first
* Enable OpenOCD and PyOCD for Nano 33 BLE in SWD mode
* Fix missing dependency for USB tests on Windows
* Add RAM defines for nrf52840
* Fix mbed-storage-kv-config depending on SD card library even if said library was not enabled
* Update dsrdtr value
* No longer need to modify linker script now that we aren't using whole-archive!
* Add OPENOCD_ADAPTER_SERIAL
* Add handling for cmsis dap
* Fix typo
* Fix weak symbol issue causing Bluetooth to not work. In this case, the weak implementation can simply be removed, because there's no legitimate case where it is used.
Full verbosity is adding a console line for each lock/unlock API call
- stats can be enabled with json config
- default configuration is full verbosity and add a console line for each lock/unlock command
- for STM32 targets, verbosity is reduced by default
When decimal_prec is 0 and the value is negative and needs rounding subtract 1, instead of adding 1
When decimal_prec > 0 round before printing the integer part, instead of after
The commit 84d0689 "Nano-malloc: Fix for unwanted external heap
fragmentation" from newlib 4.1.0 introduced several optimizations,
one of which is as follows:
When the last chunk in the free list is smaller than requested,
nano_malloc() calls sbrk(0) to see if the heap's current head is
adjacent to this chunk, and if so it asks sbrk() to allocate the
difference in bytes only and expands the current chunk.
This doesn't work if the heap consists of non-contiguous regions.
sbrk(0) returns the the current region's head if the region has any
remaining capacity. But if this capacity is not enough for the second
(non-trivial) call to sbrk() described above, allocation will happen
from the next region if available. Expanding the current chunk won't
work and will result in a segmentation fault.
So this optimization needs to be reverted in order to bring back
compatibility with non-contiguous heaps. Before the next version
of newlib becomes available and gets updated in the GCC Arm Embedded
Toolchain, we work around this issue by including the fix in Mbed OS.
The linker prioritizes malloc() from the project to the one from the
toolchain.
ARMCC provides __semihost via compat header. As CMSIS 5.8.0 removed this compat header,
we need to explicitly include it to fix definition missing error.
Reference: CMSIS 5.8.0 known issues and https://github.com/ARM-software/CMSIS_5/issues/1211
This fixes the error about redefinition of enable/disable irq. we need compat header because of
semihosting (not yet provided in CMSIS).
ARM Compiler 6 supports GNU-style assembly with armclang. Instead of
relying on armasm with the legacy syntax, GCC except.S is updated so
that it can be used with ARM as well as GCC_ARM toolchains. CMake is
updated to use this version.
We used to require INITIAL_SP as rtx target headers define it. This should not be required, as
cmsis already defines symbol __INITIAL_SP for all toolchains.
Fixes#14432
mbed-os consists of mbed-core and mbed-rtos
mbed-baremetal consists of mbed-core
The main change is for mbed-core. Changing from object library to be interface. This way it allows us to do the above to have 2 main targets for users to use.
This should be backward compatible change as mbed-os target we used contains the same files/options as previously set.
Aside from the core mbed-os CMake target, a number of targets have been created so they can optionally be included by application executables that require them using `target_link_libraries()`.
Co-authored-by: Martin Kojtal <martin.kojtal@arm.com>
Co-authored-by: Rajkumar Kanagaraj <rajkumar.kanagaraj@arm.com>