Commit Graph

3810 Commits

Author SHA1 Message Date
Jeff Epler 2bb44f6c4d
Merge pull request #3486 from microDev1/fixTranslate
Update make translate script
2020-09-29 14:32:49 -05:00
Jeff Epler 611f81ac1a canio: actually drop the _error_count properties
thanks @tannewt
2020-09-29 14:25:53 -05:00
microDev 4c7d9e3aaf
Update make translate script 2020-09-29 11:14:30 +05:30
Jeff Epler d4ee440a91
Merge pull request #3475 from tannewt/esp_uf2
Reorganize sdkconfigs and release UF2s
2020-09-28 20:39:37 -05:00
Jeff Epler dd6e7f5a8a mimxrt10xx: Add required header for NORETURN definition 2020-09-28 18:56:01 -05:00
Jeff Epler 1dbb59271c esp32: Use esp_restart from reset_to_bootloader; redeclare it NORETURN 2020-09-28 18:56:01 -05: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
Jeff Epler f4e36fc7f6 CAN: Use mp_obj_t insteaed of canio_message_obj_t, get rid of rtr field 2020-09-28 17:22:00 -05:00
Jeff Epler 3e97e9c4be canio: Listener: shuffle function declarations around 2020-09-28 17:22:00 -05:00
Jeff Epler 48bda589b8 Listerner: read -> receive, drop readinto
This prepares for creating a separate RemoteTransmissionRequest class
2020-09-28 17:22:00 -05:00
Jeff Epler 79ca430ddf Match: address -> id 2020-09-28 17:22:00 -05:00
Scott Shawcroft abdbbf9e24
One grep 2020-09-28 15:10:12 -07:00
Lucian Copeland 128b4a013b Add non-calibrated ADC 2020-09-28 12:11:08 -04:00
Anson He 96323ac3ac Default power on Wio Terminal's 40 Pin 2020-09-27 10:21:25 +08:00
Jeff Epler 791d20f16c give qtpy haxpress its own USB PID 2020-09-26 11:45:53 -05:00
Jeff Epler 9944935fde qtpy haxpress: enable RTC 2020-09-26 11:33:10 -05:00
Mark Roberts 22a7696fac Changes take 2: missed ugame10 board 2020-09-25 22:17:59 -04:00
Mark Roberts b921543571 Requested changes take 1 2020-09-25 21:27:29 -04:00
Jeff Epler eadb4de144 qtpy_m0_haxpress: add 2020-09-24 16:58:24 -05:00
Scott Shawcroft dd86cb00ad
Merge pull request #3448 from hierophect/esp32-sd-fix
ESP32S2 - Fix SPI's SD card issue, add pin protections
2020-09-23 12:30:01 -07:00
Scott Shawcroft bcabf5e019
Merge pull request #3457 from ladyada/qtpy_m0
fix pins for rev C
2020-09-23 11:31:28 -07:00
Lucian Copeland 00517b2600 Move missing pin warning to shared-bindings 2020-09-23 11:39:39 -04:00
lady ada 9db7625717 neopix is default on! 2020-09-23 11:19:01 -04:00
lady ada 5384479a61 fix pins for rev C 2020-09-22 23:28:23 -04:00
Scott Shawcroft 98185e914b
Merge pull request #3425 from jepler/canbus
canio: Initial implementation for SAM E5x MCUs
2020-09-22 12:39:52 -07:00
Jeff Epler 59580d0f2d canio: Fix implementation bugs in atmel-sam 2020-09-22 09:36:29 -05:00
microDev add230b4da
Update port.c 2020-09-22 11:37:12 +05:30
Jeff Epler 4869dbdc67 canio: rename from _canio
This reflects our belief that the API is stable enough to avoid incompatible changes during 6.x.
2020-09-21 16:44:26 -05:00
Jeff Epler 9e8f1820c8 canio.CAN: switch rx/tx, make both mandatory, move declarations around 2020-09-21 16:44:26 -05:00
Jeff Epler 4e4853dcb2 common.template.ld: remove unneeded line 2020-09-21 16:44:26 -05:00
Jeff Epler df379b84cb remove unneeded symbols 2020-09-21 16:44:26 -05:00
Jeff Epler 7fd6cab2ac canio: Make both tx and rx (but not both) optional
.. loopback and silent come from the (optional) constructor parameters
not guessing based on the pin specification

.. docstring & comment improvements
2020-09-21 16:44:26 -05:00
Jeff Epler 09f8a83a75 samd: template.ld: put canram in its own output section 2020-09-21 16:44:26 -05:00
Jeff Epler a76119afcb add _canio to Feather M4 CAN 2020-09-21 16:44:26 -05:00
Jeff Epler 67d8f108bb Add CAN to SAM E51 clock config 2020-09-21 16:44:26 -05:00
Jeff Epler 44c5b2bbb1 Respond to review comments
Thanks @tannewt!
2020-09-21 16:44:26 -05:00
Jeff Epler 58b920ed97 fix whitespace 2020-09-21 16:44:26 -05:00
Jeff Epler 27cbb690e5 _canio: Add listener matching
Lightly tested:
 * no matches (catch-all)
 * standard address single address matches (even and odd positions)
 * standard address mask matches
 * only tested that extended doesn't match non-extended
