diff options
Diffstat (limited to 'host/apps/omap_debug')
-rw-r--r-- | host/apps/omap_debug/usrp-e-ctl.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/host/apps/omap_debug/usrp-e-ctl.c b/host/apps/omap_debug/usrp-e-ctl.c index 501a4870e..69c48ee6f 100644 --- a/host/apps/omap_debug/usrp-e-ctl.c +++ b/host/apps/omap_debug/usrp-e-ctl.c @@ -11,7 +11,7 @@ int main(int argc, char *argv[]) { int fp, i, cnt, ret; - struct usrp_e_ctl16 *ctl_data; + struct usrp_e_ctl16 ctl_data; if (argc < 4) { printf("Usage: usrp_e_ctl w|r offset number_of_values val1 val2 ....\n"); @@ -20,32 +20,28 @@ int main(int argc, char *argv[]) cnt = atoi(argv[3]); - ctl_data = malloc(sizeof(struct usrp_e_ctl16) + cnt*2); - - ctl_data->offset = atoi(argv[2]); - ctl_data->count = cnt; - - printf("Sizeof usrp1_e_ctl struct = %d\n", sizeof(struct usrp_e_ctl16)); + ctl_data.offset = atoi(argv[2]); + ctl_data.count = cnt; fp = open("/dev/usrp_e0", O_RDWR); printf("fp = %d\n", fp); if (*argv[1] == 'w') { for (i=0; i<cnt; i++) - ctl_data->buf[i] = atoi(argv[4+i]); + ctl_data.buf[i] = atoi(argv[4+i]); - ret = ioctl(fp, USRP_E_WRITE_CTL16, ctl_data); + ret = ioctl(fp, USRP_E_WRITE_CTL16, &ctl_data); printf("Return value from write ioctl = %d\n", ret); } if (*argv[1] == 'r') { - ret = ioctl(fp, USRP_E_READ_CTL16, ctl_data); + ret = ioctl(fp, USRP_E_READ_CTL16, &ctl_data); printf("Return value from write ioctl = %d\n", ret); - for (i=0; i<ctl_data->count; i++) { + for (i=0; i<ctl_data.count; i++) { if (!(i%8)) printf("\nData at %4d :", i); - printf(" %5d", ctl_data->buf[i]); + printf(" %5d", ctl_data.buf[i]); } printf("\n"); } |