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_flags(struct tty_struct
*tty
, const unsigned char *chars
, const char *flags
, size_t size
);
6 extern int tty_insert_flip_string_fixed_flag(struct tty_struct
*tty
, const unsigned char *chars
, char flag
, 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
);
9 void tty_schedule_flip(struct tty_struct
*tty
);
11 static inline int tty_insert_flip_char(struct tty_struct
*tty
,
12 unsigned char ch
, char flag
)
14 struct tty_buffer
*tb
= tty
->buf
.tail
;
15 if (tb
&& tb
->used
< tb
->size
) {
16 tb
->flag_buf_ptr
[tb
->used
] = flag
;
17 tb
->char_buf_ptr
[tb
->used
++] = ch
;
20 return tty_insert_flip_string_flags(tty
, &ch
, &flag
, 1);
23 static inline int tty_insert_flip_string(struct tty_struct
*tty
, const unsigned char *chars
, size_t size
)
25 return tty_insert_flip_string_fixed_flag(tty
, chars
, TTY_NORMAL
, size
);
28 #endif /* _LINUX_TTY_FLIP_H */