From f8091cb87c99b08c9b37ba0ad550db66946b677e Mon Sep 17 00:00:00 2001 From: kkrentz Date: Thu, 2 Aug 2018 05:32:43 -0700 Subject: [PATCH] cc2538-rf: Use logging API --- arch/cpu/cc2538/dev/cc2538-rf.c | 59 ++++++++++++++++----------------- 1 file changed, 28 insertions(+), 31 deletions(-) diff --git a/arch/cpu/cc2538/dev/cc2538-rf.c b/arch/cpu/cc2538/dev/cc2538-rf.c index a1aee0582..27b6c3061 100644 --- a/arch/cpu/cc2538/dev/cc2538-rf.c +++ b/arch/cpu/cc2538/dev/cc2538-rf.c @@ -68,13 +68,10 @@ */ #define UDMA_RX_SIZE_THRESHOLD 3 /*---------------------------------------------------------------------------*/ -#include -#define DEBUG 0 -#if DEBUG -#define PRINTF(...) printf(__VA_ARGS__) -#else -#define PRINTF(...) -#endif +/* Log configuration */ +#include "sys/log.h" +#define LOG_MODULE "cc2538-rf" +#define LOG_LEVEL LOG_LEVEL_NONE /*---------------------------------------------------------------------------*/ /* Local RF Flags */ #define RX_ACTIVE 0x80 @@ -174,7 +171,7 @@ set_channel(uint8_t channel) { uint8_t was_on = 0; - PRINTF("RF: Set Channel\n"); + LOG_INFO("Set Channel\n"); if((channel < CC2538_RF_CHANNEL_MIN) || (channel > CC2538_RF_CHANNEL_MAX)) { return CC2538_RF_CHANNEL_SET_ERROR; @@ -405,7 +402,7 @@ channel_clear(void) int cca; uint8_t was_off = 0; - PRINTF("RF: CCA\n"); + LOG_INFO("CCA\n"); /* If we are off, turn on first */ if((REG(RFCORE_XREG_FSMSTAT0) & RFCORE_XREG_FSMSTAT0_FSM_FFCTRL_STATE) == 0) { @@ -433,7 +430,7 @@ channel_clear(void) static int on(void) { - PRINTF("RF: On\n"); + LOG_INFO("On\n"); if(!(rf_flags & RX_ACTIVE)) { CC2538_RF_CSP_ISFLUSHRX(); @@ -449,7 +446,7 @@ on(void) static int off(void) { - PRINTF("RF: Off\n"); + LOG_INFO("Off\n"); /* Wait for ongoing TX to complete (e.g. this could be an outgoing ACK) */ while(REG(RFCORE_XREG_FSMSTAT1) & RFCORE_XREG_FSMSTAT1_TX_ACTIVE); @@ -472,7 +469,7 @@ off(void) static int init(void) { - PRINTF("RF: Init\n"); + LOG_INFO("Init\n"); if(rf_flags & RF_ON) { return 0; @@ -556,7 +553,7 @@ prepare(const void *payload, unsigned short payload_len) { uint8_t i; - PRINTF("RF: Prepare 0x%02x bytes\n", payload_len + CHECKSUM_LEN); + LOG_INFO("Prepare 0x%02x bytes\n", payload_len + CHECKSUM_LEN); /* * When we transmit in very quick bursts, make sure previous transmission @@ -570,12 +567,12 @@ prepare(const void *payload, unsigned short payload_len) CC2538_RF_CSP_ISFLUSHTX(); - PRINTF("RF: data = "); + LOG_INFO("data = "); /* Send the phy length byte first */ REG(RFCORE_SFR_RFDATA) = payload_len + CHECKSUM_LEN; if(CC2538_RF_CONF_TX_USE_DMA) { - PRINTF(""); + LOG_INFO_(""); /* Set the transfer source's end address */ udma_set_channel_src(CC2538_RF_CONF_TX_DMA_CHAN, @@ -599,10 +596,10 @@ prepare(const void *payload, unsigned short payload_len) } else { for(i = 0; i < payload_len; i++) { REG(RFCORE_SFR_RFDATA) = ((unsigned char *)(payload))[i]; - PRINTF("%02x", ((unsigned char *)(payload))[i]); + LOG_INFO_("%02x", ((unsigned char *)(payload))[i]); } } - PRINTF("\n"); + LOG_INFO_("\n"); return 0; } @@ -615,7 +612,7 @@ transmit(unsigned short transmit_len) rtimer_clock_t t0; uint8_t was_off = 0; - PRINTF("RF: Transmit\n"); + LOG_INFO("Transmit\n"); if(!(rf_flags & RX_ACTIVE)) { t0 = RTIMER_NOW(); @@ -650,7 +647,7 @@ transmit(unsigned short transmit_len) } if(!(REG(RFCORE_XREG_FSMSTAT1) & RFCORE_XREG_FSMSTAT1_TX_ACTIVE)) { - PRINTF("RF: TX never active.\n"); + LOG_ERR("TX never active.\n"); CC2538_RF_CSP_ISFLUSHTX(); ret = RADIO_TX_ERR; } else { @@ -680,7 +677,7 @@ read(void *buf, unsigned short bufsize) uint8_t i; uint8_t len; - PRINTF("RF: Read\n"); + LOG_INFO("Read\n"); if((REG(RFCORE_XREG_FSMSTAT1) & RFCORE_XREG_FSMSTAT1_FIFOP) == 0) { return 0; @@ -692,33 +689,33 @@ read(void *buf, unsigned short bufsize) /* Check for validity */ if(len > CC2538_RF_MAX_PACKET_LEN) { /* Oops, we must be out of sync. */ - PRINTF("RF: bad sync\n"); + LOG_ERR("RF: bad sync\n"); CC2538_RF_CSP_ISFLUSHRX(); return 0; } if(len <= CC2538_RF_MIN_PACKET_LEN) { - PRINTF("RF: too short\n"); + LOG_ERR("RF: too short\n"); CC2538_RF_CSP_ISFLUSHRX(); return 0; } if(len - CHECKSUM_LEN > bufsize) { - PRINTF("RF: too long\n"); + LOG_ERR("RF: too long\n"); CC2538_RF_CSP_ISFLUSHRX(); return 0; } /* If we reach here, chances are the FIFO is holding a valid frame */ - PRINTF("RF: read (0x%02x bytes) = ", len); + LOG_INFO("read (0x%02x bytes) = ", len); len -= CHECKSUM_LEN; /* Don't bother with uDMA for short frames (e.g. ACKs) */ if(CC2538_RF_CONF_RX_USE_DMA && len > UDMA_RX_SIZE_THRESHOLD) { - PRINTF(""); + LOG_INFO_(""); /* Set the transfer destination's end address */ udma_set_channel_dst(CC2538_RF_CONF_RX_DMA_CHAN, @@ -739,7 +736,7 @@ read(void *buf, unsigned short bufsize) } else { for(i = 0; i < len; ++i) { ((unsigned char *)(buf))[i] = REG(RFCORE_SFR_RFDATA); - PRINTF("%02x", ((unsigned char *)(buf))[i]); + LOG_INFO_("%02x", ((unsigned char *)(buf))[i]); } } @@ -747,14 +744,14 @@ read(void *buf, unsigned short bufsize) rssi = ((int8_t)REG(RFCORE_SFR_RFDATA)) - RSSI_OFFSET; crc_corr = REG(RFCORE_SFR_RFDATA); - PRINTF("%02x%02x\n", (uint8_t)rssi, crc_corr); + LOG_INFO_("%02x%02x\n", (uint8_t)rssi, crc_corr); /* MS bit CRC OK/Not OK, 7 LS Bits, Correlation value */ if(crc_corr & CRC_BIT_MASK) { packetbuf_set_attr(PACKETBUF_ATTR_RSSI, rssi); packetbuf_set_attr(PACKETBUF_ATTR_LINK_QUALITY, crc_corr & LQI_BIT_MASK); } else { - PRINTF("RF: Bad CRC\n"); + LOG_ERR("Bad CRC\n"); CC2538_RF_CSP_ISFLUSHRX(); return 0; } @@ -776,7 +773,7 @@ read(void *buf, unsigned short bufsize) static int receiving_packet(void) { - PRINTF("RF: Receiving\n"); + LOG_INFO("Receiving\n"); /* * SFD high while transmitting and receiving. @@ -792,7 +789,7 @@ receiving_packet(void) static int pending_packet(void) { - PRINTF("RF: Pending\n"); + LOG_INFO("Pending\n"); return REG(RFCORE_XREG_FSMSTAT1) & RFCORE_XREG_FSMSTAT1_FIFOP; } @@ -1086,7 +1083,7 @@ cc2538_rf_rx_tx_isr(void) void cc2538_rf_err_isr(void) { - PRINTF("RF Error: 0x%08lx\n", REG(RFCORE_SFR_RFERRF)); + LOG_ERR("Error 0x%08lx occurred\n", REG(RFCORE_SFR_RFERRF)); /* If the error is not an RX FIFO overflow, set a flag */ if(REG(RFCORE_SFR_RFERRF) != RFCORE_SFR_RFERRF_RXOVERF) {