6676 Commits

Author SHA1 Message Date
Maureen Helm
92a5ee6ac1 zephyr: Replace broken shell_net_iface() with more general shell_exec().
The zephyr function net_shell_cmd_iface() was removed in zephyr v1.14.0,
therefore the MicroPython zephyr port did not build with newer zephyr
versions when CONFIG_NET_SHELL=y. Replace with a more general
shell_exec() function that can execute any zephyr shell command. For
example:

>>> zephyr.shell_exec("net")

Subcommands:
  allocs     :Print network memory allocations.
  arp        :Print information about IPv4 ARP cache.
  conn       :Print information about network connections.
  dns        :Show how DNS is configured.
  events     :Monitor network management events.
  gptp       :Print information about gPTP support.
  iface      :Print information about network interfaces.
  ipv6       :Print information about IPv6 specific information and
              configuration.
  mem        :Print information about network memory usage.
  nbr        :Print neighbor information.
  ping       :Ping a network host.
  pkt        :net_pkt information.
  ppp        :PPP information.
  resume     :Resume a network interface
  route      :Show network route.
  stacks     :Show network stacks information.
  stats      :Show network statistics.
  suspend    :Suspend a network interface
  tcp        :Connect/send/close TCP connection.
  vlan       :Show VLAN information.
  websocket  :Print information about WebSocket connections.

>>> zephyr.shell_exec("kernel")

kernel - Kernel commands
Subcommands:
  cycles   :Kernel cycles.
  reboot   :Reboot.
  stacks   :List threads stack usage.
  threads  :List kernel threads.
  uptime   :Kernel uptime.
  version  :Kernel version.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-12-07 23:01:00 +11:00
Damien George
cb1bb7592e stm32/Makefile: Change -O0 to -Og for DEBUG=1 builds.
The -Og optimisation level produces a more realistic build, gives a better
debugging experience, and generates smaller code than -O0, allowing debug
builds to fit in flash.

This commit also assigns variables in can.c to prevent warnings when -Og is
used, and builds a board in CI with DEBUG=1 enabled.

Signed-off-by: Damien George <damien@micropython.org>
2020-12-07 22:27:38 +11:00
Damien George
1e4e2644ec stm32: Add support for a board to reserve certain peripherals.
Allows reserving CAN, I2C, SPI, Timer and UART peripherals.  If reserved
the peripheral cannot be accessed from Python.

Signed-off-by: Damien George <damien@micropython.org>
2020-12-07 17:22:08 +11:00
Damien George
4ce6427bd7 stm32/i2c: Factor I2C finding code to i2c_find_peripheral function.
Signed-off-by: Damien George <damien@micropython.org>
2020-12-07 17:21:36 +11:00
iabdalkader
7dc2f4ed38 stm32/powerctrl: Ensure SysTick is disabled on STOP mode entry for H7.
Even though IRQs are disabled this seems to be required on H7 Rev Y,
otherwise Systick interrupt triggers and the MCU leaves the stop mode
immediately.
2020-12-07 17:00:56 +11:00
iabdalkader
7b9b6d080a stm32/powerctrl: Set H7 RTC wakeup flags. 2020-12-07 17:00:42 +11:00
iabdalkader
8add94e94e stm32/powerctrl: Disable RTC write protection before changing flags. 2020-12-07 17:00:21 +11:00
iabdalkader
463a275bc4 stm32/powerctrl: On H7, re-enable disabled OSCs/PLLs on exit from STOP.
This commit saves OSCs/PLLs state before STOP mode and restores them on
exit.  Some boards use HSI48 for USB for example, others have PLL2/3
enabled, etc.
2020-12-07 16:58:38 +11:00
iabdalkader
3e5dd2dbcc stm32/powerctrl: Fix STOP mode voltage scaling on H7 REV V devices. 2020-12-07 16:58:00 +11:00
iabdalkader
e9e619fa24 stm32/powerctrl: Define RCC_SR_SFTRSTF flag for H747. 2020-12-07 16:57:29 +11:00
iabdalkader
ce9197eb20 stm32/Makefile: Disable text compression in debug builds.
Otherwise the flash overflows.

