- 06 Dec, 2023 2 commits
-
-
Angus Gratton authored
Cache is keyed on the ESP-IDF version used in CI, so there shouldn't be any cache invalidation issues when ESP-IDF version changes. Restoring from cache takes approx 15s, compared to 2-3m to perform these steps (ESP-IDF tools install, ESP-IDF clone, ESP-IDF submodule clone) the first time. Cache size is approx 1.6GB, the git clone is tweaked as much as possible to keep the size down. Signed-off-by: Angus Gratton <angus@redyak.com.au>
-
MikeTeachman authored
Configures the I2S PLL to produce a frequency that the I2S clock generator can use to create an optimal SCK frequency. The I2S PLL configuration table is automatically generated at build time. Fixes issue #10280. Signed-off-by: Mike Teachman <mike.teachman@gmail.com>
-
- 04 Dec, 2023 3 commits
-
-
Damien George authored
This was broken by commit 48b5a7b0. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
This board has MICROPY_VFS enabled, which should take precedence over MICROPY_MBFS (and did prior to 22d9116c). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
This should have been enabled in 48b5a7b0 but was missed. Signed-off-by: Damien George <damien@micropython.org>
-
- 03 Dec, 2023 1 commit
-
-
Carlosgg authored
Signed-off-by: Carlos Gil <carlosgilglez@gmail.com>
-
- 01 Dec, 2023 6 commits
-
-
Damien George authored
All ports using this common configuration already enable time/date validation, so this commit is a no-op change. Signed-off-by: Damien George <damien@micropython.org>
-
Carlosgg authored
To match other ports. Signed-off-by: Carlos Gil <carlosgilglez@gmail.com>
-
Damien George authored
Also move MICROPY_PY_PENDSV_ENTER/REENTER/EXIT to mphalport.h, for ports where these are not already there. This helps separate the hardware implementation of these macros from the MicroPython configuration (eg for renesas-ra and stm32, the IRQ static inline helper functions can now be moved to irq.h). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
MICROPY_BEGIN_ATOMIC_SECTION/MICROPY_END_ATOMIC_SECTION belong more to the MicroPython HAL rather than build configuration settings, so move their default configuration to py/mphal.h, and require all users of these macros to include py/mphal.h (here, py/objexcept.c and py/scheduler.c). This helps ports separate configuration from their HAL implementations, and can improve build times (because mpconfig.h is included everywhere, whereas mphal.h is not). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Or this port may end up accidentally including unwanted headers from stm32. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
- 30 Nov, 2023 20 commits
-
-
Damien George authored
Changes: - os.uname() is removed to save space; sys.version and sys.implementation can be used instead. - os.sync() now uses the common extmod version and syncs by calling the FAT FS sync function, which eventually calls sflash_disk_flush(). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Tested on a WIPY. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
The os.dupterm() function has changed on this port, it now matches the semantics used by all other ports (except it's restricted to accept only machine.UART objects). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
To make this a little more consistent with other ports. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Now that the MICROPY_BEGIN_ATOMIC_SECTION/MICROPY_END_ATOMIC_SECTION macros act the same as disable_irq/enable_irq, it's possible to use the common extmod implementation of these machine functions. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
By disabling ets_loop_iter when the atomic section is active. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
This commit changes the cc3200 port to use the common machine implementation of machine.disable_irq() and machine.enable_irq(). This eliminates its dependency on the stm32 port's code. The behaviour of cc3200 for these functions is changed: - disable_irq() now returns an (opaque) integer rather than a bool - enable_irq(state) must be passed and argument, which is the return value of disable_irq() rather than a bool Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
The ports esp32, mimxrt, rp2 and samd all shared exactly the same implementation of machine.disable_irq() and machine.enable_irq(), implemented in terms of MICROPY_{BEGIN,END}_ATOMIC_SECTION. This commit factors these implementations into extmod/modmachine.c. The cc3200, esp8266, nrf, renesas-ra and stm32 ports do not yet use this common implementation. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Minor changes for consistency are: - nrf gains: unique_id(), freq() [they do nothing] - samd: deepsleep() now resets after calling lightsleep() - esp32: lightsleep()/deepsleep() no longer take kw arg "sleep", instead it's positional to match others. also, passing 0 here will now do a 0ms sleep instead of acting like nothing was passed. reset_cause() no longer takes any args (before it would just ignore them) - mimxrt: freq() with an argument and lightsleep() both raise NotImplementedError Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
And use it in qemu-arm, unix and windows ports to enable PinBase. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
And use it in all ports. The ports are unchanged, except esp8266 which now just returns None from this function instead of the time elapsed (to match other ports), and qemu-arm which gains this function. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
This is a code factoring to have the dict for the machine module in one location, and all the ports use that same dict. The machine.soft_reset() function implementation is also factored because it's the same for all ports that did already implement it. Eventually more functions/bindings can be factored. All ports remain functionally the same, except: - cc3200 port: gains soft_reset, mem8, mem16, mem32, Signal; loses POWER_ON (which was a legacy constant, replaced long ago by PWRON_RESET) - nrf port: gains Signal - qemu-arm port: gains soft_reset - unix port: gains soft_reset - zephyr port: gains soft_reset, mem8, mem16, mem32 Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
MICROPY_HW_ENABLE_HW_I2C and MICROPY_PY_MACHINE_I2C are equivalent, so just use the latter. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Prior to this change, if a board did not define any hardware I2C pins, via MICROPY_HW_I2Cx_SCL, then machine.I2C would alias to machine.SoftI2C. That doesn't really make sense, and SoftI2C should always be used if there is no hardware implementation. So this commit makes it so that machine.I2C is only available if at least one set of I2C hardware pins are defined via the MICROPY_HW_I2Cx_SCL/SDA macros. For all boards that define at least one set of I2C hardware pins (which is most of them) this commit is a no-op. The only boards that change are: LEGO_HUB_NO6, LEGO_HUB_NO7, STM32H7B3I_DK. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
MICROPY_PY_MACHINE_SPI is defined in mpconfigport.h to be equal to MICROPY_PY_MACHINE_HW_SPI, so they are equivalent options. The former one is preferred because it's used by all other ports. The default in mpconfigport.h is to enable this option, and all boards that enable SPI have this removed from their mpconfigboard.h file so they pick up the default. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
This renames the type, functions and file to match other ports. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
- 29 Nov, 2023 6 commits
-
-
Damien George authored
They do the same thing. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
best_effort_wfe_or_timeout() already calls time_reached() and returns the result of it, so no need to call it again. Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
The alarm pool is used to schedule the callback to soft_timer_handler(). Signed-off-by: Damien George <damien@micropython.org>
-
Damien George authored
If a port defines MICROPY_SOFT_TIMER_TICKS_MS then soft_timer assumes a SysTick back end, and provides a soft_timer_next variable that sets when the next call to soft_timer_handler() should occur. Otherwise, a port should provide soft_timer_get_ms() and soft_timer_schedule_at_ms() with appropriate semantics (see comments). Existing users of soft_timer should continue to work as they did. Signed-off-by: Damien George <damien@micropython.org>
-
- 28 Nov, 2023 2 commits
-
-
Jeff Epler authored
This saves ~84 bytes on trinket m0, and saves 112 bytes on PYBV10. Signed-off-by: Jeff Epler <jepler@gmail.com>
-
iabdalkader authored
Debug build fails if string.h header is not included. Signed-off-by: iabdalkader <i.abdalkader@gmail.com>
-