aboutsummaryrefslogtreecommitdiffstats
path: root/os
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-04-30 12:34:26 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2013-04-30 12:34:26 +0000
commitb920c0b7ff759436162a961fc97242473b1a9554 (patch)
treeec782a77f130c0d676ae87a6043279f4078dad19 /os
parentfd3166ba1d218554a385d2b028fba7cd6d2f1fdb (diff)
downloadChibiOS-b920c0b7ff759436162a961fc97242473b1a9554.tar.gz
ChibiOS-b920c0b7ff759436162a961fc97242473b1a9554.tar.bz2
ChibiOS-b920c0b7ff759436162a961fc97242473b1a9554.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@5650 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os')
-rw-r--r--os/hal/platforms/SPC5xx/eTimer_v1/icu_lld.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/os/hal/platforms/SPC5xx/eTimer_v1/icu_lld.c b/os/hal/platforms/SPC5xx/eTimer_v1/icu_lld.c
index 4c8a55929..da762432e 100644
--- a/os/hal/platforms/SPC5xx/eTimer_v1/icu_lld.c
+++ b/os/hal/platforms/SPC5xx/eTimer_v1/icu_lld.c
@@ -206,7 +206,6 @@ uint16_t period;
* @param[in] icup pointer to the @p ICUDriver object
*/
static void icu_lld_serve_interrupt(ICUDriver *icup) {
-
uint16_t sr = icup->etimerp->CHANNEL[icup->smod_number].STS.R &
icup->etimerp->CHANNEL[icup->smod_number].INTDMA.R;
@@ -287,8 +286,9 @@ static void icu_lld_serve_interrupt(ICUDriver *icup) {
*/
static void spc5_icu_smod_init(ICUDriver *icup) {
uint32_t psc = (icup->clock / icup->config->frequency);
+
chDbgAssert((psc <= 0xFFFF) &&
- (((psc) * icup->config->frequency) == icup->clock) &&
+ ((psc * icup->config->frequency) == icup->clock) &&
((psc == 1) || (psc == 2) || (psc == 4) ||
(psc == 8) || (psc == 16) || (psc == 32) ||
(psc == 64) || (psc == 128)),
@@ -373,7 +373,7 @@ static void spc5_icu_smod_init(ICUDriver *icup) {
}
/* Direct pointers to the capture registers in order to make reading
- data faster from within callbacks.*/
+ data faster from within callbacks.*/
icup->pccrp = &period;
icup->wccrp = &width;
@@ -396,7 +396,8 @@ static void spc5_icu_smod_init(ICUDriver *icup) {
* perform an extra check in a potentially critical interrupt handler.
*
* @isr
- */CH_IRQ_HANDLER(SPC5_ETIMER0_TC0IR_HANDLER) {
+ */
+CH_IRQ_HANDLER(SPC5_ETIMER0_TC0IR_HANDLER) {
CH_IRQ_PROLOGUE();
@@ -790,6 +791,7 @@ CH_IRQ_HANDLER(SPC5_ETIMER2_TC5IR_HANDLER) {
* @notapi
*/
void icu_lld_init(void) {
+
/* Submodules initially all not in use.*/
icu_active_submodules0 = 0;
icu_active_submodules1 = 0;
@@ -1117,6 +1119,7 @@ void icu_lld_start(ICUDriver *icup) {
* @notapi
*/
void icu_lld_stop(ICUDriver *icup) {
+
chDbgAssert(icu_active_submodules0 < 6, "icu_lld_stop(), #1",
"too many submodules");
chDbgAssert(icu_active_submodules1 < 6, "icu_lld_stop(), #2",