8917 Commits

Author SHA1 Message Date
Tomas Vanek
f9733705a9 esp32/machine_pin: Make GPIO 26 usable for S2,S3 if SPIRAM not config'd.
Signed-off-by: Tomas Vanek <vanekt@fbl.cz>
2021-12-15 15:48:46 +11:00
Pierre Constantineau
f3ec6ee760 tested hardware and cleaned-up commented out pin defs 2021-12-14 21:46:04 -06:00
Asura
7b2980ead2
fix missing pintout.
fix missing pintout p20 & p21 for makerdiary_nrf52840_mdk_usb_dongle.
2021-12-15 09:57:26 +08:00
Scott Shawcroft
2693e2ce0a
Add neopixel support on PWM capable pins
It'll be hard to do PWM from them concurrently

Fixes #5697
2021-12-14 16:59:53 -08:00
Tim Hawes
54e87d3660
Apply suggestions from code review
Co-authored-by: Scott Shawcroft <scott@tannewt.org>
2021-12-14 20:03:44 +00:00
robert-hh
5ca56aaf16 mimxrt: Tidy up the board flash related files.
- Move the qspi_xxxx_flash_config.c files to hal.
  It turned out that they are less board than flash type specific.
- Change to a common flexspi_flash_config.h header file.
2021-12-14 20:31:20 +01:00
Pierre Constantineau
162e253949 finalizing pin assignments prior to final hardware test 2021-12-14 09:45:39 -06:00
robert-hh
c5dbbf71c0 mimxrt: Use -Og instead of -O0 for DEBUG builds.
Thanks for the hint, Damien. The DEBUG build got very large recently.
The major difference is, that inline function are now inlined and
not included as a function. That's good and maybe bad. The good thing is,
that the code speed si now close to the final code. It could be worse
in single step debugging. I'll see.

Setting this option caused a new warning and a formatting error
to pop up at different places. Fixed as well.
2021-12-14 08:07:52 +01:00
robert-hh
64aa0bcb88 mimxrt: Enable ticks_cpu at boot time for NDEBUG builds only.
Otherwise, it get's in trouble with a Debugger. Reason to be found.
Also: Increase code segment to 2 MB for the MIMXRT1050_EVK build.
2021-12-14 08:07:52 +01:00
robert-hh
74e8db0ed1 mimxrt: Refactor the reading of the machine id.
The ID is read in a single function and used for:
- machine.unique_id()
- Ethernet MAC addresses.
- ...

That facilitates use of other MCU using a different access method for
the ID (e.g. i.MX RT1176).
2021-12-14 08:07:52 +01:00
robert-hh
1e9eaa7af5 mimxrt: Add a driver for the DP83848 PHY device.
Just another choice for the PHY interface.

Added: Keyword option phy_clock=LAN.IN or LAN.OUT
to define the source of the 50MHZ clock for the PHY
interface. The RMII clock is not enabled if it
is generated by a PYH board. Constants:

LAN.IN  The clock is provided by the PHY board.
LAN.OUT The clock is provided by the MCU board.

The default is LAN.OUT or the value set in mpconfigboard.h, which
is currently set to IN only for the SEEED ARCH MIX board. Usage etc:

lan = LAN(phy_type=LAN.PHY_DP83848, phy_clock=LAN.IN)
2021-12-14 08:07:52 +01:00
robert-hh
5d8941ec85 mimxrt: Fix a tiny unnoticed bug in sdcard.c.
This code line will hardly ever be compiled and executed, but since
it is there, it must be correct.
2021-12-14 08:07:52 +01:00
robert-hh
ea09dccfea mimxrt: Re-Enable eth checksum creation by HW.
The initial problem with a wrong ICMP checksum was caused by
the test code setting a checksum and the HW taking that probably as
the start value and ending up with 0xffff. With a checksum field of 0
set by the test code the HW creates the proper checksum.
2021-12-14 08:07:52 +01:00
robert-hh
bbe25f4704 mimxrt: Support selection of PHY type and address.
Useful for boards without a PHY interface, where that has to be
attached. Like the Seed ARCH MIX board or Vision SOM. Phy drivers
supported so far are:

