From 316c3b4825689afca170576e5a5681302f64fdfa Mon Sep 17 00:00:00 2001 From: Michael Spradling Date: Mon, 29 Jun 2015 21:54:13 -0400 Subject: Add CRC Driver This patch includes a high level and two low level drivers. The high level driver is enabled with flag HAL_USE_CRC The low level drivers include: * Hardware CRC for the STM32 cortex processor lines.(when supported) * Enabled with flag STM32_CRC_USE_CRC1 * DMA is enabled with CRC_USE_DMA * SYNC api will use DMA, but put calling thread to sleep * ASYNC api enabled. * DMA Disabled * SYNC api spin while calculating CRC * ASYNC api disabled * Software CRC (3 modes) * CRCSW_CRC32_TABLE - Enables crc32 with lookup table. * CRCSW_CRC16_TABLE - Enables crc16 with lookup tables. * CRCSW_PROGRAMMBLE - Enables any crc done with computation. * Can calculate any crc configuration. * CRC_USE_DMA obviously not support with software CRC --- os/hal/src/hal_community.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'os/hal/src/hal_community.c') diff --git a/os/hal/src/hal_community.c b/os/hal/src/hal_community.c index 7c71e3f..b9700ba 100644 --- a/os/hal/src/hal_community.c +++ b/os/hal/src/hal_community.c @@ -60,6 +60,10 @@ void halCommunityInit(void) { #if HAL_USE_EICU || defined(__DOXYGEN__) eicuInit(); #endif + +#if HAL_USE_CRC || defined(__DOXYGEN__) + crcInit(); +#endif } #endif /* HAL_USE_COMMUNITY */ -- cgit v1.2.3