#define ao_enable_port(port) do { \
if ((port) == &stm_gpioa) \
- stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIOAEN); \
+ stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_IOPAEN); \
else if ((port) == &stm_gpiob) \
- stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIOBEN); \
+ stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_IOPBEN); \
else if ((port) == &stm_gpioc) \
- stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIOCEN); \
- else if ((port) == &stm_gpiod) \
- stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIODEN); \
- else if ((port) == &stm_gpioe) \
- stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_GPIOEEN); \
+ stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_IOPCEN); \
+ else if ((port) == &stm_gpiof) \
+ stm_rcc.ahbenr |= (1 << STM_RCC_AHBENR_IOPFEN); \
} while (0)
#define ao_disable_port(port) do { \
if ((port) == &stm_gpioa) \
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_GPIOAEN); \
+ stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_IOPAEN); \
else if ((port) == &stm_gpiob) \
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_GPIOBEN); \
+ stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_IOPBEN); \
else if ((port) == &stm_gpioc) \
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_GPIOCEN); \
- else if ((port) == &stm_gpiod) \
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_GPIODEN); \
- else if ((port) == &stm_gpioe) \
- stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_GPIOEEN); \
+ stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_IOPCEN); \
+ else if ((port) == &stm_gpiof) \
+ stm_rcc.ahbenr &= ~(1 << STM_RCC_AHBENR_IOPFEN); \
} while (0)
-
#define ao_gpio_set(port, bit, pin, v) stm_gpio_set(port, bit, v)
#define ao_gpio_get(port, bit, pin) stm_gpio_get(port, bit)
else \
stm_pupdr_set(port, bit, STM_PUPDR_NONE); \
} while (0)
-
+
#define ao_enable_input(port,bit,mode) do { \
ao_enable_port(port); \
stm_moder_set(port, bit, STM_MODER_INPUT); \
ao_arch_irqrestore(__mask); \
} while (0)
+/* ao_usb_stm.c */
+
+#if AO_USB_DIRECTIO
+uint16_t *
+ao_usb_alloc(void);
+
void
-ao_clock_enable_crs(void);
+ao_usb_free(uint16_t *buffer);
void
-ao_clock_disable_crs(void);
+ao_usb_write(uint16_t *buffer, uint16_t len);
+#endif /* AO_USB_DIRECTIO */
#endif /* _AO_ARCH_FUNCS_H_ */