- KSZ8081
- DP83825
- LAN8720

More to come. Usage e.g.:
lan = LAN(phy_type=LAN.PHY_LAN8720, phy_addr=1)

The default values are those set in mpconfigboard.h.
2021-12-14 08:07:52 +01:00
robert-hh
bc1b0fd2c1 mimxrt: Define UART 0 on MIMXRT boards.
UART 0 is attached to the Debug USB port. The settings are
115200 Baud, 8N1.
For MIMXRT1010_EVK this is identical to UART1. For the other boards,
this is an additional UART.
2021-12-14 08:07:52 +01:00
iabdalkader
f21c565583 rp2/machine_uart: Handle and clear UART RX timeout IRQ.
The pico-sdk 1.3.0 update in 97a7cc243b028833bdcb8ce0bc19b2bce7545851
introduced a change that broke RP2 Bluetooth UART, and possibly UART in
general, which stops working right after UART is initialized.  The commit
raspberrypi/pico-sdk@2622e9b enables the UART receive timeout (RTIM) IRQ,
which is asserted when the receive FIFO is not empty, and no more
characters are received for a period of time.

This commit makes sure the RTIM IRQ is handled and cleared in
uart_service_interrupt.
2021-12-14 14:59:39 +11:00
Damien George
5adb1fa40e esp32,esp8266: Extract qstr from object when comparing keys in config().
Following on from a previous fix for the same problem made in
3a431fba50c96cc47d8273a6934e200993197b14.

