Revision c73165bb firmware/zpu/apps/txrx_uhd.c

b/firmware/zpu/apps/txrx_uhd.c
53 53
// the fast-path setup global variables
54 54
// ----------------------------------------------------------------
55 55
static eth_mac_addr_t fp_mac_addr_src, fp_mac_addr_dst;
56
extern struct socket_address fp_socket_src, fp_socket_dst;
56
struct socket_address fp_socket_src, fp_socket_dst;
57
extern uint16_t dsp0_dst_port, err0_dst_port, dsp1_dst_port;
57 58

  
58 59
static void handle_udp_err0_packet(
59 60
    struct socket_address src, struct socket_address dst,
60 61
    unsigned char *payload, int payload_len
61 62
){
62 63
    sr_udp_sm->err0_port = (((uint32_t)dst.port) << 16) | src.port;
64
    err0_dst_port = src.port;
63 65
    printf("Storing for async error path:\n");
64 66
    printf("  source udp port: %d\n", dst.port);
65 67
    printf("  destination udp port: %d\n", src.port);
66 68
    newline();
67 69
}
68 70

  
69
static void handle_udp_data_packet(
71
static void handle_udp_dsp1_packet(
72
    struct socket_address src, struct socket_address dst,
73
    unsigned char *payload, int payload_len
74
){
75
    sr_udp_sm->dsp1_port = (((uint32_t)dst.port) << 16) | src.port;
76
    dsp1_dst_port = src.port;
77
    printf("Storing for dsp1 path:\n");
78
    printf("  source udp port: %d\n", dst.port);
79
    printf("  destination udp port: %d\n", src.port);
80
    newline();
81
}
82

  
83
static void handle_udp_dsp0_packet(
70 84
    struct socket_address src, struct socket_address dst,
71 85
    unsigned char *payload, int payload_len
72 86
){
......
75 89
    fp_socket_src = dst;
76 90
    fp_socket_dst = src;
77 91
    sr_udp_sm->dsp0_port = (((uint32_t)dst.port) << 16) | src.port;
78
    printf("Storing for fast path:\n");
92
    dsp0_dst_port = src.port;
93
    printf("Storing for dsp0 path:\n");
79 94
    printf("  source mac addr: ");
80 95
    print_mac_addr(&fp_mac_addr_src); newline();
81 96
    printf("  source ip addr: ");
......
341 356

  
342 357
  //1) register the addresses into the network stack
343 358
  register_addrs(ethernet_mac_addr(), get_ip_addr());
344
  pkt_ctrl_program_inspector(get_ip_addr(), USRP2_UDP_DATA_PORT);
359
  pkt_ctrl_program_inspector(get_ip_addr(), USRP2_UDP_DSP0_PORT);
345 360

  
346 361
  //2) register callbacks for udp ports we service
347 362
  init_udp_listeners();
348 363
  register_udp_listener(USRP2_UDP_CTRL_PORT, handle_udp_ctrl_packet);
349
  register_udp_listener(USRP2_UDP_DATA_PORT, handle_udp_data_packet);
364
  register_udp_listener(USRP2_UDP_DSP0_PORT, handle_udp_dsp0_packet);
350 365
  register_udp_listener(USRP2_UDP_ERR0_PORT, handle_udp_err0_packet);
366
  register_udp_listener(USRP2_UDP_DSP1_PORT, handle_udp_dsp1_packet);
351 367
#ifdef USRP2P
352 368
  register_udp_listener(USRP2_UDP_UPDATE_PORT, handle_udp_fw_update_packet);
353 369
#endif

Also available in: Unified diff