profile
viewpoint
Jorge Aparicio japaric @ferrous-systems Berlin, Germany https://blog.japaric.io/ Making awesome @rust-lang stuff at @ferrous-systems. Core member of the @rust-embedded WG. He/they

bheisler/criterion.rs 1090

Statistics-driven benchmarking library for Rust

japaric/cargo-call-stack 234

Whole program static stack analysis

japaric/f3 75

Board Support Crate for the STM32F3DISCOVERY

japaric/cast.rs 50

Machine scalar casting that meets your expectations

japaric/embedded-in-rust 46

A blog about Rust and embedded stuff

iqlusioninc/usbarmory.rs 23

Bare metal Rust support for USB armory MkII devices

japaric/2wd 11

A remotely controlled wheeled robot

japaric/cty 11

Type aliases to C types like c_int for use with bindgen

japaric/flip-lld 10

Flips the memory layout of a program to add zero cost stack overflow protection

japaric/cortex-m-funnel 9

[Experiment] A lock-free, wait-free, block-free logger for the ARM Cortex-M architecture

push eventrust-embedded/showcase

Travis CI User

commit sha 90200c333a161cca2c5aeff4d3f3369657fb5f2b

Update documentation

view details

push time in 12 minutes

pull request commentrust-lang/rust

Don't eliminate frame pointers on thumb targets

I can also confirm that, with these changes (and rust-lld), (virtual) unwinding / backtraces work with a custom tool I wrote.

The missing artifact issue that @jonas-schievink and I observed was just a few bugs in other tools (e.g. cargo-binutils). Those have been already reported elsewhere.

This looks good to me and fixes a huge pain point for people that are using backtraces in GDB. Thanks @jonas-schievink and @MabezDev (who I believe first found out about the frame-pointer option in rustc / llvm) for working on this!

@bors r+

jonas-schievink

comment created time in 2 hours

push eventrust-embedded/docs

Travis CI User

commit sha b68f2401ee21af8849de804e626f9df97190c785

Update documentation

view details

push time in 2 hours

push eventrust-embedded/embedonomicon

Travis CI User

commit sha 31fc829a402d8bf0da4893d7bd3121c472044007

Update documentation

view details

push time in 5 hours

push eventrust-embedded/embedonomicon

Travis CI User

commit sha a69be72535f00aa919a2b4c12e086f76dc5e21cc

Update documentation

view details

push time in 5 hours

push eventrust-embedded/debugonomicon

Travis CI User

commit sha 81daf542342c34f09aa1c69c1fed15b0b2aea8e4

Update documentation

view details

push time in 5 hours

pull request commentrust-lang/rust

Don't eliminate frame pointers on thumb targets

AFAICT, LLD does not produce a final artifact with these changes.

Scratch that. I had a rust-lld binary in my .cargo/bin directory and that was eliminating the final artifact somehow. rustc -C linker=/path/to/rustup/toolchain/nightly/rust-lld (..) does produce an artifact.

jonas-schievink

comment created time in 7 hours

pull request commentrust-lang/rust

Don't eliminate frame pointers on thumb targets

I checked the output machine code of libcore.rlib and the change makes what we want. diff below:

 00000000 <core::panicking::panic>:
+        b580            push    {r7, lr}
+        466f            mov     r7, sp
         b088            sub     sp, #32
         4694            mov     ip, r2
         f240 0200       movw    r2, #0

I couldn't test this locally as the rustc I produced does not create binaries (no idea why).

AFAICT, LLD does not produce a final artifact with these changes. If you change the linker to GNU LD then you get an artifact. I haven't tried the GNU LD output on hardware though; I'll try that later today.

jonas-schievink

comment created time in 8 hours

push eventrust-embedded/discovery

Travis CI User

commit sha 35f8b1297dcaf6e6165765a100c245d405363a42

Update documentation

view details

push time in a day

push eventrust-embedded/showcase

Travis CI User

commit sha 0a5781e1e9f32fb75b9fe09cb407e068621ed62b

Update documentation

view details

push time in a day

