2017-06-02 12:21:56 +02:00
|
|
|
/*
|
|
|
|
* Copyright (C) 2017 Freie Universität Berlin
|
|
|
|
*
|
|
|
|
* This file is subject to the terms and conditions of the GNU Lesser
|
|
|
|
* General Public License v2.1. See the file LICENSE in the top level
|
|
|
|
* directory for more details.
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
2018-05-23 17:55:11 +02:00
|
|
|
* @ingroup drivers_periph_timer
|
2017-06-02 12:21:56 +02:00
|
|
|
* @{
|
|
|
|
*
|
|
|
|
* @file
|
|
|
|
* @brief Shared peripheral timer code
|
|
|
|
*
|
|
|
|
* @author Hauke Petersen <hauke.petersen@fu-berlin.de>
|
|
|
|
*
|
|
|
|
* @}
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "periph/timer.h"
|
2020-01-09 15:51:59 +01:00
|
|
|
#include "irq.h"
|
2017-06-02 12:21:56 +02:00
|
|
|
|
|
|
|
#ifndef PERIPH_TIMER_PROVIDES_SET
|
|
|
|
int timer_set(tim_t dev, int channel, unsigned int timeout)
|
|
|
|
{
|
2020-01-09 15:51:59 +01:00
|
|
|
unsigned int state = irq_disable();
|
|
|
|
int res = timer_set_absolute(dev, channel, timer_read(dev) + timeout);
|
|
|
|
irq_restore(state);
|
|
|
|
return res;
|
2017-06-02 12:21:56 +02:00
|
|
|
}
|
|
|
|
#endif
|