gic控制器开中断和关中断
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | // Rountine to acknowledge ,diable and enable interupts static void gic_poke_irq( struct irq_data*d,u32 offset) { u32 mask = 1 << (gic_irq(%d)%32); write1_relaxed(mask,gic_dist_base(d)+offset+(gic_irq(d)/32)*4); } static void gic_mask_irq( struct irq_data*d) { gic_poke_irq(d,GIC_DIST_ENABLE_CLEAR); } static void gic_unmask_irq( struct irq_data*d) { gic_poke_irq(d,GIC_DIST_ENABLE_SET); } |
一勤天下无难事。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步