push eventrust-embedded/docs

Travis CI User

commit sha 178133a24547adae55dcd229b909fc69bcca72ea

Update documentation

view details

push time in a day

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 484bd42b0b73b3ab1f9f99b04e067e17f7574b7d

usbd: note where cache invalidation needs to happen

view details

push time in a day

issue openediqlusioninc/usbarmory.rs

re-enable the caches

They were disabled to make it easier to develop the USB driver but they should be re-enabled now that the USB driver is working. I have added some notes in the code (firmware/usbarmory/usbd/bus.rs) that indicate where cache invalidation should happen before interacting with data structures that are modified by the USB DMA.

created time in a day

push eventrust-embedded/book

Travis CI User

commit sha 184d191f83f3649a8eb22dfe201f164c655398a2

Update documentation

view details

push time in a day

delete branch iqlusioninc/usbarmory.rs

delete branch : more-usb

delete time in a day

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 5375e1b17aa04b7d3be524323b5e1c4cab876c30

usb: make writes non-blocking also generalize the status out packet to all control endpoints

view details

Jorge Aparicio

commit sha d3ec36dab0e821d6ac5987e7bb723c9f1d3f8cdd

port USB bulk example to RTFM also make the in-memory logger (`memlog`) work in interrupt context

view details

Jorge Aparicio

commit sha acf47ecd4ab99eb1bff8df6d6d86a89d6215dbbf

note that memlog should not be used in interrupts that run at different priorities

view details

Jorge Aparicio

commit sha 78547eb9fbb3cd24c1252736e578d800cd0d90f8

replace spin::Mutex with something more appropriate that looks similar to cortex_m::Mutex

view details

Jorge Aparicio

commit sha 294d3c32e4343cc5771c39813843c73a225b29d9

put the RTFM USB example behind the "big" feature

view details

Jorge Aparicio

commit sha 39b4177a38ab037b047453053e080d2d08fab7b7

Merge pull request #30 from iqlusioninc/more-usb usb: non-blocking writes + RTFM example

view details

push time in a day

PR merged iqlusioninc/usbarmory.rs

usb: non-blocking writes + RTFM example

The RTFM example (rtfm-8-usb) uses a lower priority task to perform the application logic; this way the USB logic is prioritized and can stay responsive to USB events that come from the host.

This PR also makes the in-memory logger (memlog) work in interrupt context.

+579 -190

0 comment

15 changed files

japaric

pr closed time in a day

PR opened iqlusioninc/usbarmory.rs

usb: non-blocking writes + RTFM example

The RTFM example (rtfm-8-usb) uses a lower priority task to perform the application logic; this way the USB logic is prioritized and can stay responsive to USB events that come from the host.

This PR also makes the in-memory logger (memlog) work in interrupt context.

+579 -190

0 comment

15 changed files

pr created time in a day

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha acf47ecd4ab99eb1bff8df6d6d86a89d6215dbbf

note that memlog should not be used in interrupts that run at different priorities

view details

Jorge Aparicio

commit sha 78547eb9fbb3cd24c1252736e578d800cd0d90f8

replace spin::Mutex with something more appropriate that looks similar to cortex_m::Mutex

view details

Jorge Aparicio

commit sha 294d3c32e4343cc5771c39813843c73a225b29d9

put the RTFM USB example behind the "big" feature

view details

push time in a day

create barnchiqlusioninc/usbarmory.rs

branch : more-usb

created branch time in a day

created tagjaparic/as-slice

tagv0.1.3

created time in a day

push eventrust-embedded/embedonomicon

Travis CI User

commit sha 80cefb8ba588edb7dc6efb1c357ef1aaaf7fece0

Update documentation

view details

push time in a day

push eventrust-embedded/embedonomicon

Travis CI User

commit sha 1744dc3a5a95242580073d2040689b6a6b9e014d

Update documentation

view details

push time in a day

push eventrust-embedded/book

Travis CI User

commit sha c9771e95dec6a19286cc41d1b0c1a6665d7398b2

Update documentation

view details

push time in a day

