Bitte testen: newmake / kernel 2.6 patch

Kreuzuebersetzer, Diskussion über Änderungen im Tuxbox-CDK und Tuxbox-CVS
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von seife »

(Ab und zu mal ein neuer Thread wäre nicht schlecht, als hier alles Mögliche, was mit dem ursprünglichen Topic nichts mehr zu tun hat, reinzurülpsen. Ist aber anscheinend hier überall so ;))

Das ENODEV das du kriegst kommt aus diesem Code:

Code: Alles auswählen

        if (type == CXAAUTO) {

                switch(tuxbox_dbox2_mid) {
                case TUXBOX_DBOX2_MID_NOKIA:
                        type = CXA2092;
                        break;
                case TUXBOX_DBOX2_MID_PHILIPS:
                        type = STV6412;
                        break;
                case TUXBOX_DBOX2_MID_SAGEM:
                        type = CXA2126;
                        break;
                default:
                        return -ENODEV;
                }
        }
tuxbox_dbox2_mid kommt, wenn ich das richtig sehe, aus dem "tuxbox"-Modul, das auch von den meisten anderen Modulen benötigt wird.

Dass das entweder nicht geladen wird, oder nicht richtig funktioniert, wird auch von

Code: Alles auswählen

Detected STB:
 Vendor: Unknown
 Model: D-BOX2
angedeutet.
Logge dich also mal auf der box ein und schaue, ob das tuxbox-Modul geladen ist.
Wenn es geladen ist, dann kann das Problem fast nur in driver/info/tuxbox_hardware_dbox2.c:hardware_read() und dort eigentlich in vendor_read() liegen.
hardware_read() muss 0 zurückgeben, sonst würde ein printk ausgegeben. Es gibt aber nur 0 zurück wenn vendor_read() auch 0 ist...

Baue also in vendor_read() mal in die switch/case mal ein

Code: Alles auswählen

default:
      printk(KERN_ERR "unknown DBOX2 mid %d!\n", tuxbox_dbox2_mid);
      break;
Ein und schau, ob das triggert.
Natürlich nur, wenn tuxbox.ko überhaupt geladen war. Wenn nicht, dann sorge dafür, dass es geladen wird, vermutlich wird dann alles gut.
dwilx

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von dwilx »

heinz158 hat geschrieben: Das Image habe ich mit folgenden Kommandos gebaut:

cvs -d anoncvs@cvs.tuxbox-cvs.sourceforge.net:/cvs/tuxbox -z3 co -f -r newmake -P .
cvs -z3 update -dP -r driver_2_6_branch driver/
- patches linux-2.6.26.4-ide.diff und dboxide-2.6.26.diff durchgeführt -
- u-boot.yadd.dbox2.h angepasst #define CFG_LOAD_ADDR 0x200000 /* default load address */ -
./autogen.sh
./configure --with-cvsdir=/tuxbox-cvs --enable-kernel26 --enable-lzma --enable-ide --enable-xfs --disable-ext3 --enable-maintainer-mode --enable-german-keymaps --enable-cdkVcInfo --enable-flashrules --with-checkImage=rename
make flash-neutrino-squashfs-2x yadd-neutrino
Spielt wahrscheinlich keine Rolle, aber ist das nicht überholt?
cvs -d anoncvs@cvs.tuxbox-cvs.sourceforge.net:/cvs/tuxbox -z3 co -f -r newmake -P
.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

seife hat geschrieben:Baue also in vendor_read() mal in die switch/case mal ein

Code: Alles auswählen

default:
      printk(KERN_ERR "unknown DBOX2 mid %d!\n", tuxbox_dbox2_mid);
      break;
Ergebnis:

Code: Alles auswählen

 unknown DBOX2 mid 0!
Getestet auf einer Sagem Dbox, modprobe tuxbox funktioniert ohne Fehler

Code: Alles auswählen

# rmmod tuxbox
# modprobe tuxbox
# echo $?
0
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

