LinuxCNC na OrangePi

StoupaCZ
Příspěvky: 264
Registrován: 2. 6. 2017, 8:12

15. 9. 2020, 6:41

A co je na tom Orange Pi PC za ethernet chip? Nedaří se mi to dohledat.

Jinak bych chápal, že ty síťovky na generic driver nebudou fungovat úplně dobře, když si tam dneska výrobci chipů vymýšlejí svoje vylepšení.
milan584
Příspěvky: 1803
Registrován: 12. 5. 2009, 2:17
Bydliště: na jihu

15. 9. 2020, 7:20

StoupaCZ píše:
15. 9. 2020, 6:41
A co je na tom Orange Pi PC za ethernet chip? Nedaří se mi to dohledat.

Jinak bych chápal, že ty síťovky na generic driver nebudou fungovat úplně dobře, když si tam dneska výrobci chipů vymýšlejí svoje vylepšení.
podle mě je tam nějaký šialený čínský SOC a RTL8152B nebo RTL8211.
Takže ten ethernet pak funguje, jako na realteku :lol: :oops:
Uživatelský avatar
robokop
Site Admin
Příspěvky: 18255
Registrován: 10. 7. 2006, 12:12
Bydliště: Praha
Kontaktovat uživatele:

15. 9. 2020, 7:25

to je zajimavy, to ty X proste zamrznou nebo treba jen kbd a mys?

s tou sitovkou se v ethervatu nepracuje uplne normalne viz ty interrupty
tj. je to citlive na casovani a kdyz mas ten specializovany driver tak to mas jakoby na jedne priorite s tim realtimovym modulem pro ethercat kdezto kdyz tam mas ten generic tak si to ty data prez ten generic odlozi a posle do normalni systemove sitovky az to bude normalni cast linuxovyho jadra zpracovat
takhle nejak to chapu ja...
do hloubky jsem to nestudoval jako treba mex
Vsechna prava na chyby vyhrazena (E)
Mex
Příspěvky: 7314
Registrován: 6. 2. 2014, 10:29

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.
StoupaCZ
Příspěvky: 264
Registrován: 2. 6. 2017, 8:12

16. 9. 2020, 6:03

Díky Mexi za informace. Pohybuješ se o úrověň až dvě níže než já. Musel bych asi nastudovat 2x tolik informací než ty :) Nicméně je to určitě zajímavá oblast k řešení a představa mít takto malý a funkční systém lákavá. Budu si muset to OPi taky pořídit a začít si s ním hrát :)
milan584
Příspěvky: 1803
Registrován: 12. 5. 2009, 2:17
Bydliště: na jihu

16. 9. 2020, 6:36

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.
To orange sleduji pouze z povzdálí - variant mraky, co typ co jiný chipset, u některých je tuším použitý přímo realtek chip, ne SOC, u některých je určitě SOC.
Realtek je realtek - s některými typy síťověk byly (jsou) fatální problémy, některé (asi tak jeden :D ) naopak jsou docela povedené.
Jinak co oproti nim mám - nic - sám je použáívám - ale ne tam, kde o něco zásadního jde - zkus si zjisitit, proč slušná síťovka pro nějaký server a nebo router zásadně není od realteku ale třeba od Intelu a klidně za 10x vyšší peníze.
Mj, pro tyhle realtime síťové protokoly je třeba aby i ostatní síťový HW včetně kabeláže byl slušné kategorie - protože jinak budeš bojovat s zxxxxxnýma komponentama a ne s sw.
Mex
Příspěvky: 7314
Registrován: 6. 2. 2014, 10:29

16. 9. 2020, 4:43

milan584 píše:
16. 9. 2020, 6:36
To orange sleduji pouze z povzdálí - variant mraky, co typ co jiný chipset, u některých je tuším použitý přímo realtek chip, ne SOC, u některých je určitě SOC.
Tak OPi se síťovkou Realtek bych tedy moc rád. Ale kde ho vzít?
milan584 píše:
16. 9. 2020, 6:36
Realtek je realtek - s některými typy síťověk byly (jsou) fatální problémy, některé (asi tak jeden :D ) naopak jsou docela povedené.
Jinak co oproti nim mám - nic - sám je použáívám - ale ne tam, kde o něco zásadního jde - zkus si zjisitit, proč slušná síťovka pro nějaký server a nebo router zásadně není od realteku ale třeba od Intelu a klidně za 10x vyšší peníze.
No to právě nevím. Ale až budu velký, tak na to snad přijdu. Možná tam pak běhají značkové elektrony?
milan584 píše:
16. 9. 2020, 6:36
Mj, pro tyhle realtime síťové protokoly je třeba aby i ostatní síťový HW včetně kabeláže byl slušné kategorie - protože jinak budeš bojovat s zxxxxxnýma komponentama a ne s sw.
A jéje! A tos mi to nemohl říct před 32 roky, když jsem se sítěmi začínal? :(
milan584
Příspěvky: 1803
Registrován: 12. 5. 2009, 2:17
Bydliště: na jihu

16. 9. 2020, 6:54

Mex píše:
16. 9. 2020, 4:43
milan584 píše:
16. 9. 2020, 6:36
To orange sleduji pouze z povzdálí - variant mraky, co typ co jiný chipset, u některých je tuším použitý přímo realtek chip, ne SOC, u některých je určitě SOC.
Tak OPi se síťovkou Realtek bych tedy moc rád. Ale kde ho vzít?
milan584 píše:
16. 9. 2020, 6:36
Realtek je realtek - s některými typy síťověk byly (jsou) fatální problémy, některé (asi tak jeden :D ) naopak jsou docela povedené.
Jinak co oproti nim mám - nic - sám je použáívám - ale ne tam, kde o něco zásadního jde - zkus si zjisitit, proč slušná síťovka pro nějaký server a nebo router zásadně není od realteku ale třeba od Intelu a klidně za 10x vyšší peníze.
No to právě nevím. Ale až budu velký, tak na to snad přijdu. Možná tam pak běhají značkové elektrony?
milan584 píše:
16. 9. 2020, 6:36
Mj, pro tyhle realtime síťové protokoly je třeba aby i ostatní síťový HW včetně kabeláže byl slušné kategorie - protože jinak budeš bojovat s zxxxxxnýma komponentama a ne s sw.
A jéje! A tos mi to nemohl říct před 32 roky, když jsem se sítěmi začínal? :(
Myslím, že jsi to pouze nepochopil.
Podle mě je ten pomeranč svojí koncepcí a provedením asi ideální dlouhodobý až nekonečný :) výzkumný objekt na realtime řízení - cca asi jako jít sekat fotbalový hřiště strunovou sekačkou za 1500,- od jistého Béďi Trávníčka.
Cesta byla sice delší, ale horší. A že se to sxxxo, to už byl jenom bonus.
Oni totiž možná všichni nejsou úplní dexxxxvé - když na ne právě jednoduchý věci, používají pokud možno vyzkoušený hw a LTS (a ještě ne každý) distribuce.
Mex
Příspěvky: 7314
Registrován: 6. 2. 2014, 10:29

16. 9. 2020, 7:23

milan584 píše:
16. 9. 2020, 6:54
Myslím, že jsi to pouze nepochopil.
Podle mě je ten pomeranč svojí koncepcí a provedením asi ideální dlouhodobý až nekonečný :) výzkumný objekt na realtime řízení - cca asi jako jít sekat fotbalový hřiště strunovou sekačkou za 1500,- od jistého Béďi Trávníčka.
Cesta byla sice delší, ale horší. A že se to sxxxo, to už byl jenom bonus.
Oni totiž možná všichni nejsou úplní dexxxxvé - když na ne právě jednoduchý věci, používají pokud možno vyzkoušený hw a LTS (a ještě ne každý) distribuce.
Jojo, určitě máš pravdu.
Skvěle podložená analýza. Díky za ni.
Okamžitě jdu od toho.
Odpovědět

Zpět na „LinuxCNC - drive pod nazvem EMC2“