There is a thread about this problem in the Hardware Forum:
"How do I build/make custom driver into kernel? "
(Link: 'How do I build/make custom driver into kernel? - openSUSE
Forums' (
http://tinyurl.com/de248l) )
I have a Thinkpad SL300 with opensuse 11.1 and the described solution
works for me: brightness can be changed, sound buttons are working.
1) Goto 'Software.openSUSE.org' (
http://software.opensuse.org/search)
and search for "lenovo".
2) Download the source RPM packages "lenovo-sl-laptop-1-2.6.src.rpm"
and "lenovo-options-1-1.2.src.rpm"
3) Install tool "rpmbuild", gcc compiler and kernel sources if not
already done.
4) Compile each package with "rpmbuild --rebuild *.src.rpm". The
packages are now in directory /usr/src/packages/RPMS/i586.
5) Install them as root with "rpm -Uvh *.rpm"
6) Start yast and go to YaST->System->"Editor for /etc/sysconfig" and
search "MODULES_LOADED_ON_BOOT".
There you have to add "lenovo-sl-laptop". Finally reboot the
computer.
Cheers/Grüße
Fabian