replace common qcom sources with samsung ones
This commit is contained in:
109
qcom/opensource/time-services/time_genoff.h
Normal file
109
qcom/opensource/time-services/time_genoff.h
Normal file
@@ -0,0 +1,109 @@
|
||||
/*
|
||||
* Copyright (c) 2010-2014, 2016, 2018-2020 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are met:
|
||||
* * Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* * Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in the
|
||||
* documentation and/or other materials provided with the distribution.
|
||||
* * Neither the name of The Linux Foundation nor the names of its contributors
|
||||
* may be used to endorse or promote products derived from this software
|
||||
* without specific prior written permission.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
* NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __TIME_GENOFF_H__
|
||||
#define __TIME_GENOFF_H__
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Time genoff base -- To be used by the time setter
|
||||
* Reserved bases to be supported later.
|
||||
*/
|
||||
typedef enum time_bases {
|
||||
ATS_RTC = 0,
|
||||
ATS_TOD,
|
||||
ATS_USER,
|
||||
ATS_SECURE,
|
||||
ATS_DRM,
|
||||
ATS_RESERVED_2,
|
||||
ATS_RESERVED_3,
|
||||
ATS_GPS,
|
||||
ATS_1X,
|
||||
ATS_RESERVED_4,
|
||||
ATS_WCDMA,
|
||||
ATS_SNTP,
|
||||
ATS_UTC,
|
||||
ATS_MODEM,
|
||||
ATS_MFLO,
|
||||
ATS_TOD_MODEM,
|
||||
ATS_WLAN,
|
||||
ATS_5G,
|
||||
ATS_TOD_GEN,
|
||||
ATS_INVALID
|
||||
} time_bases_type;
|
||||
|
||||
/* Time unit -- Unit in which time is set/get */
|
||||
typedef enum time_unit {
|
||||
TIME_STAMP, /* Not supported */
|
||||
TIME_MSEC,
|
||||
TIME_SECS,
|
||||
TIME_JULIAN,
|
||||
TIME_20MS_FRAME, /* Not supported */
|
||||
TIME_INVALID
|
||||
} time_unit_type;
|
||||
|
||||
/* Operation to be done */
|
||||
typedef enum time_genoff_opr {
|
||||
T_SET,
|
||||
T_GET,
|
||||
T_IS_SET,
|
||||
T_DISABLE,
|
||||
T_ENABLE,
|
||||
T_MAX
|
||||
} time_genoff_opr_type;
|
||||
|
||||
/* Structure to be passed as argument to time_genoff_operation() */
|
||||
/*
|
||||
* In set/get: ts_val should be assigned memory and then passed.
|
||||
* if time_unit = TIME_MSEC, TIME_SECS then ts_val = (uint64_t *)
|
||||
* if time_unit = TIME_JULIAN then ts_val = (struct tm *)
|
||||
*/
|
||||
typedef struct time_genoff_info {
|
||||
time_bases_type base; /* Genoff in consideration */
|
||||
void *ts_val; /* Time to be set/get */
|
||||
time_unit_type unit; /* Time unit */
|
||||
time_genoff_opr_type operation; /* Time operation to be done */
|
||||
}time_genoff_info_type;
|
||||
|
||||
/* API to be called for time get/set operation */
|
||||
int time_genoff_operation(time_genoff_info_type *pargs);
|
||||
|
||||
/* API to be called for logging operations */
|
||||
int time_control_operations(time_genoff_info_type *pargs);
|
||||
|
||||
/* API to be called for getting qtimer based timestamp */
|
||||
unsigned long long time_get_from_timetick();
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* __TIME_GENOFF_H__ */
|
Reference in New Issue
Block a user