mbed-os/connectivity/cellular
Jamie Smith 86723f7dab
Synchronize changes with Mbed upstream: September 2023 edition (#185)
* 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>
2023-09-24 23:37:28 -07:00
..
include Update for Doxygen 1.9.5 (#119) 2023-01-03 21:26:26 -08:00
source Synchronize changes with Mbed upstream: September 2023 edition (#185) 2023-09-24 23:37:28 -07:00
tests/UNITTESTS Synchronize changes with Mbed upstream: September 2023 edition (#185) 2023-09-24 23:37:28 -07:00
.gitignore Move cellular framework into connectivity 2020-07-22 11:05:49 +01:00
CMakeLists.txt Rename inconsistently named testing-related variables. Also fix STM32CUBE not working from application code. 2022-09-14 00:25:29 -07:00
README.md Remove Cellular dependency in netsocket 2020-12-03 18:16:33 +01:00
mbed_lib.json Synchronize changes with Mbed upstream: September 2023 edition (#185) 2023-09-24 23:37:28 -07:00

README.md

Mbed cellular connectivity

This is the Github repo for Mbed cellular connectivity:

framework/
    API         Application Programming Interface for cellular connectivity
    AT          AT implementation based on 3GPP TS 27.007 specification
    common      Common and utility sources
    device      Implementation of cellular device and state machine
    targets     Vendor specific cellular module adaptations

Note: Application developers should use only the API folder.

Known limitations

Please note that this is a first release of Cellular framework and is subject to further development in future.

Supported modules

You can find currently supported cellular modules in the framework/targets/ folder, where we also add support for new cellular modules.

Cellular configuration

You can change cellular defaults in the mbed_lib.json configuration file.

Debug traces

You can define the debug tracing level in the mbed_app.json configuration file:

"target_overrides": {
    "*": {
        "mbed-trace.enable": true,
        "platform.stdio-convert-newlines": true,
        "platform.stdio-baud-rate": 115200,
        "platform.default-serial-baud-rate": 115200
    }
},
"config": {
    "trace-level": {
        "help": "Options are TRACE_LEVEL_ERROR,TRACE_LEVEL_WARN,TRACE_LEVEL_INFO,TRACE_LEVEL_DEBUG",
        "macro_name": "MBED_TRACE_MAX_LEVEL",
        "value": "TRACE_LEVEL_INFO"
    }
}

Greentea tests

Cellular connectivity can be tested with generic Mbed OS netsocket and network interface tests found in Mbed OS root TESTS directory. For more information, see TESTS/netsocket/README.md and TESTS/network/interface/README.md.

Unit tests

Cellular unit tests are in Mbed OS root UNITTESTS/connectivity/cellular.

Dependency with netsocket

If you create a .mbedignore file with

connectivity/cellular*
connectivity/drivers/cellular*

MBED_CONF_CELLULAR_PRESENT will not be set