Lista Hardware: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
 
(87 versioni intermedie di 11 utenti non mostrate)
Riga 1: Riga 1:
__TOC__
<span style="font-size:1.235em">'''Elenco Hardware Compatibile con Linux'''</span>


Ora che avete scaricato i sorgenti della versione del kernel che avete scelto e che li avete installati in una cartella locale, � giunto il momento di compilare il codice. Il primo passo � di configurare il kernel con le opzioni appropriate; in seguito il kernel potr� essere compilato. Entrambe le operazioni sono portate a termine attraverso lo strumento standard ''make''.
Questa pagina è liberamente modificabile da parte di tutti e nasce con lo scopo di raccogliere una lista di periferiche compatibili con Debian (e con Linux, più in generale), di cui si sia avuta una diretta esperienza.


== '''Creare una Configurazione''' ==
Per ovvi motivi viene elencato tutto il possibile hardware, ma '''solo alcune categorie''' più richieste e che danno maggiori problemi agli utenti:
* Periferiche Wireless
* Internet keys
* Adattatori USB wireless
* Stampanti
* Scanner
* Schede Video
* Modem USB


La configurazione del kernel risiede in un file chiamato ''.config'' nella cartella principale dell'albero dei sorgenti del kernel. Se avete appena estratto il codice sorgente del kernel, non vi sar� alcun file ''.config'', quindi dovr� essere creato. Il file pu� essere creato da zero, creato partendo dalla "configurazione predefinita", preso da una versione funzionante del kernel, o preso da quello rilasciato da una distribuzione. Copriremo i primi due metodi adesso, gli ultimi due metodi nel [[LKN:_Personalizzare_un_Kernel|Capitolo 7]].
se desiderate ulteriori categorie, potete utilizzare la pagina di Discussione di questa guida oppure il [http://forum.debianizzati.org forum].


==='''Configurare dall'inizio'''===
Per le '''smartcard''', fare riferimento a [https://wiki.debian.org/Smartcards#Supported_Hardware questa pagina] del wiki ufficiale di Debian.
Il modo pi� spartano per configurare un kernel � usare il metodo ''make config'':
<pre>$ cd linux-2.6.17.10
  $ make config
make config
scripts/kconfig/conf arch/i386/Kconfig
*
* Linux Kernel Configuration
*
*
* Code maturity level option
*
Prompt for development and/or incomplete code/drivers (EXPERIMENTAL) [Y/n/?]
Y


*
Un invito, da parte di tutta la comunità, ad inserire il vostro dispositivo ed i relativi dettagli. 5 minuti del vostro tempo aiuteranno molte persone!
* General setup
*
Local version - append to kernel release (LOCALVERSION) []
Automatically append version information to the version string
(LOCALVERSION_AUTO) [Y/n/?] Y
...</pre>
Il programma di configurazione del kernel proceder� attraverso ogni opzione di configurazione e chieder� se la si vuole abilitare o meno. Tipicamente, le possibilit� per ogni opzione sono presentate nella forma <tt>[Y/m/n/?]</tt>. La lettera maiuscola � la scelta predefinita, e pu� essere selezionata semplicemente premendo il tasto Invio. Le quattro scelte sono:
* <tt>Y</tt>  Compilare direttamente nel kernel.
* <tt>n</tt>  Lasciare completamente al di fuori del kernel.
* <tt>m</tt>  Compilare come modulo, da caricare se necessario.
* <tt>?</tt>  Stampa un breve messaggio descrittivo e ripropone il quesito.
Il kernel contiene quasi duemila opzioni di configurazioni differenti, quindi rispondere ad una domanda su ognuna di esse richiede un notevole dispendio di tempo. Fortunatamente, vi � un modo pi� facile di configurare un kernel: basare la configurazione su di un'altra precostituita.


==='''Opzioni della Configurazione predefinita'''===
__TOC__
Ogni versione del kernel ha una configurazione "predefinita". Questa configurazione � in parte basata sulle scelte che il responsabile di quella architettura crede siano le opzioni migliori da essere usate. In alcuni casi, � la configurazione usata dal responsabile stesso sulle proprie macchine. Questo � vero per l'architettura i386, dove la configurazione predefinita corrisponde strettamente a quella che Linus Torvalds usa per la sua macchina di sviluppo principale.
 
Per creare questa configurazione predefinita, eseguite:
<pre>$ cd linux-2.6.17.10
$ make defconfig</pre>
Un'enorme quantit� di opzioni di configurazione scorrer� velocemente sullo schermo, e un file ''.config'' sar� creato e piazzato nella cartella del kernel. Il kernel � ora correttamente configurato, ma dovrebbe essere adattato alla vostra macchina per assicurarsi che funzioni correttamente.
 
==='''Modificare la configurazione'''===
Ora che abbiamo un file di configurazione di base, dovrebbe essere modificato per supportare l'hardware presente nel vostro sistema. Per ulteriori dettagli su come individuare quali opzioni siano necessarie per ottenere ci�, potete leggere il [[LKN:_Personalizzare_un_Kernel|Capitolo 7]]. Qui mostreremo come selezionare le opzioni che potreste voler cambiare.
 
Ci sono tre differenti strumenti interattivi per la configurazione del kernel: uno basato su terminale chiamato ''menuconfig'', uno grafico basato sulle GTK+ chiamato ''gconfig'', e un altro grafico basato sulle QT chiamato ''xconfig''.
 
==='''Configurazione tramite Terminale'''===
Il metodo chiamato '''menuconfig''' per configurare un kernel � un programma per terminale che d� modo di muoversi nella configurazione del kernel usando i tasti freccia della tastiera. Per avviare questa modailt� di configurazione, digitate:
<pre>$ make menuconfig</pre>
Vi apparir� una schermata molto simile a quella di figura 4-1.


[[Immagine:Menuconfig_1.png|frame|''Figura 4-1. Schermata iniziale di menuconfig'']]
{| class="wikitable" style="width:99%; text-align:center;"
|-
| colspan="7" style="background-color:#e9cbdb"|
=== <span style="color:red;">Periferiche Wireless</span> ===
|-
| colspan="7" style="text-align:left" |
==== Schede di rete ====
|-
! style="width: 39%;" | '''Modello'''
! style="width: 8%;"  | '''v/p ID'''
! style="width: 6%:" | '''Versione Debian'''
! style="width: 6%;" | '''Kernel'''
! style="width: 6%;" | '''Modulo'''
! style="width: 10%;" | '''Pacchetto/Firmware'''
! style="width: 24%;" | '''Note'''




Le istruzioni per navigare attraverso il programma, e i significati dei diversi caratteri, sono mostrati in cima allo schermo. Il resto dello schermo contiene le diverse opzioni di configurazine.
<!-- QUALCOMM/ATHEROS -->
|-
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | ATHEROS
|-
| style="text-align:left;" | Atheros Communications Inc. AR242x / AR542x Wireless Network Adapter (PCI-Express) || 168c:001c || Wheezy || 3.2 || ath5k || nessuno ||
|-
| style="text-align:left;" | Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01) || 168c:002b || Wheezy || 3.2 || ath9k || nessuno ||
|-
| style="text-align:left;" | Qualcomm Atheros AR9227 Wireless Network Adapter (rev 01) || 168c:002d || Wheezy<br />Jessie || 3.14 || ath9k || nessuno ||
|-
| style="text-align:left;" | Qualcomm Atheros AR9287 Wireless Network Adapter (PCI-Express) (rev 01) || 168c:002e || Jessie || 3.16 || ath9k || nessuno ||
|-
| style="text-align:left;" | Atheros Communications Inc. AR9485 Wireless Network Adapter (rev 01) || 168c:0032 || Wheezy || 3.2 || ath9k || nessuno ||
|-
| style="text-align:left;" | Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01) || 168c:0036 || Jessie || 3.13 || ath9k || nessuno ||
|-


La configurazione del kernel � divisa in sezioni. Ogni sezione contiene opzioni che corrispondo ad argomenti specifici. Al loro interno possono esserci sottosezioni per vari argomenti specifici. Per esempio tutti i driver per le periferiche possono essere trovati sotto l'opzione del menu principale <tt>Device Drivers ---></tt>. [[Immagine:Menuconfig_2.png|frame|''Figura 4-2. Selezione dell'opzione Device Drivers'']]
<!-- BROADCOM -->
Per aprire questo menu, premete la freccia in basso nove volte, finch� la linea <tt>Device Drivers ---></tt> non � sottolineata, come mostrato in figura 4-2.
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | BROADCOM
|-
| style="text-align:left;" | Broadcom Corporation BCM4311 802.11b/g WLAN || 14e4:4311 || Wheezy || 3.2 || b43 || firmware-b43-installer || style="text-align:left;" | Il driver "wl" (broadcom-sta) ha problemi su Acer Extensa. Leggere [http://forum.debianizzati.org/viewtopic.php?f=1&t=50159 qui].
|-
| rowspan="2" style="text-align:left;" | Broadcom Corporation BCM43142 802.11b/g/n (rev 01) || rowspan="2" | 14e4:4365 || Jessie || 3.12 || rowspan="2" | wl || rowspan="2" | broadcom-sta-dkms ||
|-
| Wheezy || 3.16 || style="text-align:left;" | [[kernel]] prelevato dai [[Il repository Backports|backports]]. Vedi anche [http://forum.debianizzati.org/viewtopic.php?f=19&t=50235 qui].
|-
| style="text-align:left;" | Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01) || 14e4:4727 || Wheezy || 3.2 || wl || broadcom-sta-dkms<br />oppure<br />firmware-brcm80211 ||
|-


Premete poi il tasto Invio. Vi porter� nel sotto-menu <tt>Device Drivers</tt> e lo mostrer� come mostrato nella figura 4-3.
<!-- INTEL -->
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | INTEL
|-
| style="text-align:left;" | Intel Corporation Centrino Wireless-N 1000 [Condor Peak] || 8086:0083 || Wheezy || 3.2 || iwlwifi || firmware-iwlwifi ||
|-
| style="text-align:left;" | Intel Corporation Wireless 7260 (rev 6b) || 8086:08b1 || Mint<br />Jessie || 3.16 || iwlwifi || firmware-iwlwifi ||
|-
| style="text-align:left;" | Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02) || 8086:4222 || Wheezy || 3.2 || iwl3945 || firmware-iwlwifi ||
|-


