remove unused ASF code
This commit is contained in:
@@ -1,159 +0,0 @@
|
||||
/**
|
||||
* \file
|
||||
*
|
||||
* \brief Generic CALENDAR functionality declaration.
|
||||
*
|
||||
* Copyright (c) 2014-2018 Microchip Technology Inc. and its subsidiaries.
|
||||
*
|
||||
* \asf_license_start
|
||||
*
|
||||
* \page License
|
||||
*
|
||||
* Subject to your compliance with these terms, you may use Microchip
|
||||
* software and any derivatives exclusively with Microchip products.
|
||||
* It is your responsibility to comply with third party license terms applicable
|
||||
* to your use of third party software (including open source software) that
|
||||
* may accompany Microchip software.
|
||||
*
|
||||
* THIS SOFTWARE IS SUPPLIED BY MICROCHIP "AS IS". NO WARRANTIES,
|
||||
* WHETHER EXPRESS, IMPLIED OR STATUTORY, APPLY TO THIS SOFTWARE,
|
||||
* INCLUDING ANY IMPLIED WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY,
|
||||
* AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT WILL MICROCHIP BE
|
||||
* LIABLE FOR ANY INDIRECT, SPECIAL, PUNITIVE, INCIDENTAL OR CONSEQUENTIAL
|
||||
* LOSS, DAMAGE, COST OR EXPENSE OF ANY KIND WHATSOEVER RELATED TO THE
|
||||
* SOFTWARE, HOWEVER CAUSED, EVEN IF MICROCHIP HAS BEEN ADVISED OF THE
|
||||
* POSSIBILITY OR THE DAMAGES ARE FORESEEABLE. TO THE FULLEST EXTENT
|
||||
* ALLOWED BY LAW, MICROCHIP'S TOTAL LIABILITY ON ALL CLAIMS IN ANY WAY
|
||||
* RELATED TO THIS SOFTWARE WILL NOT EXCEED THE AMOUNT OF FEES, IF ANY,
|
||||
* THAT YOU HAVE PAID DIRECTLY TO MICROCHIP FOR THIS SOFTWARE.
|
||||
*
|
||||
* \asf_license_stop
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _HAL_CALENDER_H_INCLUDED
|
||||
#define _HAL_CALENDER_H_INCLUDED
|
||||
|
||||
#include "hpl_calendar.h"
|
||||
#include <utils_list.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \addtogroup doc_driver_hal_calendar_async
|
||||
*
|
||||
*@{
|
||||
*/
|
||||
|
||||
/** \brief Prototype of callback on alarm match
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
*/
|
||||
typedef void (*calendar_cb_alarm_t)(struct calendar_descriptor *const calendar);
|
||||
|
||||
/** \brief Struct for alarm time
|
||||
*/
|
||||
struct calendar_alarm {
|
||||
struct list_element elem;
|
||||
struct _calendar_alarm cal_alarm;
|
||||
calendar_cb_alarm_t callback;
|
||||
};
|
||||
|
||||
/** \brief Initialize the Calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param hw Pointer to the hardware instance.
|
||||
* \return Operation status of init
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_init(struct calendar_descriptor *const calendar, const void *hw);
|
||||
|
||||
/** \brief Reset the Calendar HAL instance and hardware
|
||||
*
|
||||
* Reset Calendar instance to hardware defaults.
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \return Operation status of reset.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_deinit(struct calendar_descriptor *const calendar);
|
||||
|
||||
/** \brief Enable the Calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \return Operation status of init
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_enable(struct calendar_descriptor *const calendar);
|
||||
|
||||
/** \brief Disable the Calendar HAL instance and hardware
|
||||
*
|
||||
* Disable Calendar instance to hardware defaults.
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \return Operation status of reset.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_disable(struct calendar_descriptor *const calendar);
|
||||
|
||||
/** \brief Configure the base year for calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param p_base_year The desired base year.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_set_baseyear(struct calendar_descriptor *const calendar, const uint32_t p_base_year);
|
||||
|
||||
/** \brief Configure the time for calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param p_calendar_time Pointer to the time configuration.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_set_time(struct calendar_descriptor *const calendar, struct calendar_time *const p_calendar_time);
|
||||
|
||||
/** \brief Configure the date for calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param p_calendar_date Pointer to the date configuration.
|
||||
* \return Operation status of time set.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_set_date(struct calendar_descriptor *const calendar, struct calendar_date *const p_calendar_date);
|
||||
|
||||
/** \brief Get the time for calendar HAL instance and hardware
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param date_time Pointer to the value that will be filled with the current time.
|
||||
* \return Operation status of time retrieve.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_get_date_time(struct calendar_descriptor *const calendar, struct calendar_date_time *const date_time);
|
||||
|
||||
/** \brief Config the alarm time for calendar HAL instance and hardware
|
||||
*
|
||||
* Set the alarm time to calendar instance. If the callback is NULL, remove
|
||||
* the alarm if the alarm is already added, otherwise, ignore the alarm.
|
||||
*
|
||||
* \param calendar Pointer to the HAL Calendar instance.
|
||||
* \param alarm Pointer to the configuration.
|
||||
* \param callback Pointer to the callback function.
|
||||
* \return Operation status of alarm time set.
|
||||
* \retval 0 Completed successfully.
|
||||
*/
|
||||
int32_t calendar_set_alarm(struct calendar_descriptor *const calendar, struct calendar_alarm *const alarm,
|
||||
calendar_cb_alarm_t callback);
|
||||
|
||||
/** \brief Retrieve the current driver version
|
||||
* \return Current driver version.
|
||||
*/
|
||||
uint32_t calendar_get_version(void);
|
||||
|
||||
/**@}*/
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _HAL_CALENDER_H_INCLUDED */
|
||||
@@ -33,68 +33,10 @@
|
||||
#ifndef _HPL_CALENDER_H_INCLUDED
|
||||
#define _HPL_CALENDER_H_INCLUDED
|
||||
|
||||
#include <compiler.h>
|
||||
#include <utils_list.h>
|
||||
#include "hpl_irq.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/**
|
||||
* \brief Calendar structure
|
||||
*
|
||||
* The Calendar structure forward declaration.
|
||||
*/
|
||||
struct calendar_dev;
|
||||
|
||||
/**
|
||||
* \brief Available mask options for alarms.
|
||||
*
|
||||
* Available mask options for alarms.
|
||||
*/
|
||||
enum calendar_alarm_option {
|
||||
/** Alarm disabled. */
|
||||
CALENDAR_ALARM_MATCH_DISABLED = 0,
|
||||
/** Alarm match on second. */
|
||||
CALENDAR_ALARM_MATCH_SEC,
|
||||
/** Alarm match on second and minute. */
|
||||
CALENDAR_ALARM_MATCH_MIN,
|
||||
/** Alarm match on second, minute, and hour. */
|
||||
CALENDAR_ALARM_MATCH_HOUR,
|
||||
/** Alarm match on second, minute, hour, and day. */
|
||||
CALENDAR_ALARM_MATCH_DAY,
|
||||
/** Alarm match on second, minute, hour, day, and month. */
|
||||
CALENDAR_ALARM_MATCH_MONTH,
|
||||
/** Alarm match on second, minute, hour, day, month and year. */
|
||||
CALENDAR_ALARM_MATCH_YEAR
|
||||
};
|
||||
|
||||
/**
|
||||
* \brief Available mode for alarms.
|
||||
*/
|
||||
enum calendar_alarm_mode { ONESHOT = 1, REPEAT };
|
||||
/**
|
||||
* \brief Prototype of callback on alarm match
|
||||
*/
|
||||
typedef void (*calendar_drv_cb_t)();
|
||||
typedef void (*calendar_drv_extwake_cb_t)(uint8_t reason);
|
||||
|
||||
/**
|
||||
* \brief Structure of Calendar instance
|
||||
*/
|
||||
struct calendar_dev {
|
||||
/** Pointer to the hardware base */
|
||||
void *hw;
|
||||
/** Alarm match callback */
|
||||
calendar_drv_cb_t callback_alarm;
|
||||
/** Tamper callback */
|
||||
calendar_drv_extwake_cb_t callback_tamper;
|
||||
/** Tick callback */
|
||||
calendar_drv_cb_t callback_tick;
|
||||
/** IRQ struct */
|
||||
struct _irq_descriptor irq;
|
||||
};
|
||||
/**
|
||||
* \brief Time struct for calendar
|
||||
*/
|
||||
@@ -119,17 +61,6 @@ struct calendar_date {
|
||||
uint16_t year;
|
||||
};
|
||||
|
||||
/** \brief Calendar driver struct
|
||||
*
|
||||
*/
|
||||
struct calendar_descriptor {
|
||||
struct calendar_dev device;
|
||||
struct list_descriptor alarms;
|
||||
/*base date/time = base_year/1/1/0/0/0(year/month/day/hour/min/sec)*/
|
||||
uint32_t base_year;
|
||||
uint8_t flags;
|
||||
};
|
||||
|
||||
/** \brief Date&Time struct for calendar
|
||||
*/
|
||||
struct calendar_date_time {
|
||||
@@ -137,188 +68,6 @@ struct calendar_date_time {
|
||||
struct calendar_date date;
|
||||
};
|
||||
|
||||
/** \brief struct for alarm time
|
||||
*/
|
||||
struct _calendar_alarm {
|
||||
struct calendar_date_time datetime;
|
||||
uint32_t timestamp;
|
||||
enum calendar_alarm_option option;
|
||||
enum calendar_alarm_mode mode;
|
||||
};
|
||||
|
||||
/** \enum for tamper detection mode
|
||||
*/
|
||||
enum tamper_detection_mode { TAMPER_MODE_OFF = 0U, TAMPER_MODE_WAKE, TAMPER_MODE_CAPTURE, TAMPER_MODE_ACTL };
|
||||
|
||||
/** \enum for tamper detection mode
|
||||
*/
|
||||
enum tamper_id { TAMPID0 = 0U, TAMPID1, TAMPID2, TAMPID3, TAMPID4 };
|
||||
/**
|
||||
* \brief Initialize Calendar instance
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_init(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Deinitialize Calendar instance
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_deinit(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Enable Calendar instance
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_enable(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Disable Calendar instance
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_disable(struct calendar_dev *const dev);
|
||||
/**
|
||||
* \brief Set counter for calendar
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] counter The counter for set
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_set_counter(struct calendar_dev *const dev, const uint32_t counter);
|
||||
|
||||
/**
|
||||
* \brief Get counter for calendar
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return return current counter value
|
||||
*/
|
||||
uint32_t _calendar_get_counter(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Set compare value for calendar
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] comp The compare value for set
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_set_comp(struct calendar_dev *const dev, const uint32_t comp);
|
||||
|
||||
/**
|
||||
* \brief Get compare value for calendar
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return return current compare value
|
||||
*/
|
||||
uint32_t _calendar_get_comp(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Register callback for calendar alarm
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] callback The pointer to callback function
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _calendar_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback);
|
||||
|
||||
/**
|
||||
* \brief Set calendar IRQ
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*/
|
||||
void _calendar_set_irq(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Register callback for 1Hz tick from prescaler
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] callback The pointer to callback function
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _prescaler_register_callback(struct calendar_dev *const dev, calendar_drv_cb_t callback);
|
||||
|
||||
/**
|
||||
* \brief Register callback for tamper detection
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] callback The pointer to callback function
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _extwake_register_callback(struct calendar_dev *const dev, calendar_drv_extwake_cb_t callback);
|
||||
|
||||
/**
|
||||
* \brief Find tamper is detected on specified pin
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] enum Tamper ID number
|
||||
*
|
||||
* \return true on detection success and false on failure.
|
||||
*/
|
||||
bool _is_tamper_detected(struct calendar_dev *const dev, enum tamper_id tamper_id_pin);
|
||||
|
||||
/**
|
||||
* \brief brief Clear the Tamper ID flag
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
* \param[in] enum Tamper ID number
|
||||
*
|
||||
* \return ERR_NONE
|
||||
*/
|
||||
int32_t _tamper_clear_tampid_flag(struct calendar_dev *const dev, enum tamper_id tamper_id_pin);
|
||||
|
||||
/**
|
||||
* \brief Enable Debounce Asynchronous Feature
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _tamper_enable_debounce_asynchronous(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Disable Tamper Debounce Asynchronous Feature
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _tamper_disable_debounce_asynchronous(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Enable Tamper Debounce Majority Feature
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _tamper_enable_debounce_majority(struct calendar_dev *const dev);
|
||||
|
||||
/**
|
||||
* \brief Enable Tamper Debounce Majority Feature
|
||||
*
|
||||
* \param[in] dev The pointer to calendar device struct
|
||||
*
|
||||
* \return ERR_NONE on success, or an error code on failure.
|
||||
*/
|
||||
int32_t _tamper_disable_debounce_majority(struct calendar_dev *const dev);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user