Skip to content

Commit

Permalink
Rename RTFM to RTIC
Browse files Browse the repository at this point in the history
  • Loading branch information
AfoHT committed Jun 11, 2020
1 parent 4a0393f commit 602a5b4
Show file tree
Hide file tree
Showing 129 changed files with 454 additions and 454 deletions.
58 changes: 29 additions & 29 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,12 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- [breaking-change][] [RFC 155] "explicit `Context` parameter" has been
implemented.

[RFC 155]: https://github.com/rtfm-rs/cortex-m-rtfm/issues/155
[RFC 155]: https://github.com/rtic-rs/cortex-m-rtic/issues/155

- [breaking-change][] [RFC 147] "all functions must be safe" has been
implemented.

[RFC 147]: https://github.com/rtfm-rs/cortex-m-rtfm/issues/147
[RFC 147]: https://github.com/rtic-rs/cortex-m-rtic/issues/147

- All the queues internally used by the framework now use `AtomicU8` indices
instead of `AtomicUsize`; this reduces the static memory used by the
Expand All @@ -57,7 +57,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).

- [breaking-change][] when the `schedule` API is used the type of
`init::Context.core` changes from `cortex_m::Peripherals` to
`rtfm::Peripherals`. The fields of `rtfm::Peripherals` do not change when
`rtic::Peripherals`. The fields of `rtic::Peripherals` do not change when
Cargo features are enabled.

