Damien George
f1774fa049
stm32/system_stm32f0: Enable PWR clock on startup.
...
To be consistent with how F4/F7/H7/L4 works in system_stm32.c. The power
control peripheral is needed at least for the RTC.
2019-04-18 15:36:59 +10:00
Damien George
194d6b6788
stm32/timer: Correctly initialise extended break settings on F7/H7/L4.
...
Fixes issue #4693 .
2019-04-15 11:41:03 +10:00
Damien George
fd112239d6
stm32/rtc: Remove non-ASCII mu-character from source code comment.
...
And fix a typo in the comment on this line.
2019-04-12 11:32:24 +10:00
Damien George
fc9f2ff0cd
stm32/rtc: Remove unused LSE detection code.
2019-04-11 12:14:21 +10:00
Damien George
46e5d6b889
stm32/rtc: Add auto-LSE-bypass detection with fallback to LSE then LSI.
...
If MICROPY_HW_RTC_USE_BYPASS is enabled the RTC startup goes as follows:
- RTC is started with LSE in bypass mode to begin with
- if that fails to start (after a given timeout) then LSE is reconfigured
in non-bypass
- if that fails to start then RTC is switched to LSI
2019-04-11 12:09:21 +10:00
Damien George
358364b45e
stm32/boards/NUCLEO_L432KC: Disable complex nos and default frozen mods.
...
To save space, since this board only hase 256k of flash.
2019-04-09 11:23:08 +10:00
Damien George
4831e38c7e
stm32/boards/NUCLEO_H743ZI: Add config options to support mboot.
2019-04-08 14:34:37 +10:00
Damien George
fd13ce5e60
stm32/mboot: Add support for H7 MCUs, with H743 flash layout.
2019-04-08 14:33:57 +10:00
Damien George
ae1e18a346
stm32/usbd_conf: Add support for USB HS peripheral on H7 MCUs.
2019-04-08 14:30:16 +10:00
Damien George
2c3fa4ad82
stm32/i2cslave: Add support for H7 MCUs.
2019-04-08 14:28:45 +10:00
Damien George
fd523c53c3
stm32/network_wiznet5k: Automatically set MAC if device doesn't have one
2019-04-05 22:37:06 +11:00
Damien George
4f936afc44
stm32/network_wiznet5k: Add ability to set the MAC address.
2019-04-05 22:35:04 +11:00
Damien George
4410efc1e3
stm32/network_wiznet5k: Add ability to trace Ethernet TX and RX frames.
...
Via: nic.config(trace=2|4)
2019-04-05 22:33:49 +11:00
Damien George
83f3c29d36
stm32/moduos: Allow to compile again without USB enabled.
2019-04-01 17:11:39 +11:00
Damien George
7ce2a08231
stm32: Add support for MMC driver, exposed via pyb.MMCard class.
...
Enable it via MICROPY_HW_ENABLE_MMCARD.
2019-04-01 17:04:43 +11:00
Damien George
9670b26526
stm32: Rename MICROPY_HW_HAS_SDCARD to MICROPY_HW_ENABLE_SDCARD.
...
For consistency with the majority of other MICROPY_HW_ENABLE_xxx macros.
2019-04-01 15:21:26 +11:00
Damien George
7b5bf5f6fd
stm32/uart: Handle correctly the char overrun case of RXNE=0 and ORE=1.
...
Fixes issue #3375 .
2019-04-01 13:40:35 +11:00
roland van straten
edd0e0f93d
stm32/timer: Expose the PWM BRK capability of Timer 1 and 8.
...
The break mode is configurable via the 'brk' keyword to the Timer
constructor and init method. It's disabled by default.
2019-04-01 13:30:37 +11:00
Andrew Leech
9d6f70f715
stm32: Make default USB_VCP stream go through uos.dupterm for main REPL.
...
Use uos.dupterm for REPL configuration of the main USB_VCP(0) stream on
dupterm slot 1, if USB is enabled. This means dupterm can also be used to
disable the boot REPL port if desired, via uos.dupterm(None, 1).
For efficiency this adds a simple hook to the global uos.dupterm code to
work with streams that are known to be native streams.
2019-04-01 13:04:05 +11:00
Boris Vinogradov
6947dff7da
stm32/Makefile: Allow to override CROSS_COMPILE with included Makefile.
2019-03-29 11:34:05 +11:00
Boris Vinogradov
1a608ce1e8
stm32/boards/STM32L476DISC: Enable servo support on STM32L476DISC board.
2019-03-28 15:35:58 +11:00
Damien George
781947afdc
stm32/mpconfigport.h: Remove malloc/free/realloc helper macros.
...
These macros are unused, and they can conflict with other entities by the
same name. If needed they can be provided as static inline functions, or
just functions.
Fixes issue #4559 .
2019-03-26 18:42:19 +11:00
roland van straten
d396a7e10d
stm32/system_stm32: Provide default value for HSI calibration.
...
If HSI is used the calibration value must be valid. Fixes #4596 .
2019-03-26 17:10:21 +11:00
Dave Hylands
ec6e62efc2
stm32/mboot: Set USE_MBOOT=1 by default in the Makefile.
...
This allows boards that need USE_MBOOT to be built properly whether or not
USE_MBOOT=1 is specified when building mboot.
2019-03-18 14:01:43 +11:00
roland van straten
c9eb7eb449
stm32/stm32_it: Guard UART7_IRQHandler with check for UART7 define.
...
All STM32 with a UART7 also have a UART8 and vice versa, but this change
improves readability and allows for them to be independent in the future.
2019-03-14 14:02:21 +11:00
Damien George
c7d19dc0ad
ports/{stm32,esp8266}: Set mpy-cross native arch for frozen native code.
2019-03-14 12:22:49 +11:00
Andrew Leech
5688c9ba09
stm32/usb: Allow to override USB strings & VID/PID in app and mboot.
...
The override #define's should go in the board's mpconfigboard.h file.
2019-03-08 23:29:15 +11:00
Andrew Leech
0c60cb1fc4
stm32/qspi: Set pin speed to very-high and allow to config some options.
...
The default speed of the QSPI interface is 72Mhz whereas the standard AF
pin speed (high) is only rated to 50Mhz, so increase speed to very-high.
2019-03-08 23:17:50 +11:00
Andrew Leech
89ff506513
py: Update and rework build system for including external C modules.
...
How to use this feature is documented in docs/develop/cmodules.rst.
2019-03-08 22:58:42 +11:00
Damien George
e4ac104b7f
stm32: Allow to build with threading with the GIL disabled.
2019-03-08 22:29:54 +11:00
Jim Mussared
f2ebee9cf1
stm32/mboot: Update to match latest oofatfs version.
...
See corresponding commit b5f33ac2cb
2019-03-07 15:22:16 +11:00
Damien George
b5f33ac2cb
ports: Update to work with new oofatfs version.
2019-03-05 15:56:39 +11:00
Francisco J. Manno
f938e70c69
stm32: Add compile-time option to use HSI as clock source.
...
To use HSI instead of HSE define MICROPY_HW_CLK_USE_HSI as 1 in the board
configuration file. The default is to use HSE.
HSI has been made the default for the NUCLEO_F401RE board to serve as an
example, and because early revisions of this board need a hardware
modification to get HSE working.
2019-03-05 15:49:08 +11:00
Damien George
e61862d063
stm32/boards: Update to use new build config for lwip component.
2019-03-04 23:34:03 +11:00
Damien George
78fe979d7d
stm32: Use global lwip build config and support building without lwip.
2019-03-04 23:33:02 +11:00
Damien George
84479569de
stm32/boards/STM32F769DISC: Use external QSPI flash to store some code.
...
This demonstrates how to use external QSPI flash in XIP (execute in place)
mode. The default configuration has all extmod/ code placed into external
QSPI flash, but other code can easily be put there by modifying the custom
f769_qspi.ld script.
2019-03-04 22:40:15 +11:00
Damien George
c8bbf2c170
stm32/Makefile: Allow a board to specify its linker sections for FW.
...
A board can now use the make variables TEXT0_SECTIONS and TEXT1_SECTIONS to
specify the linker sections that should go in its firmware. Defaults are
provided which give the existing behaviour.
2019-03-04 22:26:55 +11:00
Damien George
f8f2724297
stm32/qspi: Enable sample shift and disable timeout counter.
...
This makes the QSPI more robust, in particular the timeout counter should
not be used with memory mapped mode (see F7 errata).
2019-03-01 16:15:14 +11:00
Damien George
823b31e528
stm32/boards/NUCLEO_F429ZI: Enable lwIP and Ethernet peripheral.
2019-02-26 23:32:19 +11:00
Damien George
ed0a530614
stm32/boards/STM32F769DISC: Enable lwIP and Ethernet peripheral.
2019-02-26 23:32:19 +11:00
Damien George
b3513f54d3
stm32/boards/STM32F7DISC: Enable lwIP and Ethernet peripheral.
2019-02-26 23:32:19 +11:00
Damien George
8daec24168
stm32/boards/NUCLEO_F767ZI: Enable lwIP and Ethernet peripheral.
2019-02-26 23:32:19 +11:00
Damien George
ac3e2f380d
stm32/modnetwork: Don't call NIC callback if it's NULL.
2019-02-26 23:32:19 +11:00
Damien George
08a24c5f41
stm32/mpconfigport.h: Enable lwIP concurrency protection mechanism.
2019-02-26 23:32:19 +11:00
Damien George
c55709bf29
stm32/network_lan: Add high-level network.LAN interface to ETH driver.
2019-02-26 23:32:19 +11:00
Damien George
c950a1a35d
stm32/eth: Add low-level Ethernet MAC driver.
2019-02-26 23:32:19 +11:00
Damien George
cc63e19332
stm32/mphalport: Add mp_hal_get_mac() helper function.
2019-02-26 23:32:07 +11:00
Damien George
75a35448e1
stm32/boards/NUCLEO_F767ZI: Fix up comments about HCLK computation.
2019-02-26 22:44:27 +11:00
Andrew Leech
8ed4a28dae
stm32/sdram: Increase GPIO speed for SDRAM interface to "very high".
...
Currently all usages of mp_hal_pin_config_alt_static() set the pin speed to
"high" (50Mhz). The SDRAM interface typically runs much faster than this
so should be set to the maximum pin speed.
This commit adds mp_hal_pin_config_alt_static_speed() which allows setting
the pin speed along with the other alternate function details.
2019-02-20 16:54:32 +11:00
Dave Hylands
a270cf280b
stm32/stm32_it: Fix RTC IRQ handler to handle all EXTI IRQs on F0 MCUs.
2019-02-19 15:17:47 +11:00