2020-09-21 16:44:26 -05:00
Jeff Epler 635fcadb59 _canio.CAN: add error handling & bus state 2020-09-21 16:44:26 -05:00
Jeff Epler a2e1867f69 _canio: Minimal implementation for SAM E5x MCUs
Tested & working:

 * Send standard packets
 * Receive standard packets (1 FIFO, no filter)

Interoperation between SAM E54 Xplained running this tree and
MicroPython running on STM32F405 Feather with an external
transceiver was also tested.

Many other aspects of a full implementation are not yet present,
such as error detection and recovery.
2020-09-21 16:44:26 -05:00
Jeff Epler 183649aad8 samd: move mcu_find_pin_function to header
.. it'll be used in can as well as sdio
2020-09-21 16:44:07 -05:00
Lucian Copeland 22d9a94f2b Use write_value, add missing pin exceptions 2020-09-21 13:47:14 -04:00
Scott Shawcroft c963771b4b
Merge pull request #3445 from microDev1/boardInfo
Update microS2 config files
2020-09-21 10:33:38 -07:00
microDev 40ec7a66e4
Update microS2 config files 2020-09-21 14:39:31 +05:30
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 9cc803eb95
Merge pull request #3432 from bd34n/rename-bdmicro-vina-m0-d21
Rename board bdmicro_vina_m0 to bdmicro_vina_d21 and update boardfiles.
2020-09-19 13:41:21 -04:00
Dan Halbert b28b31196d
Merge pull request #3438 from nitz/patch-1
[Makerdiary nRF52840 M.2 Devkit] Add SDA & SDL, RX & TX to pins.c
2020-09-18 21:51:22 -04:00
Dan Halbert dfd09bba57
Merge pull request #3433 from astrobokonon/esp32s2-bssid
ESP32S2: Allow connecting to specific bssid
2020-09-18 21:31:15 -04: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
Dan Halbert 5116375604
Merge pull request #3436 from jepler/fix-spi-sercom4
samd: SPI: improve conditional code
2020-09-18 19:14:39 -04:00
Dan Halbert 23dd7c7c96
Merge pull request #3435 from jepler/fix-sdhc1
sdioio: fix code for the case where there is no SDHC1
2020-09-18 17:10:59 -04:00
nitz 8d6a28a9ff
Update user button names. 2020-09-18 17:01:44 -04:00
Dan Halbert 550b42e4d3
Merge pull request #3434 from jepler/same54-disable-cpu-voltage
sam e54: disable microcontroller.cpu.voltage
2020-09-18 15:20:43 -04:00
nitz 5249a228a0
More pin names cleanup. 2020-09-18 14:27:00 -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
nitz db078922e4
Removed TXD/RXD, fixed whitespace. 2020-09-17 21:32:19 -04:00
Chris Dailey be3e478fce
Add SDA & SDL, RX & TX to pins.c
Despite the [silk on the dock board](https://wiki.makerdiary.com/nrf52840-m2-devkit/resources/nrf52840_m2_devkit_hw_diagram_v1_0.pdf), the SDA/SCL pins weren't defined. Though, they were already defined in `mpconfigboard.h`.

Same for RX/TX. It looks like it declared `TXD` and `RXD`, so I didn't want to remove those, but I think it makes sense to have the "standard" pin names, but I moved ithem to illustrate they were all referencing the same pins.

I mimicked the whitespace I saw in the metro_nrf52840_express port.
2020-09-17 20:46:59 -04:00
Jeff Epler 45eec5b5a5 samd: SPI: improve conditional code
I recently misdiagnosed a "maybe-uninitialized" diagnostic as a bug in
asf4.  However, the problem was in our SPI code.

A special case for samr21 MCUs was being applied to same54p20a and possibly
other D5x/E5x MCUs, since the check was simply for pin PC19 existing at all.

Change the check to use the macro PIN_PC19F_SERCOM4_PAD0 which is only
defined if special function F of pin PC19 is SERCOM4 PAD0.

Reorganize the code a little bit so that brace-matching in editors is
not confused by the conditionalized code, including an unrelated change
for APA102_SCK's condition.

Revert the change to the Makefile that incorrectly attempted to silence
the diagnostic.
2020-09-17 18:30:22 -05:00
Jeff Epler c73182803d sdioio: fix code for the case where there is no SDHC1
.. it doesn't really make a difference (the old code created an empty
else{} statement) but this is more correct.
2020-09-17 18:29:31 -05:00
Jeff Epler 1b29ceaf1a sam e54: disable microcontroller.cpu.voltage
This hangs, and the usual workarounds didn't work.
2020-09-17 18:27:43 -05:00
Scott Shawcroft 17bdc969db
Reorganize sdkconfigs and release UF2s 2020-09-17 16:01:23 -07:00
Ryan T. Hamilton 1805e92038 Add else case for non-bssid usage 2020-09-17 15:04:27 -07:00
Scott Shawcroft 7f60ebd6c7
Merge pull request #3426 from tannewt/esp_flash_sizes
Add partition layouts for 8 and 16 MB as well.
2020-09-17 13:27:58 -07: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
Scott Shawcroft 9cf9441ba6
Merge pull request #3393 from tannewt/fix_spi_psram
Add non-DMA SPI support.
2020-09-17 11:11:56 -07:00
Scott Shawcroft 78338ac12b
Merge pull request #3417 from hierophect/esp32s2-readme
ESP32S2: Add Readme
2020-09-17 10:58:17 -07:00
Ryan T. Hamilton 1e3241ec6d
Merge branch 'main' into esp32s2-bssid 2020-09-16 17:15:01 -07:00
Ryan T. Hamilton daa1dd278d connect now accepts bssid 2020-09-16 16:25:17 -07:00
Brian Dean 81ee874531 pins.c: fix trailing whitespace 2020-09-16 16:40:04 -04:00
Brian Dean 847d609ddc rename board bdmicro_vina_m0 to bdmicro_vina_d21 and update boardfiles appropriately 2020-09-16 16:27:24 -04:00
Scott Shawcroft c55deb54f0
Merge pull request #3427 from usini/muselab_nanoesp32_s2
Added board - Muselab nanoESP32-S2
2020-09-16 12:23:41 -07:00
Lucian Copeland 00ee94d24b Add SPI memset, optional flags 2020-09-16 14:22:18 -04:00
Scott Shawcroft fb90daa0ff
Merge pull request #3422 from askpatrickw/rtc-support
RTC enabled
2020-09-16 11:12:00 -07:00
askpatricw 18285f96e8 RTC is pickd up automatically 2020-09-16 10:13:07 -07:00
Dan Halbert d774678a0f
Merge pull request #3369 from kamtom480/camera
Add camera module
2020-09-16 12:29:58 -04:00
Lucian Copeland 478a4b6405 Clarify location of port root 2020-09-16 10:51:08 -04:00
Jeff Epler 1fc797132a
Merge pull request #3237 from DavePutz/issue3216
Issue#3216 - Needed an alternate way to check if background tasks were run
2020-09-16 08:47:33 -05:00
Kamil Tomaszewski 61687c81d8 camera: Pass width and height to take_picture() 2020-09-16 13:55:57 +02:00
Rémi Sarrailh c06aeda399 Add Muselab nanoesp32 s2 definition 2020-09-16 13:10:01 +02:00
Ryan T. Hamilton fead60d2d8 Add BSSID to Network 2020-09-15 23:32:53 -07:00
Scott Shawcroft 2bd169ec32
Add partition layouts for 8 and 16 MB as well. 2020-09-15 18:12:06 -07:00
Scott Shawcroft 95e27bb8bf
Add more PIDs for unique boards 2020-09-15 13:43:35 -07:00
askpatricw bd381e434f Revert "code review feedback"
This reverts commit f9f614b3a2.
2020-09-15 13:02:26 -07:00
askpatricw f9f614b3a2 code review feedback 2020-09-15 11:28:31 -07:00
askpatricw 8fcdc7da16 RTC enabled 2020-09-14 23:24:44 -07:00
Dan Halbert 3c6af94fb3
Merge pull request #3384 from jepler/feather_m4_can
atmel-samd: add same51, feather_m4_can
2020-09-14 23:57:51 -04:00
Jeff Epler 067a975875 update submodules to merge commits 2020-09-14 17:22:30 -05:00
DavePutz 2a2a8d6457
Merge pull request #28 from adafruit/main
Merge from adafruit/main
2020-09-14 16:50:40 -05:00
Lucian Copeland 3640ef2b7f Fix toctree, incorrect flash port assumptions 2020-09-14 17:37:55 -04:00
Lucian Copeland 6ecfdda580 Add Readme 2020-09-14 13:18:51 -04:00
DavePutz 2eca4ee902
Update PulseIn.c 2020-09-14 11:04:45 -05:00
Lucian Copeland e504438fd2 Remove unlicensed file, fix reset pin type check 2020-09-14 11:58:13 -04:00
DavePutz c014ac3089
Reworked check for input taking too long 2020-09-14 10:54:57 -05:00
Lucian Copeland ecc219fe50 Merge remote-tracking branch 'upstream/main' into esp32-displayio-fix 2020-09-14 10:44:31 -04:00
Kamil Tomaszewski ce7ee58e92 camera: Update camera module 2020-09-14 13:12:20 +02:00
Kamil Tomaszewski c2fc592c2c camera: Change API 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski 143a1ff94a spresense: change the GC to do 32-byte blocks 2020-09-14 13:11:15 +02:00
Kamil Tomaszewski 1fde8ef9bc spresense: Add support for camera 2020-09-14 13:11:15 +02:00