Fixes issue #6653.
2020-12-07 16:45:15 +11:00
iabdalkader
849748873c stm32/modmachine: Add device and revision ids to machine.info(). 2020-12-07 16:39:18 +11:00
BennyE
70827ac3da debug log for wifi scan, start stop 2020-12-06 23:38:04 +01:00
Scott Shawcroft
1130b80e2a
Merge pull request #3612 from gamblor21/bus_device
Moving Adafruit_CircuitPython_BusDevice to core
2020-12-02 13:23:02 -08:00
Dan Halbert
348392f8cc
Merge pull request #3775 from tannewt/nina_certs
Use nina-fw root certs
2020-12-02 16:13:19 -05:00
Dan Halbert
9b3186b625
Merge pull request #3776 from tannewt/backup_socket_timeout
Two minor socket changes
2020-12-02 16:12:29 -05:00
Scott Shawcroft
608c98501b
Merge remote-tracking branch 'adafruit/main' into msgpack 2020-12-02 13:10:39 -08:00
Dan Halbert
31acfedf93
Merge pull request #3780 from tannewt/block_while_erasing
Block all tasks (not interrupts) during flash erase
2020-12-02 16:10:25 -05:00
Bernhard Boser
34bbcc4910
exclude nrf/simmel due to lack of flash 2020-12-02 13:05:00 -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
gamblor21
cb863e4c5c Added to partial builds where frozen removed 2020-12-01 22:19:48 -06:00
Bernhard Boser
546b15bf1a
add trailing newline 2020-12-01 18:42:07 -08:00
Bernhard Boser
87d4184dd5
exclude spresense 2020-12-01 18:42:06 -08:00
Bernhard Boser
582a47d71a
rename read, write to read_bytes, write_bytes 2020-12-01 18:41:11 -08:00
Bernhard Boser
59c3e25168
disable on boards tight on memory. add stddef.h to imports (not actually needed). 2020-12-01 18:39:24 -08:00
Bernhard Boser
513253bc3f
moved logic to shared-module and added documentation 2020-12-01 18:38:14 -08:00
Bernhard Boser
90c203a3dd
add module msgpack 2020-12-01 18:38:14 -08:00
Scott Shawcroft
73e22f9eeb
Block all tasks (not interrupts) during flash erase
Otherwise we risk running code from flash while an erase is in
progress, crashing and corrupting the file system.

Related to #3744
2020-12-01 18:15:06 -08:00
gamblor21
fe1c2fa6f0 Removed bus device from simmel build 2020-12-01 19:11:17 -06:00
Dan Halbert
8b7c23c1ee address review comments 2020-12-01 20:01:14 -05:00
Mark
237385798c
Merge branch 'main' into bus_device 2020-12-01 15:47:16 -06:00
Scott Shawcroft
927624468d
Two minor socket changes
* Remove BrokenPipeError and prefer to return the number of bytes
  received. (May be zero.)
* Add two minute backup timeout to reduce the chance we hang on
  recv accidentally.
2020-11-30 18:39:50 -08:00
Scott Shawcroft
4ac4faaaf6
Use nina-fw root certs
That way we have one set we use for all of Adafruit's connected
devices.
2020-11-30 17:02:26 -08:00
Scott Shawcroft
5b3c930e38
Merge pull request #3738 from microDev1/fix-touch
ESP32S2: Fix multiple touchpad don't work simultaneously
2020-11-30 16:03:16 -08:00
Scott Shawcroft
a975ef4971
Merge pull request #3695 from cwalther/movable
Add movable supervisor allocations
2020-11-30 16:00:55 -08:00
Scott Shawcroft
98cf7f67d4
Merge pull request #3773 from dhalbert/no-samd21-complex-arithmetic
Disable complex arithmetic on SAMD21 builds to make space
2020-11-30 13:47:56 -08:00
Dan Halbert
dbfabddf58 rename ESP TX and RX pins; remove support 2020-11-30 11:11:04 -05:00
Dan Halbert
9768951a2a Disable complex arithmetic on SAMD21 builds to make space 2020-11-29 15:34:38 -05:00
Dan Halbert
848eb28132 esp-uart-pins 2020-11-28 14:52:56 -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
28d9e9186e Disable complex arithmetic on SAMD21 builds to make space 2020-11-28 10:12:46 -05:00
Dan Halbert
596e0e4bd2 merge from upstream 2020-11-27 16:06:57 -05:00
Dan Halbert
e308a9ec11 working! PinAlarm not implemented yet. 2020-11-27 16:03:37 -05:00
Dan Halbert
104a089677 deep sleep working; deep sleep delay when connected 2020-11-26 22:06:37 -05:00
microDev
e90cb3ad86
Merge branch 'main' into fix-touch 2020-11-26 11:33:45 +05:30
microDev
6af48bb24c
reset touchin on every vm run 2020-11-26 11:22:44 +05:30
Jeff Epler
7923aa0a62
Merge pull request #3708 from hierophect/esp32s2-udp
ESP32-S2: Add UDP with recvfrom_into and sendto
2020-11-25 21:11:20 -06:00
Jeff Epler
6fd123a5c4
Merge pull request #3758 from tannewt/update_connect_doc
Update wifi.Radio.connect doc
2020-11-25 21:09:56 -06:00
Scott Shawcroft
abff2615cb
Merge pull request #3754 from hierophect/esp-spi-pinclaim
ESP32S2: fix pin claiming bugs
2020-11-25 15:11:29 -08:00
Dan Halbert
ef0830bfe2 merge from upstream + wip 2020-11-25 17:52:06 -05:00