Commit Graph

300 Commits

Author SHA1 Message Date
Damien George 5de8d7eb64 lib/btstack: Update to v1.5.4.
This update includes a few bug fixes for BLE, support for LE audio, updates
to classic BT support, cmake support, and other things.

Signed-off-by: Damien George <damien@micropython.org>
2022-11-11 15:14:14 +11:00
David Lechner 0eead94181 lib/libm: Use __asm__ instead of asm.
`asm` is not part of the C standard and causes a complier error when
`-std=c99` is used. `__asm__` is the recommended alternative.

https://gcc.gnu.org/onlinedocs/gcc/extensions-to-the-c-language-family/alternate-keywords.html

Signed-off-by: David Lechner <david@pybricks.com>
2022-11-10 11:36:41 +11:00
Damien George 1531a7c8ca lib/micropython-lib: Update submodule to latest.
This brings in mip-cmdline, espflash, use of machine.dht_readinto, and
other improvements to existing libraries.

Signed-off-by: Damien George <damien@micropython.org>
2022-11-09 14:58:49 +11:00
Damien George 4f946ba963 lib/btstack: Update to v1.5.3.
Signed-off-by: Damien George <damien@micropython.org>
2022-10-22 13:21:28 +11:00
Jim Mussared ba3652f15d lib/micropython-lib: Update submodule to latest.
This brings in the `mip` tool for installing packages.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2022-09-30 00:46:26 +10:00
yn386 ae0b0e7018 lib/stm32lib: Update library to get L1 v1.10.3, and some other fixes.
Changes in this new library version are:
- Add L1 HAL at v1.10.3.
- H7_HAL/rcc_ex: Add SPI45 to HAL_RCCEx_GetPeriphCLKFreq.
- L4_HAL/gpio_ex: Add #define for GPIO_AF14_TIM2 on L4P5/L4Q5.
- F4_HAL/i2c: Fix I2C frequency calculation macros.
- L1_HAL/utils: Fix compile error when USE_HAL_DRIVER is defined.
2022-09-25 23:56:20 +10:00
Jim Mussared aeff6911d7 lib/micropython-lib: Update submodule to latest.
This brings in the drivers and libraries that were previously in this
repo.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2022-09-08 11:27:00 +10:00
Damien George ccd210984e lib/micropython-lib: Update to latest version with manifest changes.
Signed-off-by: Damien George <damien@micropython.org>
2022-09-05 18:24:27 +10:00
Damien George 9a826e0f24 lib/lwip: Update lwIP to v2.1.3, tag STABLE-2_1_3_RELEASE.
There don't seem to be many changes going from v2.1.2 to v2.1.3 of lwIP.
Mostly they are:
- IPv6 fixes and improvements
- changes to apps and other code that MicroPython doesn't use
- comments and tests
- minor bug fixes

In particular there doesn't look to be any change to the API of any
function used by MicroPython.

Network multi tests pass on PYBD_SF2 and PYBD_SF6.  PYBD_SF2, PYBD_SF6 and
PICO_W have unchanged iperf3 performance.  Similar results for networking
on the mimxrt port.

Signed-off-by: Damien George <damien@micropython.org>
2022-08-29 14:41:21 +10:00
Jim Mussared 9a1b7d8448 lib/micropython-lib: Add micropython-lib as a submodule.
Several boards now depend on libraries from micropython-lib.  Rather than
expecting micropython-lib to be available as a sibling of the micropython
repo, instead make it a submodule.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2022-08-03 00:04:06 +10:00
Peter Harper 9fd8250d69 lib/cyw43-driver: Update driver to latest version.
This version of the driver adds an event hook to call during firmware
download, and the ability to query the current power mode.
2022-07-26 01:37:47 +10:00
robert-hh d1ef3815e6 lib/tinyusb: Update to the most recent master. 2022-07-19 11:26:54 +10:00
Damien George f4e69ab103 lib/cyw43-driver: Update cyw43-driver to fix ap_auth mode setting.
Signed-off-by: Damien George <damien@micropython.org>
2022-07-05 11:04:20 +10:00
Damien George f525e17793 lib/pico-sdk: Update to version 1.4.0.
Signed-off-by: Damien George <damien@micropython.org>
2022-06-30 16:03:21 +10:00
Damien George 18a010b5b1 lib/cyw43-driver: Add new submodule for CYW43xx WiFi driver.
Signed-off-by: Damien George <damien@micropython.org>
2022-06-30 16:03:21 +10:00
Andrew Leech cb436e357f lib/wiznet5k: Add submodule for Wiznet Ethernet drivers.
Signed-off-by: Andrew Leech <andrew@alelec.net>
2022-06-03 14:29:11 +10:00
robert-hh dbe8b0c0ca lib/nxp_driver: Update nxp_driver to v2.10. 2022-06-03 10:48:04 +10:00
Damien George 9269835226 lib/littlefs: Remove assignment of variables to themselves.
To prevent compiler warnings (eg on clang).

