4 Copyright 2012 Michel Pollet <buserror@gmail.com>
6 This file is part of simavr.
8 simavr is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 simavr is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with simavr. If not, see <http://www.gnu.org/licenses/>.
23 #ifndef __UART_PTY_H___
24 #define __UART_PTY_H___
28 #include "fifo_declare.h"
31 IRQ_UART_PTY_BYTE_IN = 0,
32 IRQ_UART_PTY_BYTE_OUT,
36 DECLARE_FIFO(uint8_t,uart_pty_fifo, 512);
38 typedef struct uart_pty_port_t {
39 int tap : 1, crlf : 1;
40 int s; // socket we chat on
45 size_t buffer_len, buffer_done;
46 } uart_pty_port_t, *uart_pty_port_p;
48 typedef struct uart_pty_t {
49 avr_irq_t * irq; // irq list
50 struct avr_t *avr; // keep it around so we can pause it
60 uart_pty_port_t port[2];
69 uart_pty_stop(uart_pty_t * p);
76 #endif /* __UART_PTY_H___ */