[sane-devel] plustek_pp backend doesn't like my parport scanner anymore

Vlado Plaga news@vlado-do.de
Fri, 25 Jun 2004 00:12:04 +0200


Hi!

Afer having updated my Debian "testing" distribution a few weeks ago my 
Plustek OpticPro 9636T suddenly stopped working.

So far everything had worked fine but although I tried various 
combinations of diffenrent backend versions, module parameters and even 
a self-compiled sane I did only get scans with strange colors (which is 
better than nothing but not really helpful) and a lot of debugging 
information.

The last kernel module that worked for me was from the file 
plustek-module-0_41_5.tar.gz but identified as
pt_drv : driver version 0.41-6

I still have a Debian testing system (on a hard disk that I'm not using 
anymore) where the scanner works. But I don't want to continue using 
that system without updates, because Debian's testing systems change 
over time, which makes it impossible to install new packages (because of 
dependencies). Unfortunatley the updates I already made (now on a 
different hard disk) rendered the scanner unusable...

I compiled with DEBUG=y and now I'll quote some output from syslog, but 
not everything, as it is quite long:

Jun 24 09:04:26 koala kernel: *********************************************
Jun 24 09:04:26 koala kernel: pt_drv: init_module()
Jun 24 09:04:26 koala kernel: pt_drv : driver version 0.41-6
Jun 24 09:04:26 koala kernel: ProcFsInitialize()
Jun 24 09:04:26 koala kernel: ptdrvInit(0)
Jun 24 09:04:26 koala kernel: Init settings done
Jun 24 09:04:26 koala kernel: ScanData = 0xcdd68000
Jun 24 09:04:26 koala kernel: Using fast I/O
Jun 24 09:04:26 koala kernel: Requested port at 0x378
Jun 24 09:04:26 koala kernel: Requested port (0x378) found
Jun 24 09:04:26 koala kernel: Port mode reported: (0x005f)
Jun 24 09:04:26 koala kernel: Port for device 0 registered
Jun 24 09:04:26 koala kernel: ptdrvOpen(port=0x378)
Jun 24 09:04:26 koala kernel: Try to claim the parport
Jun 24 09:04:26 koala kernel: parport-modi: SPP PS/2 EPP ECP EPP(ECP) 
PS/2(ECP)
Jun 24 09:04:26 koala kernel: Using EPP-mode
Jun 24 09:04:26 koala kernel: Trying faster mode...
Jun 24 09:04:26 koala kernel: Attempting to set EPP from ECP mode.
Jun 24 09:04:26 koala kernel: Port is set to (ECP) EPP mode.
Jun 24 09:04:26 koala kernel: Starting Scanner-Autodetection

[...]

Jun 24 09:04:26 koala kernel: ************* ASIC98001 *************
Jun 24 09:04:26 koala kernel: ModelSet9636()
Jun 24 09:04:26 koala kernel: ModelSet9360()
Jun 24 09:04:26 koala kernel: modelInitPageSettings()
Jun 24 09:04:26 koala kernel: A4 set
Jun 24 09:04:26 koala kernel: ModelSet9630() done.
Jun 24 09:04:26 koala kernel: modelInitPageSettings()
Jun 24 09:04:26 koala kernel: A4 set
Jun 24 09:04:26 koala kernel: ModelSet9636() done.
Jun 24 09:04:26 koala kernel: P9636InitAsic()
Jun 24 09:04:26 koala kernel: DacInitialize()
Jun 24 09:04:26 koala kernel: ImageInitialize()
Jun 24 09:04:26 koala kernel: IOFuncInitialize()
Jun 24 09:04:26 koala kernel: IOInitialize()
Jun 24 09:04:26 koala kernel: MotorInitialize()
Jun 24 09:04:26 koala kernel: 0x81
Jun 24 09:04:26 koala kernel: CCID = 0x00
Jun 24 09:04:26 koala kernel: P9636InitAsic() done.
Jun 24 09:04:26 koala kernel: Dataport = 0x0378
Jun 24 09:04:26 koala kernel: Ctrlport = 0x037a
Jun 24 09:04:26 koala kernel: Test 0x55
Jun 24 09:04:26 koala kernel: Test 0xAA
Jun 24 09:04:26 koala kernel: Compare data=0x7e and status=0x1e, port=0x378
Jun 24 09:04:26 koala kernel: ioP98ReadWriteTest()
Jun 24 09:04:26 koala kernel: Putting Scanner (ASIC 98001) into Idle-Mode
Jun 24 09:04:26 koala kernel: detectScannerConnection() returns 0.
Jun 24 09:04:26 koala kernel: p9636InitP98001(0)
Jun 24 09:04:26 koala kernel: bData = 0x0000, PCB-ID = 0x00
Jun 24 09:04:26 koala kernel: CCD-ID = 0x00 = _CCD_3797
Jun 24 09:04:26 koala kernel: bSetScanModeFlag = 0
Jun 24 09:04:26 koala kernel: *** setupBuffers ***
Jun 24 09:04:26 koala kernel: Driverbuf(147360 bytes) needed !
Jun 24 09:04:26 koala kernel: pColorRunTab = 0xd0a3652c - 0xd0a35fa0
Jun 24 09:04:26 koala kernel: Adjust for 98001 ASIC
Jun 24 09:04:26 koala kernel: sb2 = 0xd0a12000, sb1 = 0xd0a1cbe0, Color 
= 0xd0a2cdb0
Jun 24 09:04:26 koala kernel: Pro = 0xd0a323a0, size = 147360
Jun 24 09:04:26 koala kernel: *** DETECTION DONE, result: 0 ***


