kopia lustrzana https://gitlab.com/sane-project/backends
genesys: Remove uses of sanei_genesys_set_triple()
rodzic
08c98e13b2
commit
e6dbfd64a3
|
@ -686,7 +686,7 @@ static void gl124_init_motor_regs_scan(Genesys_Device* dev,
|
|||
DBG (DBG_io2, "%s: final yres=%f, linesel=%d\n", __func__, yres, linesel);
|
||||
|
||||
lincnt=scan_lines*(linesel+1);
|
||||
sanei_genesys_set_triple(reg,REG_LINCNT,lincnt);
|
||||
reg->set24(REG_LINCNT, lincnt);
|
||||
DBG (DBG_io, "%s: lincnt=%d\n", __func__, lincnt);
|
||||
|
||||
/* compute register 02 value */
|
||||
|
@ -766,12 +766,13 @@ static void gl124_init_motor_regs_scan(Genesys_Device* dev,
|
|||
DBG (DBG_io2, "%s: acceleration distance=%d\n", __func__, dist);
|
||||
|
||||
/* get sure we don't use insane value */
|
||||
if(dist<feedl)
|
||||
feedl -= dist;
|
||||
else
|
||||
feedl = 0;
|
||||
if (dist < feedl) {
|
||||
feedl -= dist;
|
||||
} else {
|
||||
feedl = 0;
|
||||
}
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_FEEDL,feedl);
|
||||
reg->set24(REG_FEEDL, feedl);
|
||||
DBG (DBG_io, "%s: feedl=%d\n", __func__, feedl);
|
||||
|
||||
/* doesn't seem to matter that much */
|
||||
|
@ -784,10 +785,10 @@ static void gl124_init_motor_regs_scan(Genesys_Device* dev,
|
|||
&z1,
|
||||
&z2);
|
||||
|
||||
sanei_genesys_set_triple(reg, REG_Z1MOD,z1);
|
||||
reg->set24(REG_Z1MOD, z1);
|
||||
DBG(DBG_info, "%s: z1 = %d\n", __func__, z1);
|
||||
|
||||
sanei_genesys_set_triple(reg, REG_Z2MOD, z2);
|
||||
reg->set24(REG_Z2MOD, z2);
|
||||
DBG(DBG_info, "%s: z2 = %d\n", __func__, z2);
|
||||
|
||||
/* LINESEL */
|
||||
|
@ -846,7 +847,7 @@ static void gl124_setup_sensor(Genesys_Device * dev,
|
|||
}
|
||||
|
||||
|
||||
sanei_genesys_set_triple(regs,REG_SEGCNT,sensor_profile->segcnt);
|
||||
regs->set24(REG_SEGCNT, sensor_profile->segcnt);
|
||||
regs->set16(REG_TG0CNT, sensor_profile->tg0cnt);
|
||||
regs->set16(REG_EXPDMY, sensor_profile->expdummy);
|
||||
|
||||
|
@ -856,25 +857,25 @@ static void gl124_setup_sensor(Genesys_Device * dev,
|
|||
{
|
||||
exp=sensor_profile->expr;
|
||||
}
|
||||
sanei_genesys_set_triple(regs,REG_EXPR,exp);
|
||||
regs->set24(REG_EXPR, exp);
|
||||
|
||||
exp =sensor.exposure.green;
|
||||
if(exp==0)
|
||||
{
|
||||
exp=sensor_profile->expg;
|
||||
}
|
||||
sanei_genesys_set_triple(regs,REG_EXPG,exp);
|
||||
regs->set24(REG_EXPG, exp);
|
||||
|
||||
exp = sensor.exposure.blue;
|
||||
if(exp==0)
|
||||
{
|
||||
exp=sensor_profile->expb;
|
||||
}
|
||||
sanei_genesys_set_triple(regs,REG_EXPB,exp);
|
||||
regs->set24(REG_EXPB, exp);
|
||||
|
||||
sanei_genesys_set_triple(regs,REG_CK1MAP,sensor_profile->ck1map);
|
||||
sanei_genesys_set_triple(regs,REG_CK3MAP,sensor_profile->ck3map);
|
||||
sanei_genesys_set_triple(regs,REG_CK4MAP,sensor_profile->ck4map);
|
||||
regs->set24(REG_CK1MAP, sensor_profile->ck1map);
|
||||
regs->set24(REG_CK3MAP, sensor_profile->ck3map);
|
||||
regs->set24(REG_CK4MAP, sensor_profile->ck4map);
|
||||
|
||||
/* order of the sub-segments */
|
||||
dev->order=sensor_profile->order;
|
||||
|
@ -1054,9 +1055,9 @@ static void gl124_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
expmax = std::max(expmax, reg->get24(REG_EXPG));
|
||||
expmax = std::max(expmax, reg->get24(REG_EXPB));
|
||||
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPR,expmax);
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPG,expmax);
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPB,expmax);
|
||||
dev->reg.set24(REG_EXPR, expmax);
|
||||
dev->reg.set24(REG_EXPG, expmax);
|
||||
dev->reg.set24(REG_EXPB, expmax);
|
||||
}
|
||||
/* RGB weighting, REG_TRUER,G and B are to be set */
|
||||
r = sanei_genesys_get_address (reg, 0x01);
|
||||
|
@ -1074,14 +1075,14 @@ static void gl124_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
r = sanei_genesys_get_address (reg, 0x98);
|
||||
segnb = r->value & 0x0f;
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_STRPIXEL,startx/segnb);
|
||||
reg->set24(REG_STRPIXEL, startx / segnb);
|
||||
DBG (DBG_io2, "%s: strpixel used=%d\n", __func__, startx/segnb);
|
||||
segcnt = reg->get24(REG_SEGCNT);
|
||||
if(endx/segnb==segcnt)
|
||||
{
|
||||
endx=0;
|
||||
}
|
||||
sanei_genesys_set_triple(reg,REG_ENDPIXEL,endx/segnb);
|
||||
reg->set24(REG_ENDPIXEL, endx / segnb);
|
||||
DBG (DBG_io2, "%s: endpixel used=%d\n", __func__, endx/segnb);
|
||||
|
||||
/* words(16bit) before gamma, conversion to 8 bit or lineart */
|
||||
|
@ -1121,10 +1122,10 @@ static void gl124_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
dev->oe_buffer.alloc(dev->wpl);
|
||||
|
||||
/* MAXWD is expressed in 2 words unit */
|
||||
sanei_genesys_set_triple(reg,REG_MAXWD,(words_per_line));
|
||||
reg->set24(REG_MAXWD, words_per_line);
|
||||
DBG (DBG_io2, "%s: words_per_line used=%d\n", __func__, words_per_line);
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_LPERIOD,exposure_time);
|
||||
reg->set24(REG_LPERIOD, exposure_time);
|
||||
DBG (DBG_io2, "%s: exposure_time used=%d\n", __func__, exposure_time);
|
||||
|
||||
reg->set16(REG_DUMMY, sensor.dummy_pixel);
|
||||
|
@ -1829,10 +1830,9 @@ static void gl124_feed(Genesys_Device* dev, unsigned int steps, int reverse)
|
|||
|
||||
gl124_init_scan_regs(dev, sensor, &local_reg, params);
|
||||
|
||||
/* set exposure to zero */
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPR,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPG,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPB,0);
|
||||
local_reg.set24(REG_EXPR, 0);
|
||||
local_reg.set24(REG_EXPG, 0);
|
||||
local_reg.set24(REG_EXPB, 0);
|
||||
|
||||
// clear scan and feed count
|
||||
dev->write_register(REG0D, REG0D_CLRLNCNT);
|
||||
|
@ -2388,10 +2388,10 @@ static void gl124_led_calibration(Genesys_Device* dev, Genesys_Sensor& sensor,
|
|||
sanei_genesys_set_motor_power(regs, false);
|
||||
do
|
||||
{
|
||||
/* set up exposure */
|
||||
sanei_genesys_set_triple(®s,REG_EXPR,exp[0]);
|
||||
sanei_genesys_set_triple(®s,REG_EXPG,exp[1]);
|
||||
sanei_genesys_set_triple(®s,REG_EXPB,exp[2]);
|
||||
// set up exposure
|
||||
regs.set24(REG_EXPR, exp[0]);
|
||||
regs.set24(REG_EXPG, exp[1]);
|
||||
regs.set24(REG_EXPB, exp[2]);
|
||||
|
||||
// write registers and scan data
|
||||
dev->write_registers(regs);
|
||||
|
@ -2450,10 +2450,10 @@ static void gl124_led_calibration(Genesys_Device* dev, Genesys_Sensor& sensor,
|
|||
|
||||
DBG(DBG_info, "%s: acceptable exposure: %d,%d,%d\n", __func__, exp[0], exp[1], exp[2]);
|
||||
|
||||
/* set these values as final ones for scan */
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPR,exp[0]);
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPG,exp[1]);
|
||||
sanei_genesys_set_triple(&dev->reg,REG_EXPB,exp[2]);
|
||||
// set these values as final ones for scan
|
||||
dev->reg.set24(REG_EXPR, exp[0]);
|
||||
dev->reg.set24(REG_EXPG, exp[1]);
|
||||
dev->reg.set24(REG_EXPB, exp[2]);
|
||||
|
||||
/* store in this struct since it is the one used by cache calibration */
|
||||
sensor.exposure.red = exp[0];
|
||||
|
|
|
@ -728,12 +728,12 @@ static void gl646_setup_registers(Genesys_Device* dev,
|
|||
* color mode */
|
||||
if (dev->model->is_cis == SANE_TRUE)
|
||||
{
|
||||
sanei_genesys_set_triple(regs, REG_LINCNT, linecnt * 3);
|
||||
regs->set24(REG_LINCNT, linecnt * 3);
|
||||
linecnt *= params.channels;
|
||||
}
|
||||
else
|
||||
{
|
||||
sanei_genesys_set_triple(regs, REG_LINCNT, linecnt);
|
||||
regs->set24(REG_LINCNT, linecnt);
|
||||
}
|
||||
|
||||
/* scanner's x coordinates are expressed in physical DPI but they must be divided by cksel */
|
||||
|
@ -761,7 +761,7 @@ static void gl646_setup_registers(Genesys_Device* dev,
|
|||
dev->wpl = words_per_line;
|
||||
|
||||
DBG(DBG_info, "%s: wpl=%d\n", __func__, words_per_line);
|
||||
sanei_genesys_set_triple(regs, REG_MAXWD, words_per_line);
|
||||
regs->set24(REG_MAXWD, words_per_line);
|
||||
|
||||
regs->set16(REG_DPISET, sensor_mst->dpiset);
|
||||
regs->set16(REG_LPERIOD, sensor_mst->exposure);
|
||||
|
@ -888,7 +888,7 @@ static void gl646_setup_registers(Genesys_Device* dev,
|
|||
}
|
||||
|
||||
DBG(DBG_info, "%s: final move=%d\n", __func__, feedl);
|
||||
sanei_genesys_set_triple(regs, REG_FEEDL, feedl);
|
||||
regs->set24(REG_FEEDL, feedl);
|
||||
|
||||
regs->find_reg(0x65).value = motor->mtrpwm;
|
||||
|
||||
|
@ -2065,9 +2065,9 @@ static void gl646_slow_back_home(Genesys_Device* dev, SANE_Bool wait_until_home)
|
|||
setup_for_scan(dev, sensor, &dev->reg, settings, SANE_TRUE, SANE_TRUE, SANE_TRUE);
|
||||
|
||||
/* backward , no actual data scanned TODO more setup flags to avoid this register manipulations ? */
|
||||
dev->reg.find_reg(0x02).value |= REG02_MTRREV;
|
||||
dev->reg.find_reg(0x01).value &= ~REG01_SCAN;
|
||||
sanei_genesys_set_triple(&dev->reg, REG_FEEDL, 65535);
|
||||
dev->reg.find_reg(0x02).value |= REG02_MTRREV;
|
||||
dev->reg.find_reg(0x01).value &= ~REG01_SCAN;
|
||||
dev->reg.set24(REG_FEEDL, 65535);
|
||||
|
||||
// sets frontend
|
||||
gl646_set_fe(dev, sensor, AFE_SET, settings.xres);
|
||||
|
@ -2273,11 +2273,11 @@ static void gl646_init_regs_for_shading(Genesys_Device* dev, const Genesys_Senso
|
|||
/* enforce needed LINCNT, getting rid of extra lines for color reordering */
|
||||
if (dev->model->is_cis == SANE_FALSE)
|
||||
{
|
||||
sanei_genesys_set_triple(&dev->reg, REG_LINCNT, dev->calib_lines);
|
||||
dev->reg.set24(REG_LINCNT, dev->calib_lines);
|
||||
}
|
||||
else
|
||||
{
|
||||
sanei_genesys_set_triple(&dev->reg, REG_LINCNT, dev->calib_lines * 3);
|
||||
dev->reg.set24(REG_LINCNT, dev->calib_lines * 3);
|
||||
}
|
||||
|
||||
/* copy reg to calib_reg */
|
||||
|
|
|
@ -862,7 +862,7 @@ static void gl843_init_motor_regs_scan(Genesys_Device* dev,
|
|||
use_fast_fed=1;
|
||||
|
||||
lincnt=scan_lines;
|
||||
sanei_genesys_set_triple(reg,REG_LINCNT,lincnt);
|
||||
reg->set24(REG_LINCNT, lincnt);
|
||||
DBG(DBG_io, "%s: lincnt=%d\n", __func__, lincnt);
|
||||
|
||||
/* compute register 02 value */
|
||||
|
@ -946,12 +946,13 @@ static void gl843_init_motor_regs_scan(Genesys_Device* dev,
|
|||
|
||||
/* get sure when don't insane value : XXX STEF XXX in this case we should
|
||||
* fall back to single table move */
|
||||
if(dist<feedl)
|
||||
feedl -= dist;
|
||||
else
|
||||
feedl = 1;
|
||||
if (dist < feedl) {
|
||||
feedl -= dist;
|
||||
} else {
|
||||
feedl = 1;
|
||||
}
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_FEEDL,feedl);
|
||||
reg->set24(REG_FEEDL, feedl);
|
||||
DBG(DBG_io, "%s: feedl=%d\n", __func__, feedl);
|
||||
|
||||
/* doesn't seem to matter that much */
|
||||
|
@ -969,10 +970,10 @@ static void gl843_init_motor_regs_scan(Genesys_Device* dev,
|
|||
z2=0;
|
||||
}
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_Z1MOD,z1);
|
||||
reg->set24(REG_Z1MOD, z1);
|
||||
DBG(DBG_info, "%s: z1 = %d\n", __func__, z1);
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_Z2MOD,z2);
|
||||
reg->set24(REG_Z2MOD, z2);
|
||||
DBG(DBG_info, "%s: z2 = %d\n", __func__, z2);
|
||||
|
||||
r = sanei_genesys_get_address (reg, REG1E);
|
||||
|
@ -1232,10 +1233,10 @@ static void gl843_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
|
||||
/* MAXWD is expressed in 2 words unit */
|
||||
/* nousedspace = (mem_bank_range * 1024 / 256 -1 ) * 4; */
|
||||
sanei_genesys_set_triple(reg,REG_MAXWD,(words_per_line)>>1);
|
||||
reg->set24(REG_MAXWD, (words_per_line) >> 1);
|
||||
DBG(DBG_io2, "%s: words_per_line used=%d\n", __func__, words_per_line);
|
||||
|
||||
reg->set16(REG_LPERIOD,exposure/tgtime);
|
||||
reg->set16(REG_LPERIOD, exposure / tgtime);
|
||||
DBG(DBG_io2, "%s: exposure used=%d\n", __func__, exposure/tgtime);
|
||||
|
||||
r = sanei_genesys_get_address (reg, REG_DUMMY);
|
||||
|
@ -2189,7 +2190,7 @@ static void gl843_park_xpa_lamp(Genesys_Device* dev)
|
|||
local_reg = dev->reg;
|
||||
|
||||
/* set a huge feedl and reverse direction */
|
||||
sanei_genesys_set_triple(&local_reg,REG_FEEDL,0xbdcd);
|
||||
local_reg.set24(REG_FEEDL, 0xbdcd);
|
||||
|
||||
// clear scan and feed count
|
||||
dev->write_register(REG0D, REG0D_CLRLNCNT | REG0D_CLRMCNT);
|
||||
|
|
|
@ -256,9 +256,9 @@ static void gl846_setup_sensor(Genesys_Device * dev, const Genesys_Sensor& senso
|
|||
}
|
||||
regs->set16(REG_EXPB, exp);
|
||||
|
||||
sanei_genesys_set_triple(regs,REG_CK1MAP,sensor_profile->ck1map);
|
||||
sanei_genesys_set_triple(regs,REG_CK3MAP,sensor_profile->ck3map);
|
||||
sanei_genesys_set_triple(regs,REG_CK4MAP,sensor_profile->ck4map);
|
||||
regs->set24(REG_CK1MAP, sensor_profile->ck1map);
|
||||
regs->set24(REG_CK3MAP, sensor_profile->ck3map);
|
||||
regs->set24(REG_CK4MAP, sensor_profile->ck4map);
|
||||
|
||||
/* order of the sub-segments */
|
||||
dev->order=sensor_profile->order;
|
||||
|
@ -563,7 +563,7 @@ static void gl846_init_motor_regs_scan(Genesys_Device* dev,
|
|||
}
|
||||
DBG (DBG_io, "%s: use_fast_fed=%d\n", __func__, use_fast_fed);
|
||||
|
||||
sanei_genesys_set_triple(reg, REG_LINCNT, scan_lines);
|
||||
reg->set24(REG_LINCNT, scan_lines);
|
||||
DBG (DBG_io, "%s: lincnt=%d\n", __func__, scan_lines);
|
||||
|
||||
/* compute register 02 value */
|
||||
|
@ -647,12 +647,13 @@ static void gl846_init_motor_regs_scan(Genesys_Device* dev,
|
|||
DBG (DBG_io2, "%s: acceleration distance=%d\n", __func__, dist);
|
||||
|
||||
/* check for overflow */
|
||||
if(dist<feedl)
|
||||
feedl -= dist;
|
||||
else
|
||||
feedl = 0;
|
||||
if (dist < feedl) {
|
||||
feedl -= dist;
|
||||
} else {
|
||||
feedl = 0;
|
||||
}
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_FEEDL,feedl);
|
||||
reg->set24(REG_FEEDL, feedl);
|
||||
DBG (DBG_io ,"%s: feedl=%d\n",__func__,feedl);
|
||||
|
||||
r = sanei_genesys_get_address (reg, REG0C);
|
||||
|
@ -723,10 +724,10 @@ static void gl846_init_motor_regs_scan(Genesys_Device* dev,
|
|||
&z2);
|
||||
|
||||
DBG(DBG_info, "%s: z1 = %d\n", __func__, z1);
|
||||
sanei_genesys_set_triple(reg, REG60, z1 | (scan_step_type << (16+REG60S_STEPSEL)));
|
||||
reg->set24(REG60, z1 | (scan_step_type << (16 + REG60S_STEPSEL)));
|
||||
|
||||
DBG(DBG_info, "%s: z2 = %d\n", __func__, z2);
|
||||
sanei_genesys_set_triple(reg, REG63, z2 | (scan_step_type << (16+REG63S_FSTPSEL)));
|
||||
reg->set24(REG63, z2 | (scan_step_type << (16 + REG63S_FSTPSEL)));
|
||||
|
||||
r = sanei_genesys_get_address (reg, 0x1e);
|
||||
r->value &= 0xf0; /* 0 dummy lines */
|
||||
|
@ -990,7 +991,7 @@ static void gl846_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
dev->oe_buffer.alloc(dev->wpl);
|
||||
|
||||
/* MAXWD is expressed in 4 words unit */
|
||||
sanei_genesys_set_triple(reg, REG_MAXWD, (words_per_line >> 2));
|
||||
reg->set24(REG_MAXWD, (words_per_line >> 2));
|
||||
DBG (DBG_io2, "%s: words_per_line used=%d\n", __func__, words_per_line);
|
||||
|
||||
reg->set16(REG_LPERIOD, exposure_time);
|
||||
|
@ -1710,10 +1711,9 @@ static void gl846_feed(Genesys_Device* dev, unsigned int steps)
|
|||
|
||||
gl846_init_scan_regs(dev, sensor, &local_reg, params);
|
||||
|
||||
/* set exposure to zero */
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPR,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPG,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPB,0);
|
||||
local_reg.set24(REG_EXPR, 0);
|
||||
local_reg.set24(REG_EXPG, 0);
|
||||
local_reg.set24(REG_EXPB, 0);
|
||||
|
||||
// clear scan and feed count
|
||||
dev->write_register(REG0D, REG0D_CLRLNCNT);
|
||||
|
|
|
@ -251,9 +251,9 @@ static void gl847_setup_sensor(Genesys_Device * dev, const Genesys_Sensor& senso
|
|||
}
|
||||
regs->set16(REG_EXPB, exp);
|
||||
|
||||
sanei_genesys_set_triple(regs,REG_CK1MAP,sensor_profile->ck1map);
|
||||
sanei_genesys_set_triple(regs,REG_CK3MAP,sensor_profile->ck3map);
|
||||
sanei_genesys_set_triple(regs,REG_CK4MAP,sensor_profile->ck4map);
|
||||
regs->set24(REG_CK1MAP,sensor_profile->ck1map);
|
||||
regs->set24(REG_CK3MAP,sensor_profile->ck3map);
|
||||
regs->set24(REG_CK4MAP,sensor_profile->ck4map);
|
||||
|
||||
/* order of the sub-segments */
|
||||
dev->order=sensor_profile->order;
|
||||
|
@ -596,7 +596,7 @@ static void gl847_init_motor_regs_scan(Genesys_Device* dev,
|
|||
}
|
||||
DBG(DBG_io, "%s: use_fast_fed=%d\n", __func__, use_fast_fed);
|
||||
|
||||
sanei_genesys_set_triple(reg, REG_LINCNT, scan_lines);
|
||||
reg->set24(REG_LINCNT, scan_lines);
|
||||
DBG(DBG_io, "%s: lincnt=%d\n", __func__, scan_lines);
|
||||
|
||||
/* compute register 02 value */
|
||||
|
@ -680,12 +680,13 @@ static void gl847_init_motor_regs_scan(Genesys_Device* dev,
|
|||
DBG(DBG_io2, "%s: acceleration distance=%d\n", __func__, dist);
|
||||
|
||||
/* check for overflow */
|
||||
if(dist<feedl)
|
||||
feedl -= dist;
|
||||
else
|
||||
feedl = 0;
|
||||
if (dist < feedl) {
|
||||
feedl -= dist;
|
||||
} else {
|
||||
feedl = 0;
|
||||
}
|
||||
|
||||
sanei_genesys_set_triple(reg,REG_FEEDL,feedl);
|
||||
reg->set24(REG_FEEDL, feedl);
|
||||
DBG(DBG_io ,"%s: feedl=%d\n", __func__, feedl);
|
||||
|
||||
r = sanei_genesys_get_address (reg, REG0C);
|
||||
|
@ -738,10 +739,10 @@ static void gl847_init_motor_regs_scan(Genesys_Device* dev,
|
|||
&z2);
|
||||
|
||||
DBG(DBG_info, "%s: z1 = %d\n", __func__, z1);
|
||||
sanei_genesys_set_triple(reg, REG60, z1 | (scan_step_type << (16+REG60S_STEPSEL)));
|
||||
reg->set24(REG60, z1 | (scan_step_type << (16+REG60S_STEPSEL)));
|
||||
|
||||
DBG(DBG_info, "%s: z2 = %d\n", __func__, z2);
|
||||
sanei_genesys_set_triple(reg, REG63, z2 | (scan_step_type << (16+REG63S_FSTPSEL)));
|
||||
reg->set24(REG63, z2 | (scan_step_type << (16+REG63S_FSTPSEL)));
|
||||
|
||||
r = sanei_genesys_get_address (reg, 0x1e);
|
||||
r->value &= 0xf0; /* 0 dummy lines */
|
||||
|
@ -1006,7 +1007,7 @@ static void gl847_init_optical_regs_scan(Genesys_Device* dev, const Genesys_Sens
|
|||
dev->oe_buffer.alloc(dev->wpl);
|
||||
|
||||
/* MAXWD is expressed in 4 words unit */
|
||||
sanei_genesys_set_triple(reg, REG_MAXWD, (words_per_line >> 2));
|
||||
reg->set24(REG_MAXWD, (words_per_line >> 2));
|
||||
DBG(DBG_io2, "%s: words_per_line used=%d\n", __func__, words_per_line);
|
||||
|
||||
reg->set16(REG_LPERIOD, exposure_time);
|
||||
|
@ -1763,10 +1764,10 @@ static void gl847_feed(Genesys_Device* dev, unsigned int steps)
|
|||
|
||||
gl847_init_scan_regs(dev, sensor, &local_reg, params);
|
||||
|
||||
/* set exposure to zero */
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPR,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPG,0);
|
||||
sanei_genesys_set_triple(&local_reg,REG_EXPB,0);
|
||||
// set exposure to zero
|
||||
local_reg.set24(REG_EXPR,0);
|
||||
local_reg.set24(REG_EXPG,0);
|
||||
local_reg.set24(REG_EXPB,0);
|
||||
|
||||
// clear scan and feed count
|
||||
dev->write_register(REG0D, REG0D_CLRLNCNT);
|
||||
|
|
|
@ -563,11 +563,6 @@ extern void sanei_genesys_test_buffer_empty(Genesys_Device* dev, SANE_Bool* empt
|
|||
|
||||
extern void sanei_genesys_read_data_from_scanner(Genesys_Device* dev, uint8_t* data, size_t size);
|
||||
|
||||
inline void sanei_genesys_set_triple(Genesys_Register_Set* regs, uint16_t addr, uint32_t value)
|
||||
{
|
||||
regs->set24(addr, value);
|
||||
}
|
||||
|
||||
inline void sanei_genesys_set_exposure(Genesys_Register_Set& regs, const SensorExposure& exposure)
|
||||
{
|
||||
regs.set8(0x10, (exposure.red >> 8) & 0xff);
|
||||
|
|
Ładowanie…
Reference in New Issue