Compiling SCSI controller PCI card for Precise 571 (Solved)

For drivers and kernel modules.
Post Reply
Message
Author
User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

Compiling SCSI controller PCI card for Precise 571 (Solved)

#1 Post by boxR »

I use a SCSI scanner drived by a PCI Acard AEC6710D
I can not access it with full install Puppy Precise 571 kernel 3.9.11

PupScan said :
DESCRIPTION: SCSI storage controller: Artop Electronic Corp AEC6712D SCSI ( ... but it's written AEC6710D on the card )
VENDOR: 1191 DEVICE: 8040

tempestuous helped me to solve this for lucid 528 but the driver don't work with precise.

I will greatly appreciate any help.
Last edited by boxR on Wed 05 Mar 2014, 15:42, edited 1 time in total.

User avatar
ardvark
Posts: 1448
Joined: Tue 02 Jul 2013, 03:43
Location: USA

#2 Post by ardvark »

Hi...

Well, from looking at kernels of other distributions, the driver for your device is available for 3.9.11. However, I did notice here that the "modern" version of Precise 5.7.1 left out a lot of the "true-SCSI drivers," which your device may fall under.

The only two suggestions I personally can think of with respect to Puppy, is to try the "retro" version that has the SCSI drivers (.iso available here) or reinstall Lucid 5.2.8.

Tempestuous may have a better solution, though. :wink:

Regards...

User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

#3 Post by boxR »

ardvark wrote:try the "retro" version that has the SCSI drivers (.iso available here)
5.7.1 retro → no scsi driver for my scanner
ardvark wrote:or reinstall Lucid 5.2.8
I still have lucid 5.2.8 (dual boot) but I want to migrate to 5.7.1
ardvark wrote:Tempestuous may have a better solution, though. :wink:
I hope so.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#4 Post by tempestuous »

You need to find someone with a development environment set up for Precise 571, and ask them to enable and compile the atp870u driver for you. In the kernel configuration menu, this is found at -
Device Drivers > SCSI device support > SCSI low-level drivers > ACARD SCSI support

User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

#5 Post by boxR »

Thanks tempestuous.

Maybe I've to wait for awhile.
So, I'll try to compile it myself... but I'm a newbie.

I've dowloaded devx_precise_5.7.1.sfs

I've dowloaded Kconfig and atp870u.c files here : http://cateee.net/lkddb/web-lkddb/SCSI_ACARD.html

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#6 Post by tempestuous »

OK, if you want to learn how to compile a kernel, that's great. Start by reading this -
http://www.puppylinux.com/development/compilekernel.htm
But you need more that just the devx, you also need the Precise 571 kernel source.
boxR wrote:I've dowloaded Kconfig and atp870u.c files here : http://cateee.net/lkddb/web-lkddb/SCSI_ACARD.html
NO. Don't do that. The atp870u module is already contained in the standard kernel source. You just need to enable it ... by following the instruction in my previous post.

User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

#7 Post by boxR »

I tried that :

- made a dev frugal install with devx_precise_5.7.1.sfs
- dowloaded kernel_src-3.9.11-patched.sfs
- copied it to /
- urxvt

Code: Select all

# cd /usr/src/linux-3.9.11
# make clean
# make mrproper
# make menuconfig
Device Drivers > SCSI device support > SCSI low-level drivers > ACARD SCSI support
# make bzImage
- renamed /lib/modules/3.9.11
- urxvt

Code: Select all

# make modules
# make modules_install
- then comes /lib/modules/3.9.11/kernel/drivers/scsi/atp870u.ko :)

- copied it to a fresh 5.7.1 install
- urxvt

Code: Select all

# depmod-FULL
- made script /root/Startup/scan-prep

Code: Select all

#!/bin/sh
modprobe sg
- reboot
- urxvt

Code: Select all

# modprobe --list | grep scsi
kernel/drivers/scsi/raid_class.ko
kernel/drivers/scsi/atp870u.ko
kernel/drivers/scsi/ppa.ko
kernel/drivers/scsi/imm.ko
kernel/drivers/scsi/sg.ko
kernel/drivers/message/i2o/i2o_scsi.ko
# scanimage -L
No scanners were identified. If you were expecting something different,
check that the scanner is plugged in, turned on and detected by the
sane-find-scanner tool (if appropriate). Please read the documentation
which came with this software (README, FAQ, manpages).
No way to make it working...

User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

#8 Post by boxR »

I've compiled the sg module too and copied it to fresh install.

Now :

Code: Select all

# modprobe sg
FATAL: Error inserting sg (/lib/modules/3.9.11/kernel/drivers/scsi/sg.ko): Invalid module format
# modprobe atp870u
FATAL: Error inserting atp870u (/lib/modules/3.9.11/kernel/drivers/scsi/atp870u.ko): Invalid module format
Any idea?

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#9 Post by tempestuous »

boxR wrote:

Code: Select all

# modprobe atp870u
FATAL: Error inserting atp870u (/lib/modules/3.9.11/kernel/drivers/scsi/atp870u.ko): Invalid module format
I'm afraid your new kernel (and associated kernel modules) is incompatible with the Precise 571 kernel ...
so you will need to do the whole thing again.

Here's an important piece of information - the "make menuconfig" process references the kernel configuration file; /usr/src/linux-<kernelversion>/.config
This kernel configuration file is absolutely critical, and it must be exactly the same one that was used for the kernel you're trying to match. Usually the kernel source that is provided for official Puppies is correct and ready to go with the right config file ... but apparently not so (sadly) in this case. Here's what to do:

1. start again, with a fresh install of Precise 571, and fresh kernel sources (don't re-use your original installation).
2. the correct kernel configuration should be found at /etc/modules/DOTconfig-k3.9.11-blah-blah
Copy this over to /usr/src/linux-3.9.11/
and rename it ".config" (notice the ".")
3. The "make clean" and "make mrproper" steps are not really important, since the Puppy kernel sources shouldn't require these steps. Just go ahead and do "make menuconfig"
4. enable the ACARD SCSI driver, making sure it's enabled as a module - marked as "m", not built-in to the kernel - marked as "*".
Save the changes as you exit.
5. make bzImage
6. make modules
7. make modules_install

Now your newly created modules should be compatible with the Precise 571 kernel.

User avatar
boxR
Posts: 338
Joined: Sat 13 Aug 2011, 21:58
Location: France

#10 Post by boxR »

YES !!!

It works fine !!
Thanks for your patience, tempestuous, merci beaucoup :D
Attachments
atp870u-k3.9.11.pet
Acard SCSI driver for puppy precise 571
(27.88 KiB) Downloaded 545 times

User avatar
ardvark
Posts: 1448
Joined: Tue 02 Jul 2013, 03:43
Location: USA

#11 Post by ardvark »

boxR wrote:It works fine !!
As the British would say: Good show! That's not the easiest thing to do and it's something that I haven't even tried. Thank you also for including it as a .pet file for someone else. :)

Regards...

Post Reply