ESP8266: Fix fifo logic; make configration variable naming consistent

This commit is contained in:
Gregory Nutt 2016-05-21 09:20:37 -06:00
parent abdf703746
commit 6789eec9d8
2 changed files with 21 additions and 20 deletions

View File

@ -11,23 +11,23 @@ config NETUTILS_ESP8266
if NETUTILS_ESP8266
config ESP8266_DEV_PATH
config NETUTILS_ESP8266_DEV_PATH
string "Serial device path"
default "/dev/ttyS1"
config ESP8266_BAUDRATE
config NETUTILS_ESP8266_BAUDRATE
int "Serial BAUD rate"
default 115200
config WIFI_MAX_TX_LEN
config NETUTILS_ESP8266_MAXTXLEN
int "Max. TX length"
default 256
config WIFI_MAX_RX_LEN
config NETUTILS_ESP8266_MAXRXLEN
int "Max. RX length"
default 256
config LESP_THREAD_PRIO
config NETUTILS_ESP8266_THREADPRIO
int "Worker thread priority"
default 100

View File

@ -65,16 +65,16 @@
#define NETAPP_IPCONFIG_MAC_OFFSET (20)
#ifndef CONFIG_WIFI_MAX_TX_LEN
# define CONFIG_WIFI_MAX_TX_LEN 256
#ifndef CONFIG_NETUTILS_ESP8266_MAXTXLEN
# define CONFIG_NETUTILS_ESP8266_MAXTXLEN 256
#endif
#ifndef CONFIG_WIFI_MAX_RX_LEN
# define CONFIG_WIFI_MAX_RX_LEN 256
#ifndef CONFIG_NETUTILS_ESP8266_MAXRXLEN
# define CONFIG_NETUTILS_ESP8266_MAXRXLEN 256
#endif
#define BUF_CMD_LEN CONFIG_WIFI_MAX_TX_LEN
#define BUF_ANS_LEN CONFIG_WIFI_MAX_RX_LEN
#define BUF_CMD_LEN CONFIG_NETUTILS_ESP8266_MAXTXLEN
#define BUF_ANS_LEN CONFIG_NETUTILS_ESP8266_MAXRXLEN
#define BUF_WORKER_LEN 1024
#define CON_NBR 4
@ -846,26 +846,26 @@ int lesp_initialize(void)
if (g_lesp_state.fd < 0)
{
g_lesp_state.fd = open(CONFIG_ESP8266_DEV_PATH, O_RDWR);
g_lesp_state.fd = open(CONFIG_NETUTILS_ESP8266_DEV_PATH, O_RDWR);
}
if (g_lesp_state.fd < 0)
{
syslog(LOG_ERR,"Cannot open %s.\n", CONFIG_ESP8266_DEV_PATH);
syslog(LOG_ERR,"Cannot open %s.\n", CONFIG_NETUTILS_ESP8266_DEV_PATH);
ret = -1;
}
#if 0 // lesp_set_baudrate is not defined
if (ret >= 0 && lesp_set_baudrate(g_lesp_state.fd, CONFIG_ESP8266_BAUDRATE) < 0)
if (ret >= 0 && lesp_set_baudrate(g_lesp_state.fd, CONFIG_NETUTILS_ESP8266_BAUDRATE) < 0)
{
syslog(LOG_ERR,"Cannot set baud rate %d.\n", CONFIG_ESP8266_BAUDRATE);
syslog(LOG_ERR,"Cannot set baud rate %d.\n", CONFIG_NETUTILS_ESP8266_BAUDRATE);
ret = -1;
}
#endif
if ((ret >= 0) && (g_lesp_state.worker.running == false))
{
ret = lesp_create_worker(CONFIG_LESP_THREAD_PRIO);
ret = lesp_create_worker(CONFIG_NETUTILS_ESP8266_THREADPRIO);
}
pthread_mutex_unlock(&g_lesp_state.mutex);
@ -1338,9 +1338,10 @@ ssize_t lesp_recv(int sockfd, FAR uint8_t *buf, size_t len, int flags)
ret = -1;
}
if ((ret >= 0) && (sock->nfifo == 0))
if (ret >= 0 && sock->nfifo == 0)
{
struct timespec ts;
if (clock_gettime(CLOCK_REALTIME,&ts) < 0)
{
ret = -1;
@ -1349,7 +1350,7 @@ ssize_t lesp_recv(int sockfd, FAR uint8_t *buf, size_t len, int flags)
{
ts.tv_sec += lespTIMEOUT_MS_RECV_S;
sock->sem = &sem;
while ((ret >= 0) && (sock->nfifo == 0))
while (ret >= 0 && sock->nfifo == 0)
{
pthread_mutex_unlock(&g_lesp_state.mutex);
ret = sem_timedwait(&sem,&ts);
@ -1365,9 +1366,9 @@ ssize_t lesp_recv(int sockfd, FAR uint8_t *buf, size_t len, int flags)
ret = 0;
while (ret < len && sock->nfifo > 0)
{
int ndx = sock->nfifo;
int ndx = sock->nfifo - 1;
*buf++ = sock->rxbuf[ndx];
sock->nfifo = ndx - 1;
sock->nfifo = ndx;
ret++;
}
}