Laptops :: How to install CPU Freq Driver



I tried again without using "make mrproper" after applying the cpufreq patch and before "make oldconfig" - nothing much changed. The .config file is copied into /usr/src by loading kernelsources.dsl - all the cpufreq patch appears to do is add some cpufreq specific options to this version of .config so I am assuming that this is OK as far as DSL is concerned.

After "make dep", "make bzImage" produces the cpufreq modules but I note that it does not create a boot image file in /usr/src/linux/arch/i386/boot/

I guess I am missing a basic understanding of how to modify the USB memory stick version of DSL following applying a patch to the 2.4.26 kernel sources and recompiling - either:

1. I have not recompiled in the appropriate fashion
or
2. I've done what is required but don't understand what to do next in order to end up with a suitably modified KNOPPIX file

Either way, I'm about ready to give up on this :D

After a break using DSL-N which contains the cpufreq drivers built-in, I thought I'd re-start trying to make this work in DSL - I've made some progress but seem to be missing a vital step.

Any help would be very welcome...

I've found I can create the cpufreq modules but there seems to be some modules that are compiled into the kernel - /lib/modules/2.4.26/kernel/drivers/cpufreq/* and some modules that are compiled as loadable modules - /lib/modules/2.4.26/kernel/arch/i386/kernel/* and I don't have a choice as to how some of the modules are compiled.

If I copy the two sets of modules into DSL after re-booting, I cannot load the modules.

My problem is that I cannot figure out if this is:

1. Because I need to use a recompiled DSL?
2. Because I did not copy a file(s) that tells DSL how the modules should be used?
3. Because I made a mistake with the kernel sources set-up - the .config file maybe?

Details below

root@box:~# mkdir /usr/src
root@box:~# chown dsl /usr/src
root@box:~# cp /mnt/hda5/Download/Linux/linux-2.4.26.tar.gz /usr/src/
root@box:~# cd /usr/src
root@box:/usr/src# tar -xzvf linux-2.4.26.tar.gz -C /usr/src
root@box:/usr/src# rm linux-2.4.26.tar.gz

[load gcc1.dsl, gcc-2.95.dsl, gnu-utils.dsl, kernel-source.dsl, linux-kernel-headers.dsl]

root@box:/usr/src# cp /mnt/hda5/Download/Linux/patch_2.5.4-11_i386.deb /usr/src/
root@box:/usr/src# dpkg -i patch_2.5.4-11_i386.deb
root@box:/usr/src# patch -p1 -d linux-2.4.26 < knoppix-kernel.patch
root@box:/usr/src# cp /mnt/hda5/Download/Linux/cpufreq-LINUX_2_4-20040813.tar.gz /usr/src/
root@box:/usr/src# tar -xzvf cpufreq-LINUX_2_4-20040813.tar.gz -C /usr/src/
root@box:/usr/src# cd /usr/src/cpufreq
root@box:/usr/src/cpufreq# ./patchin.sh /usr/src/linux-2.4.26
root@box:/usr/src/cpufreq#  cd /usr/src/linux-2.4.26
root@box:/usr/src/linux-2.4.26# make mrproper
root@box:/usr/src/linux-2.4.26# make oldconfig
*
* CPU Frequency scaling
*
CPU Frequency scaling (CONFIG_CPU_FREQ) [N/y/?] (NEW) y
CPU frequency table helpers (CONFIG_CPU_FREQ_TABLE) [N/y/?] (NEW) y
*
* CPUFreq governors
*
Support for governing from userspace (CONFIG_CPU_FREQ_GOV_USERSPACE) [N/y/?] (NEW) y
*
* CPUFreq processor drivers
*
AMD Mobile K6-2/K6-3 PowerNow! (CONFIG_X86_POWERNOW_K6) [N/y/m/?] (NEW) m
AMD Mobile Athlon/Duron K7 PowerNow! (CONFIG_X86_POWERNOW_K7) [N/y/m/?] (NEW) m
AMD Opteron/Athlon64 PowerNow! (CONFIG_X86_POWERNOW_K8) [N/y/m/?] (NEW) m
VIA Cyrix III Longhaul (CONFIG_X86_LONGHAUL) [N/y/m/?] (NEW) m
Intel Speedstep (PIIX4) (CONFIG_X86_SPEEDSTEP_PIIX4) [N/y/m/?] (NEW) m
Intel SpeedStep on 440BX/ZX/MX chipsets (SMI interface) (CONFIG_X86_SPEEDSTEP_SMI) [N/y/m/?] (NEW) m
Intel Speedstep (ICH) (CONFIG_X86_SPEEDSTEP_ICH) [N/y/m/?] (NEW) m
Intel Pentium-M Enhanced SpeedStep (CONFIG_X86_SPEEDSTEP_CENTRINO) [N/y/m/?] (NEW) m
Intel Pentium 4 clock modulation (CONFIG_X86_P4_CLOCKMOD) [N/y/m/?] (NEW) m
Transmeta LongRun (CONFIG_X86_LONGRUN) [N/y/m/?] (NEW) m
Cyrix MediaGX/NatSemi Geode Suspend Modulation (CONFIG_X86_GX_SUSPMOD) [N/y/m/?] (NEW) m
...
root@box:/usr/src/linux-2.4.26# make dep
root@box:/usr/src/linux-2.4.26# make modules
root@box:/usr/src/linux-2.4.26# make modules_install

[reboot, copy cpufreq modules created above into DSL]

root@box:/usr/src/linux-2.4.26# modprobe speedstep-centrino
modprobe: Can't locate module speedstep-centrino
root@box:/usr/src/linux-2.4.26# insmod speedstep-centrino
Using /lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_notify_transition_Rsmp_974516e6
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_unregister_driver_Rsmp_295f405a
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_register_driver_Rsmp_89a26a58
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_frequency_table_target_Rsmp_da89206f
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_frequency_table_verify_Rsmp_5870cb98
/lib/modules/2.4.26/kernel/arch/i386/kernel/speedstep-centrino.o: unresolved symbol cpufreq_frequency_table_cpuinfo_Rsmp_e8145e59
root@box:/usr/src/linux-2.4.26#[CODE]

Since you changed the kernel config, I'd suggest for you to also be using the modified version of the new compiled kernel.
Thanks for the suggestion

Since I'm out of my depth here, do you mean:

1. Use a subset of the (large) linux-2.4.26 kernel sources I worked on and make a new DSL CD? What subset do I use?

or

2. Copy the files that have changed during recompiling the kernel and restore them after re-booting the original DSL?

It shouldn't matter which one you use.  Using the kernel.org's 2.4.26 sources then applying the knoppix patch will have the same result as loading the mydsl extension.

You should be able to copy the new modules over and boot from the newly recompiled kernel.

Next Page...
original here.