commit e3ff409724f02cd55baaec9db843efa2239554e9 Author: yangfl <yangfl@users.noreply.github.com> Date: Fri Feb 9 22:18:25 2024 +0800 debian: update to 1.22.1 commit 4972713a3ac7e8f027e04ab1de1468a3d84b1018 Merge: 88a5600 57a32dd Author: yangfl <yangfl@users.noreply.github.com> Date: Fri Feb 9 21:21:59 2024 +0800 Merge tag 'upstream/1.22.1+ds' commit 88a5600f664f6f4fb5ac84d7eedcd2f57a6bc375 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Jul 23 12:34:42 2022 +0800 debian: update to 1.19.1+ds commit 492b0332933ee78a73bd3a6dda080db71214312e Merge: 3ae6ab0 0850fb2 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Jul 23 12:34:28 2022 +0800 Merge tag 'upstream/1.19.1+ds' commit 0850fb28f66d436af2749642f182070089bc1408 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Jul 23 12:33:24 2022 +0800 Import Upstream version 1.19.1+ds commit 3ae6ab09acf341f438c3ae74c3492df41bd49158 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Jul 23 12:23:52 2022 +0800 debian: update to 1.17+ds-1.1 commit 9b486340da22931cde82872f79e1c34db959548b Author: Damien George <damien@micropython.org> Date: Fri Jun 17 12:57:59 2022 +1000 all: Bump version to 1.19.1. Signed-off-by: Damien George <damien@micropython.org> commit 5233fb3a3d3245bd4c5dfb781e3fcbc8a3fbfd6a Author: Damien George <damien@micropython.org> Date: Fri Jun 17 11:57:57 2022 +1000 extmod/machine_i2c: Only use WRITE1 option if transfer supports it. When MICROPY_PY_MACHINE_I2C_TRANSFER_WRITE1 is enabled the port's hardware I2C transfer functions should support the MP_MACHINE_I2C_FLAG_WRITE1 option, but software I2C will not. So add a flag to the I2C protocol struct so each individual protocol can indicate whether it supports this option or not. Fixes issue #8765. Signed-off-by: Damien George <damien@micropython.org> commit d7919ea71e7b7cc203ca984cc2f4a55019634835 Author: Damien George <damien@micropython.org> Date: Thu Jun 16 15:11:02 2022 +1000 all: Bump version to 1.19. Signed-off-by: Damien George <damien@micropython.org> commit 096954337f4ae06edf9dbe8c7b8156dcbbafbdf6 Author: Damien George <damien@micropython.org> Date: Thu Jun 16 11:05:26 2022 +1000 stm32/mboot: Only include UI code if at least one board LED is defined. Otherwise the board must provide dummy definitions of MBOOT_LED1. Signed-off-by: Damien George <damien@micropython.org> commit d75892c0b07e8561e58fa0fe3dffb1e4939ec0f5 Author: Damien George <damien@micropython.org> Date: Wed Jun 15 11:38:09 2022 +1000 zephyr/modusocket: Fix function object wrapper for listen method. This was missed by 919f696ad254bcc39effe7ce7fddae8cf406c954 Signed-off-by: Damien George <damien@micropython.org> commit 37d5114cec93258b719fcb7e8ec125dfe8b676e9 Author: Phil Howard <phil@gadgetoid.com> Date: Tue Jun 14 11:17:03 2022 +0100 py/makemoduledefs.py: Emit useful error for legacy MP_REGISTER_MODULE. Catch calls to legacy: MP_REGISTER_MODULE(name, module, enable) Emit a friendly error suggesting they be rewritten to: MP_REGISTER_MODULE(name, module). Signed-off-by: Phil Howard <phil@pimoroni.com> commit cedb93c179f92f8d122453205950ba97a58a307b Author: Andrew Scheller <github@loowis.durge.org> Date: Sun Jun 12 12:12:31 2022 +0100 docs: Update Raspberry Pi URLs from .org to .com. commit 99d3a73d590d9e2a15e7e2bcf908e87abb6f24f6 Author: iabdalkader <i.abdalkader@gmail.com> Date: Thu Jun 9 11:58:00 2022 +0200 nrf/modules/uos/microbitfs: Fix MICROPY_MBFS build to use mp_obj_malloc. Changes introduced in 0e7bfc88c6ac6b5d64240f91183a3cfe2ab67ade missed changing this call to mp_obj_malloc. commit 58b35c9abd3aee9b0a79ec69db778c7bad45aee2 Author: iabdalkader <i.abdalkader@gmail.com> Date: Wed Jun 8 16:36:06 2022 +0200 extmod/extmod.cmake: Fix hard-coded mbedtls config file path. * The mbedtls config file path is hard-coded to the config file in the stm32 port. Any port using this cmake fragment is not actually using its own config file. commit cf7d962cf38db296d1ac419fc4d5302b64c59644 Author: Damien George <damien@micropython.org> Date: Fri Jun 10 14:36:22 2022 +1000 docs/reference/mpyfiles: Update .mpy description to match latest format. Signed-off-by: Damien George <damien@micropython.org> commit 1f1afae622a26a0484c8187b02c46db3eb0b053d Author: Damien George <damien@micropython.org> Date: Fri Jun 10 13:58:39 2022 +1000 examples/natmod/features3: Add example to test more natmod features. Signed-off-by: Damien George <damien@micropython.org> commit 0e556f22a22ff26cedcacf08a2e273e916b76c30 Author: Damien George <damien@micropython.org> Date: Fri Jun 10 13:35:42 2022 +1000 py/dynruntime: Add macros to access more types and mp_const_empty_bytes. Signed-off-by: Damien George <damien@micropython.org> commit 148d12252b54d330c66ccac4bbbe6d804a8d1e8f Author: Jeremy Herbert <jeremy.006@gmail.com> Date: Fri Feb 14 20:52:55 2020 +1000 py/dynruntime: Add macros to create a new dict and store to dicts. commit 17a0d65ee4eaa445a638d44dc9edc30d1ddbbac6 Author: Damien George <damien@micropython.org> Date: Fri Jun 10 16:38:20 2022 +1000 tools/mpy_ld.py: Support GOT entries that reference inside mp_fun_table. Signed-off-by: Damien George <damien@micropython.org> commit ee9feacc00cf08536f57f39605060028e57a6515 Author: Damien George <damien@micropython.org> Date: Fri Jun 10 12:51:51 2022 +1000 drivers/sdcard: Fix address calculation on v2 SDSC cards. For v2 cards that are standard capacity the read/write/erase commands take byte address values. Use the result of CMD58 to distinguish SDSC from SDHC/SDXC. Signed-off-by: Damien George <damien@micropython.org> commit 203b98c42b535a9c76f914b18dec4e221294b78c Author: Damien George <damien@micropython.org> Date: Fri Jun 10 12:48:14 2022 +1000 drivers/sdcard: Make ioctl(4), ioctl(5) return num blocks, block size. For CSD v1.0 the computed size is in bytes, so convert it to number of 512-byte blocks, and then ioctl(4) will return the correct value. Also implement ioctl(5) to return the block size, which is always 512. Signed-off-by: Damien George <damien@micropython.org> commit ab6ad867935ea18c67368f5f0f9716421f201af4 Author: Yukai Li <yukaili.geek@gmail.com> Date: Tue Apr 12 22:51:00 2022 -0600 drivers/sdcard: Fix CSD version 1.0 device size calculation. Signed-off-by: Yukai Li <yukaili.geek@gmail.com> commit f63b4f85aae1e0ade7a7c9f908debb5905cc144d Author: Damien George <damien@micropython.org> Date: Thu Jun 9 12:36:45 2022 +1000 py/parse: Work around xtensa esp-2020r3 compiler bug. This commit works around a bug in xtensa-esp32-elf-gcc version esp-2020r3. The bug is in generation of loop constructs. The below code is generated by the xtensa-esp32 compiler. The first extract is the buggy machine code and the second extract is the corrected machine code. The test `basics/logic_constfolding.py` fails with the first code and succeeds with the second. Disassembly of section .text.push_result_rule: 00000000 <push_result_rule>: ... d6: 209770 or a9, a7, a7 d9: 178976 loop a9, f4 <push_result_rule+0xf4> d9: R_XTENSA_SLOT0_OP .text.push_result_rule+0xf4 dc: 030190 rsr.lend a9 df: 130090 wsr.lbeg a9 e2: a8c992 addi a9, a9, -88 e5: 06d992 addmi a9, a9, 0x600 e8: 130190 wsr.lend a9 eb: 002000 isync ee: 030290 rsr.lcount a9 f1: 01c992 addi a9, a9, 1 f4: 1494e7 bne a4, a14, 10c <push_result_rule+0x10c> f4: R_XTENSA_SLOT0_OP .text.push_result_rule+0x10c Disassembly of section .text.push_result_rule: 00000000 <push_result_rule>: ... d6: 209770 or a9, a7, a7 d9: 178976 loop a9, f4 <push_result_rule+0xf4> d9: R_XTENSA_SLOT0_OP .text.push_result_rule+0xf4 dc: 030190 rsr.lend a9 df: 130090 wsr.lbeg a9 e2: 000091 l32r a9, fffc00e4 <push_result_rule+0xfffc00e4> e2: R_XTENSA_SLOT0_OP .literal.push_result_rule+0x18 e5: 0020f0 nop e8: 130190 wsr.lend a9 eb: 002000 isync ee: 030290 rsr.lcount a9 f1: 01c992 addi a9, a9, 1 f4: 1494e7 bne a4, a14, 10c <push_result_rule+0x10c> f4: R_XTENSA_SLOT0_OP .text.push_result_rule+0x10c Work done in collaboration with @jimmo. Signed-off-by: Damien George <damien@micropython.org> commit 3452ee58d36a1d6ae2c156c84903b84131d00a8b Author: Damien George <damien@micropython.org> Date: Thu Jun 9 12:23:07 2022 +1000 stm32/boards/LEGO_HUB_NO6: Add comment to readme about powering off. Signed-off-by: Damien George <damien@micropython.org> commit 45a0c6da5b4170402a3491d39a1d75b5025526e2 Author: Damien George <damien@micropython.org> Date: Thu Jun 9 12:21:18 2022 +1000 stm32/mboot: Remove MP_WEAK on led funcs and make some of them static. Both led_init and led_state are configurable via MBOOT_BOARD_LED_INIT and MBOOT_BOARD_LED_STATE respectively, so don't need to be MP_WEAK. Furthermore, led_state and led0_state are private to ui.c so can be made static. Signed-off-by: Damien George <damien@micropython.org> commit bd5152c928a4a0809eaa340e0f8ae788a949daea Author: Damien George <damien@micropython.org> Date: Thu Jun 9 12:20:42 2022 +1000 stm32/mboot: Add board-configurable SysTick hook. Signed-off-by: Damien George <damien@micropython.org> commit 313f082896bbf969dd91497151419efa6c42c148 Author: Damien George <damien@micropython.org> Date: Thu Jun 9 11:59:09 2022 +1000 tools/ci.sh: Build native .mpy examples for armv7emsp, xtensawin in CI. Signed-off-by: Damien George <damien@micropython.org> commit abb38503987f2523726d05819e87977e3cdd65b5 Author: Damien George <damien@micropython.org> Date: Thu Jun 9 11:57:22 2022 +1000 tools/mpy_ld.py: Support R_XTENSA_PDIFF32 relocation. Newer versions of the ESP-IDF's toolchain use this relocation. Fixes issue #8436. Signed-off-by: Damien George <damien@micropython.org> commit 85597aa68e116c4af9652ea006fac0f33cb78a78 Author: Damien George <damien@micropython.org> Date: Wed Jun 8 18:29:01 2022 +1000 esp32/machine_pin: Only expose IO20 on esp32 for IDF 4.3.2 and above. This IO was enabled in IDF commit 68f8b999bb69563f2f3d1d897bc073968f41f3bf, which is available in IDF release v4.3.2 and above. Signed-off-by: Damien George <damien@micropython.org> commit 6a1dbaad1ca7a8e065ee69e4107497e507afdea6 Author: Damien George <damien@micropython.org> Date: Wed Jun 8 14:51:48 2022 +1000 tools/ci.sh: Build NUCLEO_H743ZI with -O2 optimisation level. This tests the build when -O2 is used, which can lead to additional compiler analysis and warnings. Signed-off-by: Damien George <damien@micropython.org> commit 182256dc13479223160c2b463abf9d6539504503 Author: Damien George <damien@micropython.org> Date: Wed Jun 8 14:51:19 2022 +1000 tests/stress: Adjust bytecode_limit test so it can SKIP if no memory. Signed-off-by: Damien George <damien@micropython.org> commit c7271a86caf0418c180164f8d87cf57cf8ac416b Author: Damien George <damien@micropython.org> Date: Wed Jun 8 14:47:21 2022 +1000 py/makemoduledefs.py: Remove shebang line and adjust style of comment. This file is not executable so shouldn't have the shebang line. This line can cause issues when building on Windows msvc when the PyPython variable is set to something other than "python", because it reverts back to using the shebang line. The top comment is also changed to """ style which matches all other preprocessing scripts in the py/ directory. Signed-off-by: Damien George <damien@micropython.org> commit cbad5593668fa011a22d0816e27b6f8992ac7015 Author: Damien George <damien@micropython.org> Date: Wed Jun 8 14:43:02 2022 +1000 py/compile: Give the compiler a hint about num nodes being non-zero. Without this, newer versions of gcc (eg 11.2.0) used with -O2 can warn about `q_ptr` being maybe uninitialized, because it doesn't know that there is at least one qstr being written in to this (alloca'd) memory. As part of this, change the type of `n` to `size_t` so the compiler knows it's unsigned and can generate better code. Code size change for this commit: bare-arm: -28 -0.049% minimal x86: -4 -0.002% unix x64: +0 +0.000% unix nanbox: -16 -0.003% stm32: -24 -0.006% PYBV10 cc3200: -32 -0.017% esp8266: +8 +0.001% GENERIC esp32: -52 -0.003% GENERIC nrf: -24 -0.013% pca10040 rp2: -32 -0.006% PICO samd: -28 -0.020% ADAFRUIT_ITSYBITSY_M4_EXPRESS Signed-off-by: Damien George <damien@micropython.org> commit a4eef90b2274d2e34486b6990191687500cb3893 Author: iabdalkader <i.abdalkader@gmail.com> Date: Tue Jun 7 17:36:28 2022 +0200 extmod/modusocket: Fix polling of closed sockets. Unbound sockets in NEW state should return HUP|WR when polled, and return NVAL when in CLOSED state. commit 70bf6ab6fb72db1a2768c4ec429df5b53938e5c8 Author: iabdalkader <i.abdalkader@gmail.com> Date: Tue Jun 7 17:23:59 2022 +0200 extmod/modusocket: Add socket state to track new/listening/conn/closed. commit bd375df02cfacff82b8c74f4adabeb0cade9a496 Author: Damien George <damien@micropython.org> Date: Wed Jun 8 12:21:51 2022 +1000 extmod/extmod.cmake: Require components to be explicitly enabled. Otherwise include directories are added unconditionally to the build variables if the component (submodule) is checked out. This can lead to, eg, the esp32 build using lib/lwip header files, instead of lwip header files from the IDF. Fixes issue #8727. Signed-off-by: Damien George <damien@micropython.org> commit e8e8c7c3548623e586f44ff208ba3f7699b7f3c2 Author: Damien George <damien@micropython.org> Date: Thu Jun 2 17:04:24 2022 +1000 extmod/modurandom: Fix missing void in empty argument list. Signed-off-by: Damien George <damien@micropython.org> commit ac3fb974bc1b1a3e202b11c9e68a1c3422372182 Author: Damien George <damien@micropython.org> Date: Thu Jun 2 17:13:03 2022 +1000 unix/variants: Enable seeding random module on import in dev, coverage. Signed-off-by: Damien George <damien@micropython.org> commit d2f018bff1deb78c35fcfb4cee508d4899e03dff Author: Damien George <damien@micropython.org> Date: Thu Jun 2 17:05:57 2022 +1000 unix,windows: Factor out code that generates random bytes to a new func. Signed-off-by: Damien George <damien@micropython.org> commit 5bb2a85d74bfb7fc2cd322777e0e020f20561583 Author: stijn <stijn@ignitron.net> Date: Tue Jun 7 11:24:42 2022 +0200 windows: Use BCryptGenRandom to implement os.urandom. Fix urandom not working on windows (there's no /dev/urandom) by using a proper cryptographic random function (same one as CPython >= 3.11). commit 5290bfaefe1973bf36e246aad85a585ba74f44cf Author: Damien George <damien@micropython.org> Date: Tue Jun 7 23:23:14 2022 +1000 tools/mpremote: Bump version to 0.3.0. Signed-off-by: Damien George <damien@micropython.org> commit 646fcdadbfc03c8ab3c0720ef1e656786345f258 Author: Damien George <damien@micropython.org> Date: Tue Jun 7 23:22:04 2022 +1000 tools/mpremote: Add command to print the version. Signed-off-by: Damien George <damien@micropython.org> commit 5cc2dd4f5d708ded1ceb05d7755c004e4fec7295 Author: robert-hh <robert@hammelrath.com> Date: Sun May 8 07:58:51 2022 +0200 mimxrt/machine_uart: Fix an inconsistency for UART.init() arg handling. With keyword arguments only or just a single non-keyword argument, UART.init() did not perform the settings. commit 767f2ce9a77606d438652edc5ac32d1ce4544907 Author: Clayton Mills <clayton.mills@planetinnovation.com.au> Date: Tue Jun 7 11:44:36 2022 +1000 stm32/usbd_conf: Remove disable of SYSCFG clock. System config block contains hardware unrelated to USB. So calling `__SYSCFG_CLK_DISABLE()` during `HAL_PCD_MspDeInit()` has an adverse effect on other system functionality. Removing call to `__SYSCFG_CLK_DISABLE()` to rectify this issue. This call was there since the beginning of the USB CDC code, added in b30c02afa078f7713faa14087ae28433dee49027. commit 0d8d911950703ea7b2efea7a40a73c942aa84b37 Author: Clayton Mills <clayton.mills@planetinnovation.com.au> Date: Thu May 26 17:57:17 2022 +1000 stm32/powerctrl: Disable sys tick interrupt in stop mode on some STM32s. According to ST Errata ES0206 Rev 18, Section 2.2.1, on STM32F427x, STM32F437x, STM32F429x and STM32F439x. If the system tick interrupt is enabled during stop mode while certain bits are set in the DBGMCU_CR, then the system will immediately wake from stop mode. Suggested workaround is to disable system tick timer interrupt when entering stop mode. According to ST Errate ES0394 Rev 11, Section 2.2.17, on STM32WB55Cx and STM32WB35Cx. If the system tick interrupt is enabled during stop 0, stop 1 or stop 2 while certain bits are set in DBGMCU_CR, then system will immediately wake from stop mode but the system remains in low power state. The CPU therefore fetches incorrect data from inactive Flash, which can cause a hard fault. Suggested workaround is to disable system tick timer interrupt when entering stop mode. commit 14105ff5b168acdefba4b5f0b9079c7eb757bded Author: Damien George <damien@micropython.org> Date: Tue Jun 7 15:16:03 2022 +1000 stm32/machine_i2c: Enable timingr constructor keyword on H7 MCUs. Signed-off-by: Damien George <damien@micropython.org> commit a0dae1dda21fc22517dccce3834af03714dadba4 Author: Damien George <damien@micropython.org> Date: Tue Jun 7 15:06:12 2022 +1000 stm32/flash: Remove FLASH_OPTR_DBANK condition in L4, H7 get_bank func. This was added by mistake in 8f68e26f79ee325669fb7dc7bbd092fccd5b038f when adding support for G4 MCUs, which does not using this get_bank() function. FLASH_OPTR_DBANK is only defined on G4 and L4 MCUs, so on H7 this FLASH_BANK_2 code was being wrongly excluded. Signed-off-by: Damien George <damien@micropython.org> commit 2fb413b265436087a64c63d4bc1a003c010a037e Author: Damien George <damien@micropython.org> Date: Tue Jun 7 15:00:00 2022 +1000 tools/mpy-tool.py: Improve generated frozen identifiers. Frozen identifiers now include their full name hierarchy, eg their class name. This makes it easier to understand the generated code. Signed-off-by: Damien George <damien@micropython.org> commit 1d143cec63f8dabfac5fed50fe4cfdabd414385e Author: Damien George <damien@micropython.org> Date: Tue Jun 7 14:44:24 2022 +1000 tests/basics: Add .exp file for sys.tracebacklimit test. The sys.tracebacklimit feature has changed semantics a bit from CPython 3.7 (in the way it modifies the output), so provide a .exp file for the test so it doesn't rely on CPython. Signed-off-by: Damien George <damien@micropython.org> commit 9670a156dabc1c751a6b02ef280daccf5a0ed213 Author: Damien George <damien@micropython.org> Date: Tue Jun 7 14:41:25 2022 +1000 all: Rename MICROPY_PY_WIZNET5K to MICROPY_PY_NETWORK_WIZNET5K. To match MICROPY_PY_NETWORK_CYW43 and MICROPY_PY_NETWORK_NINAW10. Signed-off-by: Damien George <damien@micropython.org> commit 66dfe17b181101bbee9ff22ebd30b7f05787b439 Author: Damien George <damien@micropython.org> Date: Tue Jun 7 14:33:09 2022 +1000 rp2/CMakeLists: Simplify qstr sources when enabling extmod components. Also remove redundant modusocket.c and modnetwork.c sources, they are already added by extmod/extmod.cmake. Signed-off-by: Damien George <damien@micropython.org> commit a446a7bdef86c2e4fef673e0d1f07e5a35672831 Author: Damien George <damien@micropython.org> Date: Tue Jun 7 14:19:22 2022 +1000 rp2/mpnetworkport: Fix lwip alarm callback timing to use microseconds. The callback passed to add_alarm_in_ms must return microseconds, even though the initial delay is in milliseconds. Fix this use, and to avoid further confusion use the add_alarm_in_us function instead. Signed-off-by: Damien George <damien@micropython.org> commit c58dc7f091b6809de83064e8c2444757ad7c962a Author: Damien George <damien@micropython.org> Date: Tue Jun 7 14:15:51 2022 +1000 pic16bit: Use 1 byte for qstr hash len and include header to fix build. Signed-off-by: Damien George <damien@micropython.org> commit bf92b0cbf28ad58c908d7d151a717042473d985f Author: Damien George <damien@micropython.org> Date: Fri Jun 3 01:11:59 2022 +1000 tools/ci.sh: Add test for mpy-tool's merging feature. Signed-off-by: Damien George <damien@micropython.org> commit 599a22e56975a1a0d753eae5fd1432d4a85c5189 Author: Damien George <damien@micropython.org> Date: Tue May 31 00:17:38 2022 +1000 tools/mpy-tool.py: Rework .mpy merging feature. Now that the native qstr link table is gone, merging a native .mpy file with a bytecode .mpy file is not as simple as concatenating the .mpy data. The qstr_table and obj_table tables from all merged .mpy files must now be joined together, because they are global to the .mpy file (and hence global to the merged .mpy file). This means the bytecode needs to be be decoded, qstr_table and obj_table indices updated to point to the correct entries in the new tables, and then the bytecode re-encoded. This commit makes this change to the merging feature in mpy-tool.py. This can now merge an arbitrary number of bytecode .mpy files, and up to one native .mpy file. Signed-off-by: Damien George <damien@micropython.org> commit f506bf342af5994a2b8aa0f005e2a8fbf06b60b5 Author: Damien George <damien@micropython.org> Date: Mon May 30 11:08:54 2022 +1000 py/bc: Remove unused mp_opcode_format function. This was made redundant by f2040bfc7ee033e48acef9f289790f3b4e6b74e5, which also did not update this function for the change to qstr-opcode encoding, so it does not work correctly anyway. Signed-off-by: Damien George <damien@micropython.org> commit b37b57821476d9ea80cdcc89d325dcabded3ffb7 Author: Damien George <damien@micropython.org> Date: Thu May 26 10:51:29 2022 +1000 py/persistentcode: Remove remaining native qstr linking support. Support for architecture-specific qstr linking was removed in d4d53e9e114d779523e382c4ea38f0398e880aae, where native code was changed to access qstr values via qstr_table. The only remaining use for the special qstr link table in persistentcode.c is to support native module written in C, linked via mpy_ld.py. But native modules can also use the standard module-level qstr_table (and obj_table) which was introduced in the .mpy file reworking in f2040bfc7ee033e48acef9f289790f3b4e6b74e5. This commit removes the remaining native qstr liking support in persistentcode.c's load_raw_code function, and adds two new relocation options for constants.qstr_table and constants.obj_table. mpy_ld.py is updated to use these relocations options instead of the native qstr link table. Signed-off-by: Damien George <damien@micropython.org> commit 48d5d80a2ed13858d47836bde6ca1075febb5ce6 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Sep 4 14:42:53 2021 +0800 debian: update to 1.17+ds commit b47f872ca592888bb1e4ef48aade0bfdfc8831eb Merge: ce943b7 432bb1f Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Sep 4 14:40:54 2021 +0800 Merge tag 'upstream/1.17+ds' commit 432bb1f0e9f8c02b78e7a28075b1196f9a232a62 Author: yangfl <yangfl@users.noreply.github.com> Date: Sat Sep 4 14:40:21 2021 +0800 Import Upstream version 1.17+ds commit 7c54b6428058a236b8a48c93c255948ece7e718b Author: Damien George <damien@micropython.org> Date: Thu Sep 2 00:07:13 2021 +1000 all: Bump version to 1.17. Signed-off-by: Damien George <damien@micropython.org> commit 25f30eb8a6839d662867ff335eb10d39e93dd9c8 Author: Damien George <damien@micropython.org> Date: Thu Sep 2 00:03:41 2021 +1000 stm32/boards/LEGO_HUB_NO6: Add comment re constraints on SPI flash cfg. Signed-off-by: Damien George <damien@micropython.org> commit 89145c6aaded2e35a8239d457f70ef320ec57623 Author: Damien George <damien@micropython.org> Date: Wed Sep 1 00:49:16 2021 +1000 tools/mpremote: Bump version to 0.0.6. Signed-off-by: Damien George <damien@micropython.org> commit 08ff71dfcda20c8edd8a2500136746fcba0ca434 Author: Damien George <damien@micropython.org> Date: Wed Sep 1 00:43:41 2021 +1000 tests/pybnative: Make while.py test run on boards without pyb.delay. Signed-off-by: Damien George <damien@micropython.org> commit 35ead0ff0f9bbebc0331841aa9bcf530e63c9ac6 Author: Damien George <damien@micropython.org> Date: Wed Sep 1 00:42:40 2021 +1000 javascript/Makefile: Change variable to EXPORTED_RUNTIME_METHODS. EXTRA_EXPORTED_RUNTIME_METHODS is deprecated. Signed-off-by: Damien George <damien@micropython.org> commit 86371781e9623e9f1187625dfcad64c8f2fa08c0 Author: David Lechner <david@pybricks.com> Date: Sat Aug 28 10:58:38 2021 -0500 tools/uncrustify: Force 1 newline at end of file. To keep things neat and tidy, we ensure that each file has 1 and only 1 newline at the end of each file. Signed-off-by: David Lechner <david@pybricks.com> commit 30691ed2a1f59fc74f6e051c70eaa7c280889381 Author: Damien George <damien@micropython.org> Date: Fri Aug 27 18:08:19 2021 +1000 drivers/cyw43: Make wifi join fail if interface is not active. Otherwise the Python network object continues to report that it is attempting to connect. Also make the return error code consistent with wifi scan. Signed-off-by: Damien George <damien@micropython.org> commit 52a78e69658eca65bcb8d6577df2de2db7932c9e Author: Damien George <damien@micropython.org> Date: Fri Aug 27 18:06:26 2021 +1000 drivers/cyw43: Fix cyw43_deinit so it can be called many times in a row. This makes sure deinit() can be called on the interface many times without error, and that the state of the driver is fully reset. Fixes issue #7493. Signed-off-by: Damien George <damien@micropython.org> commit 6f19b9c08d7d8c03981a999d4eddeb3c500125ab Author: Damien George <damien@micropython.org> Date: Thu Aug 26 12:35:16 2021 +1000 stm32/boards/LEGO_HUB_NO6: Add make commands to backup/restore firmware. Signed-off-by: Damien George <damien@micropython.org> commit bac791c5fdde27065c8e144aee929e20a444b10a Author: Damien George <damien@micropython.org> Date: Thu Aug 26 12:03:26 2021 +1000 stm32/boards/LEGO_HUB_NO6: Skip first 1MiB of SPI flash for storage. The first 1MiB is used by the built-in bootloader and is best left as-is. Signed-off-by: Damien George <damien@micropython.org> commit e3eed26d0b247d1c4e6a89890baa74a4e1aead6b Author: Damien George <damien@micropython.org> Date: Thu Aug 26 12:02:54 2021 +1000 stm32/boards/LEGO_HUB_NO6: Change SPI flash storage to use hardware SPI. Signed-off-by: Damien George <damien@micropython.org> commit 6936f410abe08eb3decd798147f2724691222bfa Author: Damien George <damien@micropython.org> Date: Thu Aug 26 11:38:29 2021 +1000 stm32/storage: Make extended-block-device more configurable. A board can now define the following to fully customise the extended block device interface provided by the storage sub-system: - MICROPY_HW_BDEV_BLOCKSIZE_EXT - MICROPY_HW_BDEV_READBLOCKS_EXT - MICROPY_HW_BDEV_WRITEBLOCKS_EXT - MICROPY_HW_BDEV_ERASEBLOCKS_EXT Signed-off-by: Damien George <damien@micropython.org> commit a66bd7a48925d318e1dd6ada756df947ffacdc12 Author: Patrick Van Oosterwijck <patrick@silicognition.com> Date: Thu Aug 26 12:19:46 2021 -0600 esp32/boards: Add GENERIC_C3_USB board with USB serial/JTAG support. Add a new board type for ESP32-C3 revision 3 and up that implement the USB serial/JTAG port on pin 18 and 19. This variant uses the USB serial for programming and console, leaving the UART free. - Pins 18 and 19 are correctly reserved for this variant. Also pins 14-17 are reserved for flash for any ESP32-C3 so they can't be reconfigured anymore to crash the system. - Added usb_serial_jtag.c and .h to implement this interface. - Interface was tested to work correctly together with webrepl. - Interface was tested to work correctly when sending and receiving large files with ampy. - Disconnecting terminal or USB will not hang the system when it's trying to print. commit 3720a570f2c2d1617d59a9832e4384e4479006a7 Author: Peter Hinch <peter@hinch.me.uk> Date: Fri Aug 27 17:45:13 2021 +0100 docs/reference: Mention that slicing a memoryview causes allocation. commit 4954290e8675d67e8925708230f7a23664ec4b05 Author: Fernando <fepegar@gmail.com> Date: Sun Aug 22 10:28:31 2021 +0100 docs/esp8266: Use monospace for software tools. Signed-off-by: Fernando <fepegar@gmail.com> commit 577a3c41925f2b043e80bed467eb2aba3a786dc7 Author: Fernando <fepegar@gmail.com> Date: Sun Aug 22 10:27:28 2021 +0100 docs/library: Fix usage of :term: for frozen module reference. Signed-off-by: Fernando <fepegar@gmail.com> commit e9a26791e5be6cda3a173b74087626d3cabafaa8 Author: Jim Mussared <jim.mussared@gmail.com> Date: Fri Aug 20 21:49:02 2021 +1000 drivers/neopixel: Reduce code size of driver. Saves 71 bytes of bytecode. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit d63b287c851ab6bae7b9912ba20a4b33612958f9 Author: Jim Mussared <jim.mussared@gmail.com> Date: Fri Aug 20 21:33:15 2021 +1000 drivers/neopixel: Optimize fill() for speed. This makes fill() about 7x faster (PYBV11 and PYBD_SF6) for the cost of +40 bytes of bytecode (or 120 bytes text). Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit a3ce8f08ec19358fd1a3e64733a2644f371f7c1f Author: iabdalkader <i.abdalkader@gmail.com> Date: Sat Aug 21 18:00:11 2021 +0200 rp2/mpconfigport.h: Allow boards to add root pointers. commit 79baef843b29b098ec34789e5b9f46a66753cd01 Author: iabdalkader <i.abdalkader@gmail.com> Date: Fri Aug 20 14:03:14 2021 +0200 rp2/CMakeLists.txt: Add option to enable double tap reset to bootrom. * For boards a with reset switch, pressing twice resets into bootloader. * Enabled by linking with the pico_bootsel_via_double_reset library. commit c82244a7c0bba14564187057e46ffc871fad2404 Author: iabdalkader <i.abdalkader@gmail.com> Date: Thu Aug 19 02:16:30 2021 +0200 rp2/rp2_flash: Disable IRQs while calling flash_erase/program. Flash erase/program functions disable the XIP bit. If any code runs from flash at the same time (eg an IRQ or code it calls) it will fail and cause a lockup. commit 8c4ba575fdd7730e71b339643f51ffadefbedb76 Author: Damien George <damien@micropython.org> Date: Thu Aug 26 23:27:46 2021 +1000 tests/basics: Split f-string debug printing to separate file with .exp. This feature {x=} was introduced in Python 3.8 so needs a separate .exp file to run on earlier Python versions. See https://bugs.python.org/issue36817 Signed-off-by: Damien George <damien@micropython.org> commit 145fedef8d74a504c4b7c000e6c305602d07feff Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 25 11:27:07 2021 +1000 tools/pyboard.py: Make --no-soft-reset consistent with other args. This makes it work like --no-follow and --no-exclusive using a mutex group and dest. Although the current implementation with BooleanOptionAction is neater it requires Python 3.9, so don't use this feature. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 064a145097790d07bf32e94a36931694b65dfb26 Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 25 11:25:43 2021 +1000 tools/pyboard.py: Add --exclusive to match --no-exclusive. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit be43164d82dcfeb255a79c506b784185d3724bd1 Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 25 11:25:01 2021 +1000 tools/pyboard.py: Make --no-follow use same variable as --follow. You can set one or the other (or neither) but not both. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 2a290bbfe18929fdd00e24d937d9dfc6530eb874 Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 25 11:06:25 2021 +1000 tools/pyboard.py: Move --no-exclusive/--soft-reset out of mutex group. The --no-exclusive flag was accidentally added to the mutex group in 178198a01df51b5f4c5ef9f38ab2fb8f6269d5f4. The --soft-reset flag was accidentally added to the mutex group in 41adf178309759d5965c15972f04987a2635314c. These flags can be specified independently to --[no-]follow so should not be in that mutex group. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 2296df0a327150f39ef5a915bf828daac3cd4658 Author: Peter Hinch <peter@hinch.me.uk> Date: Wed Aug 18 20:05:25 2021 +0100 extmod/modframebuf: Enable blit between different formats via a palette. This achieves a substantial performance improvement when rendering glyphs to color displays, the benefit increasing proportional to the number of pixels in the glyph. commit 996f703166d8c57122756f35f7f0185666237f2b Author: Jim Mussared <jim.mussared@gmail.com> Date: Fri Aug 20 12:09:36 2021 +1000 esp32,esp8266: Remove dead code for end_ticks in machine_bitstream. The compiler was optimising this out already so it's a no-op change. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit b51e7e9d01a696cdfefada2e374db51752d1b803 Author: Jim Mussared <jim.mussared@gmail.com> Date: Thu Aug 19 17:49:33 2021 +1000 stm32: Disable computed goto on constrained boards. Saves ~1kiB. Add comment to this effect to mpconfig.h. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 61d5a8b9ceab474d4137be53b422f5ece70c61a0 Author: Damien George <damien@micropython.org> Date: Fri Aug 20 17:04:39 2021 +1000 stm32/stm32_it: Support TIM17 IRQs on WB MCUs. Signed-off-by: Damien George <damien@micropython.org> commit ed42002c398d00d4f3753fbeec861f1c4db9fc24 Author: Damien George <damien@micropython.org> Date: Thu Aug 19 23:30:17 2021 +1000 tools/autobuild: Don't use "-B" for make, it's already a fresh build. And using "-B" means mpy-cross is forcefully rebuilt, sometimes with invalid CFLAGS_EXTRA options which makes the auto-build fail. Signed-off-by: Damien George <damien@micropython.org> commit 0886bf46ca31148b33d3b99d3c68e5b8359d7c5d Author: Tobias Thyrrestrup <tt@LEGO.com> Date: Tue Aug 17 13:16:39 2021 +0200 stm32/Makefile: Allow GIT_SUBMODULES and LIBS to be extended. Signed-off-by: Tobias Thyrrestrup <tt@LEGO.com> commit b352db7a6394b77fc8aa173557d00b3d93a05231 Author: Jim Mussared <jim.mussared@gmail.com> Date: Tue Aug 17 20:40:20 2021 +1000 rp2/Makefile: Add "submodules" target, to match other ports. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 85adc25558270c9e1815f20689475d38645b47f1 Author: Jim Mussared <jim.mussared@gmail.com> Date: Tue Aug 17 20:20:29 2021 +1000 py/mkrules.mk: Do submodule sync in "make submodules". Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 53145c4c5f10c3e44ffe174b1e6968792f17ea3a Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 11 16:06:11 2021 +1000 docs: Add docs for machine.bitstream and neopixel module. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 62fd450e621c8c46a93082f8e5f5417a32ef3fb8 Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 11 15:22:29 2021 +1000 drivers/neopixel: Add common machine.bitstream-based neopixel module. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 39e9c0788fd533d8712d2b19ae93ab8efa56c599 Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 11 15:14:46 2021 +1000 esp8266: Replace esp.neopixel with machine.bitstream. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit 71f4faac2732d932dcc03bdbc9f80434e5757edb Author: Jim Mussared <jim.mussared@gmail.com> Date: Wed Aug 11 14:26:23 2021 +1000 esp32: Replace esp.neopixel with machine.bitstream. Signed-off-by: Jim Mussared <jim.mussared@gmail.com> commit e64cda529521feb41cda3cc80d1074217816ee6c Author: Jim Mussared <jim.mussared@gmail.com> Date: Tue Aug 10 01:09:31 2021 +1000 stm32: Add implementation of machine.bitstream. Hand-written version for M0, and cycle-counter version for everything else. Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
Among the 7 debian patches available in version 1.22.1+ds-1 of the package, we noticed the following issues: