mirror of
https://github.com/manuelbl/ttn-esp32.git
synced 2025-07-17 16:12:52 +02:00
Integrate development version of 3.0.99
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2014-2016 IBM Corporation.
|
||||
* Copyright (c) 2018 MCCI Corporation
|
||||
* Copyright (c) 2018, 2019 MCCI Corporation
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@ -84,8 +84,7 @@ typedef u1_t* xref2u1_t;
|
||||
|
||||
#define SIZEOFEXPR(x) sizeof(x)
|
||||
|
||||
#define ON_LMIC_EVENT(ev) onEvent(ev)
|
||||
#define DECL_ON_LMIC_EVENT void onEvent(ev_t e)
|
||||
#define DECL_ON_LMIC_EVENT LMIC_DECLARE_FUNCTION_WEAK(void, onEvent, (ev_t e))
|
||||
|
||||
extern u4_t AESAUX[];
|
||||
extern u4_t AESKEY[];
|
||||
@ -120,11 +119,19 @@ void radio_monitor_rssi(ostime_t n, oslmic_radio_rssi_t *pRssi);
|
||||
|
||||
//================================================================================
|
||||
|
||||
|
||||
#ifndef RX_RAMPUP
|
||||
// RX_RAMPUP specifies the extra time we must allow to set up an RX event due
|
||||
// to platform issues. It's specified in units of ostime_t. It must reflect
|
||||
// platform jitter and latency, as well as the speed of the LMIC when running
|
||||
// on this plaform.
|
||||
#define RX_RAMPUP (us2osticks(2000))
|
||||
#endif
|
||||
|
||||
#ifndef TX_RAMPUP
|
||||
// TX_RAMPUP specifies the extra time we must allow to set up a TX event) due
|
||||
// to platform issues. It's specified in units of ostime_t. It must reflect
|
||||
// platform jitter and latency, as well as the speed of the LMIC when running
|
||||
// on this plaform.
|
||||
#define TX_RAMPUP (us2osticks(2000))
|
||||
#endif
|
||||
|
||||
@ -149,7 +156,13 @@ void radio_monitor_rssi(ostime_t n, oslmic_radio_rssi_t *pRssi);
|
||||
|
||||
|
||||
struct osjob_t; // fwd decl.
|
||||
typedef void (*osjobcb_t) (struct osjob_t*);
|
||||
|
||||
//! the function type for osjob_t callbacks
|
||||
typedef void (osjobcbfn_t)(struct osjob_t*);
|
||||
|
||||
//! the pointer-to-function for osjob_t callbacks
|
||||
typedef osjobcbfn_t *osjobcb_t;
|
||||
|
||||
struct osjob_t {
|
||||
struct osjob_t* next;
|
||||
ostime_t deadline;
|
||||
@ -157,6 +170,11 @@ struct osjob_t {
|
||||
};
|
||||
TYPEDEF_xref2osjob_t;
|
||||
|
||||
//! determine whether a job is timed or immediate. os_setTimedCallback()
|
||||
// must treat incoming == 0 as being 1 instead.
|
||||
static inline int os_jobIsTimed(xref2osjob_t job) {
|
||||
return (job->deadline != 0);
|
||||
}
|
||||
|
||||
#ifndef HAS_os_calls
|
||||
|
||||
@ -190,6 +208,10 @@ void os_radio (u1_t mode);
|
||||
#ifndef os_getBattLevel
|
||||
u1_t os_getBattLevel (void);
|
||||
#endif
|
||||
#ifndef os_queryTimeCriticalJobs
|
||||
//! Return non-zero if any jobs are scheduled between now and now+time.
|
||||
bit_t os_queryTimeCriticalJobs(ostime_t time);
|
||||
#endif
|
||||
|
||||
#ifndef os_rlsbf4
|
||||
//! Read 32-bit quantity from given pointer in little endian byte order.
|
||||
@ -310,6 +332,18 @@ extern xref2u1_t AESaux;
|
||||
u4_t os_aes (u1_t mode, xref2u1_t buf, u2_t len);
|
||||
#endif
|
||||
|
||||
// ======================================================================
|
||||
// Simple logging support. Vanishes unless enabled.
|
||||
|
||||
#if LMIC_ENABLE_event_logging
|
||||
extern void LMICOS_logEvent(const char *pMessage);
|
||||
extern void LMICOS_logEventUint32(const char *pMessage, uint32_t datum);
|
||||
#else // ! LMIC_ENABLE_event_logging
|
||||
# define LMICOS_logEvent(m) do { ; } while (0)
|
||||
# define LMICOS_logEventUint32(m, d) do { ; } while (0)
|
||||
#endif // ! LMIC_ENABLE_event_logging
|
||||
|
||||
|
||||
LMIC_END_DECLS
|
||||
|
||||
#endif // _oslmic_h_
|
||||
|
Reference in New Issue
Block a user