Video Treiber für Odroid-N2+ (softhdodroid)

  • Ich kann im Moment leider nicht testen. Die nightly images booten auf meiner TX3 genau 1x, aber nach dem resizing und reboot kommt ‘error in mount_storage’ und 'Could not mount LABEL=STORAGE'. Habe jetzt schon verschiedene Datenträger probiert und das image sogar unter Windows mit Rufus raufgeschrieben. Den Fehler berichten auch andere im Forum, und mit dem heutigen nightly scheint es eher noch schlimmer geworden zu sein.

    VDR1: Odroid N2+ mit CoreELEC und Ubuntu in chroot, 2x WinTV DualHD, Sandisk 2TB SSD

    VDR2: Tanix TX3 mit VDR*ELEC, WinTV DualHD, 500GB SSD

  • Ist ja nicht eilig. Das Image von heute läuft zumindest auf meinem Odroid-N2+. Aber insgesamt gibt es da eh noch Probleme.
    Ein shutdown -h now z.b. bootet durch und fährt nicht zum halt runter. Auch PIP ist instabil und gibt einen Kernelfault beim beenden.

    Und machmal kommt der Ton nicht. Also durchaus noch eine Baustelle das ganze.

  • Noch ein kleines Weihnachtsgeschenk von mir :)

    Ich habe nun im GIT die Version aktualisiert die auch den Kernel 5.15.78 unterstützt. Um die Screensize und die Refreshrate zu setzen gibt es die neuen Parameter bei einem Kernel 5.x :

    -r Refreshrate

    -r <width>x<height>

    Wer also 1920x1080x50Hz haben will muss -r 50 und -g 1920x1080 mitgeben. Es werden alle Auflösungen aus dem aktuellen EDID unterstützt.

    Ohne diese Parameter bleibt der Screen unverändert so wie bisher.

  • Vielen Dank jojo61 für das schöne Weihnachtsgeschenk. Sobald meine TBS5580 läuft, werde ich testen und berichten.

    Ein Problem habe ich gemerkt: Wenn der TV ausgeschaltet ist (ich gehe über einen Denon Receiver), verabschiedet sich Dein Plugin mit einem core dump, es seit denn, ich starte es mit dem Parameter -D. Wenn der TV (und der Receiver) eingeschaltet sind, ist alles OK.

    Ich habe es im Debugger laufen lassen, aber es gibt keinen backtrace. Offensichtlich geht bei der Initialisierung etwas schief. Wenn Du weitere Tests benötigst, sehr gern.

  • Der Include wird zum Bau gar nicht benötigt. Nachdem ich den rausgeworfen hatte, compiliert alles. Allerdings startet das Plugin nicht mehr :(

    Code
    Dez 23 11:52:57 odroid2 vdr[5994]: [5994] ERROR: /usr/local/lib/vdr/libvdr-softhdodroid.so.2.6.3: undefined symbol: XParseGeometry
    Dez 23 11:52:57 odroid2 systemd[1]: vdropt.service: Main process exited, code=exited, status=2/INVALIDARGUMENT
    Dez 23 11:52:57 odroid2 systemd[1]: vdropt.service: Failed with result 'exit-code'.

    Es gibt eine weitere Abhängigkeit zu X11 oder zumindest der Lib?

  • Das ist der Fehler, den ich auch hatte, und er erzeugt im CE-no-Verzeichnis .cache/cores beliebige coredump-Dateien. Das verschwindet erst, wenn der TV an ist und DANACH vor mit Softhdodroid gestartet wird. Das undefined symbol hatte ich allerdings nicht.

    Hast Du ein make clean gemacht, bevor Du das Plugin neu gebaut hast?

    Edited once, last by beta (December 23, 2023 at 12:06 PM).

  • Schön das ihr so fleissig testet.

    Den gbm.h include brauche ich tatsächlich nicht und der kann raus. Mit XParseGeometrie parse ich den -g string.

    Aber ich denke das mache ich dann besser manuell und verzichte auf die Funktion. Update kommt bald ins Git :)

    Done

    Edited once, last by jojo61 (December 23, 2023 at 12:27 PM).

  • Nachdem sich amlogic-no jetzt auch mal bequemt hat auf meiner TX3 durchzubooten (das funzt im Moment noch sehr unzuverlässig) konnte ich jetzt vdr auch erfolgreich starten. Ein paar Hinweise noch:

    • Es hagelt bei mir Compiler-Warnungen
    • Bei mir musste ich das audio-device von 0 auf 2 ändern: -a hw:CARD=AMLAUGESOUND,DEV=2 -p hw:CARD=AMLAUGESOUND,DEV=2

    aplay -L ist bezüglich der hw-devices weniger aussagekräftig:

    Vielen Dank jojo für die Anpassung des Plugins. Theoretisch müsste es dann ja auch mit S905X4 unter amlogic-no und vielelicht auch schon unter amlogic-ne laufen.

    https://wiki.coreelec.org/coreelec:ce_de…elopment_status

    Ich meine mich zu erinnern, dass Paulaner seine S905X4 bisher nicht zum Laufen gekriegt hat - wäre jetzt einen erneuten Test wert.

    VDR1: Odroid N2+ mit CoreELEC und Ubuntu in chroot, 2x WinTV DualHD, Sandisk 2TB SSD

    VDR2: Tanix TX3 mit VDR*ELEC, WinTV DualHD, 500GB SSD

  • geht bei Euch das Umschalten auf kodi? Ich kriege

    Code
    kodi.bin[1678]: unhandled exception: DABT (lower EL), ESR 0x92000006, level 2 translation fault in kodi.bin[400000+173d000]

    und schließlich

    Code
    Dez 23 14:03:00 CoreELEC-NewOrder kodi.sh[1672]: /usr/lib/kodi/kodi.sh: line 168:  1678 Segmentation fault      (core dumped) /usr/lib/kodi/kodi.bin ${ENV_ARGS} ${SAVED_ARGS}
    Dez 23 14:03:01 CoreELEC-NewOrder systemd[1]: Stopping kodi.service...
    Dez 23 14:03:04 CoreELEC-NewOrder kodi.sh[1672]: Crash report available at /storage/.kodi/temp/kodi_crashlog_20231223140300.log
    Dez 23 14:03:04 CoreELEC-NewOrder kodi.sh[1774]: awk: cmd. line:1: Unexpected token
    Dez 23 14:03:04 CoreELEC-NewOrder systemd[1]: kodi.service: Main process exited, code=exited, status=139/n/a
    Dez 23 14:03:04 CoreELEC-NewOrder systemd[1]: kodi.service: Failed with result 'exit-code'.
    Dez 23 14:03:04 CoreELEC-NewOrder systemd[1]: Stopped kodi.service.

    Das crashlog habe ich gesichert. Die Frage ist nun, ob ich das an die CE-Entwickler schicke oder ob der Fehler bei uns bzw. dem Umschaltscript liegt.

    Muss das Plugin beim DETA noch Ressourcen freigeben?

  • Es crasht nur, wenn zuvor vdr lief. Wird CE mit deaktiviertem vdr-service gebootet, kann man kodi mit systemctl problemlos stoppen und wieder starten.

    Was ist hiermit?

    Code
    amlGetString("/sys/class/graphics/fb0/modes",t,sizeof(t)); // need to read the modes first
    amlSetString("/sys/class/graphics/fb0/mode", mode);

    Vielleicht muss der ursprüngliche mode beim DETA oder beenden des Plugins wieder auf den Ursprungswert zurückgesetzt werden?

    Ist das normal, dass cat /sys/class/graphics/fb0/modes nur U:1024x768p-75 zurückliefert?

    VDR1: Odroid N2+ mit CoreELEC und Ubuntu in chroot, 2x WinTV DualHD, Sandisk 2TB SSD

    VDR2: Tanix TX3 mit VDR*ELEC, WinTV DualHD, 500GB SSD

  • Bleibt noch der crash beim Start VDR mit ausgeschaltetem TV..

    Das kann ich hier nicht reproduzieren. Bei ausgeschaltetem TV und auch wennich das HDMI abziehe dann started der vdr ohne crash.

    Allerdings kann er dann nicht die Screenauflösung und Refresh setzen weil nach einem "Connected" Device dafür sucht.

    Kannst du von dem Crash mal ein bt einstellen ?

  • Das Problem ist, dass der Kernel zu crashen scheint, jedenfalls schreibe CoreElec fleißig in .cache/cores.

    Die Kernelmeldungen sind:

    Dec 24 13:48:36 CoreELEC kernel: frddrs[0] registered by device ff642000.audiobus:tdmb

    Dec 24 13:48:36 CoreELEC vdr.sh[1184]: FindDevice: open /dev/dri/card0: meson

    Dec 24 13:48:36 CoreELEC vdr[1184]: [FindDevice] DRM have 1 connectors, 1 crtcs, 2 encoders

    Dec 24 13:48:36 CoreELEC vdr[1184]: Connector >HDMI-A-1< is not connected

    Dec 24 13:48:36 CoreELEC vdr[1184]: Requested Connector not found or not connected

    Dec 24 13:48:36 CoreELEC vdr[1184]: VideoInit: FindDevice() failed

    Dec 24 13:48:36 CoreELEC vdr[1184]: amlGetString: error reading /sys/class/graphics/fb0/modes

    Dec 24 13:48:36 CoreELEC vdr[1184]: Initial Screen 0-0 set to 1920-1080

    Dec 24 13:48:36 CoreELEC vdr[1184]: Unable to get DMABUF

    Dec 24 13:48:36 CoreELEC kernel: frddrs[0] released by device ff642000.audiobus:tdmb

    Dec 24 13:48:42 CoreELEC vdr.sh[943]: Aborted (core dumped)

    Danach ist meine chroot-shell leider abgehängt, so dass ich nicht mit dem gdb daran komme. Ich muss da erst was umbauen, oder kannst du schon etwas erkennen?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!