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 ethernet;
20pub mod flash;
21pub mod gpio;
22pub mod gpio_async;
23pub mod hasher;
24pub mod hw_debug;
25pub mod i2c;
26pub mod keyboard;
27pub mod kv;
28pub mod led;
29pub mod log;
30pub mod nonvolatile_storage;
31pub mod public_key_crypto;
32pub mod pwm;
33pub mod radio;
34pub mod rng;
35pub mod screen;
36pub mod sensors;
37pub mod servo;
38pub mod spi;
39pub mod symmetric_encryption;
40pub mod text_screen;
41pub mod time;
42pub mod touch;
43pub mod uart;
44pub mod usb;
45pub mod usb_hid;
46
47/// Shared interface for configuring components.
48pub trait Controller {
49    type Config;
50
51    fn configure(&self, _: Self::Config);
52}