Problem wahrscheinlich gelöst, Kernelmodul tuxbox in Kernel 2.4 beinhaltet
Code, der die MTD-Partition des Bootloaders anders ausliest:
http://cvs.tuxbox-cvs.sourceforge.net/c ... 1.5&r2=1.6
- use MTD subsystem to access the BMon partition to avoid potential
races (this is not just a theoretical concern, MTD *does* leave
f.ex. Intel flashes in "read status" mode after they have been
written to once *and* there was no read afterwards).
Ich habe diesen Code in die Kernel 2.6-Version portiert und dort scheint
er zu funktionieren :P :
# rmmod tuxbox
# modprobe tuxbox
# tuxinfo -e
VENDOR_ID=3
VENDOR=Sagem
MODEL_ID=1
MODEL=D-BOX2
SUBMODEL_ID=1
SUBMODEL=
# uname -a
Linux dbox 2.6.26.4-dbox2 #1 PREEMPT Thu Jan 22 20:45:11 CET 2009 ppc unknown
Hier der Patch zum Testen: EDIT: Patch ist im CVS
Zuletzt geändert von rhabarber1848 am Dienstag 3. Februar 2009, 21:58, insgesamt 1-mal geändert.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von seife »

Sieht gut aus, ich konnte es allerdings noch nicht testen.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

Habe nun mehrfach ein yadd-neutrino mit Kernel 2.6 gebootet
Linux version 2.6.26.4-dbox2 (root@dbox) (gcc version 3.4.6) #1 PREEMPT Fri Jan 23 16:07:57 CET 2009
[...]
Detected STB:
Vendor: Sagem
Model: D-BOX2
Das hat so noch nie funktioniert, der Patch scheint zu funktionieren.
Allerdings möchte ich betonen, dass ich einfach nur copy&paste gemacht
habe zwischen den beiden Dateiversionen und sich dadurch auch Fehler
eingeschlichen haben können, die mir nicht bewusst sind. Besonders
das Herumarbeiten mit MTD ist mir absolut nicht geläufig, allerdings
funktioniert die Dbox weiterhin, so falsch kann der Patch also nicht sein ;)
heinz158
Neugieriger
Neugieriger
Beiträge: 15
Registriert: Samstag 25. Januar 2003, 13:54

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von heinz158 »

Hallo,
danke für die super schnelle Lösung!
Deinen Patch tuxbox_info.diff eingesetzt, make driver, tuxbox.ko übernommen und das yadd Booten funktioniert:

Code: Alles auswählen

Detected STB:
        Vendor: Nokia
        Model: D-BOX2
Auch avs.ko und alle folgenden Module werden einwandfrei geladen. Die Box läuft mit dem yadd und ich konnte bisher keine Fehler feststellen.
Gruß
Heinz
Zuletzt geändert von heinz158 am Sonntag 25. Januar 2009, 13:13, insgesamt 1-mal geändert.
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von amiga23 »

Hab 'ne Sagem dbox 2 Kabel 1xI, da funktioniert es auch ohne diesen patch.

Code: Alles auswählen

/etc/init.d # tuxinfo -e
VENDOR_ID=3
VENDOR=Sagem
MODEL_ID=1
MODEL=D-BOX2
SUBMODEL_ID=1
SUBMODEL=
/etc/init.d # 
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

amiga23 hat geschrieben:Hab 'ne Sagem dbox 2 Kabel 1xI, da funktioniert es auch ohne diesen patch.
Bootest Du aus dem Flash oder ein Yadd?
amiga23
Einsteiger
Einsteiger
Beiträge: 238
Registriert: Sonntag 14. November 2004, 23:44

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von amiga23 »

Aus dem Flash. Alle Tests mache ich aus dem Flash.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von seife »

Aus dem Flash ging es "schon immer".
Meine Philips habe ich auch schon per yadd mit 2.6 gebootet, insofern ging es bisher wohl "manchmal".
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

Kernel 2.6.26.8, bitte testen: EDIT: Patch ist im CVS
Zuletzt geändert von rhabarber1848 am Dienstag 17. Februar 2009, 21:25, insgesamt 1-mal geändert.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von seife »

Hast du einen bestimmten fix im Auge, der in die -stable Kernels reinkam? Weil ich beim changelog-lesen nichts gefunden habe und drum nicht weiss, was ich testen sollte.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

