roby@rv520 ha scritto:ok allora provo a cimentarmi nella modifica del file.ko
edit: non capisco una cosa,da dove prendo questo file linux-3.0.8/drivers/platform/x86/samsung-laptop.c?
poi è indifferente la versione del kernel attuale che uso (3.2)?
grazie
Ciao
hai installato Slackware o un'altra distribuzione?
Ad ogni modo se hai il pacchetto con i sorgenti
del kernel installato (kernel-source per Slackware)
Si trova in /usr/src/linux-versione_del_kernel/drivers/platform/x86/samsung-laptop.c
se hai installato il pacchetto dei sorgenti.
Copiatelo pure in una directory della tua home.
Fai anche una copia del file (adattando il percorso alla versione
del tuo kernel) nel caso volessi ripristinare il modulo in caso
di errori (anche se com'è ora in originale il modulo non funziona, quindi
in realtà non è che serva a molto la copia)
/lib/modules/versione_del_kernel/kernel/drivers/platform/x86/samsung-laptop.ko
Poi nella stessa directory dove ti sei copiato samsung-laptop.c
mettici un Makefile con questo contenuto:
Codice: Seleziona tutto
obj-$(CONFIG_SAMSUNG_LAPTOP) += samsung-laptop.o
KDIR := /lib/modules/$(shell uname -r)/build
PWD := $(shell pwd)
default:
$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules
Fai attenzione che l'ultima riga inizi con un rientro
e non con tanti spazi altrimenti non riesci a compilare.
In pratica ho preso un pezzetto del Makefile presente
nella directory dov'era presente samsung-laptop.c
e adattato (togliendo tutto il superfluo riguardante gli
altri moduli).
Inserisci nel file samsung-laptop.c le righe che ho indicato
all'inizio del topic.
Poi compila con
Edit:tolto samsung-laptop.c dal comando make. Scusate la svista.poi copia (o sposta) il file samsung-laptop.ko
Codice: Seleziona tutto
cp samsung-laptop.ko /lib/modules/3.2.2/kernel/drivers/platform/x86/
Per provarlo al volo dai un bel