Commit Graph

107 Commits

Author SHA1 Message Date
Andre Richter
0d75a8eaf3
Use aarch64-unknown-none target in nightly 🎉
We have a generic target for writing bare-metal code
for 64-bit ARM architectures in upstream Rust now.

Use it to get rid of the fully custom target spec.

\o/
2018-08-19 23:42:24 +02:00
Andre Richter
5a71b00422
Merge pull request #4 from wizofe/fix/typo
Typo: partition
2018-08-19 01:01:29 +02:00
Andre Richter
c5981b6ccd
Don't invoke clippy via xargo
Despite invoking clippy with xargo, it wasnt actually using the custom
target, so we don't need xargo here for now...

The target argument was missing anyways. Using it throws an error.
Needs some more investigation.
2018-08-19 00:42:36 +02:00
Ioannis Valasakis
89aacd85f3 Typo: partition 2018-08-18 22:29:00 +00:00
Andre Richter
969704d498
Use correct sequence of MMIO timer reads
As discussed in #2
2018-08-12 17:06:30 +02:00
Andre Richter
0bd363f375
Sync with the newest Embedonomicon
https://github.com/rust-embedded/embedonomicon

Closes #3
2018-08-12 16:41:45 +02:00
Andre Richter
1b8b78d0c8
Use precompiled clippy 2018-08-12 16:39:52 +02:00
Andre Richter
907f8dc75c
Remove pending C tutorials
Presence of these files caused github to show the project as a C
project.
2018-08-12 16:39:39 +02:00
Andre Richter
6266cd38c6
Install clippy from git.
Better chances of compiling on nightly.
2018-07-16 21:59:58 +02:00
Andre Richter
3693bd6e8b
typos 2018-07-16 21:49:40 +02:00
Andre Richter
369dffa457
Make it compile on newest nightly 2018-07-16 21:37:40 +02:00
Andre Richter
747e902761
Rewrite for register-rs.
We now have the same API for MMIO and CPU registers.
Makes the code more concise, inntuitive, and improves readability.

https://crates.io/crates/register
2018-07-16 21:24:33 +02:00
Andre Richter
ea39d2ae1f
Update travis for llvm-tools from Rust 2018-06-29 20:15:11 +02:00
Andre Richter
323a346b07
Use llvm objcopy from rust toolchain 🎉
Its the last missing util we needed to be a rust-toolchain-only project.

https://github.com/rust-lang/rust/pull/50336
https://github.com/japaric/cargo-binutils
2018-06-29 19:48:42 +02:00
Andre Richter
038c8ac55c
Add travis CI 2018-06-17 14:25:22 +02:00
Andre Richter
69d9890c4a
Update #[lang = "panic_fmt"] -> #[panic_implementation]
More info: https://users.rust-lang.org/t/psa-breaking-change-panic-fmt-language-item-removed-in-favor-of-panic-implementation/17875
2018-06-17 13:40:30 +02:00
Andre Richter
8a3f6f5f15
utils: Exit early on build failure 2018-06-17 13:20:25 +02:00
Andre Richter
99f4dc24b3
Change dockcross path to newest upstream release 2018-06-17 13:14:03 +02:00
Andre Richter
27a5f64156
Dockcross binaries path changed 2018-05-16 00:28:21 +02:00
Andre Richter
fd4c62f9e8
Fix strange dockcross path changes
There were some strange changes to the aarch64 dockross image lately.
Looks like unintentional path changes. I'll adapt for now, but
hopefully this gets reverted to a sane state soon.

Referenece:
https://github.com/dockcross/dockcross/pull/221#issuecomment-387188681
2018-05-07 22:44:44 +02:00
Andre Richter
1b2fc525ea Add tutorial 0A_power 2018-04-23 22:05:22 +02:00
Andre Richter
e6f823a224 Add timer tutorial
- Also, upgrade to new `cortex-a` 0.1.3 implementation.
2018-04-19 18:46:24 +02:00
Andre Richter
b2ddb8600d Update README.md 2018-04-13 22:39:26 +02:00
Andre Richter
a3fef3844d Add deref comment to tutorial 3 as well
This is the first time reader will encounter it.
2018-04-13 22:11:42 +02:00
Andre Richter
395d82908f Add some utility scripts 2018-04-13 22:07:30 +02:00
Andre Richter
0ce1cde72c Add Deref trait in the spirit of cortex-m peripherals
Improves code readability; Reduces need for unsafe blocks on register
reads.

https://github.com/japaric/cortex-m/blob/master/src/peripheral/mod.rs
2018-04-13 22:05:50 +02:00
Andre Richter
a584fa4dfa mobx: Remove unnessecary mut 2018-04-13 21:27:26 +02:00
Andre Richter
cb216785b3 01_bareminimum: Use panic-abort crate instead of own handler 2018-04-13 21:25:22 +02:00
Andre Richter
bf47dade3d run cargo fmt on repo 2018-04-12 22:27:49 +02:00
Andre Richter
1b046df046 Introduce abstraction tut, shuffle tut numbers again 2018-04-12 22:21:03 +02:00
Andre Richter
09d36953a0 Remove own boilerplate code
Use panic and runtime crates from japaric
2018-04-10 21:26:09 +02:00
Andre Richter
eb59646733 Fix clippy targets 2018-04-09 22:18:27 +02:00
Andre Richter
1e8ef325b6 Add abi blacklist for target
Use default list from:
0defa208dc/src/librustc_back/target/arm_base.rs
2018-04-09 22:11:43 +02:00
Andre Richter
b31463075d Use a func ptr for jmp. Remove unused regs 2018-04-09 22:10:14 +02:00
Andre Richter
dceb4c3097 Xargo 0.3.12 supports builtins now. Remove Xargo.toml again 2018-04-08 19:56:56 +02:00
Andre Richter
7273745da6 Add raspbootin64 tutorial and reshuffle order 2018-04-08 19:56:26 +02:00
Andre Richter
32ef64b36e compiler_builtins are now mandatory; Add them.
In rust-lang/rust@679657b863 a breaking
change was introduced that now requires compiler_builtins. Add them,
and use the opportunity to kick out rlibc, since memset() et al. can
be provided by compiler intrinsics.
2018-04-08 13:28:57 +02:00
Andre Richter
857568009e Lazily generate dockcross runscript 2018-04-07 13:13:56 +02:00
Andre Richter
036d6f0893 Change fence type, add more elaborate description 2018-04-07 12:18:04 +02:00
Andre Richter
135a72ed98 Remove unnecessary pub keywords 2018-04-06 08:55:18 +02:00
Andre Richter
a772630b3b Cleanup register definitions 2018-04-04 22:21:23 +02:00
Andre Richter
d2a16a6c71 Add tutorial 06_random 2018-04-04 21:46:35 +02:00
Andre Richter
5ae22d3cb2 adapt two copyrights 2018-04-04 20:45:21 +02:00
Andre Richter
f384d99d78 minor style fixes 2018-04-04 20:41:33 +02:00
Andre Richter
c0b1e92b7e Align content better with first tutorial 2018-04-04 20:41:17 +02:00
Andre Richter
8f94a07675 Add tutorial 01_bareminimum 2018-04-04 20:40:41 +02:00
Andre Richter
b2f5da7184 Add tutorial 02_multicore_rust 2018-04-03 22:56:54 +02:00
Andre Richter
b9dea36052 remove accidentally uploaded file 2018-04-03 21:13:51 +02:00
Andre Richter
b869cf9a38 Correct stuff clippy complained about 2018-04-03 21:00:14 +02:00
Andre Richter
b42c922012 Add clippy targets 2018-04-03 20:57:30 +02:00