seife hat geschrieben:Hast du einen bestimmten fix im Auge, der in die -stable Kernels reinkam?
Nein, es geht mir einfach nur um Versionitis ;)
dwilx

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von dwilx »

So eine bewegliche Versionsvariable wäre aber sowieso von Vorteil, wenn sich die Revision ändert, oder täusche ich mich?

Code: Alles auswählen

-		yadd_kernel_conf="Patches/linux-$KERNELVERSION.config"
+		yadd_kernel_conf="Patches/linux-2.6.26.4-dbox2.config"
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

dixidix hat geschrieben:So eine bewegliche Versionsvariable wäre aber sowieso von Vorteil, wenn sich die Revision ändert, oder täusche ich mich?

Code: Alles auswählen

-		yadd_kernel_conf="Patches/linux-$KERNELVERSION.config"
+		yadd_kernel_conf="Patches/linux-2.6.26.4-dbox2.config"
Da sich an cdk/Patches/linux-2.6.26.4-dbox2.config nichts geändert hat,
kann diese Datei unverändert für die Kernelversion 2.6.26.8 verwendet
werden. Ich bin kein Freund riesiger Ansammlungen von Dateien in
cdk/Patches, die sich nur in der Versionsnummer im Dateinamen
unterscheiden.
seife
Developer
Beiträge: 4189
Registriert: Sonntag 2. November 2003, 12:36

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von seife »

Naja, jetzt noch einen -doch schon recht schimmligen- Kernel updaten halte ich etwa für so sinnvoll wie all die 2.4-er updates nach ~2.4.30: Ausser Entropie durch häufige rebuilds des kompletten CDK bringt das eigentlich nicht viel.
Andererseits stört es mich auch nicht, ich to cdk/ eh nicht updaten ;)
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

rhabarber1848 hat geschrieben:Kernel 2.6.26.8, bitte testen: linux-2.6.26.8.diff
committed
StevenSch
Einsteiger
Einsteiger
Beiträge: 105
Registriert: Mittwoch 20. Oktober 2004, 11:41

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von StevenSch »

rhabarber1848 hat geschrieben:
dixidix hat geschrieben:So eine bewegliche Versionsvariable wäre aber sowieso von Vorteil, wenn sich die Revision ändert, oder täusche ich mich?

Code: Alles auswählen

-		yadd_kernel_conf="Patches/linux-$KERNELVERSION.config"
+		yadd_kernel_conf="Patches/linux-2.6.26.4-dbox2.config"
Da sich an cdk/Patches/linux-2.6.26.4-dbox2.config nichts geändert hat,
kann diese Datei unverändert für die Kernelversion 2.6.26.8 verwendet
werden. Ich bin kein Freund riesiger Ansammlungen von Dateien in
cdk/Patches, die sich nur in der Versionsnummer im Dateinamen
unterscheiden.
Dann lasst aber gleich die Unterversions-Nummer weg und nennt es z.B. "linux-2.6.26-dbox2.config" - beim diff genauso dann bleibts übersichtlich und es gibt keine Dateileichen.
gugu
Interessierter
Interessierter
Beiträge: 92
Registriert: Montag 23. Februar 2009, 14:48

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von gugu »

