summaryrefslogtreecommitdiff
path: root/firmware/export/mc13783.h
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/export/mc13783.h')
-rw-r--r--firmware/export/mc13783.h27
1 files changed, 26 insertions, 1 deletions
diff --git a/firmware/export/mc13783.h b/firmware/export/mc13783.h
index 6ed1cb46be..1f6fee8c44 100644
--- a/firmware/export/mc13783.h
+++ b/firmware/export/mc13783.h
@@ -1270,6 +1270,9 @@ enum mc13783_regs_enum
1270 #define MC13783_TC3PERIODr(x) (((x) & MC13783_TC3PERIOD) >> 21) 1270 #define MC13783_TC3PERIODr(x) (((x) & MC13783_TC3PERIOD) >> 21)
1271#define MC13783_TC3TRIODE (0x1 << 23) 1271#define MC13783_TC3TRIODE (0x1 << 23)
1272 1272
1273/* For event enum values which are target-defined */
1274#include "mc13783-target.h"
1275
1273void mc13783_init(void); 1276void mc13783_init(void);
1274void mc13783_close(void); 1277void mc13783_close(void);
1275uint32_t mc13783_set(unsigned address, uint32_t bits); 1278uint32_t mc13783_set(unsigned address, uint32_t bits);
@@ -1281,6 +1284,28 @@ int mc13783_write_regset(const unsigned char *regs, const uint32_t *data, int co
1281uint32_t mc13783_read(unsigned address); 1284uint32_t mc13783_read(unsigned address);
1282int mc13783_read_multiple(unsigned start, uint32_t *buffer, int count); 1285int mc13783_read_multiple(unsigned start, uint32_t *buffer, int count);
1283int mc13783_read_regset(const unsigned char *regs, uint32_t *buffer, int count); 1286int mc13783_read_regset(const unsigned char *regs, uint32_t *buffer, int count);
1284void mc13783_alarm_start(void); 1287
1288/* Statically-registered event enable/disable */
1289enum mc13783_event_sets
1290{
1291 MC13783_EVENT_SET0 = 0,
1292 MC13783_EVENT_SET1 = 1,
1293};
1294
1295struct mc13783_event
1296{
1297 enum mc13783_event_sets set : 8;
1298 uint32_t mask : 24;
1299 void (*callback)(void);
1300};
1301
1302struct mc13783_event_list
1303{
1304 unsigned count;
1305 const struct mc13783_event *events;
1306};
1307
1308bool mc13783_enable_event(enum mc13783_event_ids event);
1309void mc13783_disable_event(enum mc13783_event_ids event);
1285 1310
1286#endif /* _MC13783_H_ */ 1311#endif /* _MC13783_H_ */