Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
S
Software for White Rabbit PTP Core
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
32
Issues
32
List
Board
Labels
Milestones
Merge Requests
7
Merge Requests
7
CI / CD
CI / CD
Pipelines
Schedules
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Software for White Rabbit PTP Core
Commits
d2aa401a
Commit
d2aa401a
authored
Jan 12, 2016
by
Alessandro Rubini
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
net: use net_verbose(), with a Kconfig option, instead of TRACE_WRAP
Signed-off-by:
Alessandro Rubini
<
rubini@gnudd.com
>
parent
9d928453
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
38 additions
and
10 deletions
+38
-10
Kconfig
Kconfig
+7
-0
devel_build_test_defconfig
configs/devel_build_test_defconfig
+1
-0
trace.h
include/trace.h
+6
-1
net.c
lib/net.c
+24
-9
No files found.
Kconfig
View file @
d2aa401a
...
...
@@ -230,6 +230,13 @@ config UART_SW
are routed to the software uart. The interactive wrpc shell
and diagnostics run on the hardware UART if available.
config NET_VERBOSE
depends on DEVELOPER && WR_NODE
boolean "Extra verbose messages for networking"
help
This is mainly a debug tool, to be left off unless you hack
in the network subsystem.
config SDB_STORAGE
depends on WR_NODE
default y
...
...
configs/devel_build_test_defconfig
View file @
d2aa401a
...
...
@@ -26,6 +26,7 @@ CONFIG_PRINTF_FULL=y
# CONFIG_PRINTF_NONE is not set
CONFIG_DETERMINISTIC_BINARY=y
CONFIG_UART_SW=y
CONFIG_NET_VERBOSE=y
CONFIG_SDB_STORAGE=y
# CONFIG_LEGACY_EEPROM is not set
CONFIG_VLAN_ARRAY_SIZE=1
include/trace.h
View file @
d2aa401a
#ifndef __FREESTANDING_TRACE_H__
#define __FREESTANDING_TRACE_H__
#ifdef CONFIG_NET_VERBOSE
#define NET_IS_VERBOSE 1
#else
#define NET_IS_VERBOSE 0
#endif
#ifdef CONFIG_WR_NODE
#include <wrc.h>
#define TRACE_WRAP(...)
#define TRACE_DEV(...) wrc_debug_printf(0, __VA_ARGS__)
#else
/* WR_SWITCH */
...
...
lib/net.c
View file @
d2aa401a
...
...
@@ -11,6 +11,7 @@
#include <stdio.h>
#include <string.h>
#include <errno.h>
#include <stdarg.h>
#include "hal_exports.h"
#include <wrpc.h>
...
...
@@ -54,13 +55,27 @@ struct my_socket {
static
struct
my_socket
socks
[
NET_MAX_SOCKETS
];
static
int
net_verbose
(
const
char
*
fmt
,
...)
{
va_list
args
;
int
ret
=
0
;
if
(
NET_IS_VERBOSE
)
{
va_start
(
args
,
fmt
);
ret
=
pp_vprintf
(
fmt
,
args
);
va_end
(
args
);
}
return
ret
;
}
int
ptpd_netif_init
()
{
memset
(
socks
,
0
,
sizeof
(
socks
));
return
PTPD_NETIF_OK
;
}
//#define
TRACE_WRAP
pp_printf
//#define
net_verbose
pp_printf
int
ptpd_netif_get_hw_addr
(
wr_socket_t
*
sock
,
mac_addr_t
*
mac
)
{
get_mac_addr
((
uint8_t
*
)
mac
);
...
...
@@ -93,7 +108,7 @@ wr_socket_t *ptpd_netif_create_socket(int unused, int unusd2,
}
if
(
!
sock
)
{
TRACE_WRAP
(
"No sockets left.
\n
"
);
net_verbose
(
"No sockets left.
\n
"
);
return
NULL
;
}
...
...
@@ -206,7 +221,7 @@ static int wrap_copy_in(void *dst, struct sockq *q, size_t len)
char
*
dptr
=
dst
;
int
i
=
len
;
TRACE_WRAP
(
"copy_in: tail %d avail %d len %d
\n
"
,
q
->
tail
,
q
->
avail
,
net_verbose
(
"copy_in: tail %d avail %d len %d
\n
"
,
q
->
tail
,
q
->
avail
,
len
);
while
(
i
--
)
{
...
...
@@ -223,7 +238,7 @@ static int wrap_copy_out(struct sockq *q, void *src, size_t len)
char
*
sptr
=
src
;
int
i
=
len
;
TRACE_WRAP
(
"copy_out: head %d avail %d len %d
\n
"
,
q
->
head
,
q
->
avail
,
net_verbose
(
"copy_out: head %d avail %d len %d
\n
"
,
q
->
head
,
q
->
avail
,
len
);
while
(
i
--
)
{
...
...
@@ -278,7 +293,7 @@ int ptpd_netif_recvfrom(wr_socket_t * sock, wr_sockaddr_t * from, void *data,
REF_CLOCK_PERIOD_PS
);
}
TRACE_WRAP
(
"RX: Size %d tail %d Smac %x:%x:%x:%x:%x:%x
\n
"
,
size
,
net_verbose
(
"RX: Size %d tail %d Smac %x:%x:%x:%x:%x:%x
\n
"
,
size
,
q
->
tail
,
hdr
.
srcmac
[
0
],
hdr
.
srcmac
[
1
],
hdr
.
srcmac
[
2
],
hdr
.
srcmac
[
3
],
hdr
.
srcmac
[
4
],
hdr
.
srcmac
[
5
]);
...
...
@@ -338,7 +353,7 @@ void update_rx_queues()
}
if
(
!
s
)
{
TRACE_WRAP
(
"%s: could not find socket for packet
\n
"
,
net_verbose
(
"%s: could not find socket for packet
\n
"
,
__FUNCTION__
);
return
;
}
...
...
@@ -348,7 +363,7 @@ void update_rx_queues()
sizeof
(
struct
ethhdr
)
+
recvd
+
sizeof
(
struct
hw_timestamp
)
+
2
;
if
(
q
->
avail
<
q_required
)
{
TRACE_WRAP
net_verbose
(
"%s: queue for socket full; [avail %d required %d]
\n
"
,
__FUNCTION__
,
q
->
avail
,
q_required
);
return
;
...
...
@@ -362,10 +377,10 @@ void update_rx_queues()
q
->
avail
-=
wrap_copy_out
(
q
,
payload
,
size
);
q
->
n
++
;
TRACE_WRAP
(
"Q: Size %d head %d Smac %x:%x:%x:%x:%x:%x
\n
"
,
recvd
,
net_verbose
(
"Q: Size %d head %d Smac %x:%x:%x:%x:%x:%x
\n
"
,
recvd
,
q
->
head
,
hdr
.
srcmac
[
0
],
hdr
.
srcmac
[
1
],
hdr
.
srcmac
[
2
],
hdr
.
srcmac
[
3
],
hdr
.
srcmac
[
4
],
hdr
.
srcmac
[
5
]);
TRACE_WRAP
(
"%s: saved packet to queue [avail %d n %d size %d]
\n
"
,
net_verbose
(
"%s: saved packet to queue [avail %d n %d size %d]
\n
"
,
__FUNCTION__
,
q
->
avail
,
q
->
n
,
q_required
);
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment