ASUS ES3-110 AIUTO!!!!

Usate questo forum per richieste di aiuto e consigli sull'hardware montato nelle vostre macchine con GNU/Linux Slackware.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata e la versione del Kernel. Questi dati aiutano le persone che possono rispondere.
2) Citare il tipo di hardware coinvolto in modo dettagliato.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT. Non usare termini gergali come procio, mobo e simili per identificare i componenti hardware.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Sera a tutti :)


Ho un problema urgentissimo con un server che non vede una ASUS ES3-110 (scheda DVB)
ho provato a vedere i moduli caricati:

Codice: Seleziona tutto

Module                  Size  Used by
nls_iso8859_1          12713  1 
nls_cp437              16991  1 
vfat                   17585  1 
fat                    61512  1 vfat
usb_storage            49198  1 
uas                    18180  0 
ext2                   73795  1 
snd_usb_audio         122982  0 
snd_pcm                97188  1 snd_usb_audio
snd_timer              29990  1 snd_pcm
snd_page_alloc         18529  1 snd_pcm
snd_hwdep              13668  1 snd_usb_audio
snd_usbmidi_lib        25395  1 snd_usb_audio
snd_rawmidi            30748  1 snd_usbmidi_lib
snd_seq_device         14540  1 snd_rawmidi
snd                    78855  7 snd_usb_audio,snd_pcm,snd_timer,snd_hwdep,snd_usbmidi_lib,snd_rawmidi,snd_seq_device
soundcore              15091  1 snd
dcdbas                 14490  0 
radeon                804372  1 
i5000_edac             17675  0 
edac_core              53746  3 i5000_edac
i5k_amb                13287  0 
ttm                    76949  1 radeon
drm_kms_helper         46978  1 radeon
psmouse                87692  0 
drm                   242038  3 radeon,ttm,drm_kms_helper
serio_raw              13211  0 
i2c_algo_bit           13423  1 radeon
mac_hid                13253  0 
shpchp                 37277  0 
lp                     17799  0 
parport                46562  1 lp
usbhid                 47199  0 
hid                    99559  1 usbhid
mptsas                 63612  2 
mptscsih               44882  1 mptsas
mptbase               103162  2 mptsas,mptscsih
scsi_transport_sas     40558  1 mptsas
bnx2                   86853  0 
e come viene vista da lspci:

Codice: Seleziona tutto

0b:00.0 Multimedia controller: Philips Semiconductors SAA7231 (rev 8a)
	Subsystem: ASUSTeK Computer Inc. Device 48d4
	Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx-
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 6
	Region 0: Memory at fc400000 (64-bit, non-prefetchable) [size=4M]
	Region 2: Memory at fc000000 (64-bit, non-prefetchable) [size=4M]
	Capabilities: [40] MSI: Enable- Count=1/16 Maskable- 64bit+
		Address: 0000000000000000  Data: 0000
	Capabilities: [50] Express (v1) Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s <256ns, L1 <1us
			ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
		DevCtl:	Report errors: Correctable- Non-Fatal- Fatal+ Unsupported-
			RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
			MaxPayload 128 bytes, MaxReadReq 128 bytes
		DevSta:	CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr+ TransPend-
		LnkCap:	Port #1, Speed 2.5GT/s, Width x1, ASPM L0s L1, Latency L0 <4us, L1 <64us
			ClockPM- Surprise- LLActRep- BwNot-
		LnkCtl:	ASPM Disabled; RCB 128 bytes Disabled- Retrain- CommClk-
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
	Capabilities: [74] Power Management version 3
		Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=55mA PME(D0-,D1-,D2-,D3hot-,D3cold+)
		Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [7c] Vendor Specific Information: Len=84 <?>
	Capabilities: [100 v1] Vendor Specific Information: ID=0000 Rev=0 Len=094 <?>
Se lancio vscan mi dice che non ci sono periferiche DVB..
Ora sto provando ad aggiornare il kernel, ma non sò quanto serva...

Avete prezioni consigli?????

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Ho trovato questo
http://zyphos.be/d/saa7231/
che sembrerebbe il modulo ma non compila con errore:

Codice: Seleziona tutto

/root/saa7231/saa7231-0.0.6/v4l/config-compat.h:4:28: fatal error: linux/autoconf.h: No such file or directory
Vorrei provare a copiare la directory dei driver nella directory del kernel.. è fattibe????...

Installando con wine i driver per windows potrei renderla accessibile????

erio
Linux 4.x
Linux 4.x
Messaggi: 1354
Iscritto il: ven 9 ott 2009, 19:25
Slackware: 13.37
Kernel: 3.0.7
Desktop: kde

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da erio »

guarda nel config del kernel se tutti i device dvb sono messi come moduli ce ne sono parecchi:Supported SAA7146 based PCI Adapters, questo e della famiglia ma non so se funziona e una versione diversa.

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da 414N »

Primo risultato su Google cercando il testo del tuo errore. Si tratta solo di modificare il file config-compat.h dei driver che hai scaricato cambiando #include <linux/autoconf.h> in #include <generated/autoconf.h> alla riga 4.
Copiare la directory dei sorgenti dei driver all'interno della directory del kernel non farà magicamente andare il tutto, visto che il driver rimarrà in forma di sorgenti e l'header autoconf.h sarà sempre cercato nel posto sbagliato.
Se wine facesse funzionare i driver Windows, perché credi che molta gente impazzisca per ottenere il supporto hardware nativo su Linux per svariate periferiche? ;) Wine è solo un livello di compatibilità per le applicazioni win32 (e 64 da qualche annetto) che trasla le chiamate di sistema di Windows in ambito Unix/X11/OpenGL e nulla di più. Per supportare eventuali driver Windows dovrebbe avere degli "agganci" all'interno del kernel Linux, e questo lo vedo molto improbabile sia nel presente attuale sia nel prossimo futuro.

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

414N ha scritto: Si tratta solo di modificare il file config-compat.h dei driver che hai scaricato cambiando #include <linux/autoconf.h> in #include <generated/autoconf.h> alla riga 4.
Dove posso trovare config-compat.h???
Cosa potrebbe voler dire

Codice: Seleziona tutto

 impossibile cambiare il proprietario all'UID 1000 e al GID 1000: Operazione non permessa
durante l'estrazione con il comando tar -xjvf nome-archivio???

Grazie

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da 414N »

Rileggi il messaggio di errore che hai postato: in esso è riportato il percorso del file contenente l'errore che fa fallire la compilazione e il motivo del fallimento.
Riguardo ai permessi, hai provato ad estrarre il tarball in /root da utente non-root?

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

l'errore ora è questo

Codice: Seleziona tutto

root@h-media1:~/saa7231-0.0.6# make
make -C /root/saa7231-0.0.6/v4l 
make[1]: ingresso nella directory "/root/saa7231-0.0.6/v4l"
scripts/make_makefile.pl
Updating/Creating .config
./scripts/make_kconfig.pl /lib/modules/3.2.0-29-generic/build /lib/modules/3.2.0-29-generic/build
Preparing to compile for kernel version 3.2.0


***WARNING:*** You do not have the full kernel sources installed.
This does not prevent you from building the v4l-dvb tree if you have the
kernel headers, but the full kernel source may be required in order to use
make menuconfig / xconfig / qconfig.

If you are experiencing problems building the v4l-dvb tree, please try
building against a vanilla kernel before reporting a bug.

Vanilla kernels are available at http://kernel.org.
On most distros, this will compile a newly downloaded kernel:

cp /boot/config-`uname -r` <your kernel dir>/.config
cd <your kernel dir>
make all modules_install install

Please see your distro's web site for instructions to build a new kernel.

./scripts/make_myconfig.pl
make[1]: uscita dalla directory "/root/saa7231-0.0.6/v4l"
make[1]: ingresso nella directory "/root/saa7231-0.0.6/v4l"
perl scripts/make_config_compat.pl /lib/modules/3.2.0-29-generic/build ./.myconfig ./config-compat.h
creating symbolic links...
make -C firmware prep
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
make -C firmware
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
  CC  ihex2fw