Signed-off-by: Damien George <damien@micropython.org>
2022-05-24 12:51:49 +10:00
Damien George 3a544b832b lib/littlefs: Guard lfs2_file_rawopen with LFS2_NO_MALLOC.
To prevent warnings about this function being unused when malloc is
disabled.

Signed-off-by: Damien George <damien@micropython.org>
2022-05-24 12:51:17 +10:00
Damien George 115a23da24 lib/littlefs: Update littlefs2 to v2.5.0.
At commit 40dba4a556e0d81dfbe64301a6aa4e18ceca896c

Signed-off-by: Damien George <damien@micropython.org>
2022-05-24 12:51:17 +10:00
TakeoTakahashi2020 4c9b00b425 lib/fsp: Add renesas fsp git repository as submodule.
Signed-off-by: Takeo Takahashi <takeo.takahashi.xv@renesas.com>
2022-04-29 10:55:58 +09:00
Damien George 7f445e3d39 lib/stm32lib: Update library for G0 v1.5.1.
Changes in this new library version are:
- Add G0 HAL at v1.5.1.

Signed-off-by: Damien George <damien@micropython.org>
2022-04-28 11:56:15 +10:00
Damien George adfd57c5fe lib/re1.5: Distinguish between subject start-of-line and start-of-srch.
Otherwise a repeated sub/split will continue to match ^ to the start of
that search.

Signed-off-by: Damien George <damien@micropython.org>
2022-03-16 12:21:00 +11:00
Damien George d4997c7b60 lib/stm32lib: Update library for fix to F7 USB HS.
Fixes build on MCUs with built-in USB HS PHY.

Signed-off-by: Damien George <damien@micropython.org>
2022-01-06 16:43:22 +11:00
Damien George a0f5b3148a lib/stm32lib: Update library for L4 v1.17.0, new G4, WL, and MMC fixes.
Changes in this new library version are:
- Update L4 HAL to v1.17.0.
- Add G4 HAL at v1.3.0.
- Add WL HAL at v1.1.0.
- Fix F4 UART and DMA data loss with RX hardware flow control.
- Optimise USB to pass config struct by reference.
- Fix bug in F4 MMC HAL_MMC_Erase function.
- Fix bug setting MMC relative address in F4 and F7 HAL.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 10:48:01 +11:00
iabdalkader 97a7cc243b lib: Update pico-sdk to 1.3.0 and tinyusb to 0.12.0.
Fixes #8025
2021-11-26 12:05:38 +11:00
Damien George f27be2d78a lib/asf4: Point submodule to latest commit on circuitpython branch. 2021-11-18 12:44:30 +11:00
Jim Mussared 948e3289bf extmod/nimble: Update to NimBLE v1.4.
We're using the MicroPython fork of NimBLE, which on the
`micropython_1_4_0` branch re-adds support for 64-bit targets and fixes
initialisation of g_msys_pool_list.

Also updates modbluetooth_nimble.c to suit v1.4.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-10-26 16:43:18 +11:00
Damien George e3291e1801 lib,shared: Update README's based on contents of these dirs.
Signed-off-by: Damien George <damien@micropython.org>
2021-07-13 00:17:02 +10:00
Damien George 4d546713ec shared: Introduce new top-level dir and move 1st party lib code there.
This commit moves all first-party code developed for this project from lib/
to shared/, so that lib/ now only contains third-party code.

The following directories are moved as-is from lib to shared:

    lib/libc            -> shared/libc
    lib/memzip          -> shared/memzip
    lib/netutils        -> shared/netutils
    lib/timeutils       -> shared/timeutils
    lib/upytesthelper   -> shared/upytesthelper

All files in lib/embed/ have been moved to shared/libc/.

lib/mp-readline has been moved to shared/readline.

lib/utils has been moved to shared/runtime, with the exception of
lib/utils/printf.c which has been moved to shared/libc/printf.c.

Signed-off-by: Damien George <damien@micropython.org>
2021-07-12 17:07:36 +10:00
Damien George 6dd92d7742 lib/crypto-algorithms: Move crypto-algorithms code from extmod to lib.
It's third-party code, and not necessarily tied to extmod.

Signed-off-by: Damien George <damien@micropython.org>
2021-07-12 16:36:37 +10:00
Damien George d1bfb271d7 lib/uzlib: Move uzlib code from extmod to lib.
It's third-party code, and not necessarily tied to extmod.

Signed-off-by: Damien George <damien@micropython.org>
2021-07-12 16:36:34 +10:00
Damien George d1d172f536 lib/re1.5: Move re1.5 code from extmod to lib.
It's third-party code, and not necessarily tied to extmod.

Signed-off-by: Damien George <damien@micropython.org>
2021-07-12 16:36:26 +10:00
Damien George 75c1609c3a lib/axtls: Update to latest axtls 2.1.5 wih additional commits.
Changes are:
- update axTLS from 2.1.3 to 2.1.5
- os_port.h is now provided by the user of the library
- PLATFORM_RNG_U8 can be defined for get_random
- fix -fsanitize=undefined diagnostics

