Loading...
Searching...
No Matches
cc26xx_cc13xx_hard_api.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2020 Locha Inc
3 * SPDX-License-Identifier: LGPL-2.1-only
4 */
5
6#pragma once
7
17
18#include "cc26xx_cc13xx.h"
19
20#ifdef __cplusplus
21extern "C" {
22#endif
23
27typedef struct {
29 uint32_t (* crc32)(uint8_t *data, uint32_t bytecount, uint32_t repeatcount);
30 uint32_t (* get_fl_size)(void);
31 uint32_t (* get_chip_id)(void);
32 uint32_t (* __reserved0)(uint32_t);
33 uint32_t (* __reserved1)(void);
34 uint32_t (* __reserved2)(uint8_t *, uint32_t, uint32_t);
35 void (* resetdev)(void);
36 uint32_t (* fletcher32)(uint16_t *data, uint16_t wordcount,
37 uint16_t repeatcount);
39 uint32_t (* min_val)(uint32_t *buffer, uint32_t datacount);
41 uint32_t (* max_val)(uint32_t *databuffer, uint32_t datacount);
43 uint32_t (* mean_val)(uint32_t *databuffer, uint32_t datacount);
45 uint32_t (* stdd_val)(uint32_t *databuffer, uint32_t datacount);
46 void (* hf_source_safe_switch)(void);
47 void (* __reserved3)(uint32_t);
48 void (* __reserved4)(uint32_t);
49 void (* compa_in)(uint8_t signal);
50 void (* compa_ref)(uint8_t signal);
51 void (* adc_compb_in)(uint8_t signal);
52#ifdef CPU_VARIANT_X2
53 void (* dac_vref)(uint8_t signal);
54#else
55 void (* compb_ref)(uint8_t signal);
56#endif
58
62#define HARD_API ((hard_api_t *) ROM_HARD_API_BASE)
63
68#define rom_hapi_crc32(a, b, c) (HARD_API->crc32((a), (b), (c)))
69#define rom_hapi_get_flashsize() (HARD_API->get_fl_size())
70#define rom_hapi_get_chipid() (HARD_API->get_chip_id())
71#define rom_hapi_reset_device() (HARD_API->resetdev())
72#define rom_hapi_fletcher32(a, b, c) (HARD_API->fletcher32((a), (b), (c)))
73#define rom_hapi_min_value(a, b) (HARD_API->min_val((a), (b)))
74#define rom_hapi_max_value(a, b) (HARD_API->max_val((a), (b)))
75#define rom_hapi_mean_value(a, b) (HARD_API->mean_val((a), (b)))
76#define rom_hapi_std_deviation_value(a, b) (HARD_API->stdd_val((a), (b)))
77#define rom_hapi_hf_source_safe_switch() (HARD_API->hf_source_safe_switch())
78#define rom_hapi_select_compa_input(a) (HARD_API->compa_in((a)))
79#define rom_hapi_select_compa_ref(a) (HARD_API->compa_ref((a)))
80#define rom_hapi_select_adc_compb_input(a) (HARD_API->adc_compb_in((a)))
81#ifdef CPU_VARIANT_X2
82#define rom_hapi_select_dac_vref(a) (HARD_API->dac_vref((a)))
83#else
84#define rom_hapi_select_compb_ref(a) (HARD_API->compb_vref((a)))
85#endif
87
88#ifdef __cplusplus
89}
90#endif
91
CC26xx, CC13xx definitions.
void(* compa_ref)(uint8_t signal)
Select CompA reference.
void(* __reserved4)(uint32_t)
Reserved.
void(* __reserved3)(uint32_t)
Reserved.
void(* hf_source_safe_switch)(void)
HF source safe-switch.
uint32_t(* __reserved2)(uint8_t *, uint32_t, uint32_t)
Reserved.
uint32_t(* crc32)(uint8_t *data, uint32_t bytecount, uint32_t repeatcount)
CRC-32.
uint32_t(* __reserved1)(void)
Reserved.
uint32_t(* max_val)(uint32_t *databuffer, uint32_t datacount)
Max.
uint32_t(* stdd_val)(uint32_t *databuffer, uint32_t datacount)
Standard deviation value.
uint32_t(* get_fl_size)(void)
Get flash size.
void(* compa_in)(uint8_t signal)
Select CompA input.
void(* compb_ref)(uint8_t signal)
Select CompB reference.
uint32_t(* min_val)(uint32_t *buffer, uint32_t datacount)
Min.
uint32_t(* __reserved0)(uint32_t)
Reserved.
void(* adc_compb_in)(uint8_t signal)
Select ADC CompB input.
void(* resetdev)(void)
Reset device.
uint32_t(* fletcher32)(uint16_t *data, uint16_t wordcount, uint16_t repeatcount)
Fletcher-32.
uint32_t(* mean_val)(uint32_t *databuffer, uint32_t datacount)
Mean.
uint32_t(* get_chip_id)(void)
Get chip ID.