1 /** ----------------------------------------------------------------------
2  *
3  * Copyright (C) 2023 ST Microelectronics S.A.
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *
18  ----------------------------------------------------------------------*/
19 #
20 
21 #ifndef HAL_FWLOG_H_
22 #define HAL_FWLOG_H_
23 
24 #include "halcore.h"
25 
26     static const int T_CERx = 0x09;
27 static const int T_fieldOn = 0x10;
28 static const int T_fieldOff = 0x11;
29 static const int T_CERxError = 0x19;
30 
31 static const uint8_t PROPRIETARY_GID = 0x6F;
32 static const uint8_t ANDROID_OID = 0x0C;
33 static const uint8_t TYPE_REMOTE_FIELD = 0x00;
34 static const uint8_t TYPE_A = 0x01;
35 static const uint8_t TYPE_B = 0x02;
36 static const uint8_t TYPE_F = 0x03;
37 static const uint8_t TYPE_V = 0x04;
38 
39 static const uint8_t TYPE_UNKNOWN = 0x07;
40 
41 typedef union timestamp_bytes {
42   uint8_t ts1;
43   uint8_t ts2;
44   uint8_t ts3;
45   uint8_t ts4;
46 } timestamp_bytes;
47 
48 int notifyPollingLoopFrames(uint8_t *p_data, uint16_t data_len,
49                             uint8_t *bufferToSend);
50 uint8_t handlePollingLoopData(uint8_t *tlvBuffer, uint16_t data_len,
51                               uint8_t **NewTlv);
52 
53 #endif
54