HW/DAS/USBscopes/usbtm/test/dline.c

#include "usbcommon.h"

int main(int argc, char *argv[]) {
  int opt, dev = 0, master = 0, help = 0;
  int res, fd;

  while((opt = getopt(argc, argv, "d:mh?")) != -1)
    switch(opt) {
      case 'd':
        dev = atoi(optarg);
        break;
      case 'm':
        master = 1;
        break;
      default:
        help = 1;
        break;
    }
  if(help || optind != argc) return 0;

  if(!opendev(dev, &fd)) {
    fprintf(stderr, deverror(dev));
    return 1;
  }
    
  usbtm_set_trig_master(fd, 0);
  usbtm_set_detect_line(fd, 0, 1);
  usbtm_get_detect_line(fd, &res);
  if(master) usbtm_set_detect_line(fd, master, 0);
  closedev(dev, fd);

  printf("%i\n", res);

  return 0;
}