Merge branch 'lib-signals' of https://github.com/MaitreDede/pigpio into MaitreDede-lib-signals

This commit is contained in:
joan 2018-02-04 09:29:58 +00:00
commit 748d9cebf8
3 changed files with 15 additions and 20 deletions

View File

@ -40,6 +40,8 @@ mandir = $(prefix)/man
all: $(ALL)
lib: $(LIB)
pigpio.o: pigpio.c pigpio.h command.h custom.cext
$(CC) $(CFLAGS) -fpic -c -o pigpio.o pigpio.c

View File

@ -195,17 +195,11 @@ bit 0 READ_LAST_NOT_SET_ERROR
#define BIT (1<<(gpio&0x1F))
#ifndef EMBEDDED_IN_VM
#define DBG(level, format, arg...) DO_DBG(level, format, ## arg)
#else
#define DBG(level, format, arg...)
#endif
#define DO_DBG(level, format, arg...) \
{ \
if (gpioCfg.dbgLevel >= level) \
fprintf(stderr, "%s %s: " format "\n" , \
myTimeStamp(), __FUNCTION__ , ## arg); \
#define DBG(level, format, arg...) \
{ \
if (gpioCfg.dbgLevel >= level && (gpioCfg.internals & PI_CFG_SIGHANDLER)) \
fprintf(stderr, "%s %s: " format "\n" , \
myTimeStamp(), __FUNCTION__ , ## arg); \
}
#ifndef DISABLE_SER_CHECK_INITED
@ -1344,7 +1338,7 @@ static volatile gpioCfg_t gpioCfg =
PI_DEFAULT_MEM_ALLOC_MODE,
0, /* dbgLevel */
0, /* alertFreq */
0, /* internals */
PI_CFG_SIGHANDLER, /* internals */
};
/* no initialisation required */
@ -8112,9 +8106,8 @@ int initInitialise(void)
gpioMaskSet = 1;
}
#ifndef EMBEDDED_IN_VM
sigSetHandler();
#endif
if(gpioCfg.internals & PI_CFG_SIGHANDLER)
sigSetHandler();
if (initPeripherals() < 0) return PI_INIT_FAILED;
@ -8509,8 +8502,7 @@ void gpioTerminate(void)
if (dmaReg != MAP_FAILED) dmaIn[DMA_CS] = DMA_CHANNEL_RESET;
if (dmaReg != MAP_FAILED) dmaOut[DMA_CS] = DMA_CHANNEL_RESET;
#ifndef EMBEDDED_IN_VM
if (gpioCfg.internals & PI_CFG_STATS)
if ((gpioCfg.internals & PI_CFG_STATS) && (gpioCfg.internals & PI_CFG_SIGHANDLER))
{
fprintf(stderr,
"\n#####################################################\n");
@ -8543,7 +8535,6 @@ void gpioTerminate(void)
fprintf(stderr,
"\n#####################################################\n\n\n");
}
#endif
initReleaseResources();

View File

@ -31,7 +31,7 @@ For more information, please refer to <http://unlicense.org/>
#include <stdint.h>
#include <pthread.h>
#define PIGPIO_VERSION 64
#define PIGPIO_VERSION 65
/*TEXT
@ -865,8 +865,10 @@ typedef void *(gpioThreadFunc_t) (void *);
#define PI_CFG_ALERT_FREQ 4 /* bits 4-7 */
#define PI_CFG_RT_PRIORITY (1<<8)
#define PI_CFG_STATS (1<<9)
#define PI_CFG_SIGHANDLER (1<<10)
#define PI_CFG_ILLEGAL_VAL (1<<11)
#define PI_CFG_ILLEGAL_VAL (1<<10)
/* gpioISR */