kernel/hil/
mod.rs

1// Licensed under the Apache License, Version 2.0 or the MIT License.
2// SPDX-License-Identifier: Apache-2.0 OR MIT
3// Copyright Tock Contributors 2022.
4
5//! Public traits for interfaces between Tock components.
6
7pub mod adc;
8pub mod analog_comparator;
9pub mod ble_advertising;
10pub mod bus8080;
11pub mod buzzer;
12pub mod can;
13pub mod crc;
14pub mod dac;
15pub mod date_time;
16pub mod digest;
17pub mod eic;
18pub mod entropy;
19pub mod flash;
20pub mod gpio;
21pub mod gpio_async;
22pub mod hasher;
23pub mod hw_debug;
24pub mod i2c;
25pub mod kv;
26pub mod led;
27pub mod log;
28pub mod nonvolatile_storage;
29pub mod public_key_crypto;
30pub mod pwm;
31pub mod radio;
32pub mod rng;
33pub mod screen;
34pub mod sensors;
35pub mod servo;
36pub mod spi;
37pub mod symmetric_encryption;
38pub mod text_screen;
39pub mod time;
40pub mod touch;
41pub mod uart;
42pub mod usb;
43pub mod usb_hid;
44
45/// Shared interface for configuring components.
46pub trait Controller {
47    type Config;
48
49    fn configure(&self, _: Self::Config);
50}