Build a custom kernel

Salve

il problema che vi pongo è il seguente:

Devo modificare i sorgenti del kernel che sto utilizzando, al fine di poter installare
i driver del touchscreen eGalax.

Alcune informazioni utili:
Sistema: FC17
Kernel in uso: kernel 3.9.8-100
Arch: x86_64

Repository da cui ho prelevato i sorgenti:
http://kojipkgs.fedoraproject.org/packages/kernel/3.9.8/100.fc17/src/kernel-3.9.8-100.fc17.src.rpm

Guida di riferimento per creare una versione ad hoc con la patch:
http://fedoraproject.org/wiki/Building_a_custom_kernel

Guida per installare i driver di eGalax (con info su dove modificare il codice sorgente del kernel):
http://home.eeti.com.tw/LinuxDriverDownload.html

Problema riscontrato:
con questa configurazione, ovvero FC17 + kernel 3.9.8-100
sono riuscito a generare i pacchetti rpm col seguente comando:

rpmbuild -bb --with baseonly --without debuginfo --target=uname -m kernel.spec

Il problema è che per installare il kernel, più il kernel-devel (gli altri non mi interessano),
devo forzare l’installazione con l’opzione --force, altrimenti non mi vengono installati perché
sto già utilizzando la stessa versione del kernel, ma senza alcuna patch.

Quando riavvio noto questi malfunzionamenti:
con entrambe i kernel (con e senza patch), non rilevo più il device eGalax
eseguendo cat /proc/bus/input/devices, come indicato dalla guida di eGalax.
Se invece rimuovo il kernel con la patch, allora torno a rilevare il touchscreen
col kernel originale (ma ovviamente sono al punto di partenza, ovvero senza touchscreen funzionante).

A questo punto, penso che sia possibile applicare un numero a piacere di patch,
alla stessa versione del kernel che sto utilizzando, ovvero se utilizzo un
kernel 3.9.8-100, posso installare un’altra versione kernel 3.9.8-100 con patch?

Se qualcuno può darmi qualche indicazione su dove sbaglio.

Forse la soluzione è molto più semplice: segui queste due guide ( https://ask.fedoraproject.org/question/8861/how-to-make-elo-touchscreen-working-for-fedora-14-fedora-15-16-17/ ; http://who-t.blogspot.com.au/2012/07/elographics-touchscreen-setup.html ). Dovrebbero aiutarti…

Io credo che tu debba fare il boot con un vecchio kernel (diciamo il penultimo), rimuovere con yum quello più aggiornato, e poi installare quello con la patch.

Si questa opzione l’avevo valutata, ma la tengo come ultima spiaggia.
In questo we guardo bene anche la soluzione che mi è stata proposta dall’utente 31gj11j4dj.

Volevo avvisare tutti che sono riuscito a risolvere il mio problema
e nel modo più semplice possibile, ovvero senza ricompilare nessun kernel!

Per far funzionare il touchscreen eGalax, col supporto per simulare il tasto destro del mouse,
vi basta installare xinput_calibrator e avviarlo per calibrare il monitor; la simulazione
del tasto destro si risolve specificando alcuni parameti del driver evdev!

Al termine vi verranno restituiti i valori di calibrazione da aggiungere al file xorg.conf (segue esempio):

Section "InputClass"
    Identifier    "calibration"
    MatchProduct    "eGalax Inc. USB TouchController"
    Option    "Calibration"    "1784 111 131 1821"
    Option    "EmulateThirdButton" "1"
    Option    "EmulateThirdButtonTimeout" "750"
    Option    "EmulateThirdButtonMoveThreshold" "30"
EndSection

Grazie per essere tornato su questo argomento ed avere inserito la tua soluzione, perché potrebbe essere d’aiuto ad altri :slight_smile: