From 23ca7e2657d3e4762b63f99ddb0b1358c79f0e4c Mon Sep 17 00:00:00 2001 From: Paul Sokolovsky Date: Sat, 17 Sep 2016 16:02:49 +0300 Subject: [PATCH] zephyr/modsocket: Add DEBUG_printf() logging. --- zephyr/modsocket.c | 23 ++++++++++++++--------- zephyr/mpconfigport.h | 1 + 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/zephyr/modsocket.c b/zephyr/modsocket.c index 815454dca..de1bd86b0 100644 --- a/zephyr/modsocket.c +++ b/zephyr/modsocket.c @@ -44,6 +44,11 @@ #define PACK_ALIAS_STRUCT __attribute__((__packed__,__may_alias__)) #include +#if 1 // print debugging info +#define DEBUG_printf DEBUG_printf +#else // don't print debugging info +#define DEBUG_printf(...) (void)0 +#endif #define IPADDR {{192, 0, 2, 2}} #define MY_IPADDR {IPADDR} @@ -125,7 +130,7 @@ STATIC mp_obj_t socket_connect(mp_obj_t self_in, mp_obj_t addr_in) { // Get address uint8_t ip[NETUTILS_IPV4ADDR_BUFSIZE]; mp_uint_t port = netutils_parse_inet_addr(addr_in, ip, NETUTILS_BIG); - printf("resolved: %d.%d.%d.%d\n", ip[0], ip[1], ip[2], ip[3]); + DEBUG_printf("resolved: %d.%d.%d.%d\n", ip[0], ip[1], ip[2], ip[3]); struct in_addr in4addr_peer = {{{ip[0], ip[1], ip[2], ip[3]}}}; self->peer_addr.in_addr = in4addr_peer; @@ -135,10 +140,10 @@ STATIC mp_obj_t socket_connect(mp_obj_t self_in, mp_obj_t addr_in) { self->sock = net_context_get(proto, &self->peer_addr, port, &my_addr, 0); int ret = net_context_tcp_init(self->sock, /*NULL,*/ NET_TCP_TYPE_CLIENT); - printf("ret=%d\n", ret); + DEBUG_printf("net_context_tcp_init()=%d\n", ret); // Blocking wait until actually connected while (net_context_get_connection_status(self->sock) == -EINPROGRESS) { - printf("st=%d\n", net_context_get_connection_status(self->sock)); + DEBUG_printf("waiting to connect: %d\n", net_context_get_connection_status(self->sock)); task_sleep(sys_clock_ticks_per_sec / 10); } @@ -164,12 +169,12 @@ STATIC mp_obj_t socket_send(mp_obj_t self_in, mp_obj_t buf_in) { STATIC MP_DEFINE_CONST_FUN_OBJ_2(socket_send_obj, socket_send); STATIC mp_uint_t socket_write(mp_obj_t self_in, const void *buf, mp_uint_t len, int *errcode) { - //printf("socket_write(%p, %p, %d)\n", self_in, buf, len); + DEBUG_printf("socket_write(%p, %p, %d)\n", self_in, buf, len); socket_obj_t *self = self_in; struct uip_conn *uip_connr = net_context_get_internal_connection(self->sock); while (uip_outstanding(uip_connr)) { - printf("wait outstanding flush of %d bytes\n", uip_outstanding(uip_connr)); + DEBUG_printf("wait outstanding flush of %d bytes\n", uip_outstanding(uip_connr)); task_sleep(sys_clock_ticks_per_sec / 10); } @@ -189,17 +194,17 @@ STATIC mp_uint_t socket_write(mp_obj_t self_in, const void *buf, mp_uint_t len, STATIC mp_uint_t socket_read(mp_obj_t self_in, void *buf, mp_uint_t len, int *errcode) { socket_obj_t *self = self_in; struct uip_conn *uip_connr = net_context_get_internal_connection(self->sock); - //printf("socket_read(%p, %p, %d) conn_flags: %x\n", self_in, buf, len, uip_connr->tcpstateflags); + DEBUG_printf("socket_read(%p, %p, %d) conn_flags: %x\n", self_in, buf, len, uip_connr->tcpstateflags); while (self->incoming == NULL) { if (self->state == STATE_PEER_CLOSED || uip_connr->tcpstateflags == UIP_CLOSED) { - //printf("socket_read: Returning EOF\n"); + DEBUG_printf("socket_read: Returning EOF\n"); return 0; } - //printf("socket_read: calling net_receive\n"); + DEBUG_printf("socket_read: calling net_receive\n"); self->incoming = net_receive(self->sock, WAIT_TICKS); if (uip_closed(self->incoming)) { - //printf("uip_closed() == true\n"); + DEBUG_printf("uip_closed() == true\n"); self->state = STATE_PEER_CLOSED; } if (ip_buf_appdatalen(self->incoming) == 0) { diff --git a/zephyr/mpconfigport.h b/zephyr/mpconfigport.h index 7efc8f53f..59de49b46 100644 --- a/zephyr/mpconfigport.h +++ b/zephyr/mpconfigport.h @@ -5,6 +5,7 @@ #define MICROPY_COMP_CONST (0) #define MICROPY_COMP_DOUBLE_TUPLE_ASSIGN (0) +#define MICROPY_DEBUG_PRINTERS (1) #define MICROPY_STACK_CHECK (1) #define MICROPY_ENABLE_GC (1) #define MICROPY_HELPER_REPL (1)