Signed-off-by: Damien George <damien@micropython.org>
2021-07-08 23:51:39 +10:00
Damien George 20a6044952 lib/utils/stdout_helpers: Make mp_hal_stdout_tx_strn_cooked efficient.
To reduce the number of calls to mp_hal_stdout_tx_strn and improve the
overall throughput of printing data.  This implementation is taken from
ports/stm32/mphalport.c.

Signed-off-by: Damien George <damien@micropython.org>
2021-07-08 12:59:31 +10:00
Damien George d67bd494b5 lib/pico-sdk: Update to version 1.2.0.
Signed-off-by: Damien George <damien@micropython.org>
2021-07-05 16:18:28 +10:00
Damien George c8e9e04541 lib/tinyusb: Update to version 0.10.1.
Signed-off-by: Damien George <damien@micropython.org>
2021-07-05 16:18:28 +10:00
Krzysztof Adamski 6409bbcb72 mimxrt: Move calc_weekday helper function to timeutils.
This function may be useful for other ports as well so lets move it to
timeutils so it can be reused.

Signed-off-by: Krzysztof Adamski <k@japko.eu>
2021-06-25 10:28:32 +10:00
Damien George 0aa01b0205 lib/mbedtls: Switch to currently latest commit of LTS branch v2.16.
Signed-off-by: Damien George <damien@micropython.org>
2021-05-25 00:04:01 +10:00
Ayke van Laethem 70f50c46cc lib/utils: Add ARM semihosting utility functions.
This can be a replacement for a UART in custom ports.
2021-05-11 23:33:12 +10:00
Damien George b6b39bff47 py/gc: Make gc_lock_depth have a count per thread.
This commit makes gc_lock_depth have one counter per thread, instead of one
global counter.  This makes threads properly independent with respect to
the GC, in particular threads can now independently lock the GC for
themselves without locking it for other threads.  It also means a given
thread can run a hard IRQ without temporarily locking the GC for all other
threads and potentially making them have MemoryError exceptions at random
locations (this really only occurs on MCUs with multiple cores and no GIL,
eg on the rp2 port).

The commit also removes protection of the GC lock/unlock functions, which
is no longer needed when the counter is per thread (and this also fixes the
cas where a hard IRQ calling gc_lock() may stall waiting for the mutex).

It also puts the check for `gc_lock_depth > 0` outside the GC mutex in
gc_alloc, gc_realloc and gc_free, to potentially prevent a hard IRQ from
waiting on a mutex if it does attempt to allocate heap memory (and putting
the check outside the GC mutex is now safe now that there is a
gc_lock_depth per thread).

Signed-off-by: Damien George <damien@micropython.org>
2021-05-10 13:07:16 +10:00
Damien George 530c76f6ca lib/utils: Remove unused PYEXEC_SWITCH_MODE from pyexec.h.
It was made obsolete by commit c98c128fe8.

Signed-off-by: Damien George <damien@micropython.org>
2021-04-24 00:10:59 +10:00
Damien George a62e791978 lib/pico-sdk: Update to latest version 1.1.0.
Signed-off-by: Damien George <damien@micropython.org>
2021-03-12 01:00:00 +11:00
Yonatan Goldschmidt 098ac11bb0 lib/utils/gchelper_generic: Implement AArch64 support. 2021-03-11 12:54:05 +11:00
Mirko Vogt 7d73b9ff99 lib/mbedtls: Switch to currently latest commit of LTS branch v2.16.
From a version numbering point of view this is a downgrade (2.17.0 ->
2.16.x).  However the latest commit for version 2.17.0 is from March 2019
and no further minor release happened after 2.17.0.  This version is EOL.
2.16.x though is still actively maintained as a long term release, hence
security and stability fixes are still being backported, including
compatibility with upcoming compiler releases.
2021-03-11 11:49:18 +11:00
Damien George 9b7d8b87ee lib/tinyusb: Update to version 0.8.0.
Includes support for RP2040.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-12 12:50:22 +11:00
Damien George 9b277d9815 lib/pico-sdk: Update to latest version v1.0.1.
In particular it fixes GPIO19 so that it can be used as an output.

Signed-off-by: Damien George <damien@micropython.org>
2021-02-02 10:59:27 +11:00
stijn fca2730ea0 lib/utils/pyexec: Remove obsolete LCD initialization.
This was added a long time ago in 75abee206d
when USB host support was added to the stm (now stm32) port, and when this
pyexec code was actually part of the stm port.  It's unlikely to work as
intended anymore.  If it is needed in the future then generic hook macros
can be added in pyexec.
2021-01-30 13:41:36 +11:00
Damien George ef3ee7aa10 lib/pico-sdk: Add new pico-sdk submodule, for the rp2 port.
Signed-off-by: Damien George <damien@micropython.org>
2021-01-29 23:57:10 +11:00
Damien George 33f10381d6 lib/timeutils: Provide simple impl of extra funcs when Epoch is 1970.
Dates/times must be post 2000/1/1 to work correctly with these simple
implementations.

Signed-off-by: Damien George <damien@micropython.org>
2021-01-29 23:57:10 +11:00