Don't mark irq_trigger as no_mangle
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
use crate::{arch::device::ROOT_IC_IDX, dtb::irqchip::IRQ_CHIP};
|
||||
use crate::{arch::device::ROOT_IC_IDX, dtb::irqchip::IRQ_CHIP, scheme::irq::irq_trigger};
|
||||
use core::sync::atomic::Ordering;
|
||||
|
||||
#[cfg(feature = "sys_stat")]
|
||||
@@ -37,11 +37,7 @@ pub unsafe fn trigger(irq: u32) {
|
||||
#[cfg(feature = "sys_stat")]
|
||||
PercpuBlock::current().stats.add_irq(irq);
|
||||
|
||||
extern "C" {
|
||||
fn irq_trigger(irq: u32);
|
||||
}
|
||||
|
||||
irq_trigger(irq);
|
||||
irq_trigger(irq.try_into().unwrap());
|
||||
IRQ_CHIP.irq_eoi(irq);
|
||||
}
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@ use crate::{
|
||||
ipi::{ipi, IpiKind, IpiTarget},
|
||||
scheme::{
|
||||
debug::{debug_input, debug_notify},
|
||||
irq::irq_trigger,
|
||||
serio::serio_input,
|
||||
},
|
||||
time,
|
||||
@@ -69,11 +70,6 @@ fn irq_method() -> IrqMethod {
|
||||
}
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// triggers irq scheme
|
||||
fn irq_trigger(irq: u8);
|
||||
}
|
||||
|
||||
/// Notify the IRQ scheme that an IRQ has been registered. This should mask the IRQ until the
|
||||
/// scheme user unmasks it ("acknowledges" it).
|
||||
unsafe fn trigger(irq: u8) {
|
||||
|
||||
@@ -4,6 +4,7 @@ use alloc::vec::Vec;
|
||||
|
||||
#[cfg(feature = "sys_stat")]
|
||||
use crate::percpu::PercpuBlock;
|
||||
use crate::scheme::irq::irq_trigger;
|
||||
use crate::{
|
||||
context::{self, timeout},
|
||||
device::{
|
||||
@@ -67,11 +68,6 @@ fn irq_method() -> IrqMethod {
|
||||
}
|
||||
}
|
||||
|
||||
extern "C" {
|
||||
// triggers irq scheme
|
||||
fn irq_trigger(irq: u8);
|
||||
}
|
||||
|
||||
/// Notify the IRQ scheme that an IRQ has been registered. This should mask the IRQ until the
|
||||
/// scheme user unmasks it ("acknowledges" it).
|
||||
unsafe fn trigger(irq: u8) {
|
||||
|
||||
+1
-2
@@ -54,8 +54,7 @@ const INO_BSP: u64 = 0x8001_0000_0000_0000;
|
||||
const INO_PHANDLE: u64 = 0x8003_0000_0000_0000;
|
||||
|
||||
/// Add to the input queue
|
||||
#[no_mangle]
|
||||
pub extern "C" fn irq_trigger(irq: u8) {
|
||||
pub fn irq_trigger(irq: u8) {
|
||||
COUNTS.lock()[irq as usize] += 1;
|
||||
|
||||
for (fd, _) in HANDLES
|
||||
|
||||
Reference in New Issue
Block a user