Artyom Skrobov
4ee781227f
[meowbit] change board.BUZZ type to PWMAudioOut,
...
as advised in #4257
2021-04-03 13:35:19 -04:00
Lucian Copeland
8a2143f161
Clean up comments and debugging pins
2021-04-02 17:40:40 -04:00
Lucian Copeland
9240146b22
Make light sleep store true alarm object to global map
2021-04-02 16:58:42 -04:00
Lucian Copeland
66a1583183
Implement fake and true deep sleep alarm differentiation
2021-04-02 15:13:10 -04:00
Lucian Copeland
17585e1e07
Clean up API
2021-04-02 14:08:48 -04:00
Lucian Copeland
91e530d36c
Resolve wake alarm crash
2021-04-02 13:42:22 -04:00
Lucian Copeland
4f52554eb3
Fix to RTC reset
2021-04-01 20:53:25 -04:00
Lucian Copeland
d35a307ffa
Merge branch 'sleep-api-update' into stm-alarm
2021-03-29 12:27:25 -04:00
Lucian Copeland
529fb52309
Style changes and wakeup detection
2021-03-27 13:16:12 -04:00
Artyom Skrobov
b40d072648
[stm] implementation of audiopwmio
...
Based on nrf PWMAudioOut by @jepler and stm PulseOut by @hierophect
Tested on a Meowbit
2021-03-26 13:18:01 -04:00
Scott Shawcroft
aec0ef3cbf
Switch devices.h to nvm.toml data
2021-03-25 09:57:18 -07:00
Lucian Copeland
d8a2d69e10
Working deep sleep via RTC reset, with debug pins
2021-03-21 13:15:44 -04:00
Dan Halbert
d7a2ae9df7
fix stm compiler error
2021-03-19 11:04:46 -04:00
Dan Halbert
b2d913412f
merge from upstream
2021-03-18 23:14:43 -04:00
gamblor21
0890b54cd9
More formatting
2021-03-16 08:29:04 -05:00
gamblor21
fb437d8280
Formatting fixes
2021-03-16 08:22:02 -05:00
Mark
e326d7ca80
Merge branch 'main' into rp_dp_parallel
2021-03-15 20:00:13 -05:00
microDev
a52eb88031
run code formatting script
2021-03-15 19:27:36 +05:30
gamblor21
56a219911f
Add frequency support to parallel bus
2021-03-11 19:32:43 -06:00
Lucian Copeland
6b2c9985ff
Extract RTC, implement fake RTC deepsleep
2021-03-11 17:50:05 -05:00
Scott Shawcroft
0e451a1681
Merge pull request #4383 from hierophect/stm32-uart-dereserve
...
STM32: Fix UART deinit
2021-03-11 10:48:01 -08:00
Lucian Copeland
0b73c7a212
Update F407 to match F405
2021-03-11 11:27:17 -05:00
Lucian Copeland
1ebbd14d0f
Fix UART deinit
2021-03-11 11:02:13 -05:00
Dan Halbert
08c5dbb003
use return values in STM PWMOut constructor, not exceptions
2021-03-11 08:52:47 -05:00
Jeff Epler
cdb0fda72a
Merge remote-tracking branch 'origin/main' into count-flash-devices
2021-03-07 20:26:04 -06:00
Jeff Epler
f1ada8e880
Automatically count EXTERNAL_FLASH_DEVICES
2021-03-07 11:48:39 -06:00
jerryneedell
a23129bc49
add GD25Q16C flash to BlackPill
2021-03-07 17:23:39 +00:00
Artyom Skrobov
4720dc179a
[stm] curr_pulseout
can be STATIC
...
Not used outside of PulseOut.c
2021-03-05 12:52:13 +02:00
Jeff Epler
efc2667b5f
Merge pull request #4186 from jepler/update-protomatter-rp2
...
Enable protomatter on RP2040 builds
2021-03-02 19:01:37 -06:00
Lucian Copeland
f1792c8474
Extract EXTI, create base sleep framework
2021-03-02 11:41:53 -05:00
Jeff Epler
1d1ff5f308
Merge remote-tracking branch 'origin/main' into update-protomatter-rp2
2021-02-26 09:56:35 -06:00
Kevin Matocha
a7a4f93ff8
Updated build configs to turn off BITMAPTOOLS for smaller builds
2021-02-25 15:44:32 -06:00
Dan Halbert
67406488d1
merge from upstream; re-alphabetize
2021-02-19 14:22:50 -05:00
Dan Halbert
e344c6d684
fix some builds
2021-02-18 14:24:58 -05:00
Jeff Epler
ff1942cff6
Enable protomatter on RP2040 builds
...
Also found a race condition between timer_disable and redraw, which
would happen if I debugger-paused inside common_hal_rgbmatrix_timer_disable
or put a delay or print inside it. That's what pausing inside reconstruct
fixes.
So that the "right timer" can be chosen, `timer_allocate` now gets the `self`
pointer. It's guaranteed at this point that the pin information is accurate,
so you can e.g., find a PWM unit related to the pins themselves.
This required touching each port to add the parameter even though it's
unused everywhere but raspberrypi.
2021-02-12 08:25:15 -06:00
Dan Halbert
f0564b4986
merge from upstream; complicated webusb merge
2021-02-11 18:50:02 -05:00
Lucian Copeland
edb7f2d807
Free up space for JA build
2021-02-11 16:30:27 -05:00
Lucian Copeland
d00bee2149
Fix I2C Repeated start error by converting to IT mode
2021-02-10 14:59:19 -05:00
Dan Halbert
0802b22ed6
usb descriptors all set; rework of enabling for USB devices
2021-02-04 19:23:40 -05:00
Dan Halbert
13812a788f
Merge pull request #4060 from dhalbert/regularize-extmod-modules
...
CIRCUITPY_* switches for JSON, RE, etc. Doc cleanup
2021-01-26 12:54:21 -05:00
Scott Shawcroft
a2ac2da7cc
Merge pull request #3936 from gamblor21/busdevice_fixes
...
Changing adafruit_bus_device to duck typing
2021-01-25 14:41:53 -08:00
Dan Halbert
69869e1439
CIRCUITPY_* switches for JSON, RE, etc. Doc cleanup
2021-01-24 23:10:20 -05:00
Jonathan Giles
55c6d3e92f
1. Rename 'stm32f411ce_blackpill_haxpress' to 'stm32f411ce_blackpill_with_flash'
...
2. Add 'W25Q64JV_IQ' to flash chip list (as per commercial version)
2021-01-19 11:48:15 -05:00
djix123
b4bdf55eda
Update ports/stm/boards/stm32f411ce_blackpill_haxpress/mpconfigboard.mk
...
Update PID for _with_flash version to resolve duplicate PID issue
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2021-01-19 11:35:52 -05:00
djix123
4804032f09
Update ports/stm/boards/stm32f411ce_blackpill_haxpress/mpconfigboard.mk
...
Change name from _haxpress to _with_flash
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2021-01-19 11:35:03 -05:00
djix123
c8046af6e7
Update ports/stm/boards/stm32f411ce_blackpill_haxpress/mpconfigboard.h
...
Change name from _haxpress to _with_flash
Co-authored-by: Dan Halbert <halbert@halwitz.org>
2021-01-19 11:34:47 -05:00
Jonathan Giles
ebb4df846f
Add support for a 'haxpress' external SPI flash build for the stm32f411ce blackpill board
2021-01-19 07:46:59 -05:00
gamblor21
41b9196167
Disabling in more small boards
2021-01-17 00:00:06 -06:00
microDev
dc332baa87
update common_hal_reset_pin()
2020-12-28 20:04:00 +05:30
Jonathan Giles
aaa3c61819
Add default I2C pins for STM32F411CE
2020-12-22 09:11:05 -05:00
Dan Halbert
39ca406a31
Add Adafruit to MICROPY_HW_BOARD_NAME for various boards
2020-12-21 23:32:11 -05:00
Dan Halbert
8f9cd7075e
Merge pull request #3752 from jepler/gcc10
...
build: Update to gcc10
2020-12-17 11:03:40 -05:00
Dan Halbert
4521dfb732
squeeze some smaller boards
2020-12-15 13:23:49 -05:00
Dan Halbert
fb33c4e1c0
-ftree-vrp better diagnostics on -Os builds; -fno-inline-functions for -O2; fix struct init in HCI bleio
2020-12-15 12:23:56 -05:00
Scott Shawcroft
40118bcf57
Add board_deinit
for use with sleep
...
This changes lots of files to unify `board.h` across ports. It adds
`board_deinit` when CIRCUITPY_ALARM is set. `main.c` uses it to
deinit the board before deep sleeping (even when pretending.)
Deep sleep is now a two step process for the port. First, the
port should prepare to deep sleep based on the given alarms. It
should set alarms for both deep and pretend sleep. In particular,
the pretend versions should be set immediately so that we don't
miss an alarm as we shutdown. These alarms should also wake from
`port_idle_until_interrupt` which is used when pretending to deep
sleep.
Second, when real deep sleeping, `alarm_enter_deep_sleep` is called.
The port should set any alarms it didn't during prepare based on
data it saved internally during prepare.
ESP32-S2 sleep is a bit reorganized to locate more logic with
TimeAlarm. This will help it scale to more alarm types.
Fixes #3786
2020-12-08 10:52:25 -08:00
Scott Shawcroft
d7ba641ff6
Merge pull request #3767 from dhalbert/sleep
...
Initial alarm and sleep PR: time alarms with light and deep sleep; PinAlarms not yet implemented
2020-12-02 12:51:43 -08:00
Dan Halbert
8b7c23c1ee
address review comments
2020-12-01 20:01:14 -05:00
Christian Walther
c7404a3ff8
Add movable allocation system.
...
This allows calls to `allocate_memory()` while the VM is running, it will then allocate from the GC heap (unless there is a suitable hole among the supervisor allocations), and when the VM exits and the GC heap is freed, the allocation will be moved to the bottom of the former GC heap and transformed into a proper supervisor allocation. Existing movable allocations will also be moved to defragment the supervisor heap and ensure that the next VM run gets as much memory as possible for the GC heap.
By itself this breaks terminalio because it violates the assumption that supervisor_display_move_memory() still has access to an undisturbed heap to copy the tilegrid from. It will work in many cases, but if you're unlucky you will get garbled terminal contents after exiting from the vm run that created the display. This will be fixed in the following commit, which is separate to simplify review.
2020-11-28 17:50:23 +01:00
Dan Halbert
104a089677
deep sleep working; deep sleep delay when connected
2020-11-26 22:06:37 -05:00
Dan Halbert
ef0830bfe2
merge from upstream + wip
2020-11-25 17:52:06 -05:00
jgillick
f8499a468e
Remove filesystem from linker script.
2020-11-23 22:56:38 -08:00
jgillick
570353b946
Merge remote-tracking branch 'circuitpython/main' into thunderpack1.2
2020-11-23 22:40:47 -08:00
Jeff Epler
70e978f48b
stm: disable ulab on two resource-constrained boards
2020-11-23 10:23:53 -06:00
jgillick
4c5e7520f5
Fix NVM by clearing FLASH_FLAG_PGPERR
2020-11-23 00:25:41 -08:00
jgillick
661c20dd18
Create a new linker script with more space for the firmware.
2020-11-22 18:25:37 -08:00
Dan Halbert
a0f1ec3c4a
wip
2020-11-22 19:10:09 -05:00
jgillick
fe6e50b770
Update USB_PID
2020-11-22 01:49:23 -08:00
jgillick
56634eb00e
Rename thunderpack to v11
2020-11-22 01:31:41 -08:00
jgillick
381889f6bc
Cleanup
2020-11-22 01:19:28 -08:00
jgillick
0b858440b0
Fix formatting.
2020-11-22 01:15:05 -08:00
jgillick
63b0bf9075
Merge remote-tracking branch 'origin/main' into thunderpack1.2
2020-11-22 01:07:03 -08:00
Dan Halbert
75559f35cc
wip: ResetReason to microcontroller.cpu
2020-11-21 23:29:52 -05:00
jgillick
5f0a372a22
Merge tag '6.0.0' into thunderpack1.2
2020-11-17 00:02:24 -08:00
jgillick
119e9d3820
Add Thunderpack 1.2
2020-11-16 23:50:00 -08:00
Dan Halbert
ffff02c053
Merge remote-tracking branch 'adafruit/main' into sleep
2020-11-16 12:06:11 -05:00
Scott Shawcroft
68eb809fbf
Update parallel bus signatures
2020-11-13 18:57:52 -08:00
microDev
930cf14dce
Add check for invalid io, function to disable all alarms
2020-10-27 16:17:26 -07:00
microDev
e35938971a
Add description of alarm modules
2020-10-27 16:16:55 -07:00
Dan Halbert
12ed3fc72f
disable on winterbloom_sol and thunderpack
2020-10-15 18:48:28 -04:00
Dan Halbert
f1e8f2b404
Merge pull request #3554 from gamblor21/move_ordereddict
...
Moved ORDEREDDICT define to central location
2020-10-14 22:39:04 -04:00
gamblor21
4270061db4
Moved ORDEREDDICT define to central location
2020-10-13 18:52:27 -05:00
Scott Shawcroft
56427d9abe
Fix stm sleep too long
2020-10-13 14:02:29 -07:00
Scott Shawcroft
a0e5e961c5
Fix STM RTC read so it's atomic.
...
Fixes #3376
2020-10-12 17:43:25 -07:00
Jeff Epler
16ed875f4e
canio: remove unused fields
...
these relate to properties that were removed as well
2020-10-06 20:14:50 -05:00
Jeff Epler
81d7ef0256
stm: canio: remove stray optimization flag for debugging
2020-10-06 20:13:23 -05:00
Jeff Epler
eed3387f4e
stm32: canio: Fix message cancellation
...
.. it's necessary to wait for a cancellation request to actually free
the respective Tx mailbox
2020-10-06 20:12:10 -05:00
Jeff Epler
abe0405d6e
stm32: canio: Fix canio.CAN.restart()
2020-10-06 20:12:06 -05:00
Jeff Epler
e5a0af9216
stm32: canio: When Tx mailboxes are full, cancel an old message
...
.. also add the 8ms wait for transmission that the atmel sam port
has
2020-10-06 20:11:58 -05:00
Jeff Epler
a7dccb39a4
stm32: canio: remove unused functions
2020-10-06 20:11:51 -05:00
Jeff Epler
23bd2496de
stm32: canio: remove some unneeded declarations
2020-10-06 20:11:43 -05:00
Jeff Epler
7df01d3fbd
stm32: canio: enable on all stm32f405 boards
2020-10-06 20:11:39 -05:00
Jeff Epler
01e9e355ce
canio: implement for stm32f405
...
The has successfully run my loopback self-test program for CAN,
which tests transmission, reception, and filtering. The 1M baud rate setting
was also verified on saleae to be accurate.
2020-10-06 20:11:35 -05:00
Scott Shawcroft
d62ac24493
Merge pull request #3469 from jepler/noreturn
...
Add some NORETURN attributes
2020-10-01 11:18:36 -07:00
Jeff Epler
726dcdb60a
Add some NORETURN attributes
...
I have a function where it should be impossible to reach the end, so I put in a safe-mode reset at the bottom:
```
int find_unused_slot(void) {
// precondition: you already verified that a slot was available
for (int i=0; i<NUM_SLOTS; i++) {
if( slot_free(i)) {
return i;
}
}
safe_mode_reset(MICROPY_FATAL_ERROR);
}
```
However, the compiler still gave a diagnostic, because safe_mode_reset was not declared NORETURN.
So I started by teaching the compiler that reset_into_safe_mode never returned. This leads at least one level deeper due to reset_cpu needing to be a NORETURN function. Each port is a little different in this area. I also marked reset_to_bootloader as NORETURN.
Additional notes:
* stm32's reset_to_bootloader was not implemented, but now does a bare reset. Most stm32s are not fitted with uf2 bootloaders anyway.
* ditto cxd56
* esp32s2 did not implement reset_cpu at all. I used esp_restart(). (not tested)
* litex did not implement reset_cpu at all. I used reboot_ctrl_write. But notably this is what reset_to_bootloader already did, so one or the other must be incorrect (not tested). reboot_ctrl_write cannot be declared NORETURN, as it returns unless the special value 0xac is written), so a new unreachable forever-loop is added.
* cxd56's reset is via a boardctl() call which can't generically be declared NORETURN, so a new unreacahble "for(;;)" forever-loop is added.
* In several places, NVIC_SystemReset is redeclared with NORETURN applied. This is accepted just fine by gcc. I chose this as preferable to editing the multiple copies of CMSIS headers where it is normally declared.
* the stub safe_mode reset simply aborts. This is used in mpy-cross.
2020-09-28 18:55:56 -05:00
mdroberts1243
b1e1237887
Merge branch 'main' into New_quirk_for_SH1107
2020-09-28 19:40:47 -04:00
Mark Roberts
b921543571
Requested changes take 1
2020-09-25 21:27:29 -04:00
Lucian Copeland
00517b2600
Move missing pin warning to shared-bindings
2020-09-23 11:39:39 -04:00
Jeff Epler
ce266425e1
Merge pull request #3441 from hierophect/stm32-rgbmatrix-crashfix
...
STM32: Add never_reset reservation to RGBMatrix init
2020-09-20 07:51:09 -05:00
Dan Halbert
8cf0171c06
Merge pull request #3431 from hierophect/stm32-spi-writevalue
...
STM32: Change SPI Read to acknowledge write_value
2020-09-18 19:46:21 -04:00
Lucian Copeland
3a59d30e1a
Remove timer debug messages
2020-09-18 12:48:15 -04:00
Lucian Copeland
c58bd4c047
Add never_reset reservation to RGBMatrix init
2020-09-18 12:38:15 -04:00
Scott Shawcroft
4b827b25ad
Merge pull request #2966 from sommersoft/ci_check_vid_pid
...
Automate USB VID/PID Uniqueness Check
2020-09-17 11:48:46 -07:00
Lucian Copeland
00ee94d24b
Add SPI memset, optional flags
2020-09-16 14:22:18 -04:00
Scott Shawcroft
95e27bb8bf
Add more PIDs for unique boards
2020-09-15 13:43:35 -07:00
Scott Shawcroft
9e722c8c99
Merge pull request #3375 from DavePutz/issue3296
...
Correction for Issue #3296 - ble hanging on nrf52840
2020-09-10 12:36:17 -07:00
root
2690faec43
Moved checks for invalid pin to common-hal/microcontroller/Pin.c
2020-09-05 11:42:06 -05:00
Scott Shawcroft
96cf60fbbd
Merge remote-tracking branch 'adafruit/main' into native_wifi
2020-09-03 16:34:56 -07:00
Scott Shawcroft
5d8ac0428b
-Os espruino_pico to save space
2020-08-27 13:34:37 -07:00
Jeff Epler
563e038c0d
stm: Specify max endpoints for stm32f405xx
...
.. which is why we can't have HID or MIDI on the stm32f405 feather
2020-08-27 15:11:17 -05:00
Jeff Epler
49a22b0c55
Merge pull request #3320 from hierophect/stm32-meowbit-fix
...
STM32: Fix Meowbit startup and associated bugs
2020-08-27 13:05:56 -05:00
Dan Halbert
24fb08dbd9
Merge pull request #3337 from hierophect/pulseout-errorstyle
...
Fix problematic whitespace on pulseout parameter errors
2020-08-27 13:22:26 -04:00
Lucian Copeland
8021da08d3
Fix problematic whitespace on pulseout parameter errors
2020-08-27 11:07:47 -04:00
hierophect
772052598d
Merge branch 'main' into stm32-meowbit-fix
2020-08-27 11:00:29 -04:00
hierophect
a15f948a40
Merge branch 'main' into esp32-random
2020-08-27 10:49:14 -04:00
Lucian Copeland
8d2299e61e
Merge remote-tracking branch 'upstream/main' into stm32-meowbit-fix
2020-08-26 18:50:26 -04:00
Lucian Copeland
c229345741
improve efficiency of stm32 random gen
2020-08-26 18:47:19 -04:00
Lucian Copeland
c77523503b
Fix trailing whitespace errors across ports and docs
2020-08-26 14:48:46 -04:00
Lucian Copeland
05bde255f7
Add random to ESP32-S2, fix it on STM32
2020-08-25 14:00:29 -04:00
Lucian Copeland
de9fd4a0fb
Fix null dereference, invert auto_brightness to reenable screen
2020-08-25 10:37:55 -04:00
Scott Shawcroft
1527a3ce92
Merge remote-tracking branch 'adafruit/main' into add_pwmio
2020-08-24 18:25:18 -07:00
Lucian Copeland
c137a16121
Remove Meowbit LSE flag, harsher failure for LSE issues
2020-08-24 14:49:06 -04:00
Scott Shawcroft
644d2ba7a2
Add more "extern" declarations for gcc10 compat
...
gcc has tightened the restrictions on forward declarations that lack
"extern". Fix them up.
2020-08-21 14:39:37 -05:00
Scott Shawcroft
a5b01f7361
Merge remote-tracking branch 'adafruit/main' into add_pwmio
2020-08-21 11:13:53 -07:00
Scott Shawcroft
6857f98426
Split pulseio.PWMOut into pwmio
...
This gives us better granularity when implementing new ports because
PWMOut is commonly implemented before PulseIn and PulseOut.
Fixes #3211
2020-08-18 13:08:33 -07:00
Lucian Copeland
da75445cd5
Style changes, reposition runtime errors
2020-08-18 11:42:06 -04:00
Lucian Copeland
0fc730bc5a
Expand PulseOut API, debug cleanup
2020-08-14 16:36:02 -04:00
Dan Halbert
329f4fb2e6
Update mpconfigboard.mk
...
The stm boards default to `-O2`. Changing to `-Os` brings it back to ~43kB (!) free even for ja.
2020-08-13 10:09:46 -04:00
Jeff Epler
42b860e91a
stm: meowbit_v121: remove _pixelbuf to fit ja translation
2020-08-13 07:49:45 -05:00
Jeff Epler
1cf3762392
Merge remote-tracking branch 'origin/main' into stm32-sdioio
2020-08-10 12:54:12 -05:00
Jeff Epler
93b373d617
"pop from empty %q"
...
Saves 12 bytes code on trinket m0
2020-08-04 18:42:09 -05:00
Jeff Epler
c849b781c0
Combine 'index out of range' messages
2020-08-04 14:45:45 -05:00
Jeff Epler
dddd25a776
Combine similar strings to reduce size of translations
...
This is a slight trade-off with code size, in places where a "_varg"
mp_raise variant is now used. The net savings on trinket_m0 is
just 32 bytes.
It also means that the translation will include the original English
text, and cannot be translated. These are usually names of Python
types such as int, set, or dict or special values such as "inf" or
"Nan".
2020-08-04 13:34:29 -05:00
Jeff Epler
f175a49444
stm: sdioio: include header for common_hal_mcu_pin_claim
2020-07-30 07:18:12 -05:00
Jeff Epler
b57e6e9856
stm: sdioio: call common_hal_mcu_pin_claim
2020-07-30 07:18:12 -05:00
Jeff Epler
d73505a027
stm: fix if-guard of conditional code
2020-07-30 07:18:12 -05:00
Jeff Epler
60dd5a8d7d
stm: sdioio: remove unused code related to "SD Card detect pin"
...
.. this probably came from the examples that I studied at the beginning
of implementation.
The card detection feature is unused. As a "detect pin" is not
sent from the shared-bindings, there is no way to get the correct pin
anyway. Instead, if code needs to detect the insertion state it can
directly use the pin as GPIO in Python code.
2020-07-30 07:18:02 -05:00
Jeff Epler
ccd3013396
stm: stioio: correctly claim pins
2020-07-30 07:18:02 -05:00
Jeff Epler
3cf1258c87
stm: sdioio: Get rid of debug code and useless comments
2020-07-30 07:18:02 -05:00
Jeff Epler
6a99a7b551
stm: Use 'Invalid %q pin selection' more places
2020-07-30 07:18:02 -05:00
Jeff Epler
92d2f47503
feather_stm32f405_express: sdio_data_tuple should be static
2020-07-30 07:18:02 -05:00
Jeff Epler
4adbd23b75
stm: Add sdioio support for feather_stm32f405_express
...
Currently, only the bus specs of the stm32f405xx have been coded.
Other stm-family chips need (at a minimum) the specs added in their
periph.[ch] files.
2020-07-30 07:18:02 -05:00
Jeff Epler
d30f11163c
stm: enable SD module in HAL
2020-07-30 07:18:02 -05:00
DavePutz
3dfed3c4aa
Merge pull request #15 from adafruit/main
...
update from main
2020-07-24 20:29:53 -05:00
root
204cdada7c
remove unnecessary mk files parameters
2020-07-24 09:53:40 -05:00
root
778e8bfda9
Changes to optimization option
2020-07-23 19:27:02 -05:00
Lucian Copeland
c1f731d62e
Claim USB pins at startup to prevent overwrites
2020-07-22 14:22:05 -04:00
hierophect
e232ec10ce
Merge branch 'main' into stm32-timer-allocator
2020-07-22 13:59:39 -04:00
Lucian Copeland
138189bad1
Free timers when modules de-init
2020-07-22 13:58:57 -04:00
root
d83a4ac72d
Changes to add compiler optimization option
2020-07-22 12:44:41 -05:00
root
49decf90c9
Add option for higher optimization levels
2020-07-21 10:11:08 -05:00
Lucian Copeland
dc6902a33e
Exclude timers from H7 builds
2020-07-16 17:11:24 -04:00
Lucian Copeland
6a49766df0
Fix pulseIO reset and frequency issues, remove IRQ conflict
2020-07-16 15:45:18 -04:00
Jeff Epler
1df48176ce
supervisor: factor supervisor_background_tasks from sundry ports
2020-07-15 11:49:44 -05:00
Jeff Epler
6160d11c5a
supervisor: factor out, Handle USB via background callback
2020-07-15 11:49:44 -05:00
Lucian Copeland
818b96ae61
Fix IRQ enum protections
2020-07-14 16:33:36 -04:00
Scott Shawcroft
51c888d4be
Merge pull request #3003 from Flameeyes/master
...
License tagging according to REUSE specifications.
2020-07-13 16:28:49 -07:00
Lucian Copeland
b8910676db
Add missing enum preprocessor protection
2020-07-13 11:52:30 -04:00
Lucian Copeland
eb86010176
Enable RGB Matrix
2020-07-10 11:06:12 -04:00
Lucian Copeland
edc48a505f
Complete F405 pin and periph definitions
2020-07-09 13:10:18 -04:00
Lucian Copeland
2bcc5c06c2
Fix advanced claimed pin/package timer search
2020-07-09 11:42:37 -04:00
Lucian Copeland
9c38f5dcb1
Merge remote-tracking branch 'upstream/main' into stm32-timer-allocator
2020-07-08 16:03:12 -04:00
Jeff Epler
57ab4f1329
stm: SPI: revamp pin search code
...
I discussed with Hierophect on Discord about how to "de-nest" the code
for configuring SPI objects on STM, because the problems with one
nesting level per pin becomes unmanageable with the up to 10 pins of
SDIO.
This code (which is only compile-tested so far) demonstrates the concept
we discussed.
The SCK pin is always required. Loop over all possibilities of the SCK
pin. When we are considering a particular item in the mcu_spi_sck_list
we have now become committed to using a particular periph_index. If all
the other pins can be satisfied by that periph_index, then we have a
working combination. Once we have a working combination that is not
reserved, we can return that combination. On reaching the end, we have
checked all the possible possibilities and can give the same errors as
before: One if there was a possibility that worked but was reserved;
and another if no possibility worked.
2020-07-07 14:37:50 -05:00
Diego Elio Pettenò
34b4993d63
Add license to some obvious files.
2020-07-06 19:16:25 +01:00
Lucian Copeland
c72e3536f1
Merge remote-tracking branch 'upstream/main' into stm32-timer-allocator
2020-07-03 09:50:05 -04:00
Scott Shawcroft
4a21426377
Merge pull request #3103 from hierophect/stm32-simplex-spi-fix
...
STM32: add debug flags, fix hang in simplex SPI
2020-07-02 13:42:08 -07:00
Lucian Copeland
4b66483757
Update submodule, revert direction change
2020-07-02 15:38:37 -04:00
Jeff Epler
fcddfd0f39
Merge pull request #3083 from tannewt/esp32s2_busio
...
Add busio support for the ESP32-S2
2020-07-01 21:02:08 -05:00
Lucian Copeland
87d58b3b0a
STM32: add debug flags, fix hang in simplex SPI
2020-07-01 17:48:10 -04:00
Lucian Copeland
ab9a64eafa
Add timer allocator, adjust pulsio to use general purpose timers
2020-07-01 10:35:49 -04:00
jgillick
017c188ab5
Move NVM block to increase program size.
2020-06-25 21:46:15 -07:00
Lucian Copeland
6c91af7d56
WIP
2020-06-25 17:27:01 -04:00
Jeff Epler
1d2cc0b968
I2CPeripheral: Rename class and its module
...
This is an incompatible change.
2020-06-25 11:44:19 -05:00
Scott Shawcroft
c5fa9730a8
Compiles!
2020-06-24 12:47:59 -07:00
Scott Shawcroft
a26102607e
Add UART support
2020-06-24 12:47:58 -07:00
Jeff Epler
87835c77e8
Merge pull request #3038 from jepler/compute-usb-devices
...
Compute USB_DEVICES instead of requiring it to be specified
2020-06-24 13:31:56 -05:00
Jeff Epler
f232aef786
supervisor.mk: Compute USB_DEVICES; remove from boards and ports
...
Since Actions passed on the previous commit, where this computed value
was checked against the specified value (if any), this is no net change,
except that we no longer need to specify it for particular boards or
ports.
2020-06-23 12:59:01 -05:00
Scott Shawcroft
f67b307371
Merge pull request #3045 from k0d/stm32_alignment_issue
...
Fixes issue with memory alignment in STM32
2020-06-23 10:54:08 -07:00
Jeff Epler
93d3629da2
stm: Sort configuration options and make them all conditional
...
This makes them all overridable on the board level, tersely
2020-06-23 11:02:38 -05:00
Jeff Epler
0110463811
stm: Disable USB MIDI and most USB HID
...
.. it was not in the USB descriptors anyway (lack of enough endpoints?)
2020-06-23 11:01:36 -05:00
Jeff Epler
8a760b0657
stm: Pin.c: Compute GPIO_PORT_COUNT instead of specifying manually
2020-06-22 10:45:27 -05:00
Jeff Epler
5a3a0a5092
stm: Makefile: sort files in SRC_STM32
2020-06-22 10:45:23 -05:00
Mark Olsson
23da0fa99c
Fixes issue with memory alignment in STM32
...
When compiling with optimizations on, an issue occurs where the claimed_pins/never_reset_pins memory location is shared with another variable. This causes some bad memory read, so the USB pins ended up being reset. Setting these to have an alignment of 4 bytes resolves this.
Tested on nucleo_f746zg
2020-06-18 00:51:04 +02:00
Lucian Copeland
fd4aafacbe
Add port D to LQFP64
2020-06-16 12:33:15 -04:00
Lucian Copeland
2aac3cbdce
Revert I2C timing overrides, reduce scope to module only
2020-06-15 13:51:09 -04:00
Lucian Copeland
724637faa3
Move I2C speed to clock-style definition
2020-06-11 11:17:51 -04:00
Lucian Copeland
c08702414e
Add macros for setting correct F7 and H7 I2C timing
2020-06-10 16:36:44 -04:00
Lucian Copeland
c88a8e66c6
Minor comment fix
2020-06-10 13:22:21 -04:00
Lucian Copeland
7cc8b784c3
Add missing openmv definitions
2020-06-10 10:31:24 -04:00
Lucian Copeland
b414f82669
Add DTCM and ITCM support to F7 series
2020-06-09 18:01:52 -04:00
Lucian Copeland
ad0971fb25
Override HAL_Delay and HAL_GetTick
2020-06-05 13:56:32 -04:00
Lucian Copeland
a0977cac7b
Merge remote-tracking branch 'upstream/master' into stm32-LSE-startup-fix
2020-06-04 16:15:38 -04:00
Lucian Copeland
d14e34449b
Rework LSE clock init, allow clock overrides
2020-06-04 13:21:29 -04:00
Diego Elio Pettenò
dd5d7c86d2
Fix up end of file and trailing whitespace.
...
This can be enforced by pre-commit, but correct it separately to make it easier to review.
2020-06-03 10:56:35 +01:00
Scott Shawcroft
dd2cd6f002
Merge pull request #2979 from hierophect/stm32-remove-crystals
...
STM32: Set correct crystal settings on Discovery boards
2020-06-01 15:21:39 -07:00
Lucian Copeland
75eb44f234
Note temporary issue with Nucleo boards
2020-06-01 12:26:08 -04:00
Lucian Copeland
0fe7efdf36
Set correct crystal settings on Discovery boards
2020-05-29 14:01:34 -04:00
Scott Shawcroft
ddcae19254
Merge pull request #2964 from hierophect/mimxrt-busio-cleanup
...
mimxrt10xx: Busio cleanup and bugfixes
2020-05-29 10:42:16 -07:00
Lucian Copeland
fe75c7793c
Fix SWO/Analog overlap, style changes
2020-05-29 12:19:37 -04:00
Scott Shawcroft
796373b8be
A number of small ESP32S2 fixes:
...
* Fix flash writes that don't end on a sector boundary. Fixes #2944
* Fix enum incompatibility with IDF.
* Fix printf output so it goes out debug UART.
* Increase stack size to 8k.
* Fix sleep of less than a tick so it doesn't crash.
2020-05-28 15:43:55 -07:00
Lucian Copeland
a59798ed49
Merge branch 'mimxrt-uart-oneway' into mimxrt-busio-cleanup
2020-05-27 12:31:16 -04:00
Lucian Copeland
9f5520135c
translations
2020-05-27 11:54:52 -04:00
Lucian Copeland
53fb699436
Add pin resetting across boards, fix array size detection issue
2020-05-27 11:45:15 -04:00
Scott Shawcroft
ba724fffb4
Merge remote-tracking branch 'adafruit/master' into esp32s2_digitalio
2020-05-20 10:48:27 -07:00
Lucian Copeland
66c09efae2
Add UART one-way instance search, fix bugs in stm32 implementation
2020-05-20 12:48:01 -04:00
Scott Shawcroft
fd0420d432
Update digitalio api for other ports
2020-05-20 09:23:42 -07:00
Scott Shawcroft
916ca9f8a6
Merge pull request #2910 from tannewt/esp32s2
...
Add initial ESP32S2 support
2020-05-19 12:53:23 -07:00
Scott Shawcroft
2c2b53303d
Merge pull request #2837 from k0d/serial-debug
...
Add support for a debug console, such as ST-Link VCP.
2020-05-18 18:13:31 -07:00
Mark Olsson
007c92ee6a
Enable showing the console on a debug uart
2020-05-19 02:02:52 +02:00
Scott Shawcroft
3c1469b0a5
Add port_fixed_stack for more builds
2020-05-15 16:22:33 -07:00
Daniel Pollard
ee2cb703c8
merged master
2020-05-12 14:41:28 +10:00
Lucian Copeland
94949fb46f
Add recovery domain write access, adjust stack
2020-05-11 18:02:40 -04:00
Lucian Copeland
248704b262
Merge remote-tracking branch 'upstream/master' into stm32-lsetimeout
2020-05-11 14:18:37 -04:00
Lucian Copeland
5249a7b02c
Add timeout and adjustment to LSI
2020-05-08 12:36:39 -04:00
Jeff Epler
182ae10080
Fix build after #2831 (stm32f4xx rgbmatrix) broke it
2020-05-07 18:32:50 -05:00
Scott Shawcroft
c3b3eb4c21
Merge pull request #2831 from jepler/rgbmatrix-stm
...
stm: enable RGBMatrix
2020-05-06 08:35:25 -07:00
hierophect
c311b5c002
Merge pull request #2842 from hierophect/stm32-h7-displayio
...
STM32: Add displayio to F7/H7
2020-05-05 12:37:08 -04:00
Daniel Pollard
bfa5cd9c13
refactor countio based on feedback
2020-05-05 15:23:38 +10:00
Dan Halbert
bae7a5e433
make translate again
2020-05-04 17:26:59 -04:00
Lucian Copeland
61b0994631
Fix flag typo
2020-05-01 14:46:06 -04:00
Scott Shawcroft
a863b0a349
Fix openmv_h7 build
2020-04-30 13:46:12 -07:00
Scott Shawcroft
1ca90572f1
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-30 13:25:31 -07:00
Lucian Copeland
06b62721b3
Increase H7 filesystem size
2020-04-30 15:49:17 -04:00
Lucian Copeland
435aa3d055
Add correct PID for the OpenMV
2020-04-30 14:49:47 -04:00
Lucian Copeland
4f71bd295d
Make PulseIO optional within DisplayIO
2020-04-30 14:47:50 -04:00
Lucian Copeland
89ff5589c4
Add the OpenMV-H7 R1 board
2020-04-30 12:39:20 -04:00
Jeff Epler
e5be728c1c
stm: enable protomatter
...
Testing performed: on stm32f405 feather, all pins change in plausible ways
on a logic probe. Didn't actually drive a display yet.
2020-04-30 08:58:58 -05:00
Dan Halbert
180f5c6a94
Merge remote-tracking branch 'adafruit/master' into ringbuf-fixes
2020-04-29 22:11:22 -04:00
Scott Shawcroft
a30ff70b4e
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-29 10:51:21 -07:00
Scott Shawcroft
2d7cf4b792
Merge pull request #2819 from hierophect/stm32-readme
...
STM32: Add port readme, make flash
2020-04-28 12:32:03 -07:00
Scott Shawcroft
b7804f450b
Fix stm32746g_discovery
...
Also, rename it so that matches the other board names.
2020-04-27 20:34:42 -07:00
Scott Shawcroft
e45de39998
Fix nucleo_f746zg build
2020-04-27 20:28:05 -07:00
Lucian Copeland
2a0e176a77
Add readme and dfu-flashing
2020-04-27 20:51:47 -04:00
Scott Shawcroft
de42e4af02
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-27 17:43:32 -07:00
Scott Shawcroft
40a1f3edbc
Merge pull request #2811 from jepler/update-ulab
...
ulab: actually update the submodule
2020-04-27 17:41:43 -07:00
Scott Shawcroft
755d404edf
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-27 16:45:10 -07:00
Dan Halbert
faa50df05f
Merge pull request #2817 from jepler/stm-linker-scripts
...
Standardize on FLASH_FIRMWARE section name in linker scripts
2020-04-27 18:43:26 -04:00
Jeff Epler
7eff89e9f9
linker scripts: Re-align at ":"
...
With "git show -b" you can verify that this is a whitespace only change
because the diff will be empty.
2020-04-27 12:47:52 -05:00
hierophect
d9e4155815
Merge branch 'master' into stm32f7_os
2020-04-27 12:58:15 -04:00
Mark Olsson
31d8e46063
Enables os on STM32F7
...
os.uname() works
os.urandom() doesn't work yet, will enable in another PR
2020-04-27 18:18:43 +02:00
Mark Olsson
f9096d83ac
Enables PulseIO on STM32F7
...
Tested on nucleo_f746zg
2020-04-27 17:55:07 +02:00
Jeff Epler
aff42defda
stm: Use FLASH_FIRMWARE instead of FLASH_TEXT in linker scripts
...
for compatibility with the build_memory_info script
This change was scripted:
git grep -l FLASH_TEXT | xargs sed -i s/FLASH_TEXT/FLASH_FIRMWARE/
2020-04-27 08:07:28 -05:00
Jeff Epler
485f667141
ulab: disable on espruino pico
...
this non-"express" board is nearly full. Right now it's actually possible
just to disable the "compare" module, but as this leaves it packed
pretty full I prefer to fully disable it in order to avoid the topic
returning again soon.
2020-04-27 07:47:05 -05:00
Scott Shawcroft
9e4b94f466
Merge pull request #2805 from tannewt/update_tinyusb
...
Update tinyusb
2020-04-26 20:55:36 -07:00
hierophect
652a5de242
Merge pull request #2809 from k0d/stm32f767xx_fix
...
Adds missing declarations in periph.h for stm32f767xx
2020-04-25 14:16:34 -04:00
Mark Olsson
8814dd038e
Adds missing declarations in periph.h for stm32f767xx
2020-04-25 19:50:48 +02:00
Scott Shawcroft
5c7f6e6211
Remove empty #if and add missing includes.
2020-04-24 11:48:55 -07:00
Mark Olsson
91fbbcab19
adds support for the stm32f746g_disco board
2020-04-24 16:43:39 +02:00
Lucian Copeland
c6c77726e7
Merge remote-tracking branch 'upstream/master' into stm32-docfix
2020-04-23 13:39:48 -04:00
Lucian Copeland
8791ca6af3
implement requested changes
2020-04-23 13:33:41 -04:00
hierophect
ead7c6c887
Merge pull request #2785 from k0d/ports_nucleo_f746zg
...
STM32: adds support for stm32f746xx MCU and the nucleo_f746zg board
2020-04-23 12:32:44 -04:00
Mark Olsson
83cc9783cc
STM32: adds support for stm32f746xx MCU and the nucleo_f746zg board
2020-04-23 10:48:27 +02:00
Scott Shawcroft
f13de32208
Add HSE_VALUE for STM feather.
2020-04-22 14:37:24 -07:00
Lucian Copeland
d0a2106547
Remove old build flags, add fixes for shared_matrix
2020-04-22 16:06:08 -04:00
Scott Shawcroft
b277944cf0
Fix STM so it matches the correct RTC fields.
2020-04-22 11:10:51 -07:00
Dan Halbert
fbc8719fad
ringbuf tested
2020-04-21 22:40:12 -04:00
Dan Halbert
77cd93ac2d
merge from adafruit
2020-04-21 17:47:51 -04:00
Dan Halbert
38ec3bc574
further ringbuf cleanup
2020-04-21 17:38:20 -04:00
Scott Shawcroft
17d038830d
Use our own flag for board crystal config.
2020-04-21 14:14:30 -07:00
Scott Shawcroft
bebf27e733
Merge remote-tracking branch 'adafruit/master' into lower_power
...
This isn't perfect and needs a bit more testing.
2020-04-20 18:25:13 -07:00
Mark Olsson
506f340c7d
STM32: f767: Fixes linker settings.
2020-04-20 19:15:18 +02:00
Scott Shawcroft
7e3d4c61b5
Update TinyUSB and add interrupt hooks.
2020-04-17 14:16:49 -07:00
Lucian Copeland
9e49fc13f4
startup file crash fix, H7 bin fix
2020-04-16 17:33:48 -04:00
Lucian Copeland
54abfc2e8b
translations-merge
2020-04-15 10:29:05 -04:00
Lucian Copeland
6427994b14
Implement requested changes
2020-04-15 10:22:51 -04:00
Scott Shawcroft
b580b34cbf
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-04-14 17:14:44 -07:00
Scott Shawcroft
7dfcae6067
Tweaks from jepler
2020-04-14 17:09:48 -07:00
Jeff Epler
09dc46a984
Add Protomatter and FramebufferDisplay
2020-04-14 18:24:54 -05:00
Lucian Copeland
83a55f65a4
Implement cache-based reads
2020-04-13 15:14:38 -04:00
Lucian Copeland
426d2afe28
Fix pin mapping for the H7 Nucleo
2020-04-13 14:36:49 -04:00
Lucian Copeland
5ac38c95cc
Various requested fixes
2020-04-13 12:03:05 -04:00
Lucian Copeland
92a0621e59
Add busio support, cleanup
2020-04-09 13:43:19 -04:00
Scott Shawcroft
01941c027b
Fix up STM
...
Enable the Alarm IRQ earlier and correct bit clearing.
2020-04-08 14:41:57 -07:00
Scott Shawcroft
d0a25ca9ac
Tweaks based on dhalberts feedback
2020-04-08 10:49:46 -07:00
Lucian Copeland
9761672d42
Linker file restructure, TCM and MPU additions
2020-04-03 16:33:18 -04:00
Lucian Copeland
47a5d83267
Implement F7 Nucleo
2020-04-02 11:47:16 -04:00
Lucian Copeland
2f764ded63
merge and docs
2020-04-01 13:52:53 -04:00
Lucian Copeland
a89928c13c
Implement requested changes
2020-04-01 13:02:05 -04:00
Scott Shawcroft
1071924701
Fix thunderpack build
2020-03-31 17:05:37 -07:00
Scott Shawcroft
8fe512c7e9
Merge remote-tracking branch 'adafruit/master' into lower_power
2020-03-31 15:13:58 -07:00
Scott Shawcroft
4b063aeb29
Hack up STM32 PulseIn so it builds
2020-03-31 15:12:11 -07:00
Lucian Copeland
e2be069686
Support cached internal flash on the H743
2020-03-28 18:30:46 -04:00
Jeff Epler
54e8c63b4f
Merge pull request #2730 from tannewt/fix_fourwire_phase_polarity
...
Add polarity and phase to FourWire.
2020-03-28 07:28:37 -05:00
Scott Shawcroft
798118b74f
Update board.c's to remove remaining tick.h
2020-03-27 14:52:35 -07:00
Scott Shawcroft
b043384949
Update built in display init
2020-03-27 14:35:29 -07:00
Lucian Copeland
7995bcac40
Flash additions
2020-03-27 14:15:33 -04:00
Lucian Copeland
348df4be2b
Merge remote-tracking branch 'upstream/master' into stm32x7-setup
2020-03-26 18:16:11 -04:00
Lucian Copeland
c4db8b87e2
Add F7 and H7 Support to the STM32 port
...
Restructures the STM port of Circuitpython to be more generic about the STM32 chip lines to support
the F7 and H7 series of chips. Adds the new Packages directory to organize different chip layouts
between lines. Makes general changes to the Makefile to condense board-level flags to the minimum
and support the new chip series. Adds the new chip line to the Peripherals directory, along with
new python tools used to generate peripheral text automatically in the tools/ directory.
2020-03-26 18:01:17 -04:00
siddacious
9e0c00dfd4
adding a backlight polarity flag to Display
2020-03-25 22:51:20 -07:00
Scott Shawcroft
ea0ce39962
Simplify STM a bit.
2020-03-24 15:49:24 -07:00
jgillick
8ed4deee9d
Rename pins
2020-03-23 23:06:55 -07:00
Scott Shawcroft
653b7619ec
Add back microsecond delay to STM32
2020-03-23 16:09:50 -07:00
Scott Shawcroft
c0c4c4403a
Factor out stm32f4xx_hal_conf.h
2020-03-23 14:46:25 -07:00
jgillick
29ce756709
PR feedback.
2020-03-22 18:41:19 -07:00
jgillick
a79ac35173
Rename NVM_BYTEARRAY_BUFFER_SIZE
2020-03-22 15:20:58 -07:00
jgillick
68195a8dfe
Update NVM_BYTEARRAY_BUFFER_LEN
2020-03-22 15:19:53 -07:00
jgillick
d76b76cb1d
Add non-volatile memory support to STM
2020-03-22 02:22:59 -07:00
jgillick
c62b724b24
Merge remote-tracking branch 'circuitpython/master' into jgillick/circuitpython/stm32f412c
2020-03-21 23:36:15 -07:00
Scott Shawcroft
2623022c84
Initial work for STM32. Need to fix us delay and PulseIn still.
2020-03-20 12:58:34 -07:00
jgillick
d9e491a9e8
Remove unnecessary change
2020-03-19 00:02:23 -07:00
jgillick
284073584a
Cleanup
2020-03-19 00:01:32 -07:00