Benign rust 10 installs Download

avr-embassy-usb 0.2.0

“Embasssy USB driver for atmega32u4”

Basename is uppercase README.mdContains an unbounded block loop
SHA-2565b726d87a049cc1a37b7b89ed9919895e4b1dfe71f27dd36b36666d58c20d516
MaleculeH(Db)Md

Evidence

imports avr_device::atmega32u4::USB_DEVICE endpoint.rs · lines 1–19
1use core::future::poll_fn;
2use core::task::{Context, Poll};
3
4use avr_device::atmega32u4::USB_DEVICE;
5use avr_device::interrupt;
6use embassy_usb_driver::{EndpointError, EndpointInfo};
7
8use crate::interrupt_handler as irq;
9
10// UEINTX flag masks
11pub(crate) const TXINI: u8 = 1 << 0;
12pub(crate) const RXOUTI: u8 = 1 << 2;
13pub(crate) const RXSTPI: u8 = 1 << 3;
14pub(crate) const FIFOCON: u8 = 1 << 7;
15
16/// Clears UEINTX flags. They are cleared by writing 0 and writing 1 has no effect, so every other
17/// bit is written as 1; a read-modify-write could clear a flag that was set in between.
18pub(crate) fn ack(usb: &USB_DEVICE, mask: u8) {
19 usb.ueintx().write(|w| uns …
English function-word token "the" endpoint.rs · lines 22–23
22:5… Selects and (re)configures an endpoint. Returns the CFGOK status.
23pub(crate) fn configure_hw(usb: &USB_DEVICE, index: u8, ep_type: u8, is_in: bool, …
Contains an unbounded block loop endpoint.rs · lines 138–147
138:95…
139 }
140
141 pub(crate) async fn control_setup(&mut self) -> [u8; 8] {
142 loop {
143 let _ = self.wait(Wait::Setup).await;
144
145 let taken = interrupt::free(|cs| {
146 self.select();
147 if self.usb.ueintx().rea …
English function-word token "for" endpoint.rs · lines 148–154
148:11… n None;
149 }
150 let mut setup = [0u8; 8];
151 for byte in &mut setup {
152 *byte = self.usb.uedatx().read().dat().bits();
153 }
154 ack(self.usb …
English function-word token "the" README.md · lines 1–8
1# avr-embassy-usb
2ATMEGA32u4 driver for embassy-usb
3
4## Changelog
50.2.0 - Communication works, test application communicates as expected with the host.
60.1.0 - initial
7
8Note that this driver is still WIP.

No evidence locations were recorded for this file. Raw result

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.