diff --git a/Cargo.toml b/Cargo.toml index a5c48ae379901f3c35132abb45b6e75b683cf7c7..479d279f2f75aed9a07594c840ede2b0e283101b 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -82,8 +82,8 @@ serde_json = "1.0" # embassy is not released yet [patch.crates-io] -embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } +embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } # embassy-sync = { path = "/home/matt/3rd/rs/embassy/embassy-sync" } diff --git a/LICENSE b/LICENSE index 48cde60111dbe29abb9105788881ff15b16a60d8..e677608e235fb10374a8cbbb8109bf2f310941db 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,15 @@ Sunset SSH is (c) 2022 Matt Johnston and contributors Provided under terms of the MPL 2.0 as below. +Some demo code is from Embassy project under +MIT or Apache-2.0 license. + +embassy/demos/picow/src/wifi.rs +embassy/demos/picow/src/tuntap.rs + +picow firmware has Permissive Binary License +embassy/demos/picow/firmware/LICENSE-permissive-binary-license-1.0.txt + Mozilla Public License Version 2.0 ================================== diff --git a/embassy/demos/picow/Cargo.lock b/embassy/demos/picow/Cargo.lock index 82d90c5b6348e0b41a896fe5d016161b5305811a..d87523b0a7694280e5bf99b908f693a3f6346aa9 100644 --- a/embassy/demos/picow/Cargo.lock +++ b/embassy/demos/picow/Cargo.lock @@ -253,7 +253,7 @@ dependencies = [ "embassy-sync", "embassy-time", "embedded-hal 1.0.0-alpha.9", - "embedded-hal-async 0.2.0-alpha.0", + "embedded-hal-async", "futures", "num_enum", ] @@ -361,7 +361,7 @@ dependencies = [ [[package]] name = "embassy-cortex-m" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -376,12 +376,12 @@ dependencies = [ [[package]] name = "embassy-embedded-hal" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "embassy-sync", "embedded-hal 0.2.7", "embedded-hal 1.0.0-alpha.9", - "embedded-hal-async 0.1.0-alpha.3", + "embedded-hal-async", "embedded-storage", "embedded-storage-async", "nb 1.0.0", @@ -389,8 +389,8 @@ dependencies = [ [[package]] name = "embassy-executor" -version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +version = "0.1.1" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -405,20 +405,21 @@ dependencies = [ [[package]] name = "embassy-futures" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" [[package]] name = "embassy-hal-common" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ + "defmt", "num-traits", ] [[package]] name = "embassy-macros" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "darling", "proc-macro2", @@ -429,7 +430,7 @@ dependencies = [ [[package]] name = "embassy-net" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "as-slice 0.2.1", "atomic-polyfill 1.0.1", @@ -448,7 +449,7 @@ dependencies = [ [[package]] name = "embassy-rp" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -466,24 +467,25 @@ dependencies = [ "embassy-usb-driver", "embedded-hal 0.2.7", "embedded-hal 1.0.0-alpha.9", - "embedded-hal-async 0.1.0-alpha.3", + "embedded-hal-async", "embedded-hal-nb", - "embedded-io", + "embedded-io 0.4.0", "embedded-storage", "futures", "nb 1.0.0", + "rand_core", "rp2040-pac2", ] [[package]] name = "embassy-sync" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", "critical-section 1.1.1", - "embedded-io", + "embedded-io 0.4.0", "futures-util", "heapless", ] @@ -491,7 +493,7 @@ dependencies = [ [[package]] name = "embassy-time" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -506,7 +508,7 @@ dependencies = [ [[package]] name = "embassy-usb-driver" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "defmt", ] @@ -527,15 +529,6 @@ version = "1.0.0-alpha.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "129b101ddfee640565f7c07b301a31d95aa21e5acef21a491c307139f5fa4c91" -[[package]] -name = "embedded-hal-async" -version = "0.1.0-alpha.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c913f631bd08c253b85fdf0077061c64763d70e27803b04da5a49c5fb2a65057" -dependencies = [ - "embedded-hal 1.0.0-alpha.9", -] - [[package]] name = "embedded-hal-async" version = "0.2.0-alpha.0" @@ -564,6 +557,12 @@ dependencies = [ "defmt", ] +[[package]] +name = "embedded-io" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" + [[package]] name = "embedded-storage" version = "0.3.0" @@ -1160,8 +1159,8 @@ dependencies = [ "embassy-sync", "embassy-time", "embedded-hal 1.0.0-alpha.9", - "embedded-hal-async 0.1.0-alpha.3", - "embedded-io", + "embedded-hal-async", + "embedded-io 0.3.1", "futures", "getrandom", "heapless", diff --git a/embassy/demos/picow/Cargo.toml b/embassy/demos/picow/Cargo.toml index e8a71bb67e1de26d49492b1831486ca019b5f6f0..687bb518ea8350f2f8068f77679d437a75a41b14 100644 --- a/embassy/demos/picow/Cargo.toml +++ b/embassy/demos/picow/Cargo.toml @@ -27,7 +27,7 @@ cortex-m-rt = "0.7.0" futures = { version = "0.3.17", default-features = false, features = ["async-await", "cfg-target-has-atomic", "unstable"] } embedded-hal-1 = { package = "embedded-hal", version = "1.0.0-alpha.8" } -embedded-hal-async = { version = "0.1.0-alpha.2" } +embedded-hal-async = { version = "0.2.0-alpha.0" } embedded-io = { version = "0.3.0", features = ["async", "defmt"] } heapless = "0.7.15" @@ -49,12 +49,12 @@ default = ["defmt"] defmt = [] [patch.crates-io] -embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-rp = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } +embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-rp = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } # embassy-sync = { path = "/home/matt/3rd/rs/embassy/embassy-sync" } [profile.dev] diff --git a/embassy/demos/picow/src/main.rs b/embassy/demos/picow/src/main.rs index e109c355a35f2ccf6c2956ae11e68ae6562a2db7..8db7777f1c8161d271b1bbf7efd585b97387e5a1 100644 --- a/embassy/demos/picow/src/main.rs +++ b/embassy/demos/picow/src/main.rs @@ -1,6 +1,8 @@ #![no_std] #![no_main] #![feature(type_alias_impl_trait)] +#![feature(async_fn_in_trait)] +#![allow(incomplete_features)] use defmt::*; use embassy_executor::Spawner; @@ -35,7 +37,7 @@ async fn main(spawner: Spawner) { let mut p = embassy_rp::init(Default::default()); caprand::setup(&mut p.PIN_25).unwrap(); - getrandom::register_custom_getrandom!(caprand::random); + getrandom::register_custom_getrandom!(caprand::getrandom); // TODO: move this to wifi mod diff --git a/embassy/demos/picow/src/wifi.rs b/embassy/demos/picow/src/wifi.rs index 393f2798374f2b1e252cb61f6669e1f1b1ad3250..01a87feed3659b5ea8f68f7623eb23e655008851 100644 --- a/embassy/demos/picow/src/wifi.rs +++ b/embassy/demos/picow/src/wifi.rs @@ -1,9 +1,14 @@ +// Modified from https://github.com/embassy-rs/cyw43/ +// Copyright (c) 2019-2022 Embassy project contributors +// MIT or Apache-2.0 license + +use core::convert::Infallible; + use embassy_rp::gpio::{Flex, Output}; use embassy_rp::peripherals::{PIN_23, PIN_24, PIN_25, PIN_29}; -use embedded_hal_async::spi::{ExclusiveDevice, SpiBusFlush, SpiBusRead, SpiBusWrite}; use embedded_hal_1::spi::ErrorType; -use core::convert::Infallible; -use core::future::Future; +use embedded_hal_async::spi::{ExclusiveDevice, SpiBusFlush, SpiBusRead, SpiBusWrite}; +use embedded_io::asynch::Write; #[embassy_executor::task] pub(crate) async fn wifi_task( @@ -29,70 +34,58 @@ impl ErrorType for MySpi { } impl SpiBusFlush for MySpi { - type FlushFuture<'a> = impl Future<Output = Result<(), Self::Error>> - where - Self: 'a; - - fn flush<'a>(&'a mut self) -> Self::FlushFuture<'a> { - async move { Ok(()) } + async fn flush(&mut self) -> Result<(), Self::Error> { + Ok(()) } } impl SpiBusRead<u32> for MySpi { - type ReadFuture<'a> = impl Future<Output = Result<(), Self::Error>> + 'a; - - fn read<'a>(&'a mut self, words: &'a mut [u32]) -> Self::ReadFuture<'a> { - async move { - self.dio.set_as_input(); - for word in words { - let mut w = 0; - for _ in 0..32 { - w = w << 1; - - // rising edge, sample data - if self.dio.is_high() { - w |= 0x01; - } - self.clk.set_high(); - - // falling edge - self.clk.set_low(); + async fn read(&mut self, words: &mut [u32]) -> Result<(), Self::Error> { + self.dio.set_as_input(); + for word in words { + let mut w = 0; + for _ in 0..32 { + w = w << 1; + + // rising edge, sample data + if self.dio.is_high() { + w |= 0x01; } - *word = w - } + self.clk.set_high(); - Ok(()) + // falling edge + self.clk.set_low(); + } + *word = w } + + Ok(()) } } impl SpiBusWrite<u32> for MySpi { - type WriteFuture<'a> = impl Future<Output = Result<(), Self::Error>> + 'a; - - fn write<'a>(&'a mut self, words: &'a [u32]) -> Self::WriteFuture<'a> { - async move { - self.dio.set_as_output(); - for word in words { - let mut word = *word; - for _ in 0..32 { - // falling edge, setup data - self.clk.set_low(); - if word & 0x8000_0000 == 0 { - self.dio.set_low(); - } else { - self.dio.set_high(); - } + async fn write(&mut self, words: &[u32]) -> Result<(), Self::Error> { + self.dio.set_as_output(); + for word in words { + let mut word = *word; + for _ in 0..32 { + // falling edge, setup data + self.clk.set_low(); + if word & 0x8000_0000 == 0 { + self.dio.set_low(); + } else { + self.dio.set_high(); + } - // rising edge - self.clk.set_high(); + // rising edge + self.clk.set_high(); - word = word << 1; - } + word = word << 1; } - self.clk.set_low(); - - self.dio.set_as_input(); - Ok(()) } + self.clk.set_low(); + + self.dio.set_as_input(); + Ok(()) } } diff --git a/embassy/demos/std/Cargo.lock b/embassy/demos/std/Cargo.lock index c21300f22a57fcc2a98b9083b9c8da1df756ae63..9945ed36a6535e31f9ddddcb735659f208a03a69 100644 --- a/embassy/demos/std/Cargo.lock +++ b/embassy/demos/std/Cargo.lock @@ -326,8 +326,8 @@ dependencies = [ [[package]] name = "embassy-executor" -version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +version = "0.1.1" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -342,12 +342,12 @@ dependencies = [ [[package]] name = "embassy-futures" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" [[package]] name = "embassy-macros" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "darling", "proc-macro2", @@ -358,7 +358,7 @@ dependencies = [ [[package]] name = "embassy-net" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "as-slice 0.2.1", "atomic-polyfill 1.0.1", @@ -377,12 +377,12 @@ dependencies = [ [[package]] name = "embassy-sync" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", "critical-section", - "embedded-io", + "embedded-io 0.4.0", "futures-util", "heapless", ] @@ -390,7 +390,7 @@ dependencies = [ [[package]] name = "embassy-time" version = "0.1.0" -source = "git+https://github.com/embassy-rs/embassy?rev=61be0e75c83961a42fc1d844159f1fed7d8afbea#61be0e75c83961a42fc1d844159f1fed7d8afbea" +source = "git+https://github.com/embassy-rs/embassy?rev=f109e73c6d7ef2ad93102b7c8223f5cef30ef36f#f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" dependencies = [ "atomic-polyfill 1.0.1", "cfg-if", @@ -436,6 +436,12 @@ dependencies = [ "defmt", ] +[[package]] +name = "embedded-io" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef1a6892d9eef45c8fa6b9e0086428a2cca8491aca8f787c534a3d6d0bcb3ced" + [[package]] name = "env_logger" version = "0.9.3" @@ -1052,7 +1058,7 @@ dependencies = [ "embassy-time", "embedded-hal 1.0.0-alpha.9", "embedded-hal-async", - "embedded-io", + "embedded-io 0.3.1", "env_logger", "futures", "heapless", diff --git a/embassy/demos/std/Cargo.toml b/embassy/demos/std/Cargo.toml index a19a06cdba7463ce882393ca0b3cd6f07b37305f..90256ed0ffb6cf53ffbec20c61964039271a8492 100644 --- a/embassy/demos/std/Cargo.toml +++ b/embassy/demos/std/Cargo.toml @@ -38,11 +38,11 @@ rand = { version = "0.8", default-features = false, features = ["getrandom"] } sha2 = { version = "0.10", default-features = false } [patch.crates-io] -embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } -embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "61be0e75c83961a42fc1d844159f1fed7d8afbea" } +embassy-executor = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-time = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-futures = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-sync = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } +embassy-net = { git = "https://github.com/embassy-rs/embassy", rev = "f109e73c6d7ef2ad93102b7c8223f5cef30ef36f" } # embassy-sync = { path = "/home/matt/3rd/rs/embassy/embassy-sync" } [profile.dev] diff --git a/embassy/demos/std/src/tuntap.rs b/embassy/demos/std/src/tuntap.rs index a0cace7f7700e523198f665ba79a9fb66c424018..6abc524f5b77163297b5e34770acef1219c64935 100644 --- a/embassy/demos/std/src/tuntap.rs +++ b/embassy/demos/std/src/tuntap.rs @@ -1,3 +1,7 @@ +// From https://github.com/embassy-rs/embassy/blob/master/examples/std/src/tuntap.rs +// Copyright (c) 2019-2022 Embassy project contributors +// MIT or Apache-2.0 license + use std::io; use std::io::{Read, Write}; use std::os::unix::io::{AsRawFd, RawFd};