Mex píše: ↑15. 9. 2020, 4:08
-> StoupaCZ:
S tím Ethernetem je to tam právě trochu složitější. Deska má SoC H3 od Allwinneru. Ethernet MAC je přímo v tom SoC. Umí i gigabit, ale integrovaný PHY je jen 100Mbit. Ty desky, které umí gigabit, pak používají externí PHY.
Ale tohle ještě není to složité, to je celkem běžná konfigurace.
Ale ten vlastní MAC používá driver "dwmac-sun8i". Jenže to není kompletní driver, ale jen mezivrstva, která zajišťuje kompatibilitu s driverem "stmmac", který běží pod ní. Ta síťovka od STM se používá i na jiných SoC.
Takže jinými slovy ta síťovka v H3 je "skoro jako STM", ale ne úplně. Proto tam musí být ta mezivrstva pro vyrovnání rozdílů.
No a teď jde o to, jestli to bude nebo nebude velká komplikace. Je možné, že ta mezivrstva nebude obsahovat nic, co by se muselo upravovat při úpravě driveru na speciální EtherCAT ražim. Pak by to nevadilo. Naopak by bylo dobré, že by se úpravy týkaly jen standardnějšího driveru "stmmac".
Jenže abych to zjistil, tak to znamená to napřed celé pořádně nastudovat, což už samo o sobě bude docela záhul.
Jinak ten upravený Debian (jménem Armbian) používá tenhle driver přímo v jádře. Tedy nikoli jako modul. Je to poměrně neobvyklé. Tak ještě může dojít k překvapení v tom, že je ten driver třeba napsaný tak, že se jako modul vůbec nedá použít. A to by tedy byl výdrb maximální.
Ale všechno tohle zjistit a ověřit děsně žere čas.
-> milan584:
Bohužel tam žádné RTLxxx není, viz výše.
Mimochodem co máš proti síťovkám Realtek? Tys na nějaké psal drivery nebo je nějak hlouběji studoval a máš k ním výhrady?
Já jsem na 10 a 100 Mbit/s Realteky psal drivery do zařízení úplně bez operačního systému (tehdy ještě v assembleru, což byla děsná práce). Do Linuxu jsem do nich dělal nějaké úpravy. A rozhodně proti nim žádné výhrady nemám.
Pokud si můžu vybrat, jestli můj stroj bude mít síťovku Realtek nebo jinou, tak vždy volím Realtek.
No ale tady u toho H3 na desce OPi to tak bohužel nejde.
-> robokop:
Když to padne, tak to právě skončí dost podivně. Ještě pro upřesnění - padne to tak po 3 hodinách chodu EtherCATu.
V té chvíli to přes vzdálený přístup jede stále normálně. I ten EC master pořád jede, normálně obsluhuje sběrnici atd.
Jen se na Xwindow nedá pracovat v terminálu. Otevřu terminálové okno, napíšu 2 znaky a to okno zmrzne. Přitom kláveska i myš normálně jedou. A ostatní programy taky. Můžu si například otevřít třeba editor Geany a normálně v něm dělat, takže obsluhou znaků z klávesnice to není.
K těm driverům: ty upravené drivery vůbec nevolají síťový stack v systému. A ještě používají takovou pěknou vychytávku pro zrychlení.
Obecně u komunikace po sítí se pořád něco někam kopíruje. Uživatelský program má ta data někde, ty se pak kopírují do bufferu driveru (někdy i opakovaně), ten je zase kopíruje do síťovky.
No a ten EtherCAT master se speciálními drivery funguje velmi chytře tak, že přímo namapuje uživatelská data (tedy obsah, který vytváří ten EtherCAT master) do paměti driveru, takže už se to nemusí zbytečně přesouvat. A tohle samořejmě u generických driverů nefunguje.
To psal někdo, kdo nad tím přemýšlel.