Generating vicam/firmware.fw
Generating dabusb/firmware.fw
Generating dabusb/bitstream.bin
Generating ttusb-budget/dspbootcode.bin
Generating cpia2/stv0672_vp4.bin
Generating av7110/bootcode.bin
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
Kernel build directory is /lib/modules/3.2.0-29-generic/build
make -C /lib/modules/3.2.0-29-generic/build SUBDIRS=/root/saa7231-0.0.6/v4l CFLAGS="-I../linux/include -D__KERNEL__ -I/include -DEXPORT_SYMTAB" modules
make[2]: Entering directory `/usr/src/linux-headers-3.2.0-29-generic'
  CC [M]  /root/saa7231-0.0.6/v4l/tuner-xc2028.o
In file included from <command-line>:0:0:
/root/saa7231-0.0.6/v4l/config-compat.h:4:28: fatal error: linux/autoconf.h: No such file or directory
compilation terminated.
make[3]: *** [/root/saa7231-0.0.6/v4l/tuner-xc2028.o] Errore 1
make[2]: *** [_module_/root/saa7231-0.0.6/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-3.2.0-29-generic'
make[1]: *** [default] Errore 2
make[1]: uscita dalla directory "/root/saa7231-0.0.6/v4l"
make: *** [all] Errore 2
Ho provato ad installare il kernel così

Codice: Seleziona tutto

root@h-media1:~/saa7231-0.0.6# apt-get install kernel-source
Lettura elenco dei pacchetti... Fatto
Generazione albero delle dipendenze       
Lettura informazioni sullo stato... Fatto
Il pacchetto kernel-source non ha versioni disponibili, ma è nominato da un altro
pacchetto. Questo può significare che il pacchetto è mancante, è obsoleto
oppure è disponibile solo all'interno di un'altra sorgente
ma niente... se ricompilo io il kernel???

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Ho risolto il problema del sorgente del kernel ma ancora non compila

Codice: Seleziona tutto

root@h-media1:~/saa7231-0.0.6# make
make -C /root/saa7231-0.0.6/v4l 
make[1]: ingresso nella directory "/root/saa7231-0.0.6/v4l"
creating symbolic links...
make -C firmware prep
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
make -C firmware
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
make[2]: Nothing to be done for `default'.
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
Kernel build directory is /lib/modules/3.2.0-29-generic/build
make -C /lib/modules/3.2.0-29-generic/build SUBDIRS=/root/saa7231-0.0.6/v4l CFLAGS="-I../linux/include -D__KERNEL__ -I/include -DEXPORT_SYMTAB" modules
make[2]: Entering directory `/usr/src/linux-headers-3.2.0-29-generic'
  CC [M]  /root/saa7231-0.0.6/v4l/tuner-xc2028.o
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'free_firmware':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:251:3: error: implicit declaration of function 'kfree' [-Werror=implicit-function-declaration]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'load_all_firmwares':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:313:2: error: implicit declaration of function 'kzalloc' [-Werror=implicit-function-declaration]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:313:13: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:364:21: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'generic_set_freq':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:932:18: error: 'T_DIGITAL_TV' undeclared (first use in this function)
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:932:18: note: each undeclared identifier is reported only once for each function it appears in
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'xc2028_set_params':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:1118:5: error: 'T_DIGITAL_TV' undeclared (first use in this function)
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'xc2028_attach':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:1255:13: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'xc2028_set_params':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:1119:1: warning: control reaches end of non-void function [-Wreturn-type]
cc1: some warnings being treated as errors
make[3]: *** [/root/saa7231-0.0.6/v4l/tuner-xc2028.o] Errore 1
make[2]: *** [_module_/root/saa7231-0.0.6/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-3.2.0-29-generic'
make[1]: *** [default] Errore 2
make[1]: uscita dalla directory "/root/saa7231-0.0.6/v4l"
make: *** [all] Errore 2


Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da 414N »

Evidentemente non è possibile compilarlo senza effettuare qualche modifica ai suoi sorgenti, visto che, probabilmente, era stato pensato per kernel 2.6.x invece di 3.x.
Potresti provare ad installare un kernel più vecchio solo per questo modulo (ma poi rischieresti che altro hardware, soprattutto se recente, non ti funzioni più) oppure sperare di trovare qualche patch in giro, ma dubito che, in ogni modo, otterresti qualcosa di funzionante.

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Ho modificato v4l/tuner-xc2028.c
per via dell'errore

Codice: Seleziona tutto

v4l/tuner-xc2028.c:1118:5: error: 'T_DIGITAL_TV' undeclared (first use in this function)
da "T_DIGITAL_TV" con "V4L2_TUNER_ANALOG_TV"
e adesso con "make -i" compila e se dò anche make install crea i moduli ma
se li carico con modprobe ottengo:

Codice: Seleziona tutto

root@h-media1:~# modprobe saa7231_core 
WARNING: Error inserting videodev (/lib/modules/3.2.0-29-generic/kernel/drivers/media/video/videodev.ko): Invalid module format
WARNING: Error inserting snd_page_alloc (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-page-alloc.ko): Invalid module format
WARNING: Error inserting soundcore (/lib/modules/3.2.0-29-generic/kernel/sound/soundcore.ko): Invalid module format
WARNING: Error inserting snd (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd.ko): Invalid module format
WARNING: Error inserting snd_timer (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-timer.ko): Invalid module format
WARNING: Error inserting snd_pcm (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-pcm.ko): Invalid module format
WARNING: Error inserting dvb_core (/lib/modules/3.2.0-29-generic/kernel/drivers/media/dvb/dvb-core/dvb-core.ko): Invalid module format
FATAL: Error inserting saa7231_core (/lib/modules/3.2.0-29-generic/kernel/drivers/bgt3595/saa7231_core.ko): Invalid module format


root@h-media1:~# modprobe saa7231_drv 
WARNING: Error inserting videodev (/lib/modules/3.2.0-29-generic/kernel/drivers/media/video/videodev.ko): Invalid module format
WARNING: Error inserting snd_page_alloc (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-page-alloc.ko): Invalid module format
WARNING: Error inserting soundcore (/lib/modules/3.2.0-29-generic/kernel/sound/soundcore.ko): Invalid module format
WARNING: Error inserting snd (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd.ko): Invalid module format
WARNING: Error inserting snd_timer (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-timer.ko): Invalid module format
WARNING: Error inserting snd_pcm (/lib/modules/3.2.0-29-generic/kernel/sound/core/snd-pcm.ko): Invalid module format
WARNING: Error inserting dvb_core (/lib/modules/3.2.0-29-generic/kernel/drivers/media/dvb/dvb-core/dvb-core.ko): Invalid module format
WARNING: Error inserting saa7231_core (/lib/modules/3.2.0-29-generic/kernel/drivers/bgt3595/saa7231_core.ko): Invalid module format
FATAL: Error inserting saa7231_drv (/lib/modules/3.2.0-29-generic/kernel/drivers/media/saa7231/saa7231_drv.ko): Invalid module format
Quindi ignorando gli errori di make non sembra andare... :(
Adesso se lancio maKe senza l'opzione -i ottengo:

Codice: Seleziona tutto

root@h-media1:~# make
make: *** Nessun obiettivo specificato e nessun makefile trovato.  Arresto.
root@h-media1:~# cd saa7231-0.0.6/
root@h-media1:~/saa7231-0.0.6# make
make -C /root/saa7231-0.0.6/v4l 
make[1]: ingresso nella directory "/root/saa7231-0.0.6/v4l"
creating symbolic links...
make -C firmware prep
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
make -C firmware
make[2]: Entering directory `/root/saa7231-0.0.6/v4l/firmware'
make[2]: Nothing to be done for `default'.
make[2]: Leaving directory `/root/saa7231-0.0.6/v4l/firmware'
Kernel build directory is /lib/modules/3.2.0-29-generic/build
make -C /lib/modules/3.2.0-29-generic/build SUBDIRS=/root/saa7231-0.0.6/v4l CFLAGS="-I../linux/include -D__KERNEL__ -I/include -DEXPORT_SYMTAB" modules
make[2]: Entering directory `/usr/src/linux-headers-3.2.0-29-generic'
  CC [M]  /root/saa7231-0.0.6/v4l/tuner-xc2028.o
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'free_firmware':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:251:3: error: implicit declaration of function 'kfree' [-Werror=implicit-function-declaration]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'load_all_firmwares':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:313:2: error: implicit declaration of function 'kzalloc' [-Werror=implicit-function-declaration]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:313:13: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:364:21: warning: assignment makes pointer from integer without a cast [enabled by default]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'generic_set_freq':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:932:15: warning: comparison between 'enum tuner_mode' and 'enum v4l2_tuner_type' [-Wenum-compare]
/root/saa7231-0.0.6/v4l/tuner-xc2028.c: In function 'xc2028_attach':
/root/saa7231-0.0.6/v4l/tuner-xc2028.c:1255:13: warning: assignment makes pointer from integer without a cast [enabled by default]
cc1: some warnings being treated as errors
make[3]: *** [/root/saa7231-0.0.6/v4l/tuner-xc2028.o] Errore 1
make[2]: *** [_module_/root/saa7231-0.0.6/v4l] Error 2
make[2]: Leaving directory `/usr/src/linux-headers-3.2.0-29-generic'
make[1]: *** [default] Errore 2
make[1]: uscita dalla directory "/root/saa7231-0.0.6/v4l"
make: *** [all] Errore 2
Quì se ne parla.. e alla fine si parla di questa patch:

