Am o placă de bază ASUS Pro WS X570-ACE, cu AMD Ryzen 5700G, cu Intel I211 Ethernet la bord, care rulează driver igb ver. 5.11.0-27. Acesta are și un Realtek Ethernet la bord, dar acesta este dezactivat în BIOS. Sistemul de operare este Linux Mint 20.2 care rulează kernel 5.11.0-27-generic.
De fiecare dată când sistemul de operare pornește, în ieșirea „dmesg” se afișează următoarele:
pps_core: LinuxPPS API ver. 1 inregistrat
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
pps pps0: noua sursă PPS ptp0
pps_ldisc: disciplina de linie PPS înregistrată
Și apar 2 dispozitive: /dev/pps0 și /dev/ptp0
Știu că portul Intel I211 este cel care face asta pentru că dacă rulez ethtool -T enp5s0
pe adaptor scrie:
Parametrii de marcare a timpului pentru enp5s0:
Capabilitati:
transmisie hardware (SOF_TIMESTAMPING_TX_HARDWARE)
software-transmit (SOF_TIMESTAMPING_TX_SOFTWARE)
recepție hardware (SOF_TIMESTAMPING_RX_HARDWARE)
primire software (SOF_TIMESTAMPING_RX_SOFTWARE)
ceas-sistem-software (SOF_TIMESTAMPING_SOFTWARE)
hardware-raw-clock (SOF_TIMESTAMPING_RAW_HARDWARE)
Ceas hardware PTP: 0
Moduri de marcare temporală a transmisiei hardware:
dezactivat (HWTSTAMP_TX_OFF)
activat (HWTSTAMP_TX_ON)
Moduri de filtrare de recepție hardware:
niciunul (HWTSTAMP_FILTER_NONE)
toate (HWTSTAMP_FILTER_ALL)
The Ceas hardware PTP: 0
înseamnă că aceasta creează /dev/ptp0 și, prin urmare, /dev/pps0. Iată o listă de dispozitive relevante în /dev/:
/dev/port /dev/ppp /dev/pps0 /dev/pps1 /dev/psaux /dev/ptmx /dev/ptp0 /dev/ptp1 /dev/ptp2
Motivul pentru care acest PTP este o problemă pentru mine este că folosesc un receptor GPS pentru a seta ora.
Am un receptor GPS conectat prin conectorul COM/Serial DB9 de la bord, pe care îl folosesc pentru a seta ora de pe computer la o precizie de microsecunde, utilizând Pulsul pe secundă (PPS) care intră pe pinul 1 peste seria. GPSD și CHRONY se ocupă de restul... dar problema este că GPSD își creează dispozitivul PPS la /dev/pps1, mai degrabă decât /dev/pps0 din cauza PTP. GPSD se așteaptă în mod normal ca sursa PPS să fie /dev/pps0. GPSD funcționează dacă specific în linia de comandă să mă refer la /dev/pps1 ca sursă PPS... dar durează mai multe minute pentru a bloca și sincroniza față de un computer care nu are PTP deloc...
pps_core: LinuxPPS API ver. 1 inregistrat
pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <[email protected]>
pps pps0: noua sursă PPS ptp0
pps_ldisc: disciplina de linie PPS înregistrată
pps pps1: noua sursă PPS serial0
pps pps1: sursa „/dev/ttyS0” adăugată
M-am uitat la manualul Ethtool și la ghidul de construire a driverului Intel IGB, dar nu există niciun parametru care să poată fi setat pentru a dezactiva HARDWARE_TIMESTAMPS. Ethtool are doar comutatorul -T, care arată capacitatea de marcare temporală... dar nu există opțiuni reale pe care le puteți seta prin ethtool -T/-t.
Întrebare: Există vreo modalitate de a dezactiva complet acest sistem PTP?