summaryrefslogtreecommitdiffstats
path: root/host/apps/omap_debug
diff options
context:
space:
mode:
authorPhilip Balister <philip@opensdr.com>2010-04-03 14:55:16 +0000
committerPhilip Balister <philip@opensdr.com>2010-04-03 14:55:16 +0000
commit317fc2d16288dcc621761a88119f279e1cfeafd6 (patch)
tree1259620f19fa5298eea28a54553216a98e6564b1 /host/apps/omap_debug
parentdd2b11c4c77175da291beea02df0337989d6533a (diff)
downloaduhd-317fc2d16288dcc621761a88119f279e1cfeafd6.tar.gz
uhd-317fc2d16288dcc621761a88119f279e1cfeafd6.tar.bz2
uhd-317fc2d16288dcc621761a88119f279e1cfeafd6.zip
Add ability to change uart baud rate. (works)
Diffstat (limited to 'host/apps/omap_debug')
-rw-r--r--host/apps/omap_debug/usrp-e-uart.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/host/apps/omap_debug/usrp-e-uart.c b/host/apps/omap_debug/usrp-e-uart.c
index b0b14626a..2956c407f 100644
--- a/host/apps/omap_debug/usrp-e-uart.c
+++ b/host/apps/omap_debug/usrp-e-uart.c
@@ -16,15 +16,26 @@ int main(int argc, char *argv[])
int fp, i, ret;
struct usrp_e_ctl16 d;
char *str = argv[1];
+ __u16 clkdiv;
if (argc < 2) {
- printf("Usage: usrp_e_uart <string>n");
+ printf("Usage: usrp_e_uart <string> <opt clkdiv>\n");
+ printf("clkdiv = 278 is 230.4k \n");
+ printf("clkdiv = 556 is 115.2k \n");
exit(-1);
}
fp = open("/dev/usrp_e0", O_RDWR);
printf("fp = %d\n", fp);
+ if (argc == 3) {
+ clkdiv = atoi(argv[2]);
+ d.offset = UE_REG_UART_CLKDIV;
+ d.count = 1;
+ d.buf[0] = clkdiv;
+ ret = ioctl(fp, USRP_E_WRITE_CTL16, &d);
+ }
+
for (i=0; i<strlen(str); i++) {
d.offset = UE_REG_UART_TXCHAR;
d.count = 1;