DOS auf Synology -- um RTL8111H LAN Chips nach Chipwechsel neu zu programmieren

Hagen2000

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
370
Punkte für Reaktionen
135
Punkte
43
Vor allem man braucht diese pgdrv.ko datei so wie ich es verstehe nur einmal kompilieren danach kann ich sie dann für alles Syno Geräte in denen der RTL8111H drin ist verwenden.
Naja, die Kernel-Module müssen normalerweise spezifisch für eine bestimmte Kernelversion und natürlich Architektur übersetzt werden. Da ist halt die Frage, ob dieser Chip nur mit Intel-CPUs verwendet wurde oder auch beispielsweise mit ARM-CPUs.
 
  • Like
Reaktionen: Iarn

Iarn

Benutzer
Sehr erfahren
Mitglied seit
16. Jun 2012
Beiträge
3.019
Punkte für Reaktionen
429
Punkte
149
Zwischenzeitlich habe ich aber auch ein Linux Variante von dem Tool gefunden die in der Synology laufen könnte -
und wie mich alle hier schon kennen - Linux ist nicht meine Sprache - haut mich :)
Hagen2000 hat das eigentlich schon ganz gut erklärt aber das Hauptproblem ist, dass DSM 7.2 zwar auch Linux aufbaut, aber ein sehr spezieller Dialekt ist, um mal bei der Sprach Allegorie zu bleiben. Quasi wie ein betrunkener, zahnloser, 80 jähriger Almödi aus einem sehr inzestgeprägten Tal.
Zum einen ist der Kernel schon 8 Jahre alt und zum anderen fehlt Synology 90% der sonst bei Linux inkludierten Tools. Dazu sind die Rechteverwaltung und die Konfigfiles ein Eigengebräu.
Dau kommt, dass Synology gar nicht vorsieht, dass man auf der Zielhardware entwickelt, sondern den Weg des Crosscompiling geht. An und für sich ist Crosscompiling nichts ehrenrühriges, aber normalerweise macht man das nur, wenn die Zielumgebung zu limitiert ist, um darauf zu entwickeln. Auf einer x86/amd64 Umgebung für Arduino Crosscompiling macht schon Sinn wenn man sich die Mächtigkeit der Chip Architekturen im Vergleich ansieht. Keine der von Synology verwendeten CPU Architekturen benötigt Crosscompiling, man hat halt bei Synology den Weg so vorgesehen.
Warum schreibe ich das. Viele auch Du verfluchen Linux, weil sie vor einem zugenagelten DSM7.2 stehen, aber das hat nichts mit dem allgemeinen Schwierigkeitslevel von Linux zu tun. Sondern damit, dass man versucht von einem betrunkenen, zahnlosen, 80 jährigen Almödi aus einem sehr inzestgeprägten Tal versucht, eine neue Sprache zu lernen :)
Vieles was auf Synology nicht oder nur mit extremen Verrenkungen geht, ist bei einem up to date Linux kein Problem. Das sollte man immer im Hinterkopf haben :)
 
  • Like
Reaktionen: TN-Notebooks

TN-Notebooks

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
30. Mai 2019
Beiträge
278
Punkte für Reaktionen
264
Punkte
113
Feedback ----- Es funktioniert

erst mal Danke für all eure Infos und Tips - diese haben bei der Lösung geholfen

Es funktioniert auf dem ersten Gerät - aktuell habe ich eine DS920+ mit DSM 7.2.2

Ich habe es aber nicht selber geschafft sondern einen Programmierer beauftragt. Er hat dann für die DS920+ mit DSM 7.2.2 eine pgdrv.ko per Crosscompiling erstellt. Es gab viele Hindernisse dabei . Die Beschreibungen von Synology wie die Developer Oberfläche funktioniert ist Lückenhaft und hat Fehler. Dazu kommt das in der aktuellen Version 7 auch wieder viel rausgenommen wurde. Und die älteren Versionen sind eher schwer zu finden.

