Page 1 of 1

How to install tp_smapi kernel module?

Posted: Mon 11 Mar 2013, 18:04
by Neil
I want to be able to adjust battery charge thresholds on my ThinkPads that run Puppy.

Can someone help me with step-by-step instructions on how to get tp_smapi working in Puppy Linux?

Thanks!

Posted: Mon 11 Mar 2013, 18:22
by rcrsn51
What Puppy version are you using?

Posted: Mon 11 Mar 2013, 19:41
by Neil
Still on 5.2.8 frugal install.

Posted: Tue 12 Mar 2013, 00:54
by Karl Godt
# echo $PWD
/mnt/sdb6/lib/modules/2.6.33.2/kernel

find . -iname "tp_*"
gives nothing.

Assuming you have the source of that driver, you would need to fetch the kernel_source.sfs for that Lupu and compile the driver.

No one is angry if you would attach the tp_ source or point to a website to fetch it.

Posted: Tue 12 Mar 2013, 01:12
by Neil
Thanks for the reply, Karl. Are you telling me the only way I can get it working is to compile the kernel modules from source? If so, that is a project I will have to put off for quite some time.

Here is a link to more info on the module, and it's source code.
http://www.thinkwiki.org/wiki/Tp_smapi

Posted: Tue 12 Mar 2013, 01:46
by Karl Godt
Unfortunately the kernel source has to be there plus the patch level plus the .config kernel configuration file. The .config in Puppy can be found in /etc/modules directory renamed as DOTconfig* .

http://bkhome.org/sources should have kernelsource.sfs, probably also the nluug.nl/os/Linux/distr/puppylinux/ mirror of ibiblio .

Username and pwd finds here and there on the forum.

Posted: Tue 12 Mar 2013, 02:01
by Neil
Makes me wonder if there are any ThinkPads users out there who have already built a Puppy derivative that has the ThinkPad specific features already built in.


How about it? Anyone already built a ThinkPad puppy?

Posted: Tue 12 Mar 2013, 02:30
by Karl Godt
The github link from the wiki states kernel 2.6.16 ...

Must be an old Puppy like 3.0.1 that uses such kernel.

With such there is lesser chance to add newer hardware like printers and usb-modems.

Good Luck !

Posted: Tue 12 Mar 2013, 17:15
by Neil
Where can I get the needed guidance to compile the puppy kernel with the tp_smapi module? I've found this guide for Fedora:

Code: Select all

 Installation from source

You will need the kernel headers and makefiles corresponding to your current kernel version. On Fedora, this means # yum install kernel-devel-$(uname -r) .

    # tar xzvf tp_smapi-0.40.tgz 
    # cd tp_smapi-0.40 

Then, either compile and load the driver within the current working directory (for testing):

    # make load 

OR compile and install into the kernel's module path:

    # make install 

If you use the HDAPS driver, add HDAPS=1 to also patch the hdaps for compatibility with tp_smapi (this requires a kernel source tree matching the current kernel). Again, either load the driver within the current working directory:

    # make load HDAPS=1 

OR install into the kernel's module path:

    # make install HDAPS=1 

To prepare a stand-alone patch against the current kernel tree (including a patch against hdaps and new Kconfig entries):

    # make patch 

To delete all autogenerated files:

    # make clean 

The original kernel tree is never modified by any these commands. The /lib/modules directory is modified only by # make install. 
But i'm sure puppy is different enough that the above guide isn't going to work for me. Guess what I'm looking for is something similar to the above guide, only written specifically for puppy.