Commit Graph

455 Commits

Author SHA1 Message Date
Jean-Michel Picod
e63482af1c Revamp deploy.py
Now the script supports more flashing methods:
- JLink (with tockloader)
- OpenOCD (with tockloader)
- pyOCD
- Nordic DFU
- none (will produce an IntelHex file)

Also merged the contributions from:
- Yihui Xiong to support the Makerdiary USB dongle board
- Dennis Geurts to support Nordic DFU

Doc updated accordingly.

Imported 2 patches for Tock kernel:
- 06-add-set_vector_table_offset.patch (upstream tock/tock#1579)
- 07-nrf52-bootloader.patch (upstream tock/tock#1681)
2020-03-11 17:54:37 +01:00
gendx
8b146440a5 Merge pull request #77 from gendx/sync-patches
Sync patches with upstream Tock.
2020-03-11 17:38:20 +01:00
Guillaume Endignoux
bb7a0ef801 Sync patches with upstream Tock. 2020-03-11 17:04:05 +01:00
Julien Cretin
61a4fb9784 Wipe sensitive data on entry deletion
When inserting (or replacing) entries in the store, the data may be marked as
sensitive. When that entry is deleted, the data is wiped by overwritting it with
zeroes. This may cost a few bytes of overhead per entry with sensitive data to
satisfy the constraint that words may only be written twice.
2020-03-10 14:27:07 +01:00
gendx
fa4271104d Merge pull request #72 from gendx/fix-usb-cancellation
Add patch for bidirectional USB endpoints to fix panics in case of cancellation.
2020-03-09 17:32:29 +01:00
Guillaume Endignoux
951268b5f6 Add patch for bidirectional USB endpoints to fix panics in case of cancellation. 2020-03-09 16:38:59 +01:00
Jean-Michel Picod
47bd524c40 Merge pull request #68 from jmichelp/master
Fix extraneous globbing in workflows
2020-03-06 14:07:48 +01:00
Jean-Michel Picod
e21c753dd3 Merge branch 'master' into master 2020-03-06 13:36:11 +01:00
gendx
96b1a68f45 Merge pull request #67 from gendx/remove-patch
Remove patch
2020-03-06 11:44:25 +01:00
Jean-Michel Picod
9b3eca2c78 Fix extraneous globbing in workflows 2020-03-06 11:35:38 +01:00
Guillaume Endignoux
3af13f1957 Add path protection on push for workflows/boards_build.
According to the rules at https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#patterns-to-match-file-paths
2020-03-05 17:12:05 +01:00
Guillaume Endignoux
1fca16316e Remove paths rules from workflows/boards_build. 2020-03-05 15:31:32 +01:00
Guillaume Endignoux
0036858db9 Increase ROM size in layout.ld so that boards build on long build directories. 2020-03-05 12:33:12 +01:00
Guillaume Endignoux
ed350192c9 Move third_party/tock to a long build directory to catch limits in the linker scripts. 2020-03-05 12:28:01 +01:00
Guillaume Endignoux
eac6f1d0bd Build boards only when relevant paths are affected. 2020-03-05 12:08:28 +01:00
Guillaume Endignoux
6d323f3c5a Apply make suggestions. 2020-03-05 12:03:35 +01:00
Guillaume Endignoux
0fe4889624 Add GitHub workflow to build the boards. 2020-03-05 11:50:26 +01:00
Guillaume Endignoux
68ec755936 Add tests that supported boards build properly. 2020-03-05 11:34:45 +01:00
Guillaume Endignoux
bf9e3620ec Sync with upstream Tock to remove the latest patch. 2020-03-05 11:24:07 +01:00
Julien Cretin
e52a671810 Support storing in RAM instead of flash
This permits to run without persistent storage. The benefit is that the board
doesn't implement a the syscall API in Tock. The disadvantage is that rebooting
the key will reset the storage.
2020-03-04 16:24:06 +01:00
gendx
9001cbd864 Merge pull request #63 from gendx/add-debug-allocations
Add feature to track allocations in libtock-rs
2020-03-04 13:40:34 +01:00
gendx
c56af05c1b Merge branch 'master' into add-debug-allocations 2020-03-04 10:20:39 +01:00
Guillaume Endignoux
7703ddb44c Add comment about AtomicUsize. 2020-03-03 19:32:25 +01:00
Jean-Michel Picod
dbacd7c9e4 Merge pull request #65 from jmichelp/master
Make internal python linter happy.
2020-03-03 16:04:55 +01:00
Jean-Michel Picod
740d6658a5 Make internal python linter happy.
It seems that our internal linter is stricter than what pylint does.
Fixing the python code to make both happy and tries to fix the gap by
modifying pylintrc configuration file
2020-03-03 14:56:11 +01:00
Jean-Michel Picod
b649433c5f Merge pull request #64 from jmichelp/master
Fix cargo audit workflow
2020-03-03 14:24:38 +01:00
Jean-Michel Picod
2e92227164 Fix cargo audit workflow
The env context is only available at the step level, not the job one so
we need to use the github context instead. But the head_ref will only be
populated if we run in a pull_request event. So until we find a better
solution, let's match on the repo URL.
2020-03-03 12:05:38 +01:00
Guillaume Endignoux
9f6207f5a5 Add more cargo check combinations, to include the panic_console and debug_allocations features. 2020-03-02 16:16:55 +01:00
Guillaume Endignoux
0547a02b3f Typo. 2020-03-02 16:09:33 +01:00
gendx
e52160bb6b Merge branch 'master' into add-debug-allocations 2020-03-02 16:06:30 +01:00
Guillaume Endignoux
495b32b7e0 Add feature to track allocations in libtock-rs and print statistics to the console. 2020-03-02 16:02:03 +01:00
Jean-Michel Picod
4930bff7f8 Merge pull request #62 from jmichelp/master
Fix clippy warnings.
2020-03-02 15:34:49 +01:00
Jean-Michel Picod
1c87efd27a Fix clippy warnings.
Because of libtock-rs we can't run clippy on our codebase. But it could
run at least on `build.rs`.
2020-03-02 15:14:50 +01:00
Jean-Michel Picod
e61e47820c Merge pull request #61 from jmichelp/master
Run everything that Travis-CI is running as Github workflows
2020-03-02 15:07:57 +01:00
Jean-Michel Picod
433103cbc9 Merge branch 'master' into master 2020-03-02 15:01:18 +01:00
Jean-Michel Picod
f9f27d7f89 Try to avoid running cargo audit on forks (it fails) 2020-03-02 14:28:16 +01:00
Jean-Michel Picod
72ac346d57 Revert strategy.matrix and fix missing release mode 2020-03-02 14:27:51 +01:00
Jean-Michel Picod
73de02d141 Try using strategy.matrix to run cargo check 2020-03-02 14:24:10 +01:00
Jean-Michel Picod
421f8194af Gate also crypto unit tests in pull-request by paths
These tests take 10 min. Let's avoid running them when not needed.
2020-02-28 17:10:28 +01:00
Jean-Michel Picod
e30ef9c984 Fix typo 2020-02-28 16:56:15 +01:00
Jean-Michel Picod
40632af186 Remove cargo audit on pull request as it fails 2020-02-28 16:55:18 +01:00
Jean-Michel Picod
ac42e86d37 Also ensure we build on OS X 2020-02-28 16:54:16 +01:00
Jean-Michel Picod
f91538506e Restore path guards 2020-02-28 16:38:42 +01:00
Jean-Michel Picod
578742034e Remove toolchain parameter for workflow
It seems the github action will pick up the rust-toolchain file and if
we specify it as an input, it will have a higher priority
2020-02-28 16:32:20 +01:00
Jean-Michel Picod
c8ac2baca3 Fix wrong workflow name 2020-02-28 16:24:21 +01:00
Jean-Michel Picod
ae1242a55d Temp enable all unit test to verify workflows 2020-02-28 16:11:23 +01:00
Jean-Michel Picod
cc35ce5067 Create workflows for unit testing 2020-02-28 16:03:04 +01:00
Jean-Michel Picod
68f9eb6b09 Enables cargo audit on pull request 2020-02-28 15:58:32 +01:00
Jean-Michel Picod
9de3817ade Add missing license header 2020-02-28 15:57:48 +01:00
Jean-Michel Picod
ac37d7dd8a Restore path guards 2020-02-28 15:55:06 +01:00