Codice: Seleziona tutto

An easy patch for this problem is:

--- v4l/compat.h.org    2010-05-26 22:22:31.000000000 +0200
+++ v4l/compat.h        2010-05-26 22:22:43.000000000 +0200
@@ -28,6 +28,10 @@
 #include <linux/i2c-dev.h>
 #endif

+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 33)
Devo modificare "v4l/compat.h.org" in "v4l/compat.h"
oppure devo aggiungere l'include di <linux/i2c-dev.h> ????

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da 414N »

Sì, sbagli. v4l/compat.h.org è solo il nome che è stato dato al file originale per distinguerlo da quello patchato nel creare la patch, percui non conterà niente rinominarlo.
A quella patch, comunque, sembra mancare un bel pezzo (probabilmente perché non hai cliccato su "continue reading").
Quella completa è questa:

Codice: Seleziona tutto

--- v4l/compat.h.org    2010-05-26 22:22:31.000000000 +0200
+++ v4l/compat.h        2010-05-26 22:22:43.000000000 +0200
@@ -28,6 +28,10 @@
 #include <linux/i2c-dev.h>
 #endif

+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 33)
+#include <linux/slab.h>
+#endif
+
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26)
 #ifdef CONFIG_PROC_FS
 #include <linux/module.h>
--- linux/drivers/media/IR/ir-raw-event.c.org   2010-05-26 22:35:12.000000000 +0200
+++ linux/drivers/media/IR/ir-raw-event.c       2010-05-26 22:35:43.000000000 +0200
@@ -15,6 +15,7 @@
 #include <linux/workqueue.h>
 #include <linux/spinlock.h>
 #include <linux/sched.h>