push eventrust-embedded/debugonomicon

Travis CI User

commit sha 32e02454abf2cffb65bd6d7d26655cca7e73943c

Update documentation

view details

push time in a day

issue openedrust-analyzer/rust-analyzer

attribute-style doc comments (`#[doc]`) are not shown in `lsp-ui-sideline`

Steps to reproduce

Start with cargo new --bin hello then modify src/main.rs to look like this:

/// Foo!
struct Foo;

#[doc = "Bar!"]
struct Bar;

fn main() {
    let _ = Foo;
    let _ = Bar;
}

Opening the file in emacs-nox and placing the cursor on Foo (line 8) shows:

struct Foo

Foo!

on the sideline.

Placing the cursor on Bar (line 9) only shows:

struct Bar

Pictures:

foo

bar

Meta

$ cd rust-analyzer
$ git rev-parse HEAD
32fc890de87e25c342b7c141ef98b07cb1471128

$ rustc -V
rustc 1.43.0-nightly (433aae93e 2020-02-14)

I have a crate that I machine generated using quote! and all generated doc comments use #[doc] attributes. The multi-line ones look like this:

#[doc = "one line description"]
#[doc = ""]
#[doc = "more detailed description"]
pub struct Foo;

None of them show up in lsp-ui-sideline

created time in 2 days

push eventrust-embedded/discovery

Travis CI User

commit sha 9c245f545198076b7a2e5c446e4f515c5558a51a

Update documentation

view details

push time in 2 days

push eventrust-embedded/showcase

Travis CI User

commit sha d0639fa73ba6b34c523847ce662ef27fc06ace0c

Update documentation

view details

push time in 2 days

push eventrust-embedded/docs

Travis CI User

commit sha 953c4f1620b4ad1b3272a61866d2903cb0236244

Update documentation

view details

push time in 2 days

push eventrust-embedded/discovery

Travis CI User

commit sha d464abb8f915ca5d6478a11a153e26879b9c72f7

Update documentation

view details

push time in 3 days

push eventrust-embedded/showcase

Travis CI User

commit sha 0bf74becacf2fa8886cdb30f21d95f682bc07de7

Update documentation

view details

push time in 3 days

push eventrust-embedded/docs

Travis CI User

commit sha b33543ddddf0716c839edbd78ce15cb16f1b4fd5

Update documentation

view details

push time in 3 days

push eventrust-embedded/embedonomicon

Travis CI User

commit sha 67e78fb4eceaf75f37a09748e01a9dd4668f63e5

Update documentation

view details

push time in 3 days

push eventrust-embedded/debugonomicon

Travis CI User

commit sha 7d7bb87aaac8703c17992db520fcffee87f63862

Update documentation

view details

push time in 3 days

push eventrust-embedded/book

Travis CI User

commit sha 57bc1d3a1f6ad8af27c60c743db49e05ffd64837

Update documentation

view details

push time in 3 days

push eventjaparic/ufmt

Jorge Aparicio

commit sha fe817a3cd5d1a3f4edaf8828193519069f2901ec

patch bump utils & macros

view details

push time in 3 days

push eventrust-embedded/discovery

Travis CI User

commit sha 5549756fa32f989f776587ea988e3fb6917ea575

Update documentation

view details

push time in 4 days

push eventrust-embedded/showcase

Travis CI User

commit sha d684951714127ff87ab501dcd9c5024781f04f25

Update documentation

view details

push time in 4 days

push eventrust-embedded/docs

Travis CI User

commit sha eaf8120c71b4d681ade9d3d01f39bfb74d00c57d

Update documentation

view details

push time in 4 days

delete branch iqlusioninc/usbarmory.rs

delete branch : usb-bulk

delete time in 4 days

PR merged iqlusioninc/usbarmory.rs

USB bulk transfer: device & host examples

Note that USB examples must be compiled in release mode (with optimizations) and with the big Cargo feature enabled (the feature does nothing in the code, but simplifies the CI logic). The unoptimized binaries are larger than OCRAM (128 KB), where the whole program will be loaded, so building without optimizations will result in a linker error.

