[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Release Notes - kernel



Mercury Morris wrote:
Thanks for pointing out "Patching FC3 Kernel" thread.  I've made a note
of it for later reference.

My immediate goal is not as complicated as a Kernel Patch, but it's
turning out to be very very difficult.  All I want to do it update a single
module that is part of the kernel.  It's called - ati_remote.

Even though the Release Notes make the claim that you do not need
the kernel source to update a module, the Notes fail to explain that
if you want to update a module that is part of the Kernel Source,
then YOU MUST get and install the kernel's src.rpm.

That's not entirely true, If you have the source for the module, you don't need the kernel source.


So, I tried to follow the section called 'kernel' in the Release Notes,
but it is incomplete and just left me so, so confused.  I tried this process
once before last November, and ended up re-building ALL the modules
instead of just the single one to which I had applied a patch.  SO I gave
up.  Now, I am so motivated to get the ATI Remote Wonder adjusted
with a few changes to the table of Key Codes, I am asking for help both
here and in the MythTV discussion for some simple, clear step(s) that
will let me do

#make modules
#make modules_install

and have just the single element, ati_remote, recompiled
and installed so that the ATI Remote works reasonably.

The easiest way to do this is to use the "out of tree" method for building kernel modules, as described just underneath the main kernel-building section of the release notes.


If you have the module source file, ati_remote.c, you don't need the kernel source. Otherwise you can extract the ati_remote.c from the kernel source (drivers/usb/input/ati_remote.c).

Make a temporary directory and copy ati_remote.c into that directory. Make whatever changes you need to make to this file (the patch you refer to above). Then put the attached Makefile into that directory. This Makefile is just like the one mentioned in the release notes, but has an extra entry for doing the install too.

Do "make" in the temporary directory to build the module. Then, as root, do "make install" and then "depmod -a". The patched module will have been installed into /lib/modules/`uname -r`/extra/ati_remote.ko. "/sbin/modinfo ati_remote" should show that this module is the one that will be loaded when a "modprobe ati_remote" is done.

Easy!

Paul.
obj-m	:= ati_remote.o

KDIR	:= /lib/modules/$(shell uname -r)/build
PWD	:= $(shell pwd)

default:
	$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
	strip -g ati_remote.ko

install:
	$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules_install

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]