Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
cpu_usbdev.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2016 Freie Universität Berlin
3
* 2017 OTA keys S.A.
4
*
5
* This file is subject to the terms and conditions of the GNU Lesser
6
* General Public License v2.1. See the file LICENSE in the top level
7
* directory for more details.
8
*/
9
10
#pragma once
11
23
#include <stdint.h>
24
25
#include "
periph/cpu_gpio.h
"
26
27
#ifdef __cplusplus
28
extern
"C"
{
29
#endif
30
34
#define USBDEV_CPU_DMA_ALIGNMENT (4)
35
39
#define USBDEV_CPU_DMA_REQUIREMENTS __attribute__((aligned(USBDEV_CPU_DMA_ALIGNMENT)))
40
44
typedef
struct
{
45
uintptr_t
base_addr
;
46
uint32_t
rcc_mask
;
47
uint8_t
irqn
;
48
uint8_t
apb
;
49
gpio_t
dm
;
50
gpio_t
dp
;
51
gpio_af_t
af
;
52
gpio_t
disconn
;
53
}
stm32_usbdev_fs_config_t
;
54
55
#ifdef __cplusplus
56
}
57
#endif
58
cpu_gpio.h
GPIO CPU definitions for the STM32 family.
gpio_af_t
gpio_af_t
Override alternative GPIO mode options.
Definition:
periph_cpu.h:165
stm32_usbdev_fs_config_t
stm32 USB device FS configuration
Definition:
cpu_usbdev.h:44
stm32_usbdev_fs_config_t::dm
gpio_t dm
Data- gpio.
Definition:
cpu_usbdev.h:49
stm32_usbdev_fs_config_t::af
gpio_af_t af
Alternative function.
Definition:
cpu_usbdev.h:51
stm32_usbdev_fs_config_t::disconn
gpio_t disconn
GPIO if used for USB disconnect.
Definition:
cpu_usbdev.h:52
stm32_usbdev_fs_config_t::rcc_mask
uint32_t rcc_mask
bit in clock enable register
Definition:
cpu_usbdev.h:46
stm32_usbdev_fs_config_t::base_addr
uintptr_t base_addr
USB peripheral base address.
Definition:
cpu_usbdev.h:45
stm32_usbdev_fs_config_t::irqn
uint8_t irqn
IRQ channel.
Definition:
cpu_usbdev.h:47
stm32_usbdev_fs_config_t::apb
uint8_t apb
APB bus.
Definition:
cpu_usbdev.h:48
stm32_usbdev_fs_config_t::dp
gpio_t dp
Data+ gpio.
Definition:
cpu_usbdev.h:50
Generated on Fri Jun 20 2025 21:02:36 by
1.9.1