Fixes issue #8052.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 14:27:13 +11:00
Tim Hawes
c325633f8e Add methods to ssl.SSLContext for handling self-signed certs 2021-12-14 01:00:50 +00:00
Tim Hawes
ef414bf1bd Handle server_hostname argument in espressif SSLContext.wrap_socket 2021-12-14 01:00:50 +00:00
Damien George
6995cf03dd stm32/sdcard: Add config option to force MM card capacity.
The current ST HAL does not support reading the extended CSD so cannot
correctly detect the capacity of high-capacity cards.  As a workaround, the
capacity can be forced via the MICROPY_HW_MMCARD_LOG_BLOCK_NBR config
option.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 10:48:01 +11:00
Damien George
b26704aac5 stm32/sdcard: Support 8-bit wide SDIO bus.
Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 10:48:01 +11:00
Damien George
9a1ab2286d stm32/main: Call sdcard_init when only MICROPY_HW_ENABLE_MMCARD enabled.
Otherwise, if MMCARD is enabled and not SDCARD, then the GPIO will not be
configured for SDIO.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 10:48:01 +11:00
Damien George
88ac5a3116 stm32: Update L4 code to build with latest stm32lib and L4 HAL 1.17.0.
Signed-off-by: Damien George <damien@micropython.org>
2021-12-14 10:48:01 +11:00
Scott Shawcroft
7fea970379
Merge pull request #5597 from NathanY3G/add-board-sparkfun-thing-plus-stm32
Add board definition for SparkFun Thing Plus - STM32
2021-12-13 14:58:04 -08:00
Pierre Constantineau
9119a32a5d fixed row0 and added encoder pins 2021-12-13 13:31:00 -06:00
Tim Hawes
a3c8760d41 Fix to error checking in espressif SSLSocket 2021-12-13 17:55:43 +00:00
Nathan Young
ffd41cf2b7 Updated USB product name to remove duplication
Output from lsusb now reads: SparkFun Electronics Thing Plus - STM32
2021-12-13 18:01:07 +01:00
Nathan Young
463d94475b Use correct PID for SparkFun Thing Plus - STM32
This value was kindly provided by  brhoff720.
2021-12-13 17:37:02 +01:00
Dan Halbert
bbe30514ef Fix other INTENCLR and INTENSET to write whole reg 2021-12-12 22:25:44 -05:00
Dan Halbert
c06eee9841 Clear TAMPER interrupt properly; make keypad module table const 2021-12-12 22:00:08 -05:00
microDev
5939c11406
add secondary i2c singleton on adafruit_qtpy_rp2040 2021-12-11 23:14:22 +05:30
microDev
b6858e4ca7
allow multiple board buses
Co-authored-by: Neradoc <neraOnGit@ri1.fr>
2021-12-11 23:07:21 +05:30
Pierre Constantineau
86ddecfd4f merge main and resolve conflict 2021-12-10 16:57:50 -06:00
Pierre Constantineau
dac71e684d moved aliased boards down to actual builds 2021-12-10 16:34:06 -06:00
Damien George
0892ebe091 stm32/boards: Enable MICROPY_HW_ENABLE_SERVO on various boards.
Fixes issue #8059.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-10 23:19:20 +11:00
Damien George
5fc55999b2 stm32/boards: Remove unused MICROPY_HW_ENABLE_TIMER config.
Signed-off-by: Damien George <damien@micropython.org>
2021-12-10 23:19:00 +11:00
Damien George
10c6f03cbe stm32/boards: Remove stray '+' characters at start of lines in ld files.
Signed-off-by: Damien George <damien@micropython.org>
2021-12-10 23:15:25 +11:00
Pierre Constantineau
a043f65352 adding Pykey family of boards 2021-12-09 23:25:48 -06:00
Scott Shawcroft
8c480832a7
Add generic CM4 board and update PIDs 2021-12-09 17:30:32 -08:00
Scott Shawcroft
6626319338
Add SPI support
It uses both SPI and AUX SPI peripherals
2021-12-09 17:30:03 -08:00
Michael Himing
d72311f76a Update xiao rp2040 pins 2021-12-10 09:39:31 +11:00
Scott Shawcroft
5ea4082a18
Merge pull request #5664 from jpconstantineau/bluemicro833
Add Bluemicro833 as new nRF52833 board
2021-12-09 10:27:41 -08:00
Dan Halbert
3bdf2a5cde
Merge pull request #5691 from jepler/esp32s3-pids
Fix PIDs to match official espressif list
2021-12-09 09:08:35 -05:00
Damien George
c613f5bb49 stm32/boards/LEGO_HUB_NO6: Set filesystem label as HUB_NO6.
Signed-off-by: Damien George <damien@micropython.org>
2021-12-09 16:51:35 +11:00
Jim Mussared
92f54fe8d9 stm32/boards/NUCLEO_WB55: Fix LED ordering.
These were commented correctly by their colour, but in the wrong order with
respect to the PCB silkscreen.

Fixes issue #8054.

Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-12-09 14:03:35 +11:00
Jeff Epler
937e0740f4
Fix PIDs to match official espressif list
See the slightly deceptively titled
 * https://github.com/espressif/usb-pids/pull/29
2021-12-08 20:27:34 -06:00
Damien George
9ffb1ad2f8 unix/Makefile: Use -Og instead of -O0 for debug builds.
For the coverage build this reduces the binary size to about 1/4 of its
size, and seems to help gcov/lcov coverage analysis so that it doesn't miss
lines.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-09 12:53:09 +11:00
Damien George
71168ec55c unix/coverage: Change remaining printf to mp_printf.
For consistency with all other prints in this file, so that the ordering
of output is correct.

Signed-off-by: Damien George <damien@micropython.org>
2021-12-09 12:38:50 +11:00
Jim Mussared
3770fab334 all: Update Python formatting to latest Black version 21.12b0.
Signed-off-by: Jim Mussared <jim.mussared@gmail.com>
2021-12-09 12:09:40 +11:00
Pierre Constantineau
7137f1b1c0 added never_reset to board_init 2021-12-08 17:29:53 -06:00