summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--host/apps/omap_debug/usrp-e-ctl.c20
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");
}