#arm64 #driver #interrupt-controller #gic #arm

no-std arm-gic-driver

A driver for the Arm Generic Interrupt Controller version 1-4

12 releases (5 breaking)

Uses new Rust 2024

new 0.7.1 Apr 10, 2025
0.7.0 Mar 7, 2025
0.6.1 Feb 18, 2025
0.5.2 Feb 14, 2025
0.2.1 Oct 21, 2024

#717 in Embedded development

Download history 26/week @ 2024-12-21 15/week @ 2024-12-28 27/week @ 2025-01-04 81/week @ 2025-01-11 73/week @ 2025-01-18 38/week @ 2025-01-25 45/week @ 2025-02-01 493/week @ 2025-02-08 352/week @ 2025-02-15 81/week @ 2025-02-22 163/week @ 2025-03-01 90/week @ 2025-03-08 30/week @ 2025-03-15 35/week @ 2025-03-22 20/week @ 2025-03-29 154/week @ 2025-04-05

245 downloads per month
Used in 4 crates (via sparreal-rt)

MIT license

33KB
930 lines

arm-gic-driver

介绍

arm gic 通用驱动,支持 v1-4

使用说明

use arm_gic_driver::*;

let mut v2 = v2::Gic::new(gicd, gicc).unwrap();
v2.enable_irq(irq_num);

let mut v3 = v3::Gic::new(gicd, gicr).unwrap();
v3.enable_irq(irq_num);
let mut cpuif = v3.current_cpu_setup();
let intid = cpuif.get_and_acknowledge_interrupt();

Dependencies

~0.8–1.3MB
~25K SLoC