FreeCalypso > hg > freecalypso-tools
annotate libserial-orig/openport.c @ 492:ac48ed111d6a
loadtools/scripts/compal.init: updated comments for new understanding
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Fri, 24 May 2019 06:15:02 +0000 | 
| parents | cb1ba53a1106 | 
| children | 
| rev | line source | 
|---|---|
| 248 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 * This module implements the basic serial port opening operation. | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 */ | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 #include <sys/types.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 #include <sys/file.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 #include <sys/ioctl.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 #include <stdio.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 #include <stdlib.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 #include <unistd.h> | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 int target_fd; | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 open_serial_port(ttyport) | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 char *ttyport; | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 { | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 target_fd = open(ttyport, O_RDWR|O_NONBLOCK); | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 if (target_fd < 0) { | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 perror(ttyport); | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 exit(1); | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 } | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 ioctl(target_fd, TIOCEXCL); | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 return 0; | 
| 
cb1ba53a1106
beginning of factored-out libserial
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 } | 