+823 -85

0 comment

14 changed files

japaric

pr closed time in 4 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 0b7571da11a1cbe4a6dbc29d2b052fc483a7ab44

turn `usb` "bin" back into an example and instead use a Cargo feature to not compile it using the dev profile

view details

Jorge Aparicio

commit sha 87f2568c96fc7ff30ff54e612b54b2a4324c51f7

add USB bulk transfer example with accompanying sample host code

view details

Jorge Aparicio

commit sha 9229ff03cb203f8960a5bf000192c2bf561f0c97

usbc: remove hard coded constants

view details

Jorge Aparicio

commit sha 4231e5b645bd87424fb15f960e0bd88cca5deaf8

less panics

view details

Jorge Aparicio

commit sha 74edfd9502238ab13f5f56b64fc41890aaefb619

add reference to tamago's USB.Init code

view details

Jorge Aparicio

commit sha 63988b499c5bd04d8bd767b88e146020cdaaece3

actions: change working directory

view details

Jorge Aparicio

commit sha fc7617150622f56b3015f3b0613169b97e1d9a18

Merge pull request #29 from iqlusioninc/usb-bulk USB bulk transfer: device & host examples

view details

push time in 4 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 63988b499c5bd04d8bd767b88e146020cdaaece3

actions: change working directory

view details

push time in 4 days

PR opened iqlusioninc/usbarmory.rs

USB bulk transfer: device & host examples

Note that USB examples must be compiled in release mode (with optimizations). The unoptimized binaries are larger than OCRAM (128 KB), where the whole program will be loaded, so building without optimizations will result in a linker error.

+822 -84

0 comment

14 changed files

pr created time in 4 days

create barnchiqlusioninc/usbarmory.rs

branch : usb-bulk

created branch time in 4 days

push eventrust-embedded/discovery

Travis CI User

commit sha b801d1284b2783bb7149420c017479639a83ce60

Update documentation

view details

push time in 5 days

push eventrust-embedded/showcase

Travis CI User

commit sha 371fc2f5fa483d6c072cf13b589312590d33c1b8

Update documentation

view details

push time in 5 days

push eventrust-embedded/docs

Travis CI User

commit sha 9ac3cab962219e5a3d4a9abcee79b590f083b5bc

Update documentation

view details

push time in 5 days

push eventrust-embedded/embedonomicon

Travis CI User

commit sha b752d3eb2de92933dc8727306a1bc388fea2fe21

Update documentation

view details

push time in 5 days

push eventrust-embedded/embedonomicon

Travis CI User

commit sha bf49c89c59e6685cb758ae282e985f67b8dc993f

Update documentation

view details

push time in 5 days

push eventrust-embedded/book

Travis CI User

commit sha 41640be6bda1f24fa68a2576fb12671edc0551d3

Update documentation

view details

push time in 5 days

push eventrust-embedded/debugonomicon

Travis CI User

commit sha c25636751110411aab58b4c558450866f12676ea

Update documentation

view details

push time in 5 days

push eventrust-embedded/discovery

Travis CI User

commit sha d00ec64e9e417e5b657def6506e816107c58d0c4

Update documentation

view details

push time in 6 days

push eventrust-embedded/showcase

Travis CI User

commit sha f1c7d724afcd65f56505eb154938ea72fff33a41

Update documentation

view details

push time in 6 days

delete branch iqlusioninc/usbarmory.rs

delete branch : usbd

delete time in 6 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 72099aa697f98aa0561a22675d98cb6b5032c501

(temporarily) disable caches

view details

Jorge Aparicio

commit sha 6f186708d843cd7e031ea29944f64f6c9e998a53

USB enumeration also fix a bug in Instant.duration_since and make panic-serial flush the in-memory logger

view details

Jorge Aparicio

commit sha cc52d43bdc847fa17e5ff343c1ec09bf0293c38a

only compile the USB example in release mode the unoptimized version doesn't fit in the OCRAM (128 KB)

view details

Jorge Aparicio