Fazit es funktioniert jetzt schon mal auf diesem Gerät / Plattform Geminilake
alle anderen Plattformen muss ich es erst mal testen

Die Geräte LAN Ports sind dabei nicht nutzbar - man muss per 3 Pol Terminal Kabel und Putty auf die Station.

einen kleinen Fehler am Treiber muss er aber noch beheben - was aufgrund von Synology auch wieder eine Herausforderung wird. Er fängt an sich einzulesen.
Was sagt euch denn die Fehlermeldung nach dem Laden vom "pgdrv.ko" Treiber ?

ash-4.4# lsmod | grep r81
r8168 540240 0
ash-4.4# rmmod r8168
[ 200.482866] Module [r8168] is removed.
[ 200.496890] Reinit 1 8001
[ 200.500009] Reinit 2 1
[ 200.525644] Reinit 1 8001
[ 200.528776] Reinit 2 1
ash-4.4# lsmod | grep r81

ash-4.4# insmod pgdrv.ko
[ 218.052754] pgdrv: module verification failed: signature and/or required key missing - tainting kernel
[ 218.063288] pgtool 0000:02:00.0: can't disable ASPM; OS doesn't have ASPM control
[ 218.071740] pgtool 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control

ash-4.4# lsmod | grep pgd
pgdrv 4368 0
ash-4.4#
ash-4.4#
ash-4.4# ./rtnicpg-x86_64 /efuse /# 2 /v

*************************************************************************
* EEPROM/EFUSE/FLASH Programming Utility for *
* Realtek PCI(e) FE/GbE/2.5GbE Family Ethernet Controller *
* Version : 2.76.0.3 *
* Copyright (C) 2022 Realtek Semiconductor Corp.. All Rights Reserved. *
*************************************************************************

2.
This is RTL8168H
Use EFuse
NODE ID: 00 E0 4C 68 00 03 IOBASE:0x7f63fcef2000 IRQ:FF
EFuse Remain 141 Bytes!!!

ash-4.4# ./rtnicpg-x86_64 /efuse /# 1 /v

*************************************************************************
* EEPROM/EFUSE/FLASH Programming Utility for *
* Realtek PCI(e) FE/GbE/2.5GbE Family Ethernet Controller *
* Version : 2.76.0.3 *
* Copyright (C) 2022 Realtek Semiconductor Corp.. All Rights Reserved. *
*************************************************************************

1.
This is RTL8168H
Use EFuse
NODE ID: 00 E0 4C 68 00 02 IOBASE:0x7f9a47209000 IRQ:FF
EFuse Remain 141 Bytes!!!

ash-4.4#
 
Zuletzt bearbeitet:

Hagen2000

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
370
Punkte für Reaktionen
135
Punkte
43
Gratulation!
Meinst Du die Meldung bzgl. der module verification?
Vermutlich müsstest Du das Modul mit einem Entwicklerzertifikat signieren, damit diese Meldung verschwindet. Evtl. kannst Du eines von Synology bekommen (vermutlich gegen Bezahlung). Aber wenn das Modul trotzdem geladen wird, würde ich es eher als Warnung verstehen. Offensichtlich ist der Kernel ja so konfiguriert, dass er das Modul nicht ablehnt.
 

TN-Notebooks

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
30. Mai 2019
Beiträge
278
Punkte für Reaktionen
264
Punkte
113
Eigentlich alle 3 Zeilen und nicht nur die Verification

[ 218.052754] pgdrv: module verification failed: signature and/or required key missing - tainting kernel
[ 218.063288] pgtool 0000:02:00.0: can't disable ASPM; OS doesn't have ASPM control
[ 218.071740] pgtool 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control
 

Hagen2000

Benutzer
Mitglied seit
25. Mai 2016
Beiträge
370
Punkte für Reaktionen
135
Punkte
43
Dito - kannst ja mal googeln nach „ASPM kernel“.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat