Update changelog and documentation
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 17c8d81..75390de 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -17,7 +17,8 @@
   - `syscalls::allow_ptr` becomes `syscalls::raw::allow`
 - Targets without support for atomics can be built
 - Most API functions, including `main()`, return a `Result<T, TockError>`
-- The timer now supports to be used simultaneously. To make this safe, `TimerDriver` is now a singleton.
+- The timer now supports to be used simultaneously
+- all drivers can exclusively be retrieved by `retrieve_hardware` which returns a `Hardware`-singleton. Drivers can be shared between different tasks only if it is safe to do so.
 
 ## a8bb4fa9be504517d5533511fd8e607ea61f1750 (0.1.0)
 
diff --git a/src/timer.rs b/src/timer.rs
index 4f3e10e..51fb616 100644
--- a/src/timer.rs
+++ b/src/timer.rs
@@ -291,8 +291,8 @@
 /// # use libtock::Hardware;
 /// # #[libtock::main]
 /// # async fn main() -> TockResult<()> {
-///  let Hardware {  timer_context,.. } = libtock::retrieve_hardware()?;
-///  Ok(())
+///  let Hardware {  timer_context, .. } = libtock::retrieve_hardware()?;
+/// # Ok(())
 /// # }
 /// ```
 pub struct DriverContext {