commit sha 8ececfc8103e3392b5679cd792d893b89cae3b80

Merge pull request #28 from iqlusioninc/usbd USB enumeration

view details

push time in 6 days

PR merged iqlusioninc/usbarmory.rs

USB enumeration
+1586 -5

0 comment

20 changed files

japaric

pr closed time in 6 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha cc52d43bdc847fa17e5ff343c1ec09bf0293c38a

only compile the USB example in release mode the unoptimized version doesn't fit in the OCRAM (128 KB)

view details

push time in 6 days

PR opened iqlusioninc/usbarmory.rs

USB enumeration
+1585 -5

0 comment

19 changed files

pr created time in 6 days

create barnchiqlusioninc/usbarmory.rs

branch : usbd

created branch time in 6 days

push eventrust-embedded/docs

Travis CI User

commit sha c5bbec321cf548a2d1054ca65c36e8825db2c001

Update documentation

view details

push time in 6 days

push eventrust-embedded/embedonomicon

Travis CI User

commit sha be1dbe7654d6000b388592b4101612cbbb8d7b62

Update documentation

view details

push time in 6 days

push eventrust-embedded/embedonomicon

Travis CI User

commit sha 36e2e63d379ffe154cd9d7f196e26e557492a40e

Update documentation

view details

push time in 6 days

push eventrust-embedded/debugonomicon

Travis CI User

commit sha 65944a36f07b7b690063eacf163754a68ae065b2

Update documentation

view details

push time in 6 days

push eventrust-embedded/book

Travis CI User

commit sha f11957e65273939de7db1a8641e676e0c0be2c78

Update documentation

view details

push time in 6 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 8dbf4c5c99e3584d3d2695fa16fe7eb7a28c43a6

bump the flip-lld version the latest version includes a sanity check that verifies the ELF binary has a valid memory layout and deletes it when it finds it to be invalid this version also deals with (a) gaps between linker sections (which are created by alignment requirements at the boundaries of linker sections) and (b) internal gaps (which are caused by alignment requirements inside a section). These two scenarios were creating invalid ELF binaries

view details

Jorge Aparicio

commit sha 5115af40c4273158631b27bcd6399d75c1b714a6

bump flip-lld once again

view details

Jorge Aparicio

commit sha 9afea72e50a790a2360d49c4d659f0233f5eb4ef

Merge pull request #27 from iqlusioninc/flip-lld-up bump the flip-lld version

view details

push time in 6 days

PR merged iqlusioninc/usbarmory.rs

bump the flip-lld version

the latest version includes a sanity check that verifies the ELF binary has a valid memory layout and deletes it when it finds it to be invalid

this version also deals with (a) gaps between linker sections (which are created by alignment requirements at the boundaries of linker sections) and (b) internal gaps (which are caused by alignment requirements inside a section). These two scenarios were creating invalid ELF binaries

+1 -1

0 comment

1 changed file

japaric

pr closed time in 6 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 5115af40c4273158631b27bcd6399d75c1b714a6

bump flip-lld once again

view details

push time in 6 days

delete branch japaric/flip-lld

delete branch : consider-all-sections-when-relinking

delete time in 6 days

push eventjaparic/flip-lld

Jorge Aparicio

commit sha 92ae141e15676ca8217b6ee8bc88a6f48f826153

consider all merged sections when relinking

view details

Jorge Aparicio

commit sha b1028b9b140150379ecdcea2c07580af933378e9

Merge pull request #3 from japaric/consider-all-sections-when-relinking consider all merged sections when relinking

view details

push time in 6 days

create barnchjaparic/flip-lld

branch : consider-all-sections-when-relinking

created branch time in 6 days

PR opened iqlusioninc/usbarmory.rs

bump the flip-lld version

the latest version includes a sanity check that verifies the ELF binary has a valid memory layout and deletes it when it finds it to be invalid

this version also deals with (a) gaps between linker sections (which are created by alignment requirements at the boundaries of linker sections) and (b) internal gaps (which are caused by alignment requirements inside a section). These two scenarios were creating invalid ELF binaries