Brauch ich noch welchen patch unter newmake-kernel2.6 ?
NEUTRINO/dbox2/cdkroot/include -I/home/gugu/NEUTRINO/driver/include -I../../lib -I/home/gugu/NEUTRINO/dbox2/cdkroot/include -I/home/gugu/NEUTRINO/driver/include -Wextra -Wall -pipe -Os -MT alphasetup.o -MD -MP -MF .deps/alphasetup.Tpo -c -o alphasetup.o alphasetup.cpp
In file included from alphasetup.cpp:56:
/home/gugu/NEUTRINO/driver/include/dbox/fb.h:13: error: conflicting declaration 'typedef struct fb_copyarea fb_copyarea'
/home/gugu/NEUTRINO/dbox2/cdk/lib/gcc/powerpc-tuxbox-linux-gnu/3.4.6/../../../../powerpc-tuxbox-linux-gnu/include/linux/fb.h:323: error: 'struct fb_copyarea' has a previous declaration as `struct fb_copyarea'
alphasetup.cpp:260: warning: unused parameter 'selected'
make[5]: *** [alphasetup.o] Error 1
make[5]: Leaving directory `/home/gugu/NEUTRINO/apps/tuxbox/neutrino/src/gui'
make[4]: *** [all-recursive] Error 1
make[4]: Leaving directory `/home/gugu/NEUTRINO/apps/tuxbox/neutrino/src/gui'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/gugu/NEUTRINO/apps/tuxbox/neutrino/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/gugu/NEUTRINO/apps/tuxbox/neutrino'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/gugu/NEUTRINO/apps/tuxbox/neutrino'
make: *** [neutrino] Error 2
dwilx

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von dwilx »

Kein newmake, nur head, kernel26 driver brunch und --enable-kernel26 eintragen.
Habe es erst damit gemacht und ging. :wink:
http://wiki.tuxbox-cvs.sourceforge.net/ ... 6er_Kernel
gugu
Interessierter
Interessierter
Beiträge: 92
Registriert: Montag 23. Februar 2009, 14:48

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von gugu »

Danke, es waren treiber für kernel 2.4 schuld.
rhabarber1848
CDK-Experte
Beiträge: 4335
Registriert: Donnerstag 3. April 2008, 13:05

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von rhabarber1848 »

Hier ist ein git-repo, wo jemand dBox2-Support für Kernel 3.0 importiert hat:
http://git.bocc.de/cgi-bin/gitweb.cgi?p ... heads/dbox

Ich habe es bisher noch nicht testen können.

Ein Kernel 2.6.26.8, kompiliert mit gcc-4.7.0, bootet zwar, das Laden aller Module
wird hingegen mit Einfrieren beantwortet :( Das Debuggen von tuxbox.ko endete
beim callback von register_mtd_user (mtd_add) in tuxbox_hardware_dbox2.c...,
ich vermute, dass hier etwas grundlegend durcheinander geraten ist.

PS: Die Lösung war in Patch für u-boot/board/dbox2/u-boot.lds, der hier enthalten ist.
Benni_A
Interessierter
Interessierter
Beiträge: 25
Registriert: Donnerstag 27. November 2003, 15:27

Re: Bitte testen: newmake / kernel 2.6 patch

Beitrag von Benni_A »

Ich habe auch versucht ein 2.6er Image zubauen.
Er hat auch ein Image dabei rausgeworfen und Bad Magic hatte ich auch keine allerdings bootest das Image nicht nach dem uboot ist schluß
als Leitfaden habe ich das hier verwendet ist es mein Fehler oder sind die Quellen dort vielleicht broken Das Buildsystem war Debian Testing

Code: Alles auswählen

Beispiel-Script für den Bau eines Images mit 2.6er Kernel

#Verzeichnisse festlegen#
cvsdir=$HOME/tuxbox-cvs_K26
cdkdir=$cvsdir/cdk
distridir=$HOME/dbox2_K26

#Auschecken#
echo "Checkout HEAD"
CVSNAME="anoncvs"
echo "--------------------------------------------------------------"
cvs -z3 -d "$CVSNAME@cvs.tuxbox.org:/cvs/tuxbox" co -P .
echo "--------------------------------------------------------------"
echo "Checkout driver_2_6_branch registred"
echo "--------------------------------------------------------------"
cvs -z3 -d "$CVSNAME@cvs.tuxbox.org:/cvs/tuxbox" co -r driver_2_6_branch driver

#ins cdk-Verzeichnis wechseln#
cd $cdkdir

#konfigurieren#
./autogen.sh
./configure --enable-kernel26 \
            --enable-maintainer-mode \
            --prefix=$distridir \
            --enable-flashrules \
            --enable-cdkVcInfo \
            --disable-ext3 \
            --with-checkImage=rename \
            --with-cvsdir=$cvsdir \
            --enable-ccache

#target für Neutrino-Image aufrufen#
time make flash-neutrino-squashfs-all

Danke euch für Tipps