@@ -106,8 +106,7 @@ static int read_uart(int uartfd) {
106106 //}
107107
108108 printf ("%s\n" , buf );
109- strcpy ((char * )uart_ret_buf , buf );
110-
109+ strncpy ((char * )uart_ret_buf , buf , MAX_UART_RET_LEN - 1 );
111110 return RETURN_SUCCESS ;
112111}
113112
@@ -3700,6 +3699,38 @@ static int hdlr_fpga_board_test (const char* data, char* ret) {
37003699 return RETURN_SUCCESS ;
37013700}
37023701
3702+ static int hdlr_fpga_board_gle (const char * data , char * ret ) {
3703+
3704+ if (strcmp (data , "1" ) == 0 ) {
3705+ strcpy (buf , "board -g 1\r" );
3706+ send_uart_comm (uart_synth_fd , (uint8_t * )buf , strlen (buf ));
3707+ usleep (50000 );
3708+
3709+ strcpy (buf , "board -g 1\r" );
3710+ send_uart_comm (uart_rx_fd , (uint8_t * )buf , strlen (buf ));
3711+ usleep (50000 );
3712+
3713+ strcpy (buf , "board -g 1\r" );
3714+ send_uart_comm (uart_tx_fd , (uint8_t * )buf , strlen (buf ));
3715+ usleep (50000 );
3716+ }
3717+ if (strcmp (data , "2" ) == 0 ) {
3718+ strcpy (buf , "board -g 2\r" );
3719+ send_uart_comm (uart_synth_fd , (uint8_t * )buf , strlen (buf ));
3720+ usleep (50000 );
3721+
3722+ strcpy (buf , "board -g 2\r" );
3723+ send_uart_comm (uart_rx_fd , (uint8_t * )buf , strlen (buf ));
3724+ usleep (50000 );
3725+
3726+ strcpy (buf , "board -g 2\r" );
3727+ send_uart_comm (uart_tx_fd , (uint8_t * )buf , strlen (buf ));
3728+ usleep (50000 );
3729+ }
3730+ return RETURN_SUCCESS ;
3731+ }
3732+
3733+
37033734static int hdlr_fpga_board_temp (const char * data , char * ret ) {
37043735 //strcpy(buf, "board -t\r");
37053736 //send_uart_comm(uart_fd, (uint8_t*)buf, strlen(buf));
@@ -4004,16 +4035,12 @@ static int hdlr_fpga_board_gps_time (const char* data, char* ret) {
40044035 char gps_split [MAX_PROP_LEN ];
40054036
40064037 read_hps_reg ( "sys5" , & gps_time_lh );
4007- printf ("Value of sys5: %d\n" , gps_time_lh );
40084038 read_hps_reg ( "sys6" , & gps_time_uh );
4009- printf ("Value of sys6: %d\n" , gps_time_uh );
40104039
40114040 snprintf (gps_split , MAX_PROP_LEN , "%i" , gps_time_uh );
40124041 strncpy (ret , gps_split , MAX_PROP_LEN );
4013- printf ("Intermediate value of ret: %s\n" , ret );
40144042 snprintf (gps_split , MAX_PROP_LEN , "%i" , gps_time_lh );
40154043 strncat (ret , gps_split , MAX_PROP_LEN );
4016- printf ("Final value of ret: %s\n" , ret );
40174044
40184045 return RETURN_SUCCESS ;
40194046}
@@ -4022,16 +4049,12 @@ static int hdlr_fpga_board_gps_frac_time (const char* data, char* ret) {
40224049 uint32_t gps_frac_time_lh = 0 , gps_frac_time_uh = 0 ;
40234050 char gps_split [MAX_PROP_LEN ];
40244051 read_hps_reg ( "sys7" , & gps_frac_time_lh );
4025- printf ("Value of sys7: %d\n" , gps_frac_time_lh );
40264052 read_hps_reg ( "sys8" , & gps_frac_time_uh );
4027- printf ("Value of sys8: %d\n" , gps_frac_time_lh );
40284053
40294054 snprintf (gps_split , MAX_PROP_LEN , "%i" , gps_frac_time_uh );
40304055 strncpy (ret , gps_split , MAX_PROP_LEN );
4031- printf ("Intermediate value of ret: %s\n" , ret );
40324056 snprintf (gps_split , MAX_PROP_LEN , "%i" , gps_frac_time_lh );
40334057 strncat (ret , gps_split , MAX_PROP_LEN );
4034- printf ("Final value of ret: %s\n" , ret );
40354058 return RETURN_SUCCESS ;
40364059}
40374060
@@ -4557,6 +4580,7 @@ static int hdlr_cm_trx_nco_adj (const char *data, char *ret) {
45574580 DEFINE_FILE_PROP( "fpga/board/sys_rstreq", hdlr_fpga_board_sys_rstreq, WO, "0" ), \
45584581 DEFINE_FILE_PROP( "fpga/board/test", hdlr_fpga_board_test, WO, "0" ), \
45594582 DEFINE_FILE_PROP( "fpga/board/temp", hdlr_fpga_board_temp, RW, "20" ), \
4583+ DEFINE_FILE_PROP( "fpga/board/gle", hdlr_fpga_board_gle, RW, "0" ), \
45604584 DEFINE_FILE_PROP( "fpga/link/rate", hdlr_fpga_link_rate, RW, "1250000000" ), \
45614585 DEFINE_FILE_PROP( "fpga/link/sfpa/ip_addr", hdlr_fpga_link_sfpa_ip_addr, RW, "10.10.10.2" ), \
45624586 DEFINE_FILE_PROP( "fpga/link/sfpa/mac_addr", hdlr_fpga_link_sfpa_mac_addr, RW, "aa:00:00:00:00:00" ), \
0 commit comments