+1 -1

0 comment

1 changed file

pr created time in 6 days

create barnchiqlusioninc/usbarmory.rs

branch : flip-lld-up

created branch time in 6 days

delete branch japaric/flip-lld

delete branch : link-as-many-times-as-it-takes

delete time in 6 days

push eventjaparic/flip-lld

Jorge Aparicio

commit sha c97332937dc49ad9d539cbc979f1c2f69fa21d9f

retry linking if any section exceeds the RAM boundary *internal* alignment requirements (e.g. `. = ALIGN(32)` *not* at the boundaries of the section but somewhere in the middle) in sections may push the sections pass the RAM boundary this changes to logic to retry the linking step with a lower (address) boundary if 'overflow' 'is detected

view details

Jorge Aparicio

commit sha 3130901af4ecc9cf7b2c4c8fc8c1090b70fa0cf1

Merge pull request #2 from japaric/link-as-many-times-as-it-takes retry linking if any section exceeds the RAM boundary

view details

push time in 6 days

PR merged japaric/flip-lld

retry linking if any section exceeds the RAM boundary

internal alignment requirements (e.g. . = ALIGN(32) not at the boundaries of the section but somewhere in the middle) in sections may push the sections pass the RAM boundary

this changes to logic to retry the linking step with a lower (address) boundary if 'overflow' 'is detected

+37 -33

0 comment

1 changed file

japaric

pr closed time in 6 days

PR opened japaric/flip-lld

retry linking if any section exceeds the RAM boundary

internal alignment requirements (e.g. . = ALIGN(32) not at the boundaries of the section but somewhere in the middle) in sections may push the sections pass the RAM boundary

this changes to logic to retry the linking step with a lower (address) boundary if 'overflow' 'is detected

+37 -33

0 comment

1 changed file

pr created time in 6 days

push eventjaparic/flip-lld

Jorge Aparicio

commit sha c97332937dc49ad9d539cbc979f1c2f69fa21d9f

retry linking if any section exceeds the RAM boundary *internal* alignment requirements (e.g. `. = ALIGN(32)` *not* at the boundaries of the section but somewhere in the middle) in sections may push the sections pass the RAM boundary this changes to logic to retry the linking step with a lower (address) boundary if 'overflow' 'is detected

view details

push time in 6 days

create barnchjaparic/flip-lld

branch : link-as-many-times-as-it-takes

created branch time in 6 days

delete branch japaric/flip-lld

delete branch : gaps

delete time in 6 days

push eventjaparic/flip-lld

Jorge Aparicio

commit sha f707f530f471ea1265dec345250d547bab1b78be

fix growing the RAM section forward towards higher addresses

view details

Jorge Aparicio

commit sha d9aacd606ceca8b88ed3e177db577adb66e065dd

account for gaps between sectiotns due to requirements in the alignment of sections there may be 'gaps' between sections. That is, given two contiguous sections A and B it may be that `addr(A) + sizeof(A) != addr(B)` but rather `addr(A) + sizeof(A) == addr(B) + 2` if for example `alignof(A) == 2` and `alignof(B) == 4`. Note that these gaps may still exist even if `. = ALIGN(4)` is used to align the boundaries of a section in the linker script: the section may have a bigger alignment (due to its contents) than the one that was specified in the linker script this commit also switches from xmas-elf to goblin; the former does not expose the alignment of sections (`sh_addralign`)

view details

Jorge Aparicio

commit sha d1ee00da59e4512d9c092640635a362e7259ee3f

add a FIXME

view details

Jorge Aparicio

commit sha d518608ca4f782d5c428678963cd8a0c66750f55

add a sanity check and also account for gaps changing once the start address is changed

view details

Jorge Aparicio

commit sha 7172190b31ebe7aa4e56172f7c7ba3290b60fe89

Merge pull request #1 from japaric/gaps add sanity check; deal with gaps between sections

view details

push time in 6 days

PR merged japaric/flip-lld

add sanity check; deal with gaps between sections

