• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/s390/char/

Lines Matching +defs:read +defs:line

80 	struct string *input;		/* Input string for read request. */
81 struct raw3270_request *read; /* Single read request. */
85 struct tasklet_struct readlet; /* Tasklet to issue read request. */
107 #define TTY_UPDATE_INPUT 4 /* Update input line. */
108 #define TTY_UPDATE_STATUS 8 /* Update status line. */
125 * The input line are the two last lines of the screen.
130 struct string *line;
133 line = tp->prompt;
135 line->string[5] = TF_INMDT;
137 line->string[5] = tp->inattr;
140 memcpy(line->string + 6, input, count);
141 line->string[6 + count] = TO_IC;
142 /* Clear to end of input line. */
144 line->string[7 + count] = TO_RA;
145 line->string[10 + count] = 0;
147 raw3270_buffer_address(tp->view.dev, line->string+count+8, off);
148 line->len = 11 + count;
150 line->len = 7 + count;
161 struct string *line;
164 line = alloc_string(&tp->freemem,
166 tp->prompt = line;
168 /* Copy blueprint to status line */
169 memcpy(line->string, blueprint, sizeof(blueprint));
170 line->len = sizeof(blueprint);
173 raw3270_buffer_address(tp->view.dev, line->string + 1, offset);
175 raw3270_buffer_address(tp->view.dev, line->string + 8, offset);
182 * The status line is the last line of the screen. It shows the string
203 struct string *line;
206 line = alloc_string(&tp->freemem,sizeof(blueprint));
207 tp->status = line;
208 /* Copy blueprint to status line */
209 memcpy(line->string, blueprint, sizeof(blueprint));
212 raw3270_buffer_address(tp->view.dev, line->string + 1, offset);
220 tty3270_update_string(struct tty3270 *tp, struct string *line, int nr)
224 raw3270_buffer_address(tp->view.dev, line->string + 1,
226 cp = line->string + line->len - 4;
239 int line, nr_up;
247 line = tp->view.rows - 3;
254 tty3270_update_string(tp, s, line);
256 if (--line < 0)
295 * Add an empty line to the list.
370 * Update status line.
378 * Write input line.
395 * of this line.
527 * Pass input line to tty.
540 * Two AID keys are special: For 0x7d (enter) the input line
582 xchg(&tp->read, rrq);
598 * Issue a read request. Call with device lock.
606 rrq = xchg(&tp->read, 0);
614 /* Issue the read modified request. */
621 xchg(&tp->read, rrq);
651 /* Handle ATTN. Schedule tasklet to read aid. */
697 tp->read = raw3270_request_alloc(0);
698 if (IS_ERR(tp->read))
711 raw3270_request_free(tp->read);
735 raw3270_request_free(tp->read);
883 (unsigned long) tp->read);
909 /* Create blank line for every line in the tty output area. */
958 struct tty3270_line *line;
961 line = tp->screen + tp->cy;
962 if (line->len <= tp->cx) {
963 while (line->len < tp->cx) {
964 cell = line->cells + line->len;
968 line->len++;
970 line->len++;
972 cell = line->cells + tp->cx;
984 struct tty3270_line *line;
994 line = tp->screen + line_nr;
995 flen += line->len;
998 for (i = 0, cell = line->cells; i < line->len; i++, cell++) {
1012 if (line->len < tp->view.cols)
1015 /* Find the line in the list. */
1021 * Check if the line needs to get reallocated.
1042 for (i = 0, cell = line->cells; i < line->len; i++, cell++) {
1067 if (line->len < tp->view.cols) {
1077 /* Add line to update list. */
1095 * Do line feed.
1108 /* Last line just filled up. Add new, blank line. */
1133 struct tty3270_line *line;
1136 line = tp->screen + tp->cy;
1137 while (line->len < tp->cx) {
1138 line->cells[line->len].character = tp->view.ascebc[' '];
1139 line->cells[line->len].highlight = TAX_RESET;
1140 line->cells[line->len].f_color = TAC_RESET;
1141 line->len++;
1145 k = min_t(int, line->len - tp->cx, tp->view.cols - tp->cx - n);
1147 line->cells[tp->cx + n + k] = line->cells[tp->cx + k];
1148 line->len += n;
1149 if (line->len > tp->view.cols)
1150 line->len = tp->view.cols;
1152 line->cells[tp->cx + n].character = tp->view.ascebc[' '];
1153 line->cells[tp->cx + n].highlight = tp->highlight;
1154 line->cells[tp->cx + n].f_color = tp->f_color;
1164 struct tty3270_line *line;
1167 line = tp->screen + tp->cy;
1168 if (line->len <= tp->cx)
1170 if (line->len - tp->cx <= n) {
1171 line->len = tp->cx;
1174 for (i = tp->cx; i + n < line->len; i++)
1175 line->cells[i] = line->cells[i + n];
1176 line->len -= n;
1185 struct tty3270_line *line;
1188 line = tp->screen + tp->cy;
1189 while (line->len > tp->cx && n-- > 0) {
1190 cell = line->cells + tp->cx++;
1200 * Erase line, 3 different cases:
1201 * Esc [ 0 K Erase from current position to end of line inclusive
1202 * Esc [ 1 K Erase from beginning of line to current position inclusive
1203 * Esc [ 2 K Erase entire line (without moving cursor)
1208 struct tty3270_line *line;
1212 line = tp->screen + tp->cy;
1214 line->len = tp->cx;
1217 cell = line->cells + i;
1222 if (line->len <= tp->cx)
1223 line->len = tp->cx + 1;
1225 line->len = 0;
1461 case 'K': /* Erase line. */
1548 /* Convert current line to 3270 data fragment. */