#ethernet #board #si-five #driver #cadence #macb #fu740

nightly cadence-macb

cadence-macb 以太网 Rust 驱动程序在 SiFive FU740 板上

1 个不稳定版本

0.1.0 2023年2月23日

#1207硬件支持

GPL-2.0 许可证

130KB
2.5K SLoC

Cadence Macb 以太网驱动程序

cadence-macb 以太网 Rust 驱动程序在 SiFive FU740 板上。

快速开始

初始化以太网驱动程序

pub struct MEM;
impl MemMapping for MEM {
    fn dma_alloc_coherent(pages: usize) -> usize {
        ...
    }
    fn dma_free_coherent(paddr: usize, pages: usize) {
        ...
    }
}

let mut macb_device = cadence_macb::eth_macb::open::<MEM>(&mac).unwrap();

发送网络数据包

cadence_macb::eth_macb_ops::macb_send(&mut macb_device, &packet);

接收网络数据包

cadence_macb::eth_macb_ops::macb_recv(&mut macb_device, &mut rx_buffer);

参考

  • Linux 和 U-Boot C 代码

依赖项

~88KB