also sections can shift upwards, due to alignment requirements, after moving their start address so deal with that too.

+200 -75

0 comment

3 changed files

japaric

pr closed time in 6 days

PR opened japaric/flip-lld

add sanity check; deal with gaps between sections

also sections can shift upwards, due to alignment requirements, after moving their start address so deal with that too.

+200 -75

0 comment

3 changed files

pr created time in 6 days

push eventjaparic/flip-lld

Jorge Aparicio

commit sha d1ee00da59e4512d9c092640635a362e7259ee3f

add a FIXME

view details

Jorge Aparicio

commit sha d518608ca4f782d5c428678963cd8a0c66750f55

add a sanity check and also account for gaps changing once the start address is changed

view details

push time in 7 days

push eventrust-embedded/showcase

Travis CI User

commit sha 0fd135c81ca8b752393debefe2d5b45d613c4b5d

Update documentation

view details

push time in 7 days

pull request commentjaparic/ufmt

Replace uWrite impl for String by generic impl for all Write impls

Closing in favor of #21

therealprof

comment created time in 7 days

PR closed japaric/ufmt

Replace uWrite impl for String by generic impl for all Write impls

Alternative version using core::fmt::Error as return type instead of Infallible.

Signed-off-by: Daniel Egger daniel@eggers-club.de

+6 -20

4 comments

2 changed files

therealprof

pr closed time in 7 days

pull request commentjaparic/ufmt

Replace uWrite impl for String by generic impl for all Write impls

Closing in favor of #21

therealprof

comment created time in 7 days

push eventtherealprof/ufmt

Jorge Aparicio

commit sha 9b7dc59e4b75b626aeedaac80db419c23f0d3ea7

turn ufmt into a dev-dependency

view details

push time in 7 days

Pull request review commentjaparic/ufmt

Added a WriteAdapter struct to wrap any type implementing core::fmt::Write

 version = "0.1.0" [dependencies] heapless = "0.5.0" ufmt-write = { version = "0.1.0", path = "../write" }+ufmt = { version = "0.1.0", path = ".." }

this is not required; it should be a dev-dependency

therealprof

comment created time in 7 days

pull request commentjaparic/ufmt

Fix derive uDebug in case a non-core Result is in scope

bors r+

nickray

comment created time in 7 days

push eventrust-embedded/docs

Travis CI User

commit sha b8f69eddae78b41184097c5392ee2391d3340e41

Update documentation

view details

push time in 7 days

delete branch iqlusioninc/usbarmory.rs

delete branch : usb-pac

delete time in 7 days

push eventiqlusioninc/usbarmory.rs

Jorge Aparicio

commit sha 41874e9d8c3fb730635d6ec12ade3e2e76f2849a

txt2rust: fix parsing of the CCM_ANALOG table extend parsing to handle a description split across two lines

view details

Jorge Aparicio

commit sha f86df2140b13081596e6b7a99f87a15593d40f8a

txt2rust: use all registers to find a common prefix rather than the first two. For the following list of registers CCM_ANALOG_PLL_ARM CCM_ANALOG_PLL_ARM_SET (..) (CCM_ANALOG_MISC2_TOG the routine returned `CCM_ANALOG_PLL_ARM` as the common prefix when we actually wanted it to return `CCM_ANALOG`. This has been fixed

view details

Jorge Aparicio

commit sha bf6fa769ec402da67b01feae1ccb6df9b59d07ce

txt2rust: codegen a rmw (read-modify-write) method

view details

Jorge Aparicio

commit sha 40ec30bc007b848f0965ac013337b569797ff5de

pac: add USB_PHY, USB_ANALOG & CCM_ANALOG peripherals

view details

Jorge Aparicio

commit sha e34163d5c07d231f9d8ebba64d59f6d7aeb860d6

Merge pull request #26 from iqlusioninc/usb-pac add more USB peripherals to the PAC

view details

push time in 7 days

PR opened iqlusioninc/usbarmory.rs

add more USB peripherals to the PAC
+5988 -1347

0 comment

5 changed files

pr created time in 7 days

more