+#include <linux/slab.h>
 #include "ir-core-priv.h"

 /* Define the max number of pulse/space transitions to buffer */
--- linux/drivers/media/dvb/dvb-core/dvb_frontend.h.org 2010-05-26 23:06:50.000000000 +0200
+++ linux/drivers/media/dvb/dvb-core/dvb_frontend.h     2010-05-26 23:06:21.000000000 +0200
@@ -39,6 +39,7 @@

 #include <linux/dvb/frontend.h>

+#include "compat.h"
 #include "dvbdev.h"

 struct dvb_frontend_tune_settings {
diff -upr /home/v4l/tmp/oldtree/drivers/media/radio/radio-tea5764.c
./drivers/media/radio/radio-tea5764.c
--- linux/drivers/media/radio/radio-tea5764.c.org       2010-05-25 23:56:57.000000000 -0300
+++ linux/drivers/media/radio/radio-tea5764.c   2010-05-21 11:21:19.000000000 -0300
@@ -32,6 +32,7 @@
  *  add RDS support
  */
 #include <linux/kernel.h>
+#include <linux/slab.h>
 #include <linux/module.h>
 #include <linux/init.h>                        /* Initdata                     */
 #include <linux/videodev2.h>           /* kernel radio structs         */
Si tratta comunque di una patch per un altro problema che non c'entra molto col tuo, ovvero la fallita compilazione dell'intero modulo v4l-dvb ai tempi del kernel 2.6.34.
Cercando il testo dei due errori che ti da il make (ovvero "implicit declaration of function 'kfree'" e "implicit declaration of function 'kzalloc'") su google ottieni, già nel primo risultato, il suggerimento di aggiungere un include al file rompiscatole per fargli trovare le definizioni di tali funzioni (gli errori infatti sono dovuti al compilatore che si lamenta del fatto che quelle due funzioni vengono usate senza essere state dichiarate).
Qual è il file rompiscatole? Se leggi l'output di make, noterai che gli errori avvengono in corrispondenza del file /root/saa7231-0.0.6/v4l/tuner-xc2028.c, rispettivamente alle righe 251 e 313.
Ti lascio come esercizio capire quale include devi aggiungere ;)

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

