profile
viewpoint
Vadim Kaushan Disasm Moscow, Russia @disasm-ewg:matrix.org

Cr0s/WarpDrive 18

A warp drive mod for minecraft

Disasm/async-embedded-traits 6

A set of async traits for embedded systems

Disasm/cc 2

ComputerCraft scripts

Disasm/embedded-rust-patterns 1

A list of frequently used patterns for embedded Rust development

Disasm/eva 1

Jabber conference logging bot

pull request commentrust-embedded/cortex-m

Deprecate msp::write

I think we're good to merge this now. Could you add a changelog entry please?

jonas-schievink

comment created time in 6 hours

Pull request review commentrust-embedded/cortex-m

Deprecate msp::write

 pub fn read() -> u32 {  /// Writes `bits` to the CPU register #[inline]+#[deprecated = "calling this function invokes Undefined Behavior"]
#[deprecated = "calling this function invokes Undefined Behavior, consider asm::bootstrap as an alternative"]
jonas-schievink

comment created time in 6 hours

delete branch rust-embedded/cortex-m

delete branch : new-asm

delete time in 6 hours

PR merged rust-embedded/cortex-m

Expose __syscall and add new bootstrap method S-waiting-on-review T-cortex-m

We added __syscall in the new inline asm, but did not expose it in the crate API, and the cortex-m-semihosting crate can't use it directly because the pre-built binaries would contain duplicate symbols (#271). This PR renames it to __sh_syscall (since we could imagine other different syscalls; this one is explicitly semihosting with the bkpt 0xAB) and exposes it in cortex_m::asm::sh_syscall.

This PR also adds the new methods discussed in #297 to permit sound bootstrapping, either from an MSP and RV or a vector table address.

+74 -3

2 comments

18 changed files

adamgreig

pr closed time in 6 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 4a1c82fe37e05223951595648a74792cdc3c2179

Expose __syscall and add new bootstrap method

view details

Adam Greig

commit sha 3a3a812f53d9bb66f3fe042a514f813734eac4c6

Update pre-built binaries

view details

Adam Greig

commit sha 3b184eaa0abf147d607f918985bdffd6abe31a51

asm.bootstrap: only set CONTROL.SPSEL, mark as divergent

view details

Adam Greig

commit sha 155dd567d875fe8a911e694a3297988ce343fc70

Update src/asm.rs Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

Adam Greig

commit sha 64842461ba4caa384487ae52cbe15a4f3834b4b4

Update CHANGELOG.md Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

bors[bot]

commit sha 038396e6f944fb8697e2d4ecbd88cfca9d16b90e

Merge #299 299: Expose __syscall and add new bootstrap method r=jonas-schievink a=adamgreig We added `__syscall` in the new inline asm, but did not expose it in the crate API, and the cortex-m-semihosting crate can't use it directly because the pre-built binaries would contain duplicate symbols (#271). This PR renames it to `__sh_syscall` (since we could imagine other different syscalls; this one is explicitly semihosting with the `bkpt 0xAB`) and exposes it in `cortex_m::asm::sh_syscall`. This PR also adds the new methods discussed in #297 to permit sound bootstrapping, either from an MSP and RV or a vector table address. Co-authored-by: Adam Greig <adam@adamgreig.com>

view details

push time in 6 hours

delete branch rust-embedded/cortex-m

delete branch : staging.tmp

delete time in 6 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 4a1c82fe37e05223951595648a74792cdc3c2179

Expose __syscall and add new bootstrap method

view details

Adam Greig

commit sha 3a3a812f53d9bb66f3fe042a514f813734eac4c6

Update pre-built binaries

view details

Adam Greig

commit sha 3b184eaa0abf147d607f918985bdffd6abe31a51

asm.bootstrap: only set CONTROL.SPSEL, mark as divergent

view details

Adam Greig

commit sha 155dd567d875fe8a911e694a3297988ce343fc70

Update src/asm.rs Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

Adam Greig

commit sha 64842461ba4caa384487ae52cbe15a4f3834b4b4

Update CHANGELOG.md Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

bors[bot]

commit sha 038396e6f944fb8697e2d4ecbd88cfca9d16b90e

Merge #299 299: Expose __syscall and add new bootstrap method r=jonas-schievink a=adamgreig We added `__syscall` in the new inline asm, but did not expose it in the crate API, and the cortex-m-semihosting crate can't use it directly because the pre-built binaries would contain duplicate symbols (#271). This PR renames it to `__sh_syscall` (since we could imagine other different syscalls; this one is explicitly semihosting with the `bkpt 0xAB`) and exposes it in `cortex_m::asm::sh_syscall`. This PR also adds the new methods discussed in #297 to permit sound bootstrapping, either from an MSP and RV or a vector table address. Co-authored-by: Adam Greig <adam@adamgreig.com>

view details

push time in 6 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 4a1c82fe37e05223951595648a74792cdc3c2179

Expose __syscall and add new bootstrap method

view details

Adam Greig

commit sha 3a3a812f53d9bb66f3fe042a514f813734eac4c6

Update pre-built binaries

view details

Adam Greig

commit sha 3b184eaa0abf147d607f918985bdffd6abe31a51

asm.bootstrap: only set CONTROL.SPSEL, mark as divergent

view details

Adam Greig

commit sha 155dd567d875fe8a911e694a3297988ce343fc70

Update src/asm.rs Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

Adam Greig

commit sha 64842461ba4caa384487ae52cbe15a4f3834b4b4

Update CHANGELOG.md Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

bors[bot]

commit sha 0029295595e317007aa6d44e76f9c747d659a2a3

[ci skip][skip ci][skip netlify] -bors-staging-tmp-299

view details

push time in 6 hours

create barnchrust-embedded/cortex-m

branch : staging.tmp

created branch time in 6 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 64842461ba4caa384487ae52cbe15a4f3834b4b4

Update CHANGELOG.md Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

push time in 6 hours

Pull request review commentrust-embedded/cortex-m

Expose __syscall and add new bootstrap method

 and this project adheres to [Semantic Versioning](http://semver.org/).  ## [Unreleased] +### Added++- New assembly methods `asm::sh_syscall`, `asm::bootstrap`, and
- New assembly methods `asm::semihosting_syscall`, `asm::bootstrap`, and
adamgreig

comment created time in 6 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 155dd567d875fe8a911e694a3297988ce343fc70

Update src/asm.rs Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>

view details

push time in 7 hours

Pull request review commentrust-embedded/cortex-m

Expose __syscall and add new bootstrap method

 pub fn ttat(addr: *mut u32) -> u32 { pub unsafe fn bx_ns(addr: u32) {     call_asm!(__bxns(addr: u32)); }++/// Semihosting syscall.+///+/// This method is used by cortex-m-semihosting to provide semihosting syscalls.+#[inline]+pub unsafe fn sh_syscall(nr: u32, arg: u32) -> u32 {

Since this is public API, maybe a clearer name would be appropriate?

pub unsafe fn semihosting_syscall(nr: u32, arg: u32) -> u32 {
adamgreig

comment created time in 7 hours

delete branch rust-embedded/cortex-m

delete branch : update-sh-changelog

delete time in 7 hours

PR merged rust-embedded/cortex-m

Update c-m-sh changelog for 0.3.7 S-waiting-on-review T-cortex-m
+16 -0

2 comments

1 changed file

adamgreig

pr closed time in 7 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 64f936c64edf5ad127490cddac727dd39246edf2

Update c-m-sh changelog for 0.3.7

view details

bors[bot]

commit sha d34b1ce3eda92777ba9bafe2fca96e1985ec6d72

Merge #302 302: Update c-m-sh changelog for 0.3.7 r=jonas-schievink a=adamgreig Co-authored-by: Adam Greig <adam@adamgreig.com>

view details

push time in 7 hours

issue commentrust-embedded/cortex-m

Version 0.3.6 is not semver-compatible

Thanks @adamgreig for your very fast reaction!

samueltardieu

comment created time in 7 hours

delete branch rust-embedded/cortex-m

delete branch : staging.tmp

delete time in 7 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 64f936c64edf5ad127490cddac727dd39246edf2

Update c-m-sh changelog for 0.3.7

view details

bors[bot]

commit sha d34b1ce3eda92777ba9bafe2fca96e1985ec6d72

Merge #302 302: Update c-m-sh changelog for 0.3.7 r=jonas-schievink a=adamgreig Co-authored-by: Adam Greig <adam@adamgreig.com>

view details

push time in 7 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 64f936c64edf5ad127490cddac727dd39246edf2

Update c-m-sh changelog for 0.3.7

view details

bors[bot]

commit sha f431a2b3f8188cb78a98d19d3b653d404a8a986e

[ci skip][skip ci][skip netlify] -bors-staging-tmp-302

view details

push time in 7 hours

create barnchrust-embedded/cortex-m

branch : staging.tmp

created branch time in 7 hours

issue closedrust-embedded/cortex-m

Version 0.3.6 is not semver-compatible

The prototype of hprintln!() has changed somewhere between 0.3.3 and 0.3.6, version should be bumped to "0.4.x".

I had the experience today. Some of my students had imported a few days ago a library skeleton containing a dependency over "0.3.3" or any compatible version, and the code uses hprintln!().unwrap(). Everything worked fine and it created a Cargo.lock depending on 0.3.3 for their application.

Some other students imported the same code today, and since they didn't have a Cargo.lock yet one got created with the highest compatible version, i.e. "0.3.6". Unfortunately, the code containing hprintln!().unwrap() now doesn't compile anymore.

closed time in 7 hours

samueltardieu

issue commentrust-embedded/cortex-m

Version 0.3.6 is not semver-compatible

This should be fixed by 0.3.7 which is now released. Sorry for the disruption!

samueltardieu

comment created time in 7 hours

pull request commentrust-embedded/cortex-m

Update c-m-sh changelog for 0.3.7

r? @thalesfragoso

(rust-highfive has picked a reviewer for you, use r? to override)

adamgreig

comment created time in 7 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 3b184eaa0abf147d607f918985bdffd6abe31a51

asm.bootstrap: only set CONTROL.SPSEL, mark as divergent

view details

push time in 7 hours

push eventrust-embedded/cortex-m

Adam Greig

commit sha 64f936c64edf5ad127490cddac727dd39246edf2

Update c-m-sh changelog for 0.3.7

view details

push time in 7 hours

create barnchrust-embedded/cortex-m

branch : update-sh-changelog

created branch time in 7 hours

more