[[Immagine:Menuconfig_3.png|frame|''Figura 4-3. Sottomenu Device Drivers'']]
<!-- RALINK -->
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | RALINK
|-
| style="text-align:left;" | Ralink corp. RT3062 Wireless 802.11n 2T/2R || 1432:7722 || Jessie || 3.14 || rt2800pci || firmware-ralink || style="text-align:left;" | Vedere anche: [https://wiki.debian.org/it/rt2800pci rt2800pci]
|-
| style="text-align:left;" | Ralink corp. RT3090 Wireless 802.11n 1T/1R PCIe || 1814:3090 || Jessie || 3.16 || rt2800pci || firmware-ralink || style="text-align:left;" |
|-




Potete continuare a muovervi nella gerarchia dei menu allo stesso modo. Per visualizzare il sotto-menu <tt>Generic Driver Options</tt> premete Invio di nuovo, e vedrete se tre opzioni mostrate in figura 4-4.
<!--  


[[Immagine:Menuconfig_4.png|frame|''Figura 4-4. Sottomenu Generic Driver Options'']]
  *** ATTENZIONE: PARTE COMMENTATA ***
  *** tutta la sottosezione fino a "FINE PARTE COMMENTATA" ***


  *** per riferimenti a guide obsolete (madwifi) ***
  *** (forse sezione da cancellare?) ***


Le prime due opzioni hanno un simbolo <tt>[*]</tt> vicino a esse. Questo significa che quest'opzione � selezionata (perch� il simbolo <tt>*</tt> sta al centro dei due caratteri <tt>[]</tt>), e che questa � un'opzione del tipo s�-o-no. La terza opzione ha un segno <tt>< ></tt>, che mostra che questa opzione pu� essere inserita nel kernel (<tt>Y</tt>), compilata come modulo (<tt>M</tt>), o esclusa del tutto (<tt>N</tt>).
| colspan="7" style="text-align:left" |


Se l'opzione � selezionata con <tt>Y</tt>, le parentesi ad angolo conterranno un <tt>*</tt>. Se � selezionata come modulo con una <tt>M</tt>, conterranno una lettera <tt>M</tt>. Se � disabilitata con <tt>N</tt>, mostreranno solo uno spazio bianco.
==== Altro ====
|-
! style="width: 39%;" | '''Modello'''
! style="width: 8%;"  | '''v/p ID'''
! style="width: 6%:" | '''Versione Debian'''
! style="width: 6%;" | '''Kernel'''
! style="width: 6%;" | '''Modulo'''
! style="width: 10%;" | '''Pacchetto/Firmware'''
! style="width: 24%;" | '''Note'''


Cos�, se desiderate cambiare queste tre opzioni per selezionare solo driver che non necessitano di firmware esterno in tempo di compilazione, disabilitate l'opzione per impedire che il firmware sia compilato, e compilate il caricatore del firmware in spazio utente come modulo, digitando <tt>Y</tt> per la prima opzione, <tt>N</tt> per la seconda e <tt>M</tt> per la terza, rendendo la schermata come quella in figura 4-5.
|-
| style="text-align:left;" | WAG511 || || || || || || style="text-align:left;" | Richiede la compilazione e l'installazione dei driver madwifi. Vedere anche:
*[http://www.netgear.it/ Netgear]
*[[Immagine:Wiki-logo.png|20px|link=]] [[Old:Madwifi | Guida installazione driver madwifi]]
|-
| style="text-align:left;" | WG311T || 168c:0013 || || || || || style="text-align:left;" | Richiede la compilazione e l'installazione dei driver madwifi. Vedere anche:
*[http://www.netgear.it/ Netgear]
*[[Immagine:Wiki-logo.png|20px|link=]] [[Old:Madwifi | Guida installazione driver madwifi]]
|-
| style="text-align:left;" | WG511T || 0271:0012 || || || || || style="text-align:left;" | Richiede la compilazione e l'installazione dei driver madwifi. Vedere anche:
*[http://www.netgear.it/ Netgear]
*[[Immagine:Wiki-logo.png|20px|link=]] [[Old:Madwifi | Guida installazione driver madwifi]]
|-
| style="text-align:left;" | WG511U || 168c:0013 || || || || || style="text-align:left;" | Richiede la compilazione e l'installazione dei driver madwifi. Vedere anche:
*[http://www.netgear.it/ Netgear]
*[[Immagine:Wiki-logo.png|20px|link=]] [[Old:Madwifi | Guida installazione driver madwifi]]
|-
| style="text-align:left;" | WPN511 || 168c:0013 || || || || || style="text-align:left;" | Richiede la compilazione e l'installazione dei driver madwifi. Vedere anche:
*[http://www.netgear.it/ Netgear]
*[[Immagine:Wiki-logo.png|20px|link=]] [[Old:Madwifi | Guida installazione driver madwifi]]


[[Immagine:Menuconfig_5.png|frame|''Figura 4-5. Sottomenu Generic Driver Options cambiato'']]
*** FINE PARTE COMMENTATA *** -->
|}


<!-- ######### INTERNET KEYS ######### -->


Quando avete completato le vostre modifiche in questa schermata, premete il tasto Esc o la freccia destra seguita dal tasto Invio per lasciare questo sottomenu. Tutte le opzioni del kernel possono essere esplorate in questa maniera.
{| class="wikitable" style="width:99%; text-align:center;"
|-
| colspan="8" style="background-color:#e9cbdb"|


Quando avete finito di fare tutte le modifiche che desideriate apportare alla configurazione del kernel, uscite dal programma premendo il tasto Esc quando siete nel menu principale.
=== <span style="color:red;">Internet keys</span> ===
[[Immagine:Menuconfig_6.png|frame|''Figura 4-6. Salvare le opzioni del kernel'']]
|-
Vi sar� mostrata la schermata in figura 4-6, che vi chiede se desiderate salvare la vostra modificata configurazione.
! style="width: 10%;"|'''Nome'''
! style="width: 30%;" | '''Modello'''
! style="width: 8%;" | '''v/p ID'''
! style="width: 6%;" | '''Versione Debian'''
! style="width: 6%;" | '''Kernel'''
! style="width: 6%;" | '''Modulo'''
! style="width: 10%;" | '''Pacchetto/Firmware'''
! style="width: 23%;" |'''Note'''


Premete Invio per salvare la configurazione, o, se volete eliminare ogni modifica fatta, digitate la freccia destra per selezionare la voce <tt>< No ></tt> e premete Invio.
|-
| colspan="8" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | HUAWEI
|-
| style="text-align:left;" | E5220 || style="text-align:left;" | Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/Networkcard || 12d1:1506 || Wheezy<br />Jessie<br />Stretch || 3.14 || huawei_cdc_ncm || nessuno || style="text-align:left;" | Leggere anche [http://forum.debianizzati.org/viewtopic.php?f=19&t=49552 qui]
|-
| style="text-align:left;" | E5330 || style="text-align:left;" | Huawei Technologies Co. ||  || Wheezy<br />Jessie<br />Stretch || 3.14 ||  || nessuno || style="text-align:left;" | Dispositivo testato solo con connessione USB.<br />Leggere anche [http://forum.debianizzati.org/viewtopic.php?f=19&t=49552 qui]
|-
| colspan="8" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | ZTE
|-
| style="text-align:left;" |  ZTE MF65M || style="text-align:left;" | ZTE WCDMA Technologies MSM || 19d2:1405 || Wheezy<br />Jessie || 3.14 ||  || nessuno || style="text-align:left;" | Dispositivo testato solo con connessione USB.<br />Leggere anche [http://forum.debianizzati.org/viewtopic.php?f=19&t=49552 qui]
|}




<!-- ######### ADATTATORI USB WIRELESS ######### -->


==='''Metodi grafici di configurazione'''===
{| class="wikitable" style="width:99%; text-align:center;"
I metodi di configurazione del kernel ''gconfig'' e ''xconfig'' usano un programma grafico per permettervi di modificare la configurazione. I due metodi sono pressoch� identici, l'unica differenza risiedendo nei diversi strumenti grafici attraverso i quali sono scritti. ''gconfig'' � scritto usando il toolkit GTK+ e ha uno schermo diviso in due regioni, come mostrato in figura 4-7.
|-
| colspan="8" style="background-color:#e9cbdb"|


[[Immagine:Gconfig_1.png|740px|thumb|''Figura 4-7. Schermata di make gconfig'']]
=== <span style="color:red;">Adattatori USB wireless</span> ===
|-
! style="width: 10%;"|'''Nome'''
! style="width: 30%;" | '''Modello'''
! style="width: 8%;" | '''v/p ID'''
! style="width: 6%;" | '''Versione Debian'''
! style="width: 6%;" | '''Kernel'''
! style="width: 10%;" | '''Pacchetto/Firmware'''
! style="width: 23%;" |'''Note'''


|-
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | TP-LINK
|-
| style="text-align:left;" | TL-WN722N || style="text-align:left;" | Atheros Communications, Inc. AR9271 802.11n || 0cf3:9271 || Stretch || 4.2, 4.9 || firmware-atheros || 
|-
| colspan="7" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | PANDA WIRELESS
|-
| style="text-align:left;" | PAU06 || style="text-align:left;" | Ralink Technology, Corp. RT5372 Wireless Adapter 802.11n || 148f:5372 || Stretch || 4.0 || firmware-ralink ||Per l'installazione:[http://forum.debianizzati.org/viewtopic.php?f=19&t=51033]
|-
|}


Il metodo ''xconfig'' scritto usando il toolkit QT e ha uno schermo diviso in tre regioni, come in figura 4-8.


[[Immagine:Xconfig_1.png|740px|thumb|''Figura 4-8. Schermata di make xconfig'']]
<!-- ######### STAMPANTI ######### -->


{| class="wikitable" style="width:99%; text-align:center;"
|-
| colspan="4" style="background-color:#e9cbdb"|


Usate il mouse per navigare nei sottomenu e selezionare le opzioni. Per esempio, nella figura 4-8 potreste usarlo per selezionare il sottomenu <tt>Generic Driver Options</tt> del menu <tt>Device Drivers</tt>. Questo cambier� la schermata di ''xconfig'' e la far� diventare quella dell'immagine 4-9.
=== <span style="color:red;">Stampanti</span> ===
|-
! style="width: 30%; text-align:left;" | '''Modello'''
! style="width: 10%" | '''Versione Debian'''
! style="width: 10%" | '''Kernel'''
! style="width: 49%" | '''Note'''


[[Immagine:Xconfig_2.png|740px|thumb|''Figura 4-9. Generic Driver Options in make xconfig'']]
|-
| colspan="4" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | BROTHER
|-
| style="text-align:left;" | Brother HL 1112 || Jessie || 3.12 || style="text-align:left;" | Una discussione sul forum relativa a questa stampante è visibile [http://forum.debianizzati.org/viewtopic.php?f=24&t=49110 qui].
|-
| colspan="4" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | EPSON
|-
| style="text-align:left;" | Epson WF-2530 || Jessie || 3.12 || style="text-align:left;" | Funzionante con i driver forniti dal pacchetto "printer-driver-escpr". Non testato lo scanner.
|-
| style="text-align:left;" | Epson Stylus SX235W || Wheezy<br />Jessie<br />Stretch || 3.14 || style="text-align:left;" | Funzionante con i driver forniti dal pacchetto "printer-driver-escpr". Testata solo con connessione USB. Non testato lo scanner.
|-
| colspan="4" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | HP
|-
| style="text-align:left;" | HP LaserJet P1102 || Squeeze<br />Wheezy<br />Jessie || > 2.6 || style="text-align:left;" | Quasi sempre funzionante con i driver foomatic. [[Immagine:Wiki-logo.png|20px|link=]] [[Hp LaserJet P1102]]
|}


La corrispondente immagine di ''gconfig'' in figura 4-10.


[[Immagine:Gconfig_2.png|740px|thumb|''Figura 4-10. Generic Driver Options in make gconfig'']]
<!-- ######### SCANNER ######### -->


Modificare questo sottomenu per disabilitare la seconda opzione e rendere la terza opzione compilata come modulo genera le schermate apparire come nelle figure 4-11 e 4-12.
{| class="wikitable" style="width:99%; text-align:center;"
|-
| colspan="4" style="background-color:#e9cbdb"|


[[Immagine:Xconfig_3.png|740px|thumb|''Figura 4-11. Generic Driver Options in make xconfig, modificato'']]
=== <span style="color:red;">Scanner</span> ===
[[Immagine:gconfig_3.png|740px|thumb|''Figura 4-12. Generic Driver Options in make gconfig, modificato'']]
|-
Notate che nel metodo ''gconfig'' un riquadro con il segno di visto significa che l'opzione sar� compilata nel kernel, laddove una linea nel riquadro significa che l'opzione sar� compilata come modulo. Nel metodo ''xconfig'' un'opzione compilata come modulo sar� mostrata con un punto nel riquadro.
! style="width: 30%; text-align:left;" | '''Modello'''
! style="width: 10%" | '''Versione Debian'''
! style="width: 10%" | '''Kernel'''
! style="width: 49%" | '''Note'''
|-


Entrambi questi metodi vi chiedono di salvare la configurazione quando uscite dal programma, e offrono la possibilit� di scrivere quella configurazione in un altro file. Potete cos� creare molteplici, distinte configurazioni.
<!-- CANON -->
| colspan="4" style="color:#d31c43; font-weight:bold; font-size:110%; text-align:left; padding-top:1em;" | CANON
|-
| style="text-align:left;" | ... || ... || ... ||
|-


|}


=='''Compilazione del Kernel'''==
Ora che avete creato la configurazione che intendete usare, dovete compilare il kernel. Questo semplice come digitare un comando di un parola:
<pre>$ make
CHK include/linux/version.h
UPD include/linux/version.h
SYMLINK include/asm -> include/asm-i386
SPLIT include/linux/autoconf.h -> include/config/*
CC arch/i386/kernel/asm-offsets.s
GEN include/asm-i386/asm-offsets.h
CC scripts/mod/empty.o
HOSTCC scripts/mod/mk_elfconfig
MKELF scripts/mod/elfconfig.h
HOSTCC scripts/mod/file2alias.o
HOSTCC scripts/mod/modpost.o
HOSTCC scripts/mod/sumversion.o
HOSTLD scripts/mod/modpost.o
HOSTCC scripts/kallsyms
HOSTCC scripts/conmakehash
HOSTCC scripts/bin2c
CC init/main.o
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
CC init/do_mounts.o
...</pre>


Eseguire ''make'' fa s� che il sistema di compilazione del kernel usi il file di configurazione che avete selezionato per compilare un kernel e tutti i moduli necessari per supportare tale configurazione. Mentre il kernel � in compilazione, ''make'' mostra cosa sta correntemente succedendo ai singoli file, insieme a tutti gli avvertimenti ("warnings", N.d.T.) e gli errori di compilazioni.
<!-- ######### SCHEDE VIDEO ######### -->


Se la compilazione del kernel termina senza errori, avete creato con successo l'immagine di un kernel. Comunque deve essere propriamente installata prima che proviate ad avviarla. Leggete il [[LKN:_Installare_ed_Avviare_con_un_Kernel|Capitolo 5]] per sapere come fare.
{| class="wikitable" style="width:99%;"
|-
| colspan="4" style="text-align:center; background-color:#e9cbdb" |


� molto raro avere errori di compilaizone quando state compilando una versione del kernel rilasciata. Se vi capita, riportateli agli sviluppatori del kernel Linux cosicch� possano essere corretti.
=== <span style="color:red;">Schede Video</span> ===
|-
! style="width: 15%;" | '''Produttore'''
! style="width: 30%;" | '''Modello'''
! style="width: 10%;" | '''Compatibile'''
! style="width: 44%;" | '''Guide'''


nota: Versioni del kernel pi� vecchie, precedenti al rilascio 2.6 richiedevano l'ulteriore passo ''make modules'' per compilare tutti i moduli necessari. Questo non � pi� necessario.
|-
| [http://www.ati.com/ ATI]
| Mobility Radeon X1400
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Radeon Open''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Mobility Radeon X1300
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Proprietario''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Radeon X1200 series
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Proprietario''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Radeon X800
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Proprietario''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Radeon 7000/VE
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Radeon 8500<br/>Radeon 9200
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto accelerazione 3d <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://www.ati.com/ ATI]
| Radeon 9600
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Radeon Open''': Supporto completo con 3D
|-
| [http://www.ati.com/ ATI]
| Mobility Radeon 9600 M10
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto completo con 3D <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://www.ati.com/ ATI]
| Radeon X700
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto completo con 3D <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://www.ati.com/ ATI]
| Radeon HD 3850 256MB DDR3
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto completo con 3D <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://nvidia.com/ NVIDIA]
| GeForce 6200
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto senza 3D <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://nvidia.com/ NVIDIA]
| GeForce 4 MX 440
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver OpenSource''': Supporto senza 3D <br/> '''Driver Proprietari''': Supporto completo
|-
| [http://nvidia.com/ NVIDIA]
| GeForce 7600 GS
| style="text-align:center;" | [[File:Verde.png|link=]]
| '''Driver Proprietari''': Supporto completo con 3D
|}


=='''Opzioni di Compialzione avanzate'''==
Il sistema di compilazione del kernel consente di fare molte altre cose, oltre a compilare l'intero kernel e i relativi moduli. Il Capitolo 10 contiene l'intero elenco delle opzioni che il sistema di compilazione fornisce. In questa sezione discuteremo alcune di queste opzioni avanzate. Per avere una descrizione completa di come usare altre opzioni avanzate, fate riferimento alla documentazione dentro il kernel stesso, che pu essere trovata nella cartella ''Documentation/kbuild'' nei sorgenti.


==='''Velocizzare la Compilazione in Macchine Multiprocessore'''===
<!-- ######### MODEM USB ######### -->
Il sistema di compilazione del kernel lavora molto bene come operazione che pu� essere divisa in pezzi pi� piccoli e assegnati a diversi processori. Facendo questo, potete usare la piena potenza di una macchina multiprocessore e ridurre considerevolmente il tempo di compilazione del kernel.


Per compilare un kernel in modo parallelo, usate l'opzione ''-j'' del comando ''make''. � meglio dare un numero all'opzione ''-j'' che corrisoponda al doppio del numero di processori nel sistema. Quindi, per macchine con due processori, usate:
{| class="wikitable" style="width:99%;"
<pre>$ make -j4</pre>
|-
e per macchine con quattro processori, usate:
| colspan="4" style="text-align:center; background-color:#e9cbdb" |
<pre>$ make -j8</pre>
=== <span style="color:red;">Modem USB</span> ===
Se non passate un numero all'opzione ''-j'':
|-
<pre>$ make -j</pre>
! style="width: 15%;" | '''Produttore'''
il sistema di compilazione creer� un nuovo filo ("thread", N.d.T.) per ogni sottocartella nell'albero delle cartelle del kernel, che pu� facilmente rendere la vostra macchina non in grado di rispondere ai comandi, e impiegare molto pi� tempo per completare la compilazione. Per questo si raccomanda di passare sempre un valore numerico all'opzione ''-j''.
! style="width: 30%;" | '''Modello'''
! style="width: 10%;" | '''Compatibile'''
! style="width: 44%;" | '''Guide'''


==='''Compilare solo una parte del kernel'''===
|-
Quando ci si dedica allo sviluppo del kernel, a volte si desidera compilare solo una specifica sottocartella, o un singolo file dell'intero albero del kernel. Il sistema di compilazione lo consente agevolmente. Per compilare selettivamente una sottocartella, specificatela nel comando di compilazione. Per esempio, per compilare i file nella cartella '''drivers/usb/serial''', inserite: <pre>$ make drivers/usb/serial</pre>
| ''Vari''  
Usando questa sintassi, comunque, non si compiler� l'immagine finale del modulo in quella cartella. Per fare questo, potete usare l'opzione <tt>M=</tt>argomento:<pre>$ make M=drivers/usb/serial</pre>che compiler� tutti i file necessari in quella cartella e collegher� le immagini finali dei moduli.
| Modem adsl Telindus ND220 <br />Sagem Fast 800<br />
| style="text-align:center;" | [[File:Verdespento.png|link=]]
| Richiede installazione dei driver '''eagle-adsl'''
* [[Image:Home.png]]  [http://www.eagle-usb.org/ Homepage driver eagle]
|-
| ''Vari''
| [http://accessrunner.sourceforge.net/modems.shtml Modem supportati] dal progetto '''Accessrunner''' (chipset Conexant)
| style="text-align:center;" | [[File:Verdespento.png|link=]]
| Richiede installazione del firmware.
* [[Image:Home.png]]  [http://accessrunner.sourceforge.net/ Homepage driver Accessrunner]
|}


Quando si compila una singola cartella in uno dei modi mostrati, l'immagine finale del kernel non viene ricollegata. Comunque ogni cambiamento che era stato effettuato alle sottocartelle non influenzer� l'immagine finale del kernel, che probabilmente non � quello che desiderate. Eseguite alla fine un:<pre>$ make</pre> perch� il sistema di compilazione controlli tutti i file oggetto cambiati e colleghi in modo proprio l'immagine finale del kernel.
== Ottenere le informazioni per una periferica ==


Per compilare un solo specifico file nell'albero del kernel, semplicemente passatelo come parametro a ''make''. Per esempio, se desiderate compilare il modulo ''drivers/usb/serial/visor.ko'', inserite:<pre>$ make drivers/usb/serial/visor.ko</pre>
;Nome:Il nome della periferica;
Il sistema di compilazione compiler� tutti i file necessari per il modulo visor.ko, e far� il collegamento finale per creare il modulo.
;Modello:L'output del comando "<code>lspci</code>" relativo alla periferica oppure del comando <code>lsusb</code> se si tratta di una periferica connessa ad una porta USB;
;v/p ID:Vendor e Product ID con cui viene identificata la periferica, possono essere ricavati da "<code>lspci -knn</code>" o da "lsusb";
;Versione Debian:La versione di Debian su cui la periferica è installata;
;Kernel:La versione del kernel utilizzata, può essere ricavata da "<code>uname -a</code>";
;Modulo:Il modulo del kernel che si occupa delle periferica, anche questo può essere ricavato da "<code>lspci -knn</code>";
;Pacchetto Firmware:L'eventuale pacchetto contenente il [[firmware]] necessario al funzionamento della periferica;
;Note:Note aggiuntive che si reputa necessario inserire.


==='''Sorgente in un posto, Destinazione in un altro'''===
== Lettura e legenda ==
Alle volte � pi� semplice avere i sorgendi del kernel in un posto accessibile in sola lettura (come un CD-ROM, o in un sistema di controllo del codice sorgene), e collocare l'output della compilazione altrove, cos� da non alterare l'albero originale del sorgente. Il sistema di compilazione lo realizza facilmente, richiedendo il solo argomento <tt>O=</tt> per specificare dove collocare l'output della compilazione. Per esempio se i sorgenti del kernel sono in un CD-ROM montato in ''/mnt/cdrom/'' e desiderate mettere i file compilati nella vostra cartella locale, inserite:<pre>$ cd /mnt/cdrom/linux-2.6.17.11
La tabella mostra una lista di Hardware compatibile con Linux (in particolare con Debian GNU/Linux) suddiviso per categoria, produttore e, se necessario, modello.  
$ make O=~/linux/linux-2.6.17.11</pre>
Tutti i file compilati saranno creati nella cartella ''~/linux/linux-2.6.17.11''. Notate che questa opzione <tt>O=</tt> dovrebbe essere passata anche alle opzioni di configurazione della compilazione cosicch� la configurazione sia correttamente collocata nella cartella di destinazione e non in quella contenente il codice sorgente.


==='''Architetture differenti'''===
Ogni elemento contiene le seguenti informazioni:
Una caratteristica molto utile � la costruzione di un kernel in una compilazione incrociata, per permettere a una macchina pi� potente di compilare un kernel per una sistema integrato pi� piccolo, o anche solo per controllare una compilazione per un'architettura diversa per assicurare che a un cambiamento nel codice sorgente non rompa qualcosa di inaspettato. Il sistema di compilazione del kernel consente di specificare un'architettura diversa da quella della macchina corrente con il parametro <tt>ARCH=</tt>argomento. Il sistema di compilazione consente, inoltre, di specificare il compilatore che si desidera usare con il parametro <tt>CC=</tt>argomento o uno stumento per concatenare ("toolchain", N.d.T.) la compilazione incrociata con <tt>CROSS_COMPILE</tt> argomento.
; Produttore : il nome del produttore con, eventualmente, un link al sito ufficiale
; Modelli : il nome del modello con, eventualmente, il codice "produttore/prodotto" presente in lspci
; Compatibile : lo stato di compatibilità:
:: [[File:Rosso.png|link=]] non supportato
:: [[File:Arancio.png|link=]] parzialmente supportato
:: [[File:Verdespento.png|link=]] supportato ma richiede la configurazione
:: [[File:Verde.png|link=]] supportato


Per esempio, per avere la configurazione predefinita dell'architettura x86_64, si pu� inserire:<pre>$ make ARCH=x86_64 defconfig</pre>
[[Categoria: Debian e Hardware]]
Per compilare l'intero kernel con uno strumento per concatenare la compilazione situato in ''/usr/local/bin'', si pu� inserire:<pre>$ make ARCH=arm CROSS_COMPILE=/usr/local/bin/arm-linux-</pre>
� utile anche per i kernel non ottenuti con compilazione incrociata cambiare ci� il sistema di costruzione del kernel usa per il compilatore. Esempi di questo sono l'utilizzo dei programmi ''distcc'' o ''ccache'', i quali riducono notevolmente il tempo di compilazione di un kernel. Per usare il programma ''ccache'' come parte del sistema di costruzione del kerne, digitate:<pre>$ make CC="ccache gcc"</pre>.
Per usare entrambi i ''distcc'' e ''ccache'' insieme, inserite:<pre>$ make CC="ccache distcc"</pre>
[[Immagine:Example.jpg]]

Versione attuale delle 16:24, 30 nov 2019

Elenco Hardware Compatibile con Linux

Questa pagina è liberamente modificabile da parte di tutti e nasce con lo scopo di raccogliere una lista di periferiche compatibili con Debian (e con Linux, più in generale), di cui si sia avuta una diretta esperienza.

Per ovvi motivi viene elencato tutto il possibile hardware, ma solo alcune categorie più richieste e che danno maggiori problemi agli utenti:

  • Periferiche Wireless
  • Internet keys
  • Adattatori USB wireless
  • Stampanti
  • Scanner
  • Schede Video
  • Modem USB

se desiderate ulteriori categorie, potete utilizzare la pagina di Discussione di questa guida oppure il forum.

Per le smartcard, fare riferimento a questa pagina del wiki ufficiale di Debian.

Un invito, da parte di tutta la comunità, ad inserire il vostro dispositivo ed i relativi dettagli. 5 minuti del vostro tempo aiuteranno molte persone!

Periferiche Wireless

Schede di rete

Modello v/p ID Versione Debian Kernel Modulo Pacchetto/Firmware Note


ATHEROS
Atheros Communications Inc. AR242x / AR542x Wireless Network Adapter (PCI-Express) 168c:001c Wheezy 3.2 ath5k nessuno
Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01) 168c:002b Wheezy 3.2 ath9k nessuno
Qualcomm Atheros AR9227 Wireless Network Adapter (rev 01) 168c:002d Wheezy
Jessie
3.14 ath9k nessuno
Qualcomm Atheros AR9287 Wireless Network Adapter (PCI-Express) (rev 01) 168c:002e Jessie 3.16 ath9k nessuno
Atheros Communications Inc. AR9485 Wireless Network Adapter (rev 01) 168c:0032 Wheezy 3.2 ath9k nessuno
Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev 01) 168c:0036 Jessie 3.13 ath9k nessuno
BROADCOM
Broadcom Corporation BCM4311 802.11b/g WLAN 14e4:4311 Wheezy 3.2 b43 firmware-b43-installer Il driver "wl" (broadcom-sta) ha problemi su Acer Extensa. Leggere qui.
Broadcom Corporation BCM43142 802.11b/g/n (rev 01) 14e4:4365 Jessie 3.12 wl broadcom-sta-dkms
Wheezy 3.16 kernel prelevato dai backports. Vedi anche qui.
Broadcom Corporation BCM4313 802.11b/g/n Wireless LAN Controller (rev 01) 14e4:4727 Wheezy 3.2 wl broadcom-sta-dkms
oppure
firmware-brcm80211
INTEL
Intel Corporation Centrino Wireless-N 1000 [Condor Peak] 8086:0083 Wheezy 3.2 iwlwifi firmware-iwlwifi
Intel Corporation Wireless 7260 (rev 6b) 8086:08b1 Mint
Jessie
3.16 iwlwifi firmware-iwlwifi
Intel Corporation PRO/Wireless 3945ABG [Golan] Network Connection (rev 02) 8086:4222 Wheezy 3.2 iwl3945 firmware-iwlwifi
RALINK
Ralink corp. RT3062 Wireless 802.11n 2T/2R 1432:7722 Jessie 3.14 rt2800pci firmware-ralink Vedere anche: rt2800pci
Ralink corp. RT3090 Wireless 802.11n 1T/1R PCIe 1814:3090 Jessie 3.16 rt2800pci firmware-ralink


Internet keys

Nome Modello v/p ID Versione Debian Kernel Modulo Pacchetto/Firmware Note
HUAWEI
E5220 Huawei Technologies Co., Ltd. E398 LTE/UMTS/GSM Modem/Networkcard 12d1:1506 Wheezy
Jessie
Stretch
3.14 huawei_cdc_ncm nessuno Leggere anche qui
E5330 Huawei Technologies Co. Wheezy
Jessie
Stretch
3.14 nessuno Dispositivo testato solo con connessione USB.
Leggere anche qui
ZTE
ZTE MF65M ZTE WCDMA Technologies MSM 19d2:1405 Wheezy
Jessie
3.14 nessuno Dispositivo testato solo con connessione USB.
Leggere anche qui


Adattatori USB wireless

Nome Modello v/p ID Versione Debian Kernel Pacchetto/Firmware Note
TP-LINK
TL-WN722N Atheros Communications, Inc. AR9271 802.11n 0cf3:9271 Stretch 4.2, 4.9 firmware-atheros
PANDA WIRELESS
PAU06 Ralink Technology, Corp. RT5372 Wireless Adapter 802.11n 148f:5372 Stretch 4.0 firmware-ralink Per l'installazione:[1]


Stampanti

Modello Versione Debian Kernel Note
BROTHER
Brother HL 1112 Jessie 3.12 Una discussione sul forum relativa a questa stampante è visibile qui.
EPSON
Epson WF-2530 Jessie 3.12 Funzionante con i driver forniti dal pacchetto "printer-driver-escpr". Non testato lo scanner.
Epson Stylus SX235W Wheezy
Jessie
Stretch
3.14 Funzionante con i driver forniti dal pacchetto "printer-driver-escpr". Testata solo con connessione USB. Non testato lo scanner.
HP
HP LaserJet P1102 Squeeze
Wheezy
Jessie
> 2.6 Quasi sempre funzionante con i driver foomatic. Wiki-logo.png Hp LaserJet P1102


Scanner

Modello Versione Debian Kernel Note
CANON
... ... ...


Schede Video

Produttore Modello Compatibile Guide
ATI Mobility Radeon X1400 Verde.png Driver Radeon Open: Supporto completo con 3D
ATI Mobility Radeon X1300 Verde.png Driver Proprietario: Supporto completo con 3D
ATI Radeon X1200 series Verde.png Driver Proprietario: Supporto completo con 3D
ATI Radeon X800 Verde.png Driver Proprietario: Supporto completo con 3D
ATI Radeon 7000/VE Verde.png Driver OpenSource: Supporto completo con 3D
ATI Radeon 8500
Radeon 9200
Verde.png Driver OpenSource: Supporto accelerazione 3d
Driver Proprietari: Supporto completo
ATI Radeon 9600 Verde.png Driver Radeon Open: Supporto completo con 3D
ATI Mobility Radeon 9600 M10 Verde.png Driver OpenSource: Supporto completo con 3D
Driver Proprietari: Supporto completo
ATI Radeon X700 Verde.png Driver OpenSource: Supporto completo con 3D
Driver Proprietari: Supporto completo
ATI Radeon HD 3850 256MB DDR3 Verde.png Driver OpenSource: Supporto completo con 3D
Driver Proprietari: Supporto completo
NVIDIA GeForce 6200 Verde.png Driver OpenSource: Supporto senza 3D
Driver Proprietari: Supporto completo
NVIDIA GeForce 4 MX 440 Verde.png Driver OpenSource: Supporto senza 3D
Driver Proprietari: Supporto completo
NVIDIA GeForce 7600 GS Verde.png Driver Proprietari: Supporto completo con 3D


Modem USB

Produttore Modello Compatibile Guide
Vari Modem adsl Telindus ND220
Sagem Fast 800
Verdespento.png Richiede installazione dei driver eagle-adsl
Vari Modem supportati dal progetto Accessrunner (chipset Conexant) Verdespento.png Richiede installazione del firmware.

Ottenere le informazioni per una periferica

Nome
Il nome della periferica;
Modello
L'output del comando "lspci" relativo alla periferica oppure del comando lsusb se si tratta di una periferica connessa ad una porta USB;
v/p ID
Vendor e Product ID con cui viene identificata la periferica, possono essere ricavati da "lspci -knn" o da "lsusb";
Versione Debian
La versione di Debian su cui la periferica è installata;
Kernel
La versione del kernel utilizzata, può essere ricavata da "uname -a";
Modulo
Il modulo del kernel che si occupa delle periferica, anche questo può essere ricavato da "lspci -knn";
Pacchetto Firmware
L'eventuale pacchetto contenente il firmware necessario al funzionamento della periferica;
Note
Note aggiuntive che si reputa necessario inserire.

Lettura e legenda

La tabella mostra una lista di Hardware compatibile con Linux (in particolare con Debian GNU/Linux) suddiviso per categoria, produttore e, se necessario, modello.

Ogni elemento contiene le seguenti informazioni:

Produttore
il nome del produttore con, eventualmente, un link al sito ufficiale
Modelli
il nome del modello con, eventualmente, il codice "produttore/prodotto" presente in lspci
Compatibile
lo stato di compatibilità:
Rosso.png non supportato
Arancio.png parzialmente supportato
Verdespento.png supportato ma richiede la configurazione
Verde.png supportato