diff options
Diffstat (limited to 'testhal/STM32F3xx/SPI')
| -rw-r--r-- | testhal/STM32F3xx/SPI/.cproject | 51 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/.project | 90 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/Makefile | 221 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/chconf.h | 535 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/halconf.h | 316 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/main.c | 166 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/mcuconf.h | 185 | ||||
| -rw-r--r-- | testhal/STM32F3xx/SPI/readme.txt | 30 | 
8 files changed, 0 insertions, 1594 deletions
diff --git a/testhal/STM32F3xx/SPI/.cproject b/testhal/STM32F3xx/SPI/.cproject deleted file mode 100644 index 104d73e64..000000000 --- a/testhal/STM32F3xx/SPI/.cproject +++ /dev/null @@ -1,51 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?>
 -<?fileVersion 4.0.0?>
 -
 -<cproject storage_type_id="org.eclipse.cdt.core.XmlProjectDescriptionStorage">
 -	<storageModule moduleId="org.eclipse.cdt.core.settings">
 -		<cconfiguration id="0.961069355">
 -			<storageModule buildSystemId="org.eclipse.cdt.managedbuilder.core.configurationDataProvider" id="0.961069355" moduleId="org.eclipse.cdt.core.settings" name="Default">
 -				<externalSettings/>
 -				<extensions>
 -					<extension id="org.eclipse.cdt.core.VCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 -					<extension id="org.eclipse.cdt.core.GmakeErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 -					<extension id="org.eclipse.cdt.core.CWDLocator" point="org.eclipse.cdt.core.ErrorParser"/>
 -					<extension id="org.eclipse.cdt.core.GCCErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 -					<extension id="org.eclipse.cdt.core.GASErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 -					<extension id="org.eclipse.cdt.core.GLDErrorParser" point="org.eclipse.cdt.core.ErrorParser"/>
 -				</extensions>
 -			</storageModule>
 -			<storageModule moduleId="cdtBuildSystem" version="4.0.0">
 -				<configuration artifactName="${ProjName}" buildProperties="" description="" id="0.961069355" name="Default" parent="org.eclipse.cdt.build.core.prefbase.cfg">
 -					<folderInfo id="0.961069355." name="/" resourcePath="">
 -						<toolChain id="org.eclipse.cdt.build.core.prefbase.toolchain.1191921960" name="No ToolChain" resourceTypeBasedDiscovery="false" superClass="org.eclipse.cdt.build.core.prefbase.toolchain">
 -							<targetPlatform id="org.eclipse.cdt.build.core.prefbase.toolchain.1191921960.489155230" name=""/>
 -							<builder autoBuildTarget="all" cleanBuildTarget="clean" enableAutoBuild="false" enableCleanBuild="true" enabledIncrementalBuild="true" id="org.eclipse.cdt.build.core.settings.default.builder.366868576" incrementalBuildTarget="all" keepEnvironmentInBuildfile="false" managedBuildOn="false" name="Gnu Make Builder" parallelBuildOn="true" parallelizationNumber="optimal" superClass="org.eclipse.cdt.build.core.settings.default.builder"/>
 -							<tool id="org.eclipse.cdt.build.core.settings.holder.libs.1261535636" name="holder for library settings" superClass="org.eclipse.cdt.build.core.settings.holder.libs"/>
 -							<tool id="org.eclipse.cdt.build.core.settings.holder.511812513" name="Assembly" superClass="org.eclipse.cdt.build.core.settings.holder">
 -								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.2025254158" languageId="org.eclipse.cdt.core.assembly" languageName="Assembly" sourceContentType="org.eclipse.cdt.core.asmSource" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 -							</tool>
 -							<tool id="org.eclipse.cdt.build.core.settings.holder.165274400" name="GNU C++" superClass="org.eclipse.cdt.build.core.settings.holder">
 -								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.931360527" languageId="org.eclipse.cdt.core.g++" languageName="GNU C++" sourceContentType="org.eclipse.cdt.core.cxxSource,org.eclipse.cdt.core.cxxHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 -							</tool>
 -							<tool id="org.eclipse.cdt.build.core.settings.holder.932903091" name="GNU C" superClass="org.eclipse.cdt.build.core.settings.holder">
 -								<inputType id="org.eclipse.cdt.build.core.settings.holder.inType.2129730928" languageId="org.eclipse.cdt.core.gcc" languageName="GNU C" sourceContentType="org.eclipse.cdt.core.cSource,org.eclipse.cdt.core.cHeader" superClass="org.eclipse.cdt.build.core.settings.holder.inType"/>
 -							</tool>
 -						</toolChain>
 -					</folderInfo>
 -				</configuration>
 -			</storageModule>
 -			<storageModule moduleId="org.eclipse.cdt.core.externalSettings"/>
 -		</cconfiguration>
 -	</storageModule>
 -	<storageModule moduleId="cdtBuildSystem" version="4.0.0">
 -		<project id="STM32F30x-SPI.null.1537816093" name="STM32F30x-SPI"/>
 -	</storageModule>
 -	<storageModule moduleId="scannerConfiguration">
 -		<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId=""/>
 -		<scannerConfigBuildInfo instanceId="0.961069355">
 -			<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="org.eclipse.cdt.make.core.GCCStandardMakePerProjectProfile"/>
 -		</scannerConfigBuildInfo>
 -	</storageModule>
 -	<storageModule moduleId="org.eclipse.cdt.core.LanguageSettingsProviders"/>
 -</cproject>
 diff --git a/testhal/STM32F3xx/SPI/.project b/testhal/STM32F3xx/SPI/.project deleted file mode 100644 index 61b728dcf..000000000 --- a/testhal/STM32F3xx/SPI/.project +++ /dev/null @@ -1,90 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?>
 -<projectDescription>
 -	<name>STM32F30x-SPI</name>
 -	<comment></comment>
 -	<projects>
 -	</projects>
 -	<buildSpec>
 -		<buildCommand>
 -			<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
 -			<triggers>clean,full,incremental,</triggers>
 -			<arguments>
 -				<dictionary>
 -					<key>?name?</key>
 -					<value></value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.append_environment</key>
 -					<value>true</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
 -					<value>all</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.buildArguments</key>
 -					<value>-j1</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.buildCommand</key>
 -					<value>make</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
 -					<value>clean</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.contents</key>
 -					<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
 -					<value>false</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
 -					<value>true</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.enableFullBuild</key>
 -					<value>true</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.fullBuildTarget</key>
 -					<value>all</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.stopOnError</key>
 -					<value>true</value>
 -				</dictionary>
 -				<dictionary>
 -					<key>org.eclipse.cdt.make.core.useDefaultBuildCmd</key>
 -					<value>true</value>
 -				</dictionary>
 -			</arguments>
 -		</buildCommand>
 -		<buildCommand>
 -			<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
 -			<triggers>full,incremental,</triggers>
 -			<arguments>
 -			</arguments>
 -		</buildCommand>
 -	</buildSpec>
 -	<natures>
 -		<nature>org.eclipse.cdt.core.cnature</nature>
 -		<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
 -		<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
 -	</natures>
 -	<linkedResources>
 -		<link>
 -			<name>board</name>
 -			<type>2</type>
 -			<locationURI>CHIBIOS/boards/ST_STM32F3_DISCOVERY</locationURI>
 -		</link>
 -		<link>
 -			<name>os</name>
 -			<type>2</type>
 -			<locationURI>CHIBIOS/os</locationURI>
 -		</link>
 -	</linkedResources>
 -</projectDescription>
 diff --git a/testhal/STM32F3xx/SPI/Makefile b/testhal/STM32F3xx/SPI/Makefile deleted file mode 100644 index 455c2e5da..000000000 --- a/testhal/STM32F3xx/SPI/Makefile +++ /dev/null @@ -1,221 +0,0 @@ -##############################################################################
 -# Build global options
 -# NOTE: Can be overridden externally.
 -#
 -
 -# Compiler options here.
 -ifeq ($(USE_OPT),)
 -  USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16
 -endif
 -
 -# C specific options here (added to USE_OPT).
 -ifeq ($(USE_COPT),)
 -  USE_COPT = 
 -endif
 -
 -# C++ specific options here (added to USE_OPT).
 -ifeq ($(USE_CPPOPT),)
 -  USE_CPPOPT = -fno-rtti
 -endif
 -
 -# Enable this if you want the linker to remove unused code and data
 -ifeq ($(USE_LINK_GC),)
 -  USE_LINK_GC = yes
 -endif
 -
 -# If enabled, this option allows to compile the application in THUMB mode.
 -ifeq ($(USE_THUMB),)
 -  USE_THUMB = yes
 -endif
 -
 -# Enable this if you want to see the full log while compiling.
 -ifeq ($(USE_VERBOSE_COMPILE),)
 -  USE_VERBOSE_COMPILE = no
 -endif
 -
 -#
 -# Build global options
 -##############################################################################
 -
 -##############################################################################
 -# Architecture or project specific options
 -#
 -
 -# Enables the use of FPU on Cortex-M4.
 -# Enable this if you really want to use the STM FWLib.
 -ifeq ($(USE_FPU),)
 -  USE_FPU = no
 -endif
 -
 -# Enable this if you really want to use the STM FWLib.
 -ifeq ($(USE_FWLIB),)
 -  USE_FWLIB = no
 -endif
 -
 -#
 -# Architecture or project specific options
 -##############################################################################
 -
 -##############################################################################
 -# Project, sources and paths
 -#
 -
 -# Define project name here
 -PROJECT = ch
 -
 -# Imported source files and paths
 -CHIBIOS = ../../..
 -include $(CHIBIOS)/boards/ST_STM32F3_DISCOVERY/board.mk
 -include $(CHIBIOS)/os/hal/platforms/STM32F30x/platform.mk
 -include $(CHIBIOS)/os/hal/hal.mk
 -include $(CHIBIOS)/os/ports/GCC/ARMCMx/STM32F3xx/port.mk
 -include $(CHIBIOS)/os/kernel/kernel.mk
 -#include $(CHIBIOS)/test/test.mk
 -
 -# Define linker script file here
 -LDSCRIPT= $(PORTLD)/STM32F303xC.ld
 -
 -# C sources that can be compiled in ARM or THUMB mode depending on the global
 -# setting.
 -CSRC = $(PORTSRC) \
 -       $(KERNSRC) \
 -       $(TESTSRC) \
 -       $(HALSRC) \
 -       $(PLATFORMSRC) \
 -       $(BOARDSRC) \
 -       main.c
 -
 -# C++ sources that can be compiled in ARM or THUMB mode depending on the global
 -# setting.
 -CPPSRC =
 -
 -# C sources to be compiled in ARM mode regardless of the global setting.
 -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 -#       option that results in lower performance and larger code size.
 -ACSRC =
 -
 -# C++ sources to be compiled in ARM mode regardless of the global setting.
 -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 -#       option that results in lower performance and larger code size.
 -ACPPSRC =
 -
 -# C sources to be compiled in THUMB mode regardless of the global setting.
 -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 -#       option that results in lower performance and larger code size.
 -TCSRC =
 -
 -# C sources to be compiled in THUMB mode regardless of the global setting.
 -# NOTE: Mixing ARM and THUMB mode enables the -mthumb-interwork compiler
 -#       option that results in lower performance and larger code size.
 -TCPPSRC =
 -
 -# List ASM source files here
 -ASMSRC = $(PORTASM)
 -
 -INCDIR = $(PORTINC) $(KERNINC) $(TESTINC) \
 -         $(HALINC) $(PLATFORMINC) $(BOARDINC) \
 -         $(CHIBIOS)/os/various/devices_lib/accel \
 -         $(CHIBIOS)/os/various
 -
 -#
 -# Project, sources and paths
 -##############################################################################
 -
 -##############################################################################
 -# Compiler settings
 -#
 -
 -MCU  = cortex-m4
 -
 -#TRGT = arm-elf-
 -TRGT = arm-none-eabi-
 -CC   = $(TRGT)gcc
 -CPPC = $(TRGT)g++
 -# Enable loading with g++ only if you need C++ runtime support.
 -# NOTE: You can use C++ even without C++ support if you are careful. C++
 -#       runtime support makes code size explode.
 -LD   = $(TRGT)gcc
 -#LD   = $(TRGT)g++
 -CP   = $(TRGT)objcopy
 -AS   = $(TRGT)gcc -x assembler-with-cpp
 -OD   = $(TRGT)objdump
 -HEX  = $(CP) -O ihex
 -BIN  = $(CP) -O binary
 -
 -# ARM-specific options here
 -AOPT =
 -
 -# THUMB-specific options here
 -TOPT = -mthumb -DTHUMB
 -
 -# Define C warning options here
 -CWARN = -Wall -Wextra -Wstrict-prototypes
 -
 -# Define C++ warning options here
 -CPPWARN = -Wall -Wextra
 -
 -#
 -# Compiler settings
 -##############################################################################
 -
 -##############################################################################
 -# Start of default section
 -#
 -
 -# List all default C defines here, like -D_DEBUG=1
 -DDEFS =
 -
 -# List all default ASM defines here, like -D_DEBUG=1
 -DADEFS =
 -
 -# List all default directories to look for include files here
 -DINCDIR =
 -
 -# List the default directory to look for the libraries here
 -DLIBDIR =
 -
 -# List all default libraries here
 -DLIBS =
 -
 -#
 -# End of default section
 -##############################################################################
 -
 -##############################################################################
 -# Start of user section
 -#
 -
 -# List all user C define here, like -D_DEBUG=1
 -UDEFS =
 -
 -# Define ASM defines here
 -UADEFS =
 -
 -# List all user directories here
 -UINCDIR =
 -
 -# List the user directory to look for the libraries here
 -ULIBDIR =
 -
 -# List all user libraries here
 -ULIBS =
 -
 -#
 -# End of user defines
 -##############################################################################
 -
 -ifeq ($(USE_FPU),yes)
 -  USE_OPT += -mfloat-abi=softfp -mfpu=fpv4-sp-d16 -fsingle-precision-constant
 -  DDEFS += -DCORTEX_USE_FPU=TRUE
 -else
 -  DDEFS += -DCORTEX_USE_FPU=FALSE
 -endif
 -
 -ifeq ($(USE_FWLIB),yes)
 -  include $(CHIBIOS)/ext/stm32lib/stm32lib.mk
 -  CSRC += $(STM32SRC)
 -  INCDIR += $(STM32INC)
 -  USE_OPT += -DUSE_STDPERIPH_DRIVER
 -endif
 -
 -include $(CHIBIOS)/os/ports/GCC/ARMCMx/rules.mk
 diff --git a/testhal/STM32F3xx/SPI/chconf.h b/testhal/STM32F3xx/SPI/chconf.h deleted file mode 100644 index 40bf50ea7..000000000 --- a/testhal/STM32F3xx/SPI/chconf.h +++ /dev/null @@ -1,535 +0,0 @@ -/*
 -    ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
 -                 2011,2012,2013 Giovanni Di Sirio.
 -
 -    This file is part of ChibiOS/RT.
 -
 -    ChibiOS/RT is free software; you can redistribute it and/or modify
 -    it under the terms of the GNU General Public License as published by
 -    the Free Software Foundation; either version 3 of the License, or
 -    (at your option) any later version.
 -
 -    ChibiOS/RT is distributed in the hope that it will be useful,
 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 -    GNU General Public License for more details.
 -
 -    You should have received a copy of the GNU General Public License
 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 -*/
 -
 -/**
 - * @file    templates/chconf.h
 - * @brief   Configuration file template.
 - * @details A copy of this file must be placed in each project directory, it
 - *          contains the application specific kernel settings.
 - *
 - * @addtogroup config
 - * @details Kernel related settings and hooks.
 - * @{
 - */
 -
 -#ifndef _CHCONF_H_
 -#define _CHCONF_H_
 -
 -/*===========================================================================*/
 -/**
 - * @name Kernel parameters and options
 - * @{
 - */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   System tick frequency.
 - * @details Frequency of the system timer that drives the system ticks. This
 - *          setting also defines the system tick time unit.
 - */
 -#if !defined(CH_FREQUENCY) || defined(__DOXYGEN__)
 -#define CH_FREQUENCY                    1000
 -#endif
 -
 -/**
 - * @brief   Round robin interval.
 - * @details This constant is the number of system ticks allowed for the
 - *          threads before preemption occurs. Setting this value to zero
 - *          disables the preemption for threads with equal priority and the
 - *          round robin becomes cooperative. Note that higher priority
 - *          threads can still preempt, the kernel is always preemptive.
 - *
 - * @note    Disabling the round robin preemption makes the kernel more compact
 - *          and generally faster.
 - */
 -#if !defined(CH_TIME_QUANTUM) || defined(__DOXYGEN__)
 -#define CH_TIME_QUANTUM                 20
 -#endif
 -
 -/**
 - * @brief   Managed RAM size.
 - * @details Size of the RAM area to be managed by the OS. If set to zero
 - *          then the whole available RAM is used. The core memory is made
 - *          available to the heap allocator and/or can be used directly through
 - *          the simplified core memory allocator.
 - *
 - * @note    In order to let the OS manage the whole RAM the linker script must
 - *          provide the @p __heap_base__ and @p __heap_end__ symbols.
 - * @note    Requires @p CH_USE_MEMCORE.
 - */
 -#if !defined(CH_MEMCORE_SIZE) || defined(__DOXYGEN__)
 -#define CH_MEMCORE_SIZE                 0
 -#endif
 -
 -/**
 - * @brief   Idle thread automatic spawn suppression.
 - * @details When this option is activated the function @p chSysInit()
 - *          does not spawn the idle thread automatically. The application has
 - *          then the responsibility to do one of the following:
 - *          - Spawn a custom idle thread at priority @p IDLEPRIO.
 - *          - Change the main() thread priority to @p IDLEPRIO then enter
 - *            an endless loop. In this scenario the @p main() thread acts as
 - *            the idle thread.
 - *          .
 - * @note    Unless an idle thread is spawned the @p main() thread must not
 - *          enter a sleep state.
 - */
 -#if !defined(CH_NO_IDLE_THREAD) || defined(__DOXYGEN__)
 -#define CH_NO_IDLE_THREAD               FALSE
 -#endif
 -
 -/** @} */
 -
 -/*===========================================================================*/
 -/**
 - * @name Performance options
 - * @{
 - */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   OS optimization.
 - * @details If enabled then time efficient rather than space efficient code
 - *          is used when two possible implementations exist.
 - *
 - * @note    This is not related to the compiler optimization options.
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_OPTIMIZE_SPEED) || defined(__DOXYGEN__)
 -#define CH_OPTIMIZE_SPEED               TRUE
 -#endif
 -
 -/** @} */
 -
 -/*===========================================================================*/
 -/**
 - * @name Subsystem options
 - * @{
 - */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Threads registry APIs.
 - * @details If enabled then the registry APIs are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_REGISTRY) || defined(__DOXYGEN__)
 -#define CH_USE_REGISTRY                 TRUE
 -#endif
 -
 -/**
 - * @brief   Threads synchronization APIs.
 - * @details If enabled then the @p chThdWait() function is included in
 - *          the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_WAITEXIT) || defined(__DOXYGEN__)
 -#define CH_USE_WAITEXIT                 TRUE
 -#endif
 -
 -/**
 - * @brief   Semaphores APIs.
 - * @details If enabled then the Semaphores APIs are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_SEMAPHORES) || defined(__DOXYGEN__)
 -#define CH_USE_SEMAPHORES               TRUE
 -#endif
 -
 -/**
 - * @brief   Semaphores queuing mode.
 - * @details If enabled then the threads are enqueued on semaphores by
 - *          priority rather than in FIFO order.
 - *
 - * @note    The default is @p FALSE. Enable this if you have special requirements.
 - * @note    Requires @p CH_USE_SEMAPHORES.
 - */
 -#if !defined(CH_USE_SEMAPHORES_PRIORITY) || defined(__DOXYGEN__)
 -#define CH_USE_SEMAPHORES_PRIORITY      FALSE
 -#endif
 -
 -/**
 - * @brief   Atomic semaphore API.
 - * @details If enabled then the semaphores the @p chSemSignalWait() API
 - *          is included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_SEMAPHORES.
 - */
 -#if !defined(CH_USE_SEMSW) || defined(__DOXYGEN__)
 -#define CH_USE_SEMSW                    TRUE
 -#endif
 -
 -/**
 - * @brief   Mutexes APIs.
 - * @details If enabled then the mutexes APIs are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_MUTEXES) || defined(__DOXYGEN__)
 -#define CH_USE_MUTEXES                  TRUE
 -#endif
 -
 -/**
 - * @brief   Conditional Variables APIs.
 - * @details If enabled then the conditional variables APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_MUTEXES.
 - */
 -#if !defined(CH_USE_CONDVARS) || defined(__DOXYGEN__)
 -#define CH_USE_CONDVARS                 TRUE
 -#endif
 -
 -/**
 - * @brief   Conditional Variables APIs with timeout.
 - * @details If enabled then the conditional variables APIs with timeout
 - *          specification are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_CONDVARS.
 - */
 -#if !defined(CH_USE_CONDVARS_TIMEOUT) || defined(__DOXYGEN__)
 -#define CH_USE_CONDVARS_TIMEOUT         TRUE
 -#endif
 -
 -/**
 - * @brief   Events Flags APIs.
 - * @details If enabled then the event flags APIs are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_EVENTS) || defined(__DOXYGEN__)
 -#define CH_USE_EVENTS                   TRUE
 -#endif
 -
 -/**
 - * @brief   Events Flags APIs with timeout.
 - * @details If enabled then the events APIs with timeout specification
 - *          are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_EVENTS.
 - */
 -#if !defined(CH_USE_EVENTS_TIMEOUT) || defined(__DOXYGEN__)
 -#define CH_USE_EVENTS_TIMEOUT           TRUE
 -#endif
 -
 -/**
 - * @brief   Synchronous Messages APIs.
 - * @details If enabled then the synchronous messages APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_MESSAGES) || defined(__DOXYGEN__)
 -#define CH_USE_MESSAGES                 TRUE
 -#endif
 -
 -/**
 - * @brief   Synchronous Messages queuing mode.
 - * @details If enabled then messages are served by priority rather than in
 - *          FIFO order.
 - *
 - * @note    The default is @p FALSE. Enable this if you have special requirements.
 - * @note    Requires @p CH_USE_MESSAGES.
 - */
 -#if !defined(CH_USE_MESSAGES_PRIORITY) || defined(__DOXYGEN__)
 -#define CH_USE_MESSAGES_PRIORITY        FALSE
 -#endif
 -
 -/**
 - * @brief   Mailboxes APIs.
 - * @details If enabled then the asynchronous messages (mailboxes) APIs are
 - *          included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_SEMAPHORES.
 - */
 -#if !defined(CH_USE_MAILBOXES) || defined(__DOXYGEN__)
 -#define CH_USE_MAILBOXES                TRUE
 -#endif
 -
 -/**
 - * @brief   I/O Queues APIs.
 - * @details If enabled then the I/O queues APIs are included in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_QUEUES) || defined(__DOXYGEN__)
 -#define CH_USE_QUEUES                   TRUE
 -#endif
 -
 -/**
 - * @brief   Core Memory Manager APIs.
 - * @details If enabled then the core memory manager APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_MEMCORE) || defined(__DOXYGEN__)
 -#define CH_USE_MEMCORE                  TRUE
 -#endif
 -
 -/**
 - * @brief   Heap Allocator APIs.
 - * @details If enabled then the memory heap allocator APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_MEMCORE and either @p CH_USE_MUTEXES or
 - *          @p CH_USE_SEMAPHORES.
 - * @note    Mutexes are recommended.
 - */
 -#if !defined(CH_USE_HEAP) || defined(__DOXYGEN__)
 -#define CH_USE_HEAP                     TRUE
 -#endif
 -
 -/**
 - * @brief   C-runtime allocator.
 - * @details If enabled the the heap allocator APIs just wrap the C-runtime
 - *          @p malloc() and @p free() functions.
 - *
 - * @note    The default is @p FALSE.
 - * @note    Requires @p CH_USE_HEAP.
 - * @note    The C-runtime may or may not require @p CH_USE_MEMCORE, see the
 - *          appropriate documentation.
 - */
 -#if !defined(CH_USE_MALLOC_HEAP) || defined(__DOXYGEN__)
 -#define CH_USE_MALLOC_HEAP              FALSE
 -#endif
 -
 -/**
 - * @brief   Memory Pools Allocator APIs.
 - * @details If enabled then the memory pools allocator APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - */
 -#if !defined(CH_USE_MEMPOOLS) || defined(__DOXYGEN__)
 -#define CH_USE_MEMPOOLS                 TRUE
 -#endif
 -
 -/**
 - * @brief   Dynamic Threads APIs.
 - * @details If enabled then the dynamic threads creation APIs are included
 - *          in the kernel.
 - *
 - * @note    The default is @p TRUE.
 - * @note    Requires @p CH_USE_WAITEXIT.
 - * @note    Requires @p CH_USE_HEAP and/or @p CH_USE_MEMPOOLS.
 - */
 -#if !defined(CH_USE_DYNAMIC) || defined(__DOXYGEN__)
 -#define CH_USE_DYNAMIC                  TRUE
 -#endif
 -
 -/** @} */
 -
 -/*===========================================================================*/
 -/**
 - * @name Debug options
 - * @{
 - */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Debug option, system state check.
 - * @details If enabled the correct call protocol for system APIs is checked
 - *          at runtime.
 - *
 - * @note    The default is @p FALSE.
 - */
 -#if !defined(CH_DBG_SYSTEM_STATE_CHECK) || defined(__DOXYGEN__)
 -#define CH_DBG_SYSTEM_STATE_CHECK       TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, parameters checks.
 - * @details If enabled then the checks on the API functions input
 - *          parameters are activated.
 - *
 - * @note    The default is @p FALSE.
 - */
 -#if !defined(CH_DBG_ENABLE_CHECKS) || defined(__DOXYGEN__)
 -#define CH_DBG_ENABLE_CHECKS            TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, consistency checks.
 - * @details If enabled then all the assertions in the kernel code are
 - *          activated. This includes consistency checks inside the kernel,
 - *          runtime anomalies and port-defined checks.
 - *
 - * @note    The default is @p FALSE.
 - */
 -#if !defined(CH_DBG_ENABLE_ASSERTS) || defined(__DOXYGEN__)
 -#define CH_DBG_ENABLE_ASSERTS           TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, trace buffer.
 - * @details If enabled then the context switch circular trace buffer is
 - *          activated.
 - *
 - * @note    The default is @p FALSE.
 - */
 -#if !defined(CH_DBG_ENABLE_TRACE) || defined(__DOXYGEN__)
 -#define CH_DBG_ENABLE_TRACE             TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, stack checks.
 - * @details If enabled then a runtime stack check is performed.
 - *
 - * @note    The default is @p FALSE.
 - * @note    The stack check is performed in a architecture/port dependent way.
 - *          It may not be implemented or some ports.
 - * @note    The default failure mode is to halt the system with the global
 - *          @p panic_msg variable set to @p NULL.
 - */
 -#if !defined(CH_DBG_ENABLE_STACK_CHECK) || defined(__DOXYGEN__)
 -#define CH_DBG_ENABLE_STACK_CHECK       TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, stacks initialization.
 - * @details If enabled then the threads working area is filled with a byte
 - *          value when a thread is created. This can be useful for the
 - *          runtime measurement of the used stack.
 - *
 - * @note    The default is @p FALSE.
 - */
 -#if !defined(CH_DBG_FILL_THREADS) || defined(__DOXYGEN__)
 -#define CH_DBG_FILL_THREADS             TRUE
 -#endif
 -
 -/**
 - * @brief   Debug option, threads profiling.
 - * @details If enabled then a field is added to the @p Thread structure that
 - *          counts the system ticks occurred while executing the thread.
 - *
 - * @note    The default is @p TRUE.
 - * @note    This debug option is defaulted to TRUE because it is required by
 - *          some test cases into the test suite.
 - */
 -#if !defined(CH_DBG_THREADS_PROFILING) || defined(__DOXYGEN__)
 -#define CH_DBG_THREADS_PROFILING        TRUE
 -#endif
 -
 -/** @} */
 -
 -/*===========================================================================*/
 -/**
 - * @name Kernel hooks
 - * @{
 - */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Threads descriptor structure extension.
 - * @details User fields added to the end of the @p Thread structure.
 - */
 -#if !defined(THREAD_EXT_FIELDS) || defined(__DOXYGEN__)
 -#define THREAD_EXT_FIELDS                                                   \
 -  /* Add threads custom fields here.*/
 -#endif
 -
 -/**
 - * @brief   Threads initialization hook.
 - * @details User initialization code added to the @p chThdInit() API.
 - *
 - * @note    It is invoked from within @p chThdInit() and implicitly from all
 - *          the threads creation APIs.
 - */
 -#if !defined(THREAD_EXT_INIT_HOOK) || defined(__DOXYGEN__)
 -#define THREAD_EXT_INIT_HOOK(tp) {                                          \
 -  /* Add threads initialization code here.*/                                \
 -}
 -#endif
 -
 -/**
 - * @brief   Threads finalization hook.
 - * @details User finalization code added to the @p chThdExit() API.
 - *
 - * @note    It is inserted into lock zone.
 - * @note    It is also invoked when the threads simply return in order to
 - *          terminate.
 - */
 -#if !defined(THREAD_EXT_EXIT_HOOK) || defined(__DOXYGEN__)
 -#define THREAD_EXT_EXIT_HOOK(tp) {                                          \
 -  /* Add threads finalization code here.*/                                  \
 -}
 -#endif
 -
 -/**
 - * @brief   Context switch hook.
 - * @details This hook is invoked just before switching between threads.
 - */
 -#if !defined(THREAD_CONTEXT_SWITCH_HOOK) || defined(__DOXYGEN__)
 -#define THREAD_CONTEXT_SWITCH_HOOK(ntp, otp) {                              \
 -  /* System halt code here.*/                                               \
 -}
 -#endif
 -
 -/**
 - * @brief   Idle Loop hook.
 - * @details This hook is continuously invoked by the idle thread loop.
 - */
 -#if !defined(IDLE_LOOP_HOOK) || defined(__DOXYGEN__)
 -#define IDLE_LOOP_HOOK() {                                                  \
 -  /* Idle loop code here.*/                                                 \
 -}
 -#endif
 -
 -/**
 - * @brief   System tick event hook.
 - * @details This hook is invoked in the system tick handler immediately
 - *          after processing the virtual timers queue.
 - */
 -#if !defined(SYSTEM_TICK_EVENT_HOOK) || defined(__DOXYGEN__)
 -#define SYSTEM_TICK_EVENT_HOOK() {                                          \
 -  /* System tick event code here.*/                                         \
 -}
 -#endif
 -
 -/**
 - * @brief   System halt hook.
 - * @details This hook is invoked in case to a system halting error before
 - *          the system is halted.
 - */
 -#if !defined(SYSTEM_HALT_HOOK) || defined(__DOXYGEN__)
 -#define SYSTEM_HALT_HOOK() {                                                \
 -  /* System halt code here.*/                                               \
 -}
 -#endif
 -
 -/** @} */
 -
 -/*===========================================================================*/
 -/* Port-specific settings (override port settings defaulted in chcore.h).    */
 -/*===========================================================================*/
 -
 -#endif  /* _CHCONF_H_ */
 -
 -/** @} */
 diff --git a/testhal/STM32F3xx/SPI/halconf.h b/testhal/STM32F3xx/SPI/halconf.h deleted file mode 100644 index a224e8f25..000000000 --- a/testhal/STM32F3xx/SPI/halconf.h +++ /dev/null @@ -1,316 +0,0 @@ -/*
 -    ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
 -                 2011,2012,2013 Giovanni Di Sirio.
 -
 -    This file is part of ChibiOS/RT.
 -
 -    ChibiOS/RT is free software; you can redistribute it and/or modify
 -    it under the terms of the GNU General Public License as published by
 -    the Free Software Foundation; either version 3 of the License, or
 -    (at your option) any later version.
 -
 -    ChibiOS/RT is distributed in the hope that it will be useful,
 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 -    GNU General Public License for more details.
 -
 -    You should have received a copy of the GNU General Public License
 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 -*/
 -
 -/**
 - * @file    templates/halconf.h
 - * @brief   HAL configuration header.
 - * @details HAL configuration file, this file allows to enable or disable the
 - *          various device drivers from your application. You may also use
 - *          this file in order to override the device drivers default settings.
 - *
 - * @addtogroup HAL_CONF
 - * @{
 - */
 -
 -#ifndef _HALCONF_H_
 -#define _HALCONF_H_
 -
 -#include "mcuconf.h"
 -
 -/**
 - * @brief   Enables the TM subsystem.
 - */
 -#if !defined(HAL_USE_TM) || defined(__DOXYGEN__)
 -#define HAL_USE_TM                  TRUE
 -#endif
 -
 -/**
 - * @brief   Enables the PAL subsystem.
 - */
 -#if !defined(HAL_USE_PAL) || defined(__DOXYGEN__)
 -#define HAL_USE_PAL                 TRUE
 -#endif
 -
 -/**
 - * @brief   Enables the ADC subsystem.
 - */
 -#if !defined(HAL_USE_ADC) || defined(__DOXYGEN__)
 -#define HAL_USE_ADC                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the CAN subsystem.
 - */
 -#if !defined(HAL_USE_CAN) || defined(__DOXYGEN__)
 -#define HAL_USE_CAN                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the EXT subsystem.
 - */
 -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__)
 -#define HAL_USE_EXT                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the GPT subsystem.
 - */
 -#if !defined(HAL_USE_GPT) || defined(__DOXYGEN__)
 -#define HAL_USE_GPT                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the I2C subsystem.
 - */
 -#if !defined(HAL_USE_I2C) || defined(__DOXYGEN__)
 -#define HAL_USE_I2C                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the ICU subsystem.
 - */
 -#if !defined(HAL_USE_ICU) || defined(__DOXYGEN__)
 -#define HAL_USE_ICU                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the MAC subsystem.
 - */
 -#if !defined(HAL_USE_MAC) || defined(__DOXYGEN__)
 -#define HAL_USE_MAC                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the MMC_SPI subsystem.
 - */
 -#if !defined(HAL_USE_MMC_SPI) || defined(__DOXYGEN__)
 -#define HAL_USE_MMC_SPI             FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the PWM subsystem.
 - */
 -#if !defined(HAL_USE_PWM) || defined(__DOXYGEN__)
 -#define HAL_USE_PWM                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the RTC subsystem.
 - */
 -#if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
 -#define HAL_USE_RTC                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the SDC subsystem.
 - */
 -#if !defined(HAL_USE_SDC) || defined(__DOXYGEN__)
 -#define HAL_USE_SDC                 FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the SERIAL subsystem.
 - */
 -#if !defined(HAL_USE_SERIAL) || defined(__DOXYGEN__)
 -#define HAL_USE_SERIAL              FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the SERIAL over USB subsystem.
 - */
 -#if !defined(HAL_USE_SERIAL_USB) || defined(__DOXYGEN__)
 -#define HAL_USE_SERIAL_USB          FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the SPI subsystem.
 - */
 -#if !defined(HAL_USE_SPI) || defined(__DOXYGEN__)
 -#define HAL_USE_SPI                 TRUE
 -#endif
 -
 -/**
 - * @brief   Enables the UART subsystem.
 - */
 -#if !defined(HAL_USE_UART) || defined(__DOXYGEN__)
 -#define HAL_USE_UART                FALSE
 -#endif
 -
 -/**
 - * @brief   Enables the USB subsystem.
 - */
 -#if !defined(HAL_USE_USB) || defined(__DOXYGEN__)
 -#define HAL_USE_USB                 FALSE
 -#endif
 -
 -/*===========================================================================*/
 -/* ADC driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Enables synchronous APIs.
 - * @note    Disabling this option saves both code and data space.
 - */
 -#if !defined(ADC_USE_WAIT) || defined(__DOXYGEN__)
 -#define ADC_USE_WAIT                TRUE
 -#endif
 -
 -/**
 - * @brief   Enables the @p adcAcquireBus() and @p adcReleaseBus() APIs.
 - * @note    Disabling this option saves both code and data space.
 - */
 -#if !defined(ADC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 -#define ADC_USE_MUTUAL_EXCLUSION    TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* CAN driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Sleep mode related APIs inclusion switch.
 - */
 -#if !defined(CAN_USE_SLEEP_MODE) || defined(__DOXYGEN__)
 -#define CAN_USE_SLEEP_MODE          TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* I2C driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Enables the mutual exclusion APIs on the I2C bus.
 - */
 -#if !defined(I2C_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 -#define I2C_USE_MUTUAL_EXCLUSION    TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* MAC driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Enables an event sources for incoming packets.
 - */
 -#if !defined(MAC_USE_ZERO_COPY) || defined(__DOXYGEN__)
 -#define MAC_USE_ZERO_COPY           FALSE
 -#endif
 -
 -/**
 - * @brief   Enables an event sources for incoming packets.
 - */
 -#if !defined(MAC_USE_EVENTS) || defined(__DOXYGEN__)
 -#define MAC_USE_EVENTS              TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* MMC_SPI driver related settings.                                          */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Delays insertions.
 - * @details If enabled this options inserts delays into the MMC waiting
 - *          routines releasing some extra CPU time for the threads with
 - *          lower priority, this may slow down the driver a bit however.
 - *          This option is recommended also if the SPI driver does not
 - *          use a DMA channel and heavily loads the CPU.
 - */
 -#if !defined(MMC_NICE_WAITING) || defined(__DOXYGEN__)
 -#define MMC_NICE_WAITING            TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* SDC driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Number of initialization attempts before rejecting the card.
 - * @note    Attempts are performed at 10mS intervals.
 - */
 -#if !defined(SDC_INIT_RETRY) || defined(__DOXYGEN__)
 -#define SDC_INIT_RETRY              100
 -#endif
 -
 -/**
 - * @brief   Include support for MMC cards.
 - * @note    MMC support is not yet implemented so this option must be kept
 - *          at @p FALSE.
 - */
 -#if !defined(SDC_MMC_SUPPORT) || defined(__DOXYGEN__)
 -#define SDC_MMC_SUPPORT             FALSE
 -#endif
 -
 -/**
 - * @brief   Delays insertions.
 - * @details If enabled this options inserts delays into the MMC waiting
 - *          routines releasing some extra CPU time for the threads with
 - *          lower priority, this may slow down the driver a bit however.
 - */
 -#if !defined(SDC_NICE_WAITING) || defined(__DOXYGEN__)
 -#define SDC_NICE_WAITING            TRUE
 -#endif
 -
 -/*===========================================================================*/
 -/* SERIAL driver related settings.                                           */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Default bit rate.
 - * @details Configuration parameter, this is the baud rate selected for the
 - *          default configuration.
 - */
 -#if !defined(SERIAL_DEFAULT_BITRATE) || defined(__DOXYGEN__)
 -#define SERIAL_DEFAULT_BITRATE      38400
 -#endif
 -
 -/**
 - * @brief   Serial buffers size.
 - * @details Configuration parameter, you can change the depth of the queue
 - *          buffers depending on the requirements of your application.
 - * @note    The default is 64 bytes for both the transmission and receive
 - *          buffers.
 - */
 -#if !defined(SERIAL_BUFFERS_SIZE) || defined(__DOXYGEN__)
 -#define SERIAL_BUFFERS_SIZE         16
 -#endif
 -
 -/*===========================================================================*/
 -/* SPI driver related settings.                                              */
 -/*===========================================================================*/
 -
 -/**
 - * @brief   Enables synchronous APIs.
 - * @note    Disabling this option saves both code and data space.
 - */
 -#if !defined(SPI_USE_WAIT) || defined(__DOXYGEN__)
 -#define SPI_USE_WAIT                TRUE
 -#endif
 -
 -/**
 - * @brief   Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs.
 - * @note    Disabling this option saves both code and data space.
 - */
 -#if !defined(SPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__)
 -#define SPI_USE_MUTUAL_EXCLUSION    TRUE
 -#endif
 -
 -#endif /* _HALCONF_H_ */
 -
 -/** @} */
 diff --git a/testhal/STM32F3xx/SPI/main.c b/testhal/STM32F3xx/SPI/main.c deleted file mode 100644 index 76afcc913..000000000 --- a/testhal/STM32F3xx/SPI/main.c +++ /dev/null @@ -1,166 +0,0 @@ -/*
 -    ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
 -                 2011,2012,2013 Giovanni Di Sirio.
 -
 -    This file is part of ChibiOS/RT.
 -
 -    ChibiOS/RT is free software; you can redistribute it and/or modify
 -    it under the terms of the GNU General Public License as published by
 -    the Free Software Foundation; either version 3 of the License, or
 -    (at your option) any later version.
 -
 -    ChibiOS/RT is distributed in the hope that it will be useful,
 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 -    GNU General Public License for more details.
 -
 -    You should have received a copy of the GNU General Public License
 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 -*/
 -
 -#include "ch.h"
 -#include "hal.h"
 -
 -/*
 - * Maximum speed SPI configuration (18MHz, CPHA=0, CPOL=0, MSb first).
 - */
 -static const SPIConfig hs_spicfg = {
 -  NULL,
 -  GPIOB,
 -  12,
 -  0,
 -  SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0
 -};
 -
 -/*
 - * Low speed SPI configuration (140.625kHz, CPHA=0, CPOL=0, MSb first).
 - */
 -static const SPIConfig ls_spicfg = {
 -  NULL,
 -  GPIOB,
 -  12,
 -  SPI_CR1_BR_2 | SPI_CR1_BR_1,
 -  SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0
 -};
 -
 -/*
 - * SPI TX and RX buffers.
 - */
 -static uint8_t txbuf[512];
 -static uint8_t rxbuf[512];
 -
 -/*
 - * SPI bus contender 1.
 - */
 -static WORKING_AREA(spi_thread_1_wa, 256);
 -static msg_t spi_thread_1(void *p) {
 -
 -  (void)p;
 -  chRegSetThreadName("SPI thread 1");
 -  while (TRUE) {
 -    spiAcquireBus(&SPID2);              /* Acquire ownership of the bus.    */
 -    palSetPad(GPIOE, GPIOE_LED10_RED);  /* LED ON.                          */
 -    spiStart(&SPID2, &hs_spicfg);       /* Setup transfer parameters.       */
 -    spiSelect(&SPID2);                  /* Slave Select assertion.          */
 -    spiExchange(&SPID2, 512,
 -                txbuf, rxbuf);          /* Atomic transfer operations.      */
 -    spiUnselect(&SPID2);                /* Slave Select de-assertion.       */
 -    spiReleaseBus(&SPID2);              /* Ownership release.               */
 -  }
 -  return 0;
 -}
 -
 -/*
 - * SPI bus contender 2.
 - */
 -static WORKING_AREA(spi_thread_2_wa, 256);
 -static msg_t spi_thread_2(void *p) {
 -
 -  (void)p;
 -  chRegSetThreadName("SPI thread 2");
 -  while (TRUE) {
 -    spiAcquireBus(&SPID2);              /* Acquire ownership of the bus.    */
 -    palClearPad(GPIOE, GPIOE_LED10_RED);/* LED OFF.                         */
 -    spiStart(&SPID2, &ls_spicfg);       /* Setup transfer parameters.       */
 -    spiSelect(&SPID2);                  /* Slave Select assertion.          */
 -    spiExchange(&SPID2, 512,
 -                txbuf, rxbuf);          /* Atomic transfer operations.      */
 -    spiUnselect(&SPID2);                /* Slave Select de-assertion.       */
 -    spiReleaseBus(&SPID2);              /* Ownership release.               */
 -  }
 -  return 0;
 -}
 -/*
 - * This is a periodic thread that does absolutely nothing except flashing
 - * a LED.
 - */
 -static WORKING_AREA(blinker_wa, 128);
 -static msg_t blinker(void *arg) {
 -
 -  (void)arg;
 -  chRegSetThreadName("blinker");
 -  while (TRUE) {
 -    palSetPad(GPIOE, GPIOE_LED3_RED);
 -    chThdSleepMilliseconds(500);
 -    palClearPad(GPIOE, GPIOE_LED3_RED);
 -    chThdSleepMilliseconds(500);
 -  }
 -}
 -
 -/*
 - * Application entry point.
 - */
 -int main(void) {
 -  unsigned i;
 -
 -  /*
 -   * System initializations.
 -   * - HAL initialization, this also initializes the configured device drivers
 -   *   and performs the board-specific initializations.
 -   * - Kernel initialization, the main() function becomes a thread and the
 -   *   RTOS is active.
 -   */
 -  halInit();
 -  chSysInit();
 -
 -  /*
 -   * SPI2 I/O pins setup.
 -   */
 -  palSetPadMode(GPIOB, 13, PAL_MODE_ALTERNATE(5) |
 -                           PAL_STM32_OSPEED_HIGHEST);       /* New SCK.     */
 -  palSetPadMode(GPIOB, 14, PAL_MODE_ALTERNATE(5) |
 -                           PAL_STM32_OSPEED_HIGHEST);       /* New MISO.    */
 -  palSetPadMode(GPIOB, 15, PAL_MODE_ALTERNATE(5) |
 -                           PAL_STM32_OSPEED_HIGHEST);       /* New MOSI.    */
 -  palSetPadMode(GPIOB, 12, PAL_MODE_OUTPUT_PUSHPULL |
 -                           PAL_STM32_OSPEED_HIGHEST);       /* New CS.      */
 -  palSetPad(GPIOB, 12);
 -
 -  /*
 -   * Prepare transmit pattern.
 -   */
 -  for (i = 0; i < sizeof(txbuf); i++)
 -    txbuf[i] = (uint8_t)i;
 -
 -  /*
 -   * Starting the transmitter and receiver threads.
 -   */
 -  chThdCreateStatic(spi_thread_1_wa, sizeof(spi_thread_1_wa),
 -                    NORMALPRIO + 1, spi_thread_1, NULL);
 -  chThdCreateStatic(spi_thread_2_wa, sizeof(spi_thread_2_wa),
 -                    NORMALPRIO + 1, spi_thread_2, NULL);
 -
 -  /*
 -   * Starting the blinker thread.
 -   */
 -  chThdCreateStatic(blinker_wa, sizeof(blinker_wa),
 -                    NORMALPRIO-1, blinker, NULL);
 -
 -  /*
 -   * Normal main() thread activity, in this demo it does nothing.
 -   */
 -  while (TRUE) {
 -    chThdSleepMilliseconds(500);
 -  }
 -  return 0;
 -}
 diff --git a/testhal/STM32F3xx/SPI/mcuconf.h b/testhal/STM32F3xx/SPI/mcuconf.h deleted file mode 100644 index e9ac5c67d..000000000 --- a/testhal/STM32F3xx/SPI/mcuconf.h +++ /dev/null @@ -1,185 +0,0 @@ -/*
 -    ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010,
 -                 2011,2012,2013 Giovanni Di Sirio.
 -
 -    This file is part of ChibiOS/RT.
 -
 -    ChibiOS/RT is free software; you can redistribute it and/or modify
 -    it under the terms of the GNU General Public License as published by
 -    the Free Software Foundation; either version 3 of the License, or
 -    (at your option) any later version.
 -
 -    ChibiOS/RT is distributed in the hope that it will be useful,
 -    but WITHOUT ANY WARRANTY; without even the implied warranty of
 -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 -    GNU General Public License for more details.
 -
 -    You should have received a copy of the GNU General Public License
 -    along with this program.  If not, see <http://www.gnu.org/licenses/>.
 -*/
 -
 -/*
 - * STM32F30x drivers configuration.
 - * The following settings override the default settings present in
 - * the various device driver implementation headers.
 - * Note that the settings for each driver only have effect if the whole
 - * driver is enabled in halconf.h.
 - *
 - * IRQ priorities:
 - * 15...0       Lowest...Highest.
 - *
 - * DMA priorities:
 - * 0...3        Lowest...Highest.
 - */
 -
 -#define STM32F30x_MCUCONF
 -
 -/*
 - * HAL driver system settings.
 - */
 -#define STM32_NO_INIT                       FALSE
 -#define STM32_PVD_ENABLE                    FALSE
 -#define STM32_PLS                           STM32_PLS_LEV0
 -#define STM32_HSI_ENABLED                   TRUE
 -#define STM32_LSI_ENABLED                   TRUE
 -#define STM32_HSE_ENABLED                   TRUE
 -#define STM32_LSE_ENABLED                   FALSE
 -#define STM32_SW                            STM32_SW_PLL
 -#define STM32_PLLSRC                        STM32_PLLSRC_HSE
 -#define STM32_PREDIV_VALUE                  1
 -#define STM32_PLLMUL_VALUE                  9
 -#define STM32_HPRE                          STM32_HPRE_DIV1
 -#define STM32_PPRE1                         STM32_PPRE1_DIV2
 -#define STM32_PPRE2                         STM32_PPRE2_DIV2
 -#define STM32_MCOSEL                        STM32_MCOSEL_NOCLOCK
 -#define STM32_ADC12PRES                     STM32_ADC12PRES_DIV1
 -#define STM32_ADC34PRES                     STM32_ADC34PRES_DIV1
 -#define STM32_USART1SW                      STM32_USART1SW_PCLK
 -#define STM32_USART2SW                      STM32_USART2SW_PCLK
 -#define STM32_USART3SW                      STM32_USART3SW_PCLK
 -#define STM32_UART4SW                       STM32_UART4SW_PCLK
 -#define STM32_UART5SW                       STM32_UART5SW_PCLK
 -#define STM32_I2C1SW                        STM32_I2C1SW_SYSCLK
 -#define STM32_I2C2SW                        STM32_I2C2SW_SYSCLK
 -#define STM32_TIM1SW                        STM32_TIM1SW_PCLK2
 -#define STM32_TIM8SW                        STM32_TIM8SW_PCLK2
 -#define STM32_RTCSEL                        STM32_RTCSEL_LSI
 -#define STM32_USB_CLOCK_REQUIRED            TRUE
 -#define STM32_USBPRE                        STM32_USBPRE_DIV1P5
 -
 -/*
 - * CAN driver system settings.
 - */
 -#define STM32_CAN_USE_CAN1                  FALSE
 -#define STM32_CAN_CAN1_IRQ_PRIORITY         11
 -
 -/*
 - * EXT driver system settings.
 - */
 -#define STM32_EXT_EXTI0_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI1_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI2_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI3_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI4_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI5_9_IRQ_PRIORITY      6
 -#define STM32_EXT_EXTI10_15_IRQ_PRIORITY    6
 -#define STM32_EXT_EXTI16_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI17_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI18_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI19_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI20_23_IRQ_PRIORITY    6
 -#define STM32_EXT_EXTI30_32_IRQ_PRIORITY    6
 -#define STM32_EXT_EXTI33_IRQ_PRIORITY       6
 -
 -/*
 - * GPT driver system settings.
 - */
 -#define STM32_GPT_USE_TIM1                  FALSE
 -#define STM32_GPT_USE_TIM2                  FALSE
 -#define STM32_GPT_USE_TIM3                  FALSE
 -#define STM32_GPT_USE_TIM4                  FALSE
 -#define STM32_GPT_USE_TIM8                  FALSE
 -#define STM32_GPT_TIM1_IRQ_PRIORITY         7
 -#define STM32_GPT_TIM2_IRQ_PRIORITY         7
 -#define STM32_GPT_TIM3_IRQ_PRIORITY         7
 -#define STM32_GPT_TIM4_IRQ_PRIORITY         7
 -#define STM32_GPT_TIM8_IRQ_PRIORITY         7
 -
 -/*
 - * ICU driver system settings.
 - */
 -#define STM32_ICU_USE_TIM1                  FALSE
 -#define STM32_ICU_USE_TIM2                  FALSE
 -#define STM32_ICU_USE_TIM3                  FALSE
 -#define STM32_ICU_USE_TIM4                  FALSE
 -#define STM32_ICU_USE_TIM8                  FALSE
 -#define STM32_ICU_TIM1_IRQ_PRIORITY         7
 -#define STM32_ICU_TIM2_IRQ_PRIORITY         7
 -#define STM32_ICU_TIM3_IRQ_PRIORITY         7
 -#define STM32_ICU_TIM4_IRQ_PRIORITY         7
 -#define STM32_ICU_TIM8_IRQ_PRIORITY         7
 -
 -/*
 - * PWM driver system settings.
 - */
 -#define STM32_PWM_USE_ADVANCED              FALSE
 -#define STM32_PWM_USE_TIM1                  FALSE
 -#define STM32_PWM_USE_TIM2                  FALSE
 -#define STM32_PWM_USE_TIM3                  FALSE
 -#define STM32_PWM_USE_TIM4                  FALSE
 -#define STM32_PWM_USE_TIM8                  FALSE
 -#define STM32_PWM_TIM1_IRQ_PRIORITY         7
 -#define STM32_PWM_TIM2_IRQ_PRIORITY         7
 -#define STM32_PWM_TIM3_IRQ_PRIORITY         7
 -#define STM32_PWM_TIM4_IRQ_PRIORITY         7
 -#define STM32_PWM_TIM8_IRQ_PRIORITY         7
 -
 -/*
 - * SERIAL driver system settings.
 - */
 -#define STM32_SERIAL_USE_USART1             FALSE
 -#define STM32_SERIAL_USE_USART2             FALSE
 -#define STM32_SERIAL_USE_USART3             FALSE
 -#define STM32_SERIAL_USE_UART4              FALSE
 -#define STM32_SERIAL_USE_UART5              FALSE
 -#define STM32_SERIAL_USART1_PRIORITY        12
 -#define STM32_SERIAL_USART2_PRIORITY        12
 -#define STM32_SERIAL_USART3_PRIORITY        12
 -#define STM32_SERIAL_UART4_PRIORITY         12
 -#define STM32_SERIAL_UART5_PRIORITY         12
 -
 -/*
 - * SPI driver system settings.
 - */
 -#define STM32_SPI_USE_SPI1                  TRUE
 -#define STM32_SPI_USE_SPI2                  TRUE
 -#define STM32_SPI_USE_SPI3                  TRUE
 -#define STM32_SPI_SPI1_DMA_PRIORITY         1
 -#define STM32_SPI_SPI2_DMA_PRIORITY         1
 -#define STM32_SPI_SPI3_DMA_PRIORITY         1
 -#define STM32_SPI_SPI1_IRQ_PRIORITY         10
 -#define STM32_SPI_SPI2_IRQ_PRIORITY         10
 -#define STM32_SPI_SPI3_IRQ_PRIORITY         10
 -#define STM32_SPI_DMA_ERROR_HOOK(spip)      chSysHalt()
 -
 -/*
 - * UART driver system settings.
 - */
 -#define STM32_UART_USE_USART1               FALSE
 -#define STM32_UART_USE_USART2               FALSE
 -#define STM32_UART_USE_USART3               FALSE
 -#define STM32_UART_USART1_IRQ_PRIORITY      12
 -#define STM32_UART_USART2_IRQ_PRIORITY      12
 -#define STM32_UART_USART3_IRQ_PRIORITY      12
 -#define STM32_UART_USART1_DMA_PRIORITY      0
 -#define STM32_UART_USART2_DMA_PRIORITY      0
 -#define STM32_UART_USART3_DMA_PRIORITY      0
 -#define STM32_UART_DMA_ERROR_HOOK(uartp)    chSysHalt()
 -
 -/*
 - * USB driver system settings.
 - */
 -#define STM32_USB_USE_USB1                  FALSE
 -#define STM32_USB_LOW_POWER_ON_SUSPEND      FALSE
 -#define STM32_USB_USB1_HP_IRQ_PRIORITY      13
 -#define STM32_USB_USB1_LP_IRQ_PRIORITY      14
 diff --git a/testhal/STM32F3xx/SPI/readme.txt b/testhal/STM32F3xx/SPI/readme.txt deleted file mode 100644 index 9275c06ee..000000000 --- a/testhal/STM32F3xx/SPI/readme.txt +++ /dev/null @@ -1,30 +0,0 @@ -*****************************************************************************
 -** ChibiOS/RT HAL - SPI driver demo for STM32F30x.                         **
 -*****************************************************************************
 -
 -** TARGET **
 -
 -The demo runs on an ST STM32F3-Discovery board.
 -
 -** The Demo **
 -
 -The application demonstrates the use of the STM32F30x SPI driver.
 -
 -** Board Setup **
 -
 -- Connect PB14 and PB15 together for SPI loop-back.
 -
 -** Build Procedure **
 -
 -The demo has been tested using the free Codesourcery GCC-based toolchain
 -and YAGARTO.
 -Just modify the TRGT line in the makefile in order to use different GCC ports.
 -
 -** Notes **
 -
 -Some files used by the demo are not part of ChibiOS/RT but are copyright of
 -ST Microelectronics and are licensed under a different license.
 -Also note that not all the files present in the ST library are distributed
 -with ChibiOS/RT, you can find the whole library on the ST web site:
 -
 -                             http://www.st.com
  | 
