Ayke van Laethem
159f7ebbc3
esp32: provide hardware pin constants
2022-07-15 14:46:33 +02:00
Ayke van Laethem
153ff09cc5
esp8266: provide hardware pin constants like GPIO2
2022-07-15 14:46:33 +02:00
Ayke van Laethem
57cddf5657
clue: remove pins D21..D28
...
These pins do not appear in the pinout:
https://learn.adafruit.com/adafruit-clue/pinouts
2022-07-15 14:46:33 +02:00
Ayke van Laethem
6a35719594
avr: fix some apparent mistake in atmega1280/atmega2560 pin constants
2022-07-15 14:46:33 +02:00
Ayke van Laethem
20a46e1b28
nrf51: define and use P0_xx constants
...
This makes nrf51 consistent with nrf52 and other chips, which do provide
constants for hardware pin numbers.
I've also added the microbit to the smoketest because it is used on
play.tinygo.org. And removed PCA10040 and PCA10056 because they aren't
provided on play.tinygo.org anymore.
2022-07-15 14:46:33 +02:00
sago35
926c02b6ff
rp2040: reduced allocations
2022-07-15 09:41:32 +02:00
sago35
f370cd18fc
rp2040: add support for EnterBootloader()
2022-07-15 09:41:32 +02:00
sago35
a1d7cab080
rp2040: change volatile access to dpsram
2022-07-15 08:49:07 +02:00
deadprogram
15a9e2313a
machine/usb/midi: correct reference to handler function
...
Signed-off-by: deadprogram <ron@hybridgroup.com>
2022-07-14 13:25:34 +02:00
sago35
58f2533f15
rp2040: change default for serial to usb
2022-07-14 09:18:21 +02:00
deadprogram
3c2d2a93d3
machine/usb: refactorings to move functionality under machine/usb package
...
Signed-off-by: deadprogram <ron@hybridgroup.com>
2022-07-14 07:20:50 +02:00
Federico G. Schwindt
ea36fea5a9
Add support for printing slices via print/println
...
With help from @aykevl.
2022-07-13 14:44:23 +02:00
deadprogram
5fdb894760
usb: rename callback to handler to keep consistent
...
Signed-off-by: deadprogram <ron@hybridgroup.com>
2022-07-13 12:11:21 +02:00
sago35
8fed063820
usb: add support for midi
2022-07-12 19:13:12 +02:00
deadprogram
2f843af286
build: run tests on drivers and bluetooth repos after successful docker dev build
...
Signed-off-by: deadprogram <ron@hybridgroup.com>
2022-07-12 17:14:49 +02:00
sago35
7afc47d67a
usb: add DTR and RTS to serialer interface
2022-07-12 16:22:16 +02:00
sago35
0bc7c2a61f
rp2040: add support for usb ( #2973 )
...
* rp2040: add support for usb
2022-07-12 15:41:56 +02:00
sago35
d434058aef
samd21,samd51,nrf52840: move usbcdc to machine/usb/cdc ( #2972 )
...
* samd21,samd51,nrf52840: move usbcdc to machine/usb/cdc
2022-07-10 11:33:52 +02:00
Ayke van Laethem
56780c2691
ci: build Linux binary in Alpine container
...
This makes it easier to move the TinyGo compiler between Linux versions
because it doesn't depend on any system libraries anymore. For example,
binaries should be able to run on old Linux versions and on
distributions without glibc (such as Alpine Linux).
2022-07-08 15:05:50 +02:00
Kenneth Bell
1d99b1ed84
boards: add Challenger RP2040 LoRa
2022-07-08 13:01:14 +02:00
Kenneth Bell
e1405640da
all: git ignore smoketest output
2022-07-08 13:01:14 +02:00
Daniel Esteban
5996e113ad
update list of boards supported to add Badger2040
2022-07-08 08:52:44 +02:00
sago35
f1e6997018
atsamd21,atsamd51,nrf52840: improve usb-device initialization
2022-07-07 21:04:41 +02:00
sago35
335a7ad0b7
samd21,samd51,nrf52840: refactor handleStandardSetup and initEndpoint ( #2968 )
...
* samd21,samd51,nrf52840: refactor handleStandardSetup and initEndpoint
2022-07-07 16:43:57 +02:00
sago35
17deac116f
samd21,samd51,nrf52840: change usbSetup and sendZlp to public
2022-07-07 08:25:02 +02:00
Daniel Esteban
b112477e95
Initial support for XIAO RP2040
2022-07-06 22:23:47 +02:00
sago35
2fa24ef752
samd21,samd51,nrf52840: refactor usb initialization
2022-07-06 17:55:25 +02:00
sago35
fcefcb191c
samd21,samd51,nrf52840: unify bootloader entry process
2022-07-06 09:14:11 +02:00
sago35
ff7c71c99c
serial: use common initialization for serial
2022-07-05 20:53:37 +02:00
sago35
7eaad62568
feather-rp2040,macropad-rp2040: fix qspi-flash settings
2022-07-05 16:37:45 +02:00
sago35
401bd89664
samd21, samd51: move USB-CDC code
2022-07-05 14:41:51 +02:00
Damian Gryski
24b1bfcecd
tests/runtime: add benchmarks for runtime memhash
2022-07-05 08:54:55 +02:00
Ayke van Laethem
27162ebe32
cgo: add a check that we don't use different LLVM versions
2022-07-04 14:54:39 +02:00
Ayke van Laethem
b347aea450
cgo: fix default LLVM version to LLVM 14
...
Without extra flags, we would try to use LLVM 13 for cgo and LLVM 14 for
other things since 873412b43a
. That isn't
great. So fix this by only using LLVM 14 in the cgo package.
2022-07-04 14:54:39 +02:00
sago35
1766746c60
rp2040: add usb settings
2022-07-04 13:17:54 +02:00
Damian Gryski
07049b87b6
targets: make leveldb runtime hash default for wasi
2022-07-03 19:27:54 +02:00
sago35
f38603530d
all: update version for next development iteration
2022-07-02 23:35:14 +02:00
deadprogram
b65447c7d5
ci: use bash shell for making release artifacts
...
Signed-off-by: deadprogram <ron@hybridgroup.com>
2022-06-30 23:30:48 +02:00
Ayke van Laethem
0abc909739
ci: disable ccache on Windows
2022-06-30 23:30:48 +02:00
Ayke van Laethem
d984b55311
all: update to version 0.24.0
2022-06-29 15:18:33 +02:00
sago35
446fe1f5b3
makefile: add badger2040, thingplus-rp2040 to smoketest
2022-06-29 12:06:23 +02:00
Ayke van Laethem
873412b43a
all: use LLVM 14 by default
...
This also adds support for LLVM 14 from Homebrew on MacOS.
2022-06-28 22:07:45 +02:00
Kenneth Bell
8a5ab5ab12
rp2040: fix gpio interrupts
2022-06-26 12:14:52 +02:00
Ayke van Laethem
77cf60ef30
darwin: print full size information for -size=full
...
The MachO file format is a bit weird and doesn't store the DWARF debug
information directly in the file. Instead, it has to be looked up in the
original object file. This makes reading the DWARF debug information for
code size usage a bit more difficult. However, it works with this
change.
2022-06-24 13:50:30 +02:00
Ayke van Laethem
a4e2e09457
compiler: drop support for macos syscalls via inline assembly
...
This has always been unsupported on MacOS and has in fact been removed
from upstream Go a few releases ago. So do the same for TinyGo.
Linux seems to be the only supported OS with a stable syscall interface.
2022-06-24 12:51:18 +02:00
Ayke van Laethem
4262f0ff1f
compiler: really define runtime.mem* as LLVM intrinsic wrappers
...
This makes it possible to //go:linkname them from other places, like in
the reflect package. And is in my opinion a much cleaner solution.
2022-06-24 11:10:24 +02:00
Ayke van Laethem
1ceb63d14c
compiler: really define runtime/volatile.* functions
...
This makes them available to deferred calls, among others.
2022-06-24 11:10:24 +02:00
Ayke van Laethem
e1052f921c
compiler: define atomic intrinsic functions directly
...
This changes the compiler from treating calls to sync/atomic.* functions
as special calls (emitted directly at the call site) to actually
defining their declarations when there is no Go SSA implementation. And
rely on the inliner to inline these very small functions.
This works a bit better in practice. For example, this makes it possible
to use these functions in deferred function calls.
This commit is a bit large because it also needs to refactor a few
things to make it possible to define such intrinsic functions.
2022-06-24 11:10:24 +02:00
Ayke van Laethem
6dff85c756
ci: fix CI failure due to missing apt-get update
2022-06-23 23:16:09 +02:00
ardnew
afae6b3795
board/teensy40: Add I2C support ( #1471 )
...
* teensy40: add I2C support
2022-06-22 11:28:50 +02:00