1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* spk_priv.h 3 * review functions for the speakup screen review package. 4 * originally written by: Kirk Reiser and Andy Berdan. 5 * 6 * extensively modified by David Borowski. 7 * 8 * Copyright (C) 1998 Kirk Reiser. 9 * Copyright (C) 2003 David Borowski. 10 */ 11 #ifndef _SPEAKUP_PRIVATE_H 12 #define _SPEAKUP_PRIVATE_H 13 14 #include "spk_types.h" 15 #include "spk_priv_keyinfo.h" 16 17 #ifndef pr_warn 18 #define pr_warn(fmt, arg...) printk(KERN_WARNING fmt, ##arg) 19 #endif 20 21 #define V_LAST_VAR { MAXVARS } 22 #define SPACE 0x20 23 #define SYNTH_CHECK 20030716 /* today's date ought to do for check value */ 24 /* synth flags, for odd synths */ 25 #define SF_DEC 1 /* to fiddle puncs in alpha strings so it doesn't spell */ 26 #ifdef MODULE 27 #define SYNTH_START 1 28 #else 29 #define SYNTH_START 0 30 #endif 31 32 #define KT_SPKUP 15 33 #define SPK_SYNTH_TIMEOUT 100000 /* in micro-seconds */ 34 #define SYNTH_DEFAULT_DEV "ttyS0" 35 #define SYNTH_DEFAULT_SER 0 36 37 const struct old_serial_port *spk_serial_init(int index); 38 void spk_stop_serial_interrupt(void); 39 int spk_wait_for_xmitr(struct spk_synth *in_synth); 40 void spk_serial_release(void); 41 void spk_ttyio_release(void); 42 void spk_ttyio_register_ldisc(void); 43 void spk_ttyio_unregister_ldisc(void); 44 45 void synth_buffer_skip_nonlatin1(void); 46 u16 synth_buffer_getc(void); 47 u16 synth_buffer_peek(void); 48 int synth_buffer_empty(void); 49 struct var_t *spk_get_var(enum var_id_t var_id); 50 ssize_t spk_var_show(struct kobject *kobj, struct kobj_attribute *attr, 51 char *buf); 52 ssize_t spk_var_store(struct kobject *kobj, struct kobj_attribute *attr, 53 const char *buf, size_t count); 54 55 int spk_serial_synth_probe(struct spk_synth *synth); 56 int spk_ttyio_synth_probe(struct spk_synth *synth); 57 const char *spk_serial_synth_immediate(struct spk_synth *synth, 58 const char *buff); 59 const char *spk_ttyio_synth_immediate(struct spk_synth *synth, 60 const char *buff); 61 void spk_do_catch_up(struct spk_synth *synth); 62 void spk_do_catch_up_unicode(struct spk_synth *synth); 63 void spk_synth_flush(struct spk_synth *synth); 64 unsigned char spk_synth_get_index(struct spk_synth *synth); 65 int spk_synth_is_alive_nop(struct spk_synth *synth); 66 int spk_synth_is_alive_restart(struct spk_synth *synth); 67 __printf(1, 2) 68 void synth_printf(const char *buf, ...); 69 void synth_putwc(u16 wc); 70 void synth_putwc_s(u16 wc); 71 void synth_putws(const u16 *buf); 72 void synth_putws_s(const u16 *buf); 73 int synth_request_region(unsigned long start, unsigned long n); 74 int synth_release_region(unsigned long start, unsigned long n); 75 int synth_add(struct spk_synth *in_synth); 76 void synth_remove(struct spk_synth *in_synth); 77 struct spk_synth *synth_current(void); 78 79 extern struct speakup_info_t speakup_info; 80 81 extern struct var_t synth_time_vars[]; 82 83 extern struct spk_io_ops spk_serial_io_ops; 84 extern struct spk_io_ops spk_ttyio_ops; 85 86 #endif 87