Home | History | Annotate | Download | only in scsipi

Lines Matching refs:sio

107 	ss->sio.scan_scanner_type = 0;
113 ss->sio.scan_scanner_type = MUSTEK_06000CX;
118 ss->sio.scan_scanner_type = MUSTEK_12000CX;
124 ss->sio.scan_scanner_type));
133 ss->sio.scan_width = 1200;
134 ss->sio.scan_height = 1200;
135 ss->sio.scan_x_resolution = 99;
136 ss->sio.scan_y_resolution = 99;
137 ss->sio.scan_x_origin = 0;
138 ss->sio.scan_y_origin = 0;
139 ss->sio.scan_brightness = 100;
140 ss->sio.scan_contrast = 100;
141 ss->sio.scan_quality = 100;
142 ss->sio.scan_image_mode = SIM_GRAYSCALE;
159 mustek_set_params(struct ss_softc *ss, struct scan_io *sio)
173 sio->scan_x_origin -= sio->scan_x_origin % 150;
174 sio->scan_y_origin -= sio->scan_y_origin % 150;
175 sio->scan_width -= sio->scan_width % 150;
176 sio->scan_height -= sio->scan_height % 150;
178 if (sio->scan_width == 0 ||
179 sio->scan_x_origin + sio->scan_width > 10200 ||
180 sio->scan_height == 0 ||
181 sio->scan_y_origin + sio->scan_height > 16800)
193 sio->scan_x_resolution -= sio->scan_x_resolution <= 300 ?
194 sio->scan_x_resolution % 3 : sio->scan_x_resolution % 30;
195 sio->scan_y_resolution -= sio->scan_y_resolution <= 300 ?
196 sio->scan_y_resolution % 3 : sio->scan_y_resolution % 30;
197 if (sio->scan_x_resolution < 3 || sio->scan_x_resolution > 600 ||
198 sio->scan_x_resolution != sio->scan_y_resolution)
202 sio->scan_brightness -= (sio->scan_brightness - 64) % 3;
203 if (sio->scan_brightness < 64 || sio->scan_brightness > 136)
207 sio->scan_contrast -= (sio->scan_contrast - 16) % 7;
208 if (sio->scan_contrast < 16 || sio->scan_contrast > 184)
216 sio->scan_quality -= sio->scan_quality % 20;
217 if (sio->scan_quality < 20 || sio->scan_quality > 100)
220 switch (sio->scan_image_mode) {
233 sio->scan_scanner_type = ss->sio.scan_scanner_type;
234 memcpy(&ss->sio, sio, sizeof(struct scan_io));
258 ((ss->sio.scan_pixels_per_line * ss->sio.scan_bits_per_pixel) / 8);
293 pixel_tlx = ss->sio.scan_x_origin / 150;
294 pixel_tly = ss->sio.scan_y_origin / 150;
295 pixel_brx = pixel_tlx + ss->sio.scan_width / 150;
296 pixel_bry = pixel_tly + ss->sio.scan_height / 150;
298 pixel_tlx = (ss->sio.scan_x_origin * ss->sio.scan_x_resolution) / 1200;
299 pixel_tly = (ss->sio.scan_y_origin * ss->sio.scan_y_resolution) / 1200;
301 (ss->sio.scan_width * ss->sio.scan_x_resolution) / 1200;
303 (ss->sio.scan_height * ss->sio.scan_y_resolution) / 1200;
333 if (ss->sio.scan_x_resolution <= 300)
334 mode_data.resolution = ss->sio.scan_x_resolution / 3;
341 ((ss->sio.scan_x_resolution - 1) % 100) + 1;
343 mode_data.brightness = (ss->sio.scan_brightness - 64) / 3;
344 mode_data.contrast = (ss->sio.scan_contrast - 16) / 7;
346 mode_data.velocity = ss->sio.scan_quality / 20 - 1;
350 paperlength = 14 * ss->sio.scan_y_resolution; /* 14" */
368 if (ss->sio.scan_x_resolution <= 300)
372 switch (ss->sio.scan_image_mode) {
421 if (ss->sio.scan_window_size != 0) {
463 ((ss->sio.scan_pixels_per_line * ss->sio.scan_bits_per_pixel) / 8);
492 ss->sio.scan_lines -= lines_to_read;
494 if (ss->sio.scan_lines < 0)
495 ss->sio.scan_lines = 0;
497 ss->sio.scan_window_size -= bp->b_bcount;
499 if (ss->sio.scan_window_size < 0)
500 ss->sio.scan_window_size = 0;
541 if (lines != ss->sio.scan_lines) {
543 lines, ss->sio.scan_lines);
546 if (bytes_per_line * lines != ss->sio.scan_window_size) {
548 bytes_per_line * lines, ss->sio.scan_window_size);
554 (ss->sio.scan_pixels_per_line * ss->sio.scan_bits_per_pixel)
555 / 8, ss->sio.scan_lines));
557 ss->sio.scan_window_size));
575 switch (ss->sio.scan_image_mode) {
578 ss->sio.scan_bits_per_pixel = 1;
584 ss->sio.scan_bits_per_pixel = 8;
592 ss->sio.scan_pixels_per_line =
593 (ss->sio.scan_width * ss->sio.scan_x_resolution) / 1200;
594 if (ss->sio.scan_bits_per_pixel == 1)
596 ss->sio.scan_pixels_per_line =
597 (ss->sio.scan_pixels_per_line + 15) & 0xfffffff0;
599 ss->sio.scan_pixels_per_line =
600 (ss->sio.scan_pixels_per_line + 1) & 0xfffffffe;
602 ss->sio.scan_lines =
603 (ss->sio.scan_height * ss->sio.scan_y_resolution) / 1200;
604 ss->sio.scan_window_size = ss->sio.scan_lines *
605 ((ss->sio.scan_pixels_per_line * ss->sio.scan_bits_per_pixel) / 8);