Linux Kernel
3.7.1
|
#include <linux/jiffies.h>
#include <linux/sched.h>
#include <linux/timer.h>
#include <linux/kthread.h>
#include "spk_priv.h"
#include "speakup.h"
Go to the source code of this file.
Macros | |
#define | MODULE_init 0x0dec /* module in boot code */ |
#define | MODULE_self_test 0x8800 /* module in self-test */ |
#define | MODULE_reset 0xffff /* reinit the whole module */ |
#define | MODE_mask 0xf000 /* mode bits in high nibble */ |
#define | MODE_null 0x0000 |
#define | MODE_test 0x2000 /* in testing mode */ |
#define | MODE_status 0x8000 |
#define | STAT_int 0x0001 /* running in interrupt mode */ |
#define | STAT_tr_char 0x0002 /* character data to transmit */ |
#define | STAT_rr_char 0x0004 /* ready to receive char data */ |
#define | STAT_cmd_ready 0x0008 /* ready to accept commands */ |
#define | STAT_dma_ready 0x0010 /* dma command ready */ |
#define | STAT_digitized 0x0020 /* spc in digitized mode */ |
#define | STAT_new_index 0x0040 /* new last index ready */ |
#define | STAT_new_status 0x0080 /* new status posted */ |
#define | STAT_dma_state 0x0100 /* dma state toggle */ |
#define | STAT_index_valid 0x0200 /* indexs are valid */ |
#define | STAT_flushing 0x0400 /* flush in progress */ |
#define | STAT_self_test 0x0800 /* module in self test */ |
#define | MODE_ready 0xc000 /* module ready for next phase */ |
#define | READY_boot 0x0000 |
#define | READY_kernel 0x0001 |
#define | MODE_error 0xf000 |
#define | CMD_mask 0xf000 /* mask for command nibble */ |
#define | CMD_null 0x0000 /* post status */ |
#define | CMD_control 0x1000 /* hard control command */ |
#define | CTRL_mask 0x0F00 /* mask off control nibble */ |
#define | CTRL_data 0x00FF /* mask to get data byte */ |
#define | CTRL_null 0x0000 /* null control */ |
#define | CTRL_vol_up 0x0100 /* increase volume */ |
#define | CTRL_vol_down 0x0200 /* decrease volume */ |
#define | CTRL_vol_set 0x0300 /* set volume */ |
#define | CTRL_pause 0x0400 /* pause spc */ |
#define | CTRL_resume 0x0500 /* resume spc clock */ |
#define | CTRL_resume_spc 0x0001 /* resume spc soft pause */ |
#define | CTRL_flush 0x0600 /* flush all buffers */ |
#define | CTRL_int_enable 0x0700 /* enable status change ints */ |
#define | CTRL_buff_free 0x0800 /* buffer remain count */ |
#define | CTRL_buff_used 0x0900 /* buffer in use */ |
#define | CTRL_speech 0x0a00 /* immediate speech change */ |
#define | CTRL_SP_voice 0x0001 /* voice change */ |
#define | CTRL_SP_rate 0x0002 /* rate change */ |
#define | CTRL_SP_comma 0x0003 /* comma pause change */ |
#define | CTRL_SP_period 0x0004 /* period pause change */ |
#define | CTRL_SP_rate_delta 0x0005 /* delta rate change */ |
#define | CTRL_SP_get_param 0x0006 /* return the desired parameter */ |
#define | CTRL_last_index 0x0b00 /* get last index spoken */ |
#define | CTRL_io_priority 0x0c00 /* change i/o priority */ |
#define | CTRL_free_mem 0x0d00 /* get free paragraphs on module */ |
#define | CTRL_get_lang |
#define | CMD_test 0x2000 /* self-test request */ |
#define | TEST_mask 0x0F00 /* isolate test field */ |
#define | TEST_null 0x0000 /* no test requested */ |
#define | TEST_isa_int 0x0100 /* assert isa irq */ |
#define | TEST_echo 0x0200 /* make data in == data out */ |
#define | TEST_seg 0x0300 /* set peek/poke segment */ |
#define | TEST_off 0x0400 /* set peek/poke offset */ |
#define | TEST_peek 0x0500 /* data out == *peek */ |
#define | TEST_poke 0x0600 /* *peek == data in */ |
#define | TEST_sub_code 0x00FF /* user defined test sub codes */ |
#define | CMD_id 0x3000 /* return software id */ |
#define | ID_null 0x0000 /* null id */ |
#define | ID_kernel 0x0100 /* kernel code executing */ |
#define | ID_boot 0x0200 /* boot code executing */ |
#define | CMD_dma 0x4000 /* force a dma start */ |
#define | CMD_reset 0x5000 /* reset module status */ |
#define | CMD_sync 0x6000 /* kernel sync command */ |
#define | CMD_char_in 0x7000 /* single character send */ |
#define | CMD_char_out 0x8000 /* single character get */ |
#define | CHAR_count_1 0x0100 /* one char in cmd_low */ |
#define | CHAR_count_2 0x0200 /* the second in data_low */ |
#define | CHAR_count_3 0x0300 /* the third in data_high */ |
#define | CMD_spc_mode 0x9000 /* change spc mode */ |
#define | CMD_spc_to_text 0x0100 /* set to text mode */ |
#define | CMD_spc_to_digit 0x0200 /* set to digital mode */ |
#define | CMD_spc_rate 0x0400 /* change spc data rate */ |
#define | CMD_error 0xf000 /* severe error */ |
#define | DMA_single_in 0x01 |
#define | DMA_single_out 0x02 |
#define | DMA_buff_in 0x03 |
#define | DMA_buff_out 0x04 |
#define | DMA_control 0x05 |
#define | DT_MEM_ALLOC 0x03 |
#define | DT_SET_DIC 0x04 |
#define | DT_START_TASK 0x05 |
#define | DT_LOAD_MEM 0x06 |
#define | DT_READ_MEM 0x07 |
#define | DT_DIGITAL_IN 0x08 |
#define | DMA_sync 0x06 |
#define | DMA_sync_char 0x07 |
#define | DRV_VERSION "2.12" |
#define | PROCSPEECH 0x0b |
#define | SYNTH_IO_EXTENT 8 |
Enumerations | |
enum | { PRIMARY_DIC = 0, USER_DIC, COMMAND_DIC, ABBREV_DIC } |
Functions | |
module_param_named (start, synth_dec_pc.startup, short, S_IRUGO) | |
MODULE_PARM_DESC (start,"Start the synthesizer once it is loaded.") | |
module_init (decpc_init) | |
module_exit (decpc_exit) | |
MODULE_AUTHOR ("Kirk Reiser <kirk@braille.uwo.ca>") | |
MODULE_AUTHOR ("David Borowski") | |
MODULE_DESCRIPTION ("Speakup support for DECtalk PC synthesizers") | |
MODULE_LICENSE ("GPL") | |
MODULE_VERSION (DRV_VERSION) | |
#define CHAR_count_1 0x0100 /* one char in cmd_low */ |
Definition at line 111 of file speakup_decpc.c.
#define CHAR_count_2 0x0200 /* the second in data_low */ |
Definition at line 112 of file speakup_decpc.c.
#define CHAR_count_3 0x0300 /* the third in data_high */ |
Definition at line 113 of file speakup_decpc.c.
#define CMD_char_in 0x7000 /* single character send */ |
Definition at line 109 of file speakup_decpc.c.
#define CMD_char_out 0x8000 /* single character get */ |
Definition at line 110 of file speakup_decpc.c.
#define CMD_control 0x1000 /* hard control command */ |
Definition at line 67 of file speakup_decpc.c.
#define CMD_dma 0x4000 /* force a dma start */ |
Definition at line 106 of file speakup_decpc.c.
#define CMD_error 0xf000 /* severe error */ |
Definition at line 118 of file speakup_decpc.c.
#define CMD_id 0x3000 /* return software id */ |
Definition at line 102 of file speakup_decpc.c.
#define CMD_mask 0xf000 /* mask for command nibble */ |
Definition at line 65 of file speakup_decpc.c.
#define CMD_null 0x0000 /* post status */ |
Definition at line 66 of file speakup_decpc.c.
#define CMD_reset 0x5000 /* reset module status */ |
Definition at line 107 of file speakup_decpc.c.
#define CMD_spc_mode 0x9000 /* change spc mode */ |
Definition at line 114 of file speakup_decpc.c.
#define CMD_spc_rate 0x0400 /* change spc data rate */ |
Definition at line 117 of file speakup_decpc.c.
#define CMD_spc_to_digit 0x0200 /* set to digital mode */ |
Definition at line 116 of file speakup_decpc.c.
#define CMD_spc_to_text 0x0100 /* set to text mode */ |
Definition at line 115 of file speakup_decpc.c.
#define CMD_sync 0x6000 /* kernel sync command */ |
Definition at line 108 of file speakup_decpc.c.
#define CMD_test 0x2000 /* self-test request */ |
Definition at line 92 of file speakup_decpc.c.
#define CTRL_buff_free 0x0800 /* buffer remain count */ |
Definition at line 79 of file speakup_decpc.c.
#define CTRL_buff_used 0x0900 /* buffer in use */ |
Definition at line 80 of file speakup_decpc.c.
#define CTRL_data 0x00FF /* mask to get data byte */ |
Definition at line 69 of file speakup_decpc.c.
#define CTRL_flush 0x0600 /* flush all buffers */ |
Definition at line 77 of file speakup_decpc.c.
#define CTRL_free_mem 0x0d00 /* get free paragraphs on module */ |
Definition at line 90 of file speakup_decpc.c.
#define CTRL_get_lang |
Definition at line 91 of file speakup_decpc.c.
#define CTRL_int_enable 0x0700 /* enable status change ints */ |
Definition at line 78 of file speakup_decpc.c.
#define CTRL_io_priority 0x0c00 /* change i/o priority */ |
Definition at line 89 of file speakup_decpc.c.
#define CTRL_last_index 0x0b00 /* get last index spoken */ |
Definition at line 88 of file speakup_decpc.c.
#define CTRL_mask 0x0F00 /* mask off control nibble */ |
Definition at line 68 of file speakup_decpc.c.
#define CTRL_null 0x0000 /* null control */ |
Definition at line 70 of file speakup_decpc.c.
#define CTRL_pause 0x0400 /* pause spc */ |
Definition at line 74 of file speakup_decpc.c.
#define CTRL_resume 0x0500 /* resume spc clock */ |
Definition at line 75 of file speakup_decpc.c.
#define CTRL_resume_spc 0x0001 /* resume spc soft pause */ |
Definition at line 76 of file speakup_decpc.c.
#define CTRL_SP_comma 0x0003 /* comma pause change */ |
Definition at line 84 of file speakup_decpc.c.
#define CTRL_SP_get_param 0x0006 /* return the desired parameter */ |
Definition at line 87 of file speakup_decpc.c.
#define CTRL_SP_period 0x0004 /* period pause change */ |
Definition at line 85 of file speakup_decpc.c.
#define CTRL_SP_rate 0x0002 /* rate change */ |
Definition at line 83 of file speakup_decpc.c.
#define CTRL_SP_rate_delta 0x0005 /* delta rate change */ |
Definition at line 86 of file speakup_decpc.c.
#define CTRL_SP_voice 0x0001 /* voice change */ |
Definition at line 82 of file speakup_decpc.c.
#define CTRL_speech 0x0a00 /* immediate speech change */ |
Definition at line 81 of file speakup_decpc.c.
#define CTRL_vol_down 0x0200 /* decrease volume */ |
Definition at line 72 of file speakup_decpc.c.
#define CTRL_vol_set 0x0300 /* set volume */ |
Definition at line 73 of file speakup_decpc.c.
#define CTRL_vol_up 0x0100 /* increase volume */ |
Definition at line 71 of file speakup_decpc.c.
#define DMA_buff_in 0x03 |
Definition at line 124 of file speakup_decpc.c.
#define DMA_buff_out 0x04 |
Definition at line 125 of file speakup_decpc.c.
#define DMA_control 0x05 |
Definition at line 126 of file speakup_decpc.c.
#define DMA_single_in 0x01 |
Definition at line 122 of file speakup_decpc.c.
#define DMA_single_out 0x02 |
Definition at line 123 of file speakup_decpc.c.
#define DMA_sync 0x06 |
Definition at line 133 of file speakup_decpc.c.
#define DMA_sync_char 0x07 |
Definition at line 134 of file speakup_decpc.c.
#define DRV_VERSION "2.12" |
Definition at line 136 of file speakup_decpc.c.
#define DT_DIGITAL_IN 0x08 |
Definition at line 132 of file speakup_decpc.c.
#define DT_LOAD_MEM 0x06 |
Definition at line 130 of file speakup_decpc.c.
#define DT_MEM_ALLOC 0x03 |
Definition at line 127 of file speakup_decpc.c.
#define DT_READ_MEM 0x07 |
Definition at line 131 of file speakup_decpc.c.
#define DT_SET_DIC 0x04 |
Definition at line 128 of file speakup_decpc.c.
#define DT_START_TASK 0x05 |
Definition at line 129 of file speakup_decpc.c.
#define ID_boot 0x0200 /* boot code executing */ |
Definition at line 105 of file speakup_decpc.c.
#define ID_kernel 0x0100 /* kernel code executing */ |
Definition at line 104 of file speakup_decpc.c.
#define ID_null 0x0000 /* null id */ |
Definition at line 103 of file speakup_decpc.c.
#define MODE_error 0xf000 |
Definition at line 63 of file speakup_decpc.c.
#define MODE_mask 0xf000 /* mode bits in high nibble */ |
Definition at line 44 of file speakup_decpc.c.
#define MODE_null 0x0000 |
Definition at line 45 of file speakup_decpc.c.
#define MODE_ready 0xc000 /* module ready for next phase */ |
Definition at line 60 of file speakup_decpc.c.
#define MODE_status 0x8000 |
Definition at line 47 of file speakup_decpc.c.
#define MODE_test 0x2000 /* in testing mode */ |
Definition at line 46 of file speakup_decpc.c.
#define MODULE_init 0x0dec /* module in boot code */ |
Definition at line 40 of file speakup_decpc.c.
#define MODULE_reset 0xffff /* reinit the whole module */ |
Definition at line 42 of file speakup_decpc.c.
#define MODULE_self_test 0x8800 /* module in self-test */ |
Definition at line 41 of file speakup_decpc.c.
#define PROCSPEECH 0x0b |
Definition at line 137 of file speakup_decpc.c.
#define READY_boot 0x0000 |
Definition at line 61 of file speakup_decpc.c.
#define READY_kernel 0x0001 |
Definition at line 62 of file speakup_decpc.c.
#define STAT_cmd_ready 0x0008 /* ready to accept commands */ |
Definition at line 51 of file speakup_decpc.c.
#define STAT_digitized 0x0020 /* spc in digitized mode */ |
Definition at line 53 of file speakup_decpc.c.
#define STAT_dma_ready 0x0010 /* dma command ready */ |
Definition at line 52 of file speakup_decpc.c.
#define STAT_dma_state 0x0100 /* dma state toggle */ |
Definition at line 56 of file speakup_decpc.c.
#define STAT_flushing 0x0400 /* flush in progress */ |
Definition at line 58 of file speakup_decpc.c.
#define STAT_index_valid 0x0200 /* indexs are valid */ |
Definition at line 57 of file speakup_decpc.c.
#define STAT_int 0x0001 /* running in interrupt mode */ |
Definition at line 48 of file speakup_decpc.c.
#define STAT_new_index 0x0040 /* new last index ready */ |
Definition at line 54 of file speakup_decpc.c.
#define STAT_new_status 0x0080 /* new status posted */ |
Definition at line 55 of file speakup_decpc.c.
#define STAT_rr_char 0x0004 /* ready to receive char data */ |
Definition at line 50 of file speakup_decpc.c.
#define STAT_self_test 0x0800 /* module in self test */ |
Definition at line 59 of file speakup_decpc.c.
#define STAT_tr_char 0x0002 /* character data to transmit */ |
Definition at line 49 of file speakup_decpc.c.
#define SYNTH_IO_EXTENT 8 |
Definition at line 138 of file speakup_decpc.c.
#define TEST_echo 0x0200 /* make data in == data out */ |
Definition at line 96 of file speakup_decpc.c.
#define TEST_isa_int 0x0100 /* assert isa irq */ |
Definition at line 95 of file speakup_decpc.c.
#define TEST_mask 0x0F00 /* isolate test field */ |
Definition at line 93 of file speakup_decpc.c.
#define TEST_null 0x0000 /* no test requested */ |
Definition at line 94 of file speakup_decpc.c.
#define TEST_off 0x0400 /* set peek/poke offset */ |
Definition at line 98 of file speakup_decpc.c.
#define TEST_peek 0x0500 /* data out == *peek */ |
Definition at line 99 of file speakup_decpc.c.
#define TEST_poke 0x0600 /* *peek == data in */ |
Definition at line 100 of file speakup_decpc.c.
#define TEST_seg 0x0300 /* set peek/poke segment */ |
Definition at line 97 of file speakup_decpc.c.
#define TEST_sub_code 0x00FF /* user defined test sub codes */ |
Definition at line 101 of file speakup_decpc.c.
anonymous enum |
Definition at line 120 of file speakup_decpc.c.
MODULE_AUTHOR | ( | "Kirk Reiser <kirk@braille.uwo.ca>" | ) |
MODULE_AUTHOR | ( | "David Borowski" | ) |
module_exit | ( | decpc_exit | ) |
module_init | ( | decpc_init | ) |
MODULE_LICENSE | ( | "GPL" | ) |
MODULE_VERSION | ( | DRV_VERSION | ) |