1 #ifndef _LINUX_TTY_FLIP_H
2 #define _LINUX_TTY_FLIP_H
4 extern int tty_buffer_request_room(struct tty_struct
*tty
, size_t size
);
5 extern int tty_insert_flip_string(struct tty_struct
*tty
, unsigned char *chars
, size_t size
);
6 extern int tty_insert_flip_string_flags(struct tty_struct
*tty
, unsigned char *chars
, char *flags
, size_t size
);
7 extern int tty_prepare_flip_string(struct tty_struct
*tty
, unsigned char **chars
, size_t size
);
8 extern int tty_prepare_flip_string_flags(struct tty_struct
*tty
, unsigned char **chars
, char **flags
, size_t size
);
10 #ifdef INCLUDE_INLINE_FUNCS
11 #define _INLINE_ extern
13 #define _INLINE_ static __inline__
16 _INLINE_
int tty_insert_flip_char(struct tty_struct
*tty
,
17 unsigned char ch
, char flag
)
19 struct tty_buffer
*tb
= tty
->buf
.tail
;
20 if (tb
&& tb
->used
< tb
->size
) {
21 tb
->flag_buf_ptr
[tb
->used
] = flag
;
22 tb
->char_buf_ptr
[tb
->used
++] = ch
;
25 return tty_insert_flip_string_flags(tty
, &ch
, &flag
, 1);
28 _INLINE_
void tty_schedule_flip(struct tty_struct
*tty
)
30 schedule_delayed_work(&tty
->buf
.work
, 1);
36 #endif /* _LINUX_TTY_FLIP_H */