Damien George
626d6c9756
stm32/storage: Introduce MICROPY_HW_ENABLE_INTERNAL_FLASH_STORAGE cfg.
...
This config variable controls whether to support storage on the internal
flash of the MCU. It is enabled by default and should be explicitly
disabled by boards that don't want internal flash storage.
2018-03-10 00:59:43 +11:00
Damien George
d1c4bd69df
stm32/storage: Remove all SPI-flash bdev cfg, to be provided per board.
...
If a board wants to use SPI flash for storage then it must now provide the
configuration itself, using the MICROPY_HW_BDEV_xxx macros.
2018-03-10 00:59:43 +11:00
Damien George
1803e8ef22
stm32/storage: Make spi_bdev interface take a data pointer as first arg.
...
This allows a board to have multiple instances of the SPI block device.
2018-03-10 00:59:43 +11:00
Damien George
1e4caf0b1e
stm32/storage: Merge all misc block-dev funcs into a single ioctl func.
...
It makes it cleaner, and simpler to support multiple different block
devices. It also allows to easily extend a given block device with new
ioctl operations.
2018-03-10 00:59:43 +11:00
Damien George
a739b35a96
drivers/memory/spiflash: Change to use low-level SPI object not uPy one.
...
This patch alters the SPI-flash memory driver so that it uses the new
low-level C SPI protocol (from drivers/bus/spi.h) instead of the uPy SPI
protocol (from extmod/machine_spi.h). This allows the SPI-flash driver to
be used independently from the uPy runtime.
2018-03-10 00:59:43 +11:00
Damien George
58ebeca6a9
drivers/bus: Pull out software SPI implementation to dedicated driver.
...
This patch takes the software SPI implementation from extmod/machine_spi.c
and moves it to a dedicated file in drivers/bus/softspi.c. This allows the
SPI driver to be used independently of the uPy runtime, making it a more
general component.
2018-03-10 00:59:43 +11:00
iabdalkader
ad2a6e538c
stm32/system_stm32: Fix CONFIG_RCC_CR_2ND value to use bitwise or.
2018-03-09 23:37:09 +11:00
Tom Collins
993f4345c0
stm32/usbd_conf.h: Add include of stdint.h to fix compilation issues.
2018-03-09 16:08:08 +11:00
Damien George
eb56efb434
stm32: Remove startup_stm32.S, now provided in boards/ for each MCU.
2018-03-09 15:14:24 +11:00
iabdalkader
66748aaf60
stm32/Makefile: Use separate startup file for each MCU series.
2018-03-09 15:14:17 +11:00
iabdalkader
88157715db
stm32/boards: Add startup_stm32l4.s for L4 series specific startup.
2018-03-09 15:14:10 +11:00
iabdalkader
e3b81f5712
stm32/boards: Add startup_stm32f4.s for F4 series specific startup.
2018-03-09 15:14:03 +11:00
iabdalkader
d84f1a90cc
stm32/boards: Add startup_stm32f7.s for F7 series specific startup.
2018-03-09 15:13:56 +11:00
iabdalkader
0f5cce7753
stm32/boards: Add startup_stm32h7.s for H7 series specific startup.
2018-03-09 15:13:13 +11:00
iabdalkader
bbf19bb64e
stm32/main: Enable D2 SRAM1/2/3 clocks on H7 MCUs.
2018-03-09 15:12:58 +11:00
iabdalkader
61d463ad07
stm32/mpconfigboard_common: Add STM32H7 common configuration.
2018-03-09 15:12:44 +11:00
iabdalkader
6d3f42f713
stm32/extint: Add EXTI support for H7 MCUs.
2018-03-09 15:12:34 +11:00
iabdalkader
711f817c2a
stm32/rtc: Add RTC support for H7 MCUs.
2018-03-09 15:12:29 +11:00
iabdalkader
0e51e4d139
stm32/dma: Add DMA support for H7 MCUs.
2018-03-09 15:12:19 +11:00
iabdalkader
fe29419c10
stm32/stm32_it: Add support for H7 MCUs.
2018-03-09 15:12:01 +11:00
iabdalkader
2858e0aef8
stm32/usbd_conf: Add USB support for H7 MCUs.
2018-03-09 15:11:22 +11:00
iabdalkader
d151adb791
stm32/modmachine: Support basic H7 MCU features.
2018-03-09 15:10:53 +11:00
iabdalkader
0989e0cdff
stm32/timer: Add Timer support for H7 MCUs.
2018-03-09 15:10:46 +11:00
iabdalkader
b982b95c18
stm32/uart: Add UART support for H7 MCUs.
2018-03-09 15:10:39 +11:00
iabdalkader
a863c60439
stm32/wdt: Add WDT support for H7 MCUs.
2018-03-09 15:10:31 +11:00
iabdalkader
3f86fbcb07
stm32/mphalport: Use GPIO BSRRL/BSRRH registers for H7 MCUs.
2018-03-09 15:10:10 +11:00
iabdalkader
2e93d4167d
stm32/system_stm32: Add H7 MCU system initialisation.
2018-03-09 15:09:56 +11:00
iabdalkader
81f8f5f163
stm32/flash: Add flash support for H7 MCUs.
2018-03-09 15:09:49 +11:00
iabdalkader
b8d09b9bef
stm32/Makefile: Add settings to support H7 MCUs.
2018-03-09 15:09:29 +11:00
iabdalkader
fabfacf3d7
stm32/boards: Add new NUCLEO_H743ZI board configuration files.
...
USB serial and mass storage works, and the REPL is also available via the
UART through the on-board ST-LINK.
2018-03-09 15:08:11 +11:00
Damien George
8522874167
stm32/boards: Add stm32h743.ld linker script.
2018-03-09 15:08:11 +11:00
Damien George
a3c721772e
stm32/boards: Add stm32h743_af.csv file describing H7 GPIO alt funcs.
2018-03-09 14:06:34 +11:00
Damien George
0b88a9f02e
unix/coverage: Allow coverage tests to pass with debugging disabled.
2018-03-08 12:49:31 +11:00
sec2
250b24fe36
stm32/boards/NUCLEO_F767ZI: Update pins list to include 3 extra pins.
2018-03-07 18:53:02 +11:00
sec2
bda3620616
stm32/boards/stm32f767_af.csv: Add ADC column to pin capability list.
2018-03-07 18:40:06 +11:00
Damien George
024edafea0
stm32/i2c: On F4 MCUs report the actual I2C SCL frequency.
2018-03-07 14:59:03 +11:00
Lee Seong Per
478ce8f7e3
esp32/modnetwork: Implement status('stations') to list STAs in AP mode.
...
The method returns a list of tuples representing the connected stations.
The first element of the tuple is the MAC address of the station.
2018-03-05 17:59:19 +11:00
Damien George
d4470af239
esp32: Revert "esp32/machine_touchpad: Swap pins 32 and 33."
...
This reverts commit 5a82ba8e07
.
Touch sensor 8 and 9 have a mismatch in some of their registers and this is
now fixed in software by the ESP IDF.
2018-03-05 14:06:45 +11:00
Olivier Ortigues
b691aa0aae
esp8266/esppwm: Always start timer to avoid glitch from full to nonfull.
...
The PWM at full value was not considered as an "active" channel so if no
other channel was used the timer used to mange PWM was not started. So
when another duty value was set the PWM timer restarted and there was a
visible glitch when driving LEDs. Such a glitch can be seen with the
following code (assuming active-low LED on pin 0):
p = machine.PWM(machine.Pin(0))
p.duty(1023) # full width, LED is off
p.duty(1022) # LED flashes brightly then goes dim
This patch fixes the glitch.
2018-03-05 11:39:44 +11:00
Damien George
adda38cf76
stm32/qspi: Add hardware QSPI driver, with memory-map capability.
...
It supports the abstract QSPI protocol defined in drivers/bus/qspi.h.
2018-03-03 00:17:08 +11:00
Damien George
8bd0a51ca9
stm32/spibdev: Convert to use multiple block read/write interface.
...
The spiflash driver now supports read/write of multiple blocks at a time.
2018-03-03 00:13:15 +11:00
Damien George
861080aa3d
stm32/storage: Add option for bdev to supply readblock/writeblocks.
...
If the underlying block device supports it, it's more efficient to
read/write multiple blocks at once.
2018-03-02 23:57:53 +11:00
Damien George
0210383da5
stm32/spibdev: Add option to configure SPI block dev to use QSPI flash.
...
To use QSPI (in software QSPI mode) the configuration needed is:
#define MICROPY_HW_SPIFLASH_SIZE_BITS (n * 1024 * 1024)
#define MICROPY_HW_SPIFLASH_CS (pin_x1)
#define MICROPY_HW_SPIFLASH_SCK (pin_x2)
#define MICROPY_HW_SPIFLASH_IO0 (pin_x3)
#define MICROPY_HW_SPIFLASH_IO1 (pin_x4)
#define MICROPY_HW_SPIFLASH_IO2 (pin_x5)
#define MICROPY_HW_SPIFLASH_IO3 (pin_x6)
2018-03-02 23:55:45 +11:00
Damien George
a0dfc38641
stm32/spibdev: Update to work with new spiflash driver.
2018-03-02 23:55:40 +11:00
Damien George
c607b58efe
tests: Move heap-realloc-while-locked test from C to Python.
...
This test for calling gc_realloc() while the GC is locked can be done in
pure Python, so better to do it that way since it can then be tested on
more ports.
2018-03-02 10:59:09 +11:00
Damien George
c3f1b22338
tests/unix: Add coverage tests for various GC calls.
2018-03-01 22:49:15 +11:00
Damien George
d3cac18d49
tests/unix: Add coverage test for VM executing invalid bytecode.
2018-02-27 16:18:11 +11:00
Damien George
c5fe610ba1
esp8266/modnetwork: Implement WLAN.status('rssi') for STA interface.
...
This will return the RSSI of the AP that the STA is connected to.
2018-02-26 16:41:13 +11:00
Damien George
01dcd5bb71
esp8266/uart: Allow to compile with event-driven REPL.
2018-02-26 16:10:27 +11:00
Damien George
62be14d77c
tests/unix: Add coverage tests for mpz_set_from_float, mpz_mul_inpl.
...
These new tests cover cases that can't be reached from Python and get
coverage of py/mpz.c to 100%.
These "unreachable from Python" pieces of code could be removed but they
form an integral part of the mpz C API and may be useful for non-Python
usage of mpz.
2018-02-25 23:43:16 +11:00