Now the failed detection:

Jun  3 23:16:10 koala kernel: *********************************************
Jun  3 23:16:10 koala kernel: pt_drv: init_module()
Jun  3 23:16:10 koala kernel: pt_drv : driver version 0.41-6
Jun  3 23:16:10 koala kernel: ProcFsInitialize()
Jun  3 23:16:10 koala kernel: ptdrvInit(0)
Jun  3 23:16:10 koala kernel: Init settings done
Jun  3 23:16:10 koala kernel: ScanData = 0xce960000
Jun  3 23:16:10 koala kernel: Using fast I/O
Jun  3 23:16:10 koala kernel: Requested port at 0x378
Jun  3 23:16:10 koala kernel: Requested port (0x378) found
Jun  3 23:16:10 koala kernel: Port mode reported: (0x0047)
Jun  3 23:16:10 koala kernel: Port for device 0 registered
Jun  3 23:16:10 koala kernel: ptdrvOpen(port=0x378)
Jun  3 23:16:10 koala kernel: Try to claim the parport
Jun  3 23:16:10 koala kernel: parport-modi: SPP PS/2 EPP EPP(ECP) PS/2(ECP)
Jun  3 23:16:10 koala kernel: Using EPP-mode
Jun  3 23:16:10 koala kernel: Starting Scanner-Autodetection

[...]

Jun  3 23:16:10 koala kernel: ************* ASIC98001 *************
Jun  3 23:16:10 koala kernel: ModelSet9636()
Jun  3 23:16:10 koala kernel: ModelSet9360()

[...just like in the successful case before...]

Jun  3 23:16:10 koala kernel: Test 0x55
Jun  3 23:16:10 koala kernel: Test 0xAA
Jun  3 23:16:10 koala kernel: Compare data=0x7f and status=0x1f, port=0x378
Jun  3 23:16:10 koala kernel: ioP98ReadWriteTest()
Jun  3 23:16:10 koala kernel: Error in memory test at pos 0 (0 != 255)
Jun  3 23:16:10 koala kernel: ioP98ReadWriteTest()
Jun  3 23:16:10 koala kernel: Error in memory test at pos 0 (0 != 255)
Jun  3 23:16:10 koala kernel: ioP98ReadWriteTest()
Jun  3 23:16:10 koala kernel: Error in memory test at pos 0 (0 != 255)
Jun  3 23:16:10 koala kernel: ioP98ReadWriteTest()
Jun  3 23:16:10 koala kernel: Error in memory test at pos 0 (0 != 255)
Jun  3 23:16:10 koala kernel: ioP98ReadWriteTest()
Jun  3 23:16:10 koala kernel: Error in memory test at pos 0 (0 != 255)
Jun  3 23:16:10 koala kernel: detectScannerConnection() returns -9020.
Jun  3 23:16:10 koala kernel: *** DETECTION DONE, result: -9020 ***

Now there already was a difference in the automatic parport mode 
selection. Detection does work when I tell the module to use the SPP 
mode (forceMode=1) - but then sane produces some pretty ugly colors.

Hopefully someone can tell me how to fix this. I would really hate 
having done all this in vain and not being able to use the scanner 
without rebooting any more.

Cheers,

Vlado