ucons.c 750 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #include <u.h>
  2. #include <libc.h>
  3. #include <thread.h>
  4. #include "usb.h"
  5. #include "usbfs.h"
  6. #include "serial.h"
  7. #include "ucons.h"
  8. Cinfo uconsinfo[] = {
  9. { Net20DCVid, Net20DCDid },
  10. { 0, 0 },
  11. };
  12. int
  13. uconsmatch(char *info)
  14. {
  15. Cinfo *ip;
  16. char buf[50];
  17. for(ip = uconsinfo; ip->vid != 0; ip++){
  18. snprint(buf, sizeof buf, "vid %#06x did %#06x",
  19. ip->vid, ip->did);
  20. dsprint(2, "serial: %s %s\n", buf, info);
  21. if(strstr(info, buf) != nil)
  22. return 0;
  23. }
  24. return -1;
  25. }
  26. static int
  27. ucseteps(Serialport *p)
  28. {
  29. Serial *ser;
  30. ser = p->s;
  31. p->baud = ~0; /* not real port */
  32. ser->maxrtrans = ser->maxwtrans = 8;
  33. devctl(p->epin, "maxpkt 8");
  34. devctl(p->epout, "maxpkt 8");
  35. return 0;
  36. }
  37. /* all nops */
  38. Serialops uconsops = {
  39. .seteps = ucseteps,
  40. };