- [breaking-change][] the monotonic timer used to implement the `schedule` API
Expand Down Expand Up @@ -85,7 +85,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
syntax. `init::LateResources` is the only method to initialize late resources.
See [PR #140] for more details.

[PR #140]: https://github.com/rtfm-rs/cortex-m-rtfm/pull/140
[PR #140]: https://github.com/rtic-rs/cortex-m-rtic/pull/140

## [v0.4.3] - 2019-04-21

Expand Down Expand Up @@ -114,7 +114,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
`binds` argument that lets you give the handler an arbitrary name. For
example:

[RFC 128]: https://github.com/rtfm-rs/cortex-m-rtfm/issues/128
[RFC 128]: https://github.com/rtic-rs/cortex-m-rtic/issues/128

``` rust
// on v0.4.1 you had to write
Expand Down Expand Up @@ -146,8 +146,8 @@ fn on_new_frame() { .. }

### Added

- The RTFM book has been translated to Russian. You can find the translation
online at https://japaric.github.io/cortex-m-rtfm/book/ru/
- The RTIC book has been translated to Russian. You can find the translation
online at https://japaric.github.io/cortex-m-rtic/book/ru/

- `Duration` now implements the `Default` trait.

Expand Down Expand Up @@ -187,11 +187,11 @@ Yanked due to a soundness issue in `init`; the issue has been mostly fixed in v0
`Resource.claim_mut` has been renamed to `Mutex.lock` and its signature has
changed (no `Threshold` token is required).

- [breaking-change] The name of the library has changed to `rtfm`. The package
name is still `cortex-m-rtfm`.
- [breaking-change] The name of the library has changed to `rtic`. The package
name is still `cortex-m-rtic`.

- [breaking-change] `cortex_m_rtfm::set_pending` has been renamed to
`rtfm::pend`.
- [breaking-change] `cortex_m_rtic::set_pending` has been renamed to
`rtic::pend`.

### Added

Expand All @@ -210,7 +210,7 @@ Yanked due to a soundness issue in `init`; the issue has been mostly fixed in v0

- [breaking-change] The `bkpt` and `wfi` re-exports have been removed.

- [breaking-change] `rtfm::atomic` has been removed.
- [breaking-change] `rtic::atomic` has been removed.

## [v0.3.4] - 2018-08-27

Expand Down Expand Up @@ -313,20 +313,20 @@ Yanked due to a soundness issue in `init`; the issue has been mostly fixed in v0

- Initial release

[Unreleased]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.5.2...HEAD
[v0.5.2]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.5.1...v0.5.2
[v0.5.1]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.5.0...v0.5.1
[v0.5.0]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.4.3...v0.5.0
[v0.4.3]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.4.2...v0.4.3
[v0.4.2]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.4.1...v0.4.2
[v0.4.1]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.4.0...v0.4.1
[v0.4.0]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.3.4...v0.4.0
[v0.3.4]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.3.3...v0.3.4
[v0.3.3]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.3.2...v0.3.3
[v0.3.2]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.3.1...v0.3.2
[v0.3.1]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.3.0...v0.3.1
[v0.3.0]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.2.2...v0.3.0
[v0.2.2]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.2.1...v0.2.2
[v0.2.1]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.2.0...v0.2.1
[v0.2.0]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.1.1...v0.2.0
[v0.1.1]: https://github.com/rtfm-rs/cortex-m-rtfm/compare/v0.1.0...v0.1.1
[Unreleased]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.5.2...HEAD
[v0.5.2]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.5.1...v0.5.2
[v0.5.1]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.5.0...v0.5.1
[v0.5.0]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.4.3...v0.5.0
[v0.4.3]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.4.2...v0.4.3
[v0.4.2]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.4.1...v0.4.2
[v0.4.1]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.4.0...v0.4.1
[v0.4.0]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.3.4...v0.4.0
[v0.3.4]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.3.3...v0.3.4
[v0.3.3]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.3.2...v0.3.3
[v0.3.2]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.3.1...v0.3.2
[v0.3.1]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.3.0...v0.3.1
[v0.3.0]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.2.2...v0.3.0
[v0.2.2]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.2.1...v0.2.2
[v0.2.1]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.2.0...v0.2.1
[v0.2.0]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.1.1...v0.2.0
[v0.1.1]: https://github.com/rtic-rs/cortex-m-rtic/compare/v0.1.0...v0.1.1
2 changes: 1 addition & 1 deletion CNAME
Original file line number Diff line number Diff line change
@@ -1 +1 @@
rtfm.rs
rtic.rs
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
## New features
New features should go through the [RFC process][rfcs] before a Pull Request is made to this repository.

[rfcs](https://github.com/rtfm-rs/rfcs)
[rfcs](https://github.com/rtic-rs/rfcs)

## Bugs
Report bugs by creating an issue in this repository.
Expand Down
20 changes: 10 additions & 10 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
[package]
authors = [
"The Real Time For the Masses developers",
"The Real-Time Interrupt-driven Concurrency developers",
"Jorge Aparicio <[email protected]>",
"Per Lindgren <[email protected]>",
]
categories = ["concurrency", "embedded", "no-std"]
description = "Real Time For the Masses (RTFM): a concurrency framework for building real time systems"
documentation = "https://rtfm.rs/"
description = "Real-Time Interrupt-driven Concurrency (RTIC): a concurrency framework for building real time systems"
documentation = "https://rtic.rs/"
edition = "2018"
keywords = ["arm", "cortex-m"]
license = "MIT OR Apache-2.0"
name = "cortex-m-rtfm"
name = "cortex-m-rtic"
readme = "README.md"
repository = "https://github.com/rtfm-rs/cortex-m-rtfm"
repository = "https://github.com/rtic-rs/cortex-m-rtic"
version = "0.5.2"

[lib]
name = "rtfm"
name = "rtic"

[[example]]
name = "baseline"
Expand Down Expand Up @@ -52,8 +52,8 @@ required-features = ["__v7"]

[dependencies]
cortex-m = "0.6.2"
cortex-m-rtfm-macros = { path = "macros", version = "0.5.0" }
rtfm-core = "0.3.0"
cortex-m-rtic-macros = { path = "macros", version = "0.5.0" }
rtic-core = "0.3.0"
cortex-m-rt = "0.6.9"
heapless = "0.5.0"

Expand All @@ -77,8 +77,8 @@ version = "0.5.2"
trybuild = "1"

[features]
heterogeneous = ["cortex-m-rtfm-macros/heterogeneous", "microamp"]
homogeneous = ["cortex-m-rtfm-macros/homogeneous"]
heterogeneous = ["cortex-m-rtic-macros/heterogeneous", "microamp"]
homogeneous = ["cortex-m-rtic-macros/homogeneous"]
# used for testing this crate; do not use in applications
__v7 =[]
__min_r1_43 =[]
Expand Down
2 changes: 1 addition & 1 deletion LICENSE-MIT
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2017-2019 The Real Time For the Masses developers
Copyright (c) 2017-2019 The Real-Time Interrupt-driven Concurrency developers

Permission is hereby granted, free of charge, to any
person obtaining a copy of this software and associated
Expand Down
16 changes: 8 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Real Time For the Masses
# Real-Time Interrupt-driven Concurrency

A concurrency framework for building real time systems.

Expand Down Expand Up @@ -43,27 +43,27 @@ A concurrency framework for building real time systems.

- Applications must be written using the 2018 edition.

## [User documentation](https://rtfm.rs)
## [User documentation](https://rtic.rs)

## [API reference](https://rtfm.rs/0.5/api)
## [API reference](https://rtic.rs/0.5/api)

## Chat
Join us and talk about RTFM in the [Matrix room][matrix-room].
Join us and talk about RTIC in the [Matrix room][matrix-room].

[matrix-room]: https://matrix.to/#/#rtfm-rs:matrix.org
[matrix-room]: https://matrix.to/#/#rtic-rs:matrix.org

## Contributing
New features and big changes should go through the RFC process in the [dedicated RFC repository][rfcs].

[rfcs]: https://github.com/rtfm-rs/rfcs
[rfcs]: https://github.com/rtic-rs/rfcs

## Acknowledgments

This crate is based on [the RTFM language][rtfm-lang] created by the Embedded
This crate is based on [the RTIC language][rtic-lang] created by the Embedded
Systems group at [Luleå University of Technology][ltu], led by [Prof. Per
Lindgren][per].

[rtfm-lang]: http://www.rtfm-lang.org/
[rtic-lang]: http://www.rtic-lang.org/
[ltu]: https://www.ltu.se/?l=en
[per]: https://www.ltu.se/staff/p/pln-1.11258?l=en

Expand Down
2 changes: 1 addition & 1 deletion book/en/book.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@
authors = ["Jorge Aparicio"]
multilingual = false
src = "src"
title = "Real Time For the Masses"
title = "Real-Time Interrupt-driven Concurrency"
2 changes: 1 addition & 1 deletion book/en/src/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Summary

[Preface](./preface.md)
- [RTFM by example](./by-example.md)
- [RTIC by example](./by-example.md)
- [The `app` attribute](./by-example/app.md)
- [Resources](./by-example/resources.md)
- [Software tasks](./by-example/tasks.md)
Expand Down
6 changes: 3 additions & 3 deletions book/en/src/by-example.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
# RTFM by example
# RTIC by example

This part of the book introduces the Real Time For the Masses (RTFM) framework
This part of the book introduces the Real-Time Interrupt-driven Concurrency (RTIC) framework
to new users by walking them through examples of increasing complexity.

All examples in this part of the book can be found in the GitHub [repository] of
the project, and most of the examples can be run on QEMU so no special hardware
is required to follow along.

[repository]: https://github.com/rtfm-rs/cortex-m-rtfm
[repository]: https://github.com/rtic-rs/cortex-m-rtic

To run the examples on your laptop / PC you'll need the `qemu-system-arm`
program. Check [the embedded Rust book] for instructions on how to set up an
Expand Down
14 changes: 7 additions & 7 deletions book/en/src/by-example/app.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
# The `app` attribute

This is the smallest possible RTFM application:
This is the smallest possible RTIC application:

``` rust
{{#include ../../../../examples/smallest.rs}}
```

All RTFM applications use the [`app`] attribute (`#[app(..)]`). This attribute
All RTIC applications use the [`app`] attribute (`#[app(..)]`). This attribute
must be applied to a `const` item that contains items. The `app` attribute has
a mandatory `device` argument that takes a *path* as a value. This path must
point to a *peripheral access crate* (PAC) generated using [`svd2rust`]
**v0.14.x** or newer. The `app` attribute will expand into a suitable entry
point so it's not required to use the [`cortex_m_rt::entry`] attribute.

[`app`]: ../../../api/cortex_m_rtfm_macros/attr.app.html
[`app`]: ../../../api/cortex_m_rtic_macros/attr.app.html
[`svd2rust`]: https://crates.io/crates/svd2rust
[`cortex_m_rt::entry`]: ../../../api/cortex_m_rt_macros/attr.entry.html

> **ASIDE**: Some of you may be wondering why we are using a `const` item as a
> module and not a proper `mod` item. The reason is that using attributes on
> modules requires a feature gate, which requires a nightly toolchain. To make
> RTFM work on stable we use the `const` item instead. When more parts of macros
> RTIC work on stable we use the `const` item instead. When more parts of macros
> 1.2 are stabilized we'll move from a `const` item to a `mod` item and
> eventually to a crate level attribute (`#![app]`).
Expand All @@ -39,7 +39,7 @@ to Cortex-M and, optionally, device specific peripherals through the `core` and
`static mut` variables declared at the beginning of `init` will be transformed
into `&'static mut` references that are safe to access.

[`rtfm::Peripherals`]: ../../api/rtfm/struct.Peripherals.html
[`rtic::Peripherals`]: ../../api/rtic/struct.Peripherals.html

The example below shows the types of the `core` and `device` fields and
showcases safe access to a `static mut` variable. The `device` field is only
Expand Down Expand Up @@ -106,9 +106,9 @@ mut` variables are safe to use within a hardware task.
$ cargo run --example hardware
{{#include ../../../../ci/expected/hardware.run}}```

So far all the RTFM applications we have seen look no different than the
So far all the RTIC applications we have seen look no different than the
applications one can write using only the `cortex-m-rt` crate. From this point
we start introducing features unique to RTFM.
we start introducing features unique to RTIC.

## Priorities

Expand Down
12 changes: 6 additions & 6 deletions book/en/src/by-example/new.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Starting a new project

Now that you have learned about the main features of the RTFM framework you can
Now that you have learned about the main features of the RTIC framework you can
try it out on your hardware by following these instructions.

1. Instantiate the [`cortex-m-quickstart`] template.
Expand Down Expand Up @@ -36,19 +36,19 @@ $ cargo add lm3s6965 --vers 0.1.3
$ rm memory.x build.rs
```

3. Add the `cortex-m-rtfm` crate as a dependency.
3. Add the `cortex-m-rtic` crate as a dependency.

``` console
$ cargo add cortex-m-rtfm --allow-prerelease
$ cargo add cortex-m-rtic --allow-prerelease
```

4. Write your RTFM application.
4. Write your RTIC application.

Here I'll use the `init` example from the `cortex-m-rtfm` crate.
Here I'll use the `init` example from the `cortex-m-rtic` crate.

``` console
$ curl \
-L https://github.com/rtfm-rs/cortex-m-rtfm/raw/v0.5.0/examples/init.rs \
-L https://github.com/rtic-rs/cortex-m-rtic/raw/v0.5.0/examples/init.rs \
> src/main.rs
```

Expand Down
6 changes: 3 additions & 3 deletions book/en/src/by-example/resources.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ instead of a reference. This resource proxy is a structure that implements the
[`Mutex`] trait. The only method on this trait, [`lock`], runs its closure
argument in a critical section.

[`Mutex`]: ../../../api/rtfm/trait.Mutex.html
[`lock`]: ../../../api/rtfm/trait.Mutex.html#method.lock
[`Mutex`]: ../../../api/rtic/trait.Mutex.html
[`lock`]: ../../../api/rtic/trait.Mutex.html#method.lock

The critical section created by the `lock` API is based on dynamic priorities:
it temporarily raises the dynamic priority of the context to a *ceiling*
Expand Down Expand Up @@ -113,7 +113,7 @@ shared reference (`&-`) to the resource, limiting the operations it can perform
on it, but where a shared reference is enough this approach reduces the number
of required locks.

Note that in this release of RTFM it is not possible to request both exclusive
Note that in this release of RTIC it is not possible to request both exclusive
access (`&mut-`) and shared access (`&-`) to the *same* resource from different
tasks. Attempting to do so will result in a compile error.

Expand Down
8 changes: 4 additions & 4 deletions book/en/src/by-example/tasks.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# Software tasks

In addition to hardware tasks, which are invoked by the hardware in response to
hardware events, RTFM also supports *software* tasks which can be spawned by the
hardware events, RTIC also supports *software* tasks which can be spawned by the
application from any execution context.

Software tasks can also be assigned priorities and, under the hood, are
dispatched from interrupt handlers. RTFM requires that free interrupts are
dispatched from interrupt handlers. RTIC requires that free interrupts are
declared in an `extern` block when using software tasks; some of these free
interrupts will be used to dispatch the software tasks. An advantage of software
tasks over hardware tasks is that many tasks can be mapped to a single interrupt
Expand Down Expand Up @@ -45,7 +45,7 @@ $ cargo run --example message

## Capacity

RTFM does *not* perform any form of heap-based memory allocation. The memory
RTIC does *not* perform any form of heap-based memory allocation. The memory
required to store messages is statically reserved. By default the framework
minimizes the memory footprint of the application so each task has a message
"capacity" of 1: meaning that at most one message can be posted to the task
Expand Down Expand Up @@ -91,7 +91,7 @@ its message buffer will never be emptied. This situation is depicted in the
following snippet:

``` rust
#[rtfm::app(..)]
#[rtic::app(..)]
const APP: () = {
#[init(spawn = [foo, bar])]
fn init(cx: init::Context) {
Expand Down
Loading

0 comments on commit 602a5b4

Please sign in to comment.