414N ha scritto: Si tratta comunque di una patch per un altro problema che non c'entra molto col tuo, ovvero la fallita compilazione dell'intero modulo v4l-dvb ai tempi del kernel 2.6.34.
Cercando il testo dei due errori che ti da il make (ovvero "implicit declaration of function 'kfree'" e "implicit declaration of function 'kzalloc'") su google ottieni, già nel primo risultato, il suggerimento di aggiungere un include al file rompiscatole per fargli trovare le definizioni di tali funzioni (gli errori infatti sono dovuti al compilatore che si lamenta del fatto che quelle due funzioni vengono usate senza essere state dichiarate).
Qual è il file rompiscatole? Se leggi l'output di make, noterai che gli errori avvengono in corrispondenza del file /root/saa7231-0.0.6/v4l/tuner-xc2028.c, rispettivamente alle righe 251 e 313.
Ti lascio come esercizio capire quale include devi aggiungere ;)
Ahahahahaha.. bell' esercizio :)... Domani ci smanettero molto

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Eh.. che casino :)...
ho incluso </usr/src/linux-3.5.3/include/linux/slab.h> alla riga 245
nella funzione free_firmware del file tuner-xc2028.c. (Non sò quanto possa essere giusto includerla lì)

Ma adesso mi mancano un sacco di classi di slab.h.. ad esempio:
/usr/src/linux-3.5.3/include/linux/slab.h:256:21: error: invalid storage class for function 'kcalloc'

queste classi sono in <slub_def.h> ma a sua volta <slub_def.h> necessita di altrI include....
Devo includere tutto quello che viene richiesto file per file??


Inoltre mi preoccupa questo errore:

Codice: Seleziona tutto

In file included from /tmp/saa7231-0.0.6/v4l/tuner-xc2028.c:245:0:
/usr/src/linux-3.5.3/include/linux/slab.h:161:6: note: previous declaration of 'kfree' was here
/tmp/saa7231-0.0.6/v4l/tuner-xc2028.c:1162:3: error: incompatible implicit declaration of function 'kfree'
è la prima volta che metto mano a sorgenti


Qualche aiutino??

Avatar utente
414N
Iper Master
Iper Master
Messaggi: 2922
Iscritto il: mer 13 feb 2008, 16:19
Slackware: 15.0
Kernel: 5.15.19
Desktop: KDE5
Località: Bulagna
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da 414N »

Perché non hai usato, semplicemente:

Codice: Seleziona tutto

#include <linux/slab.h>
?

Avatar utente
darkstaring
Linux 3.x
Linux 3.x
Messaggi: 657
Iscritto il: mer 13 ott 2010, 13:55
Nome Cognome: Francesco Achenza
Desktop: KDE
Distribuzione: Arch Linux
Contatta:

Re: ASUS ES3-110 AIUTO!!!!

Messaggio da darkstaring »

Perchè credo che il percorso parte dalla directory corrente...
Infatti prima ho copiato /usr/src/linux-3.5.3/include/linux/slab.h nella <directory del sorgente/include/linux>
e incluso così:
#include <../linux/include/slab.h>
Comunque funge anche come dici tu :)
ma comunque sembrerebbe che devo includere anche slub_def.h per includere slab.h...

Erro???

Rispondi