ao-tools/ao-list: Show devices that have no TTY
[fw/altos] / ao-tools / lib / cc-usbdev.c
index 95bfa244b6a5f9dfe0fa567b992d02221e47f149..6c3ba5910b3602465e918dc38f7bcec04d700e9f 100644 (file)
@@ -219,7 +219,7 @@ is_am(int idVendor, int idProduct) {
 }
 
 struct cc_usbdevs *
-cc_usbdevs_scan(void)
+cc_usbdevs_scan(int non_tty)
 {
        int                     e;
        struct dirent           **ents;
@@ -241,7 +241,7 @@ cc_usbdevs_scan(void)
                dir = cc_fullname(USB_DEVICES, ents[e]->d_name);
                dev = usb_scan_device(dir);
                free(dir);
-               if (is_am(dev->idVendor, dev->idProduct) && dev->tty) {
+               if (is_am(dev->idVendor, dev->idProduct) && (non_tty || dev->tty)) {
                        if (devs->dev)
                                devs->dev = realloc(devs->dev,
                                                    (devs->ndev + 1) * sizeof (struct usbdev *));
@@ -274,7 +274,7 @@ match_dev(char *product, int serial)
        int                     i;
        char                    *tty = NULL;
 
-       devs = cc_usbdevs_scan();
+       devs = cc_usbdevs_scan(FALSE);
        if (!devs)
                return NULL;
        for (i = 0; i < devs->ndev; i++) {