9 int main(int argc, char *argv[])
11 struct epoll_event ev;
12 struct plotter_options options;
18 if (read_args(argc, argv, &options))
21 baud = options.baud_rate;
22 fd = open_at_baud(options.device_path, &baud);
26 if (baud != options.baud_rate) {
27 pr_err("Failed to set baudrate to %d, only got %d\n",
28 options.baud_rate, baud);
33 epoll_fd = epoll_create(1);
37 if (epoll_ctl(epoll_fd, EPOLL_CTL_ADD, fd, &ev) == -1) {
38 pr_err("epoll_ctl: %m\n");
43 ret = epoll_wait(epoll_fd, &ev, 1, -1);
48 pr_err("epoll: %m\n");
52 ret = read(fd, buf, sizeof(buf));
59 pr_err("Read EOF, stopping\n");
63 ret = write(1, buf, ret);
65 pr_err("write: %m\n");