Nel ramo net-next, in cui si sviluppano le modifiche per il kernel Linux 6.8, sono state incluse modifiche che aggiungono al kernel un primo wrapper Rust sopra il livello di astrazione phylib e utilizzando questo wrapper il driver ax88796b_rust, che fornisce supporto per l'interfaccia PHY del controller Ethernet Asix AX88772A (100MBit). Il driver include 135 righe di codice e si posiziona come un semplice esempio pratico per la creazione di driver di rete in linguaggio Rust, pronto per l'uso con l'hardware reale.
Per funzionalità, il driver in Rust è completamente equivalente al vecchio driver ax88796b, scritto in linguaggio C, e può essere utilizzato con le schede di rete X-Surf 100, dotate del chip AX88796B. Entrambi i driver, in C e in Rust, coesisteranno nel kernel e possono essere attivati in base alle preferenze degli utenti. Per abilitare il driver in Rust in Kconfig è prevista un'impostazione AX88796B_RUST_PHY, insieme alla quale, utilizzando il parametro RUST_PHYLIB_ABSTRACTIONS, è necessario abilitare anche il wrapper Rust sopra phylib.
Inoltre, è stato sviluppato un driver Ethernet Realtek Generic FE-GE in linguaggio Rust, che non è ancora stato proposto per l'inclusione nel kernel. In precedenza è stato presentato anche un prototipo di driver rust-e1000 per adattatori Ethernet Intel, riscritto in Rust.
Fonte: opennet.ru
