Lines Matching refs:inst
100 void hw_irq_ctrl_set_cur_prio(unsigned int inst, int new) in hw_irq_ctrl_set_cur_prio() argument
102 nhw_intctrl_st[inst].currently_running_prio = new; in hw_irq_ctrl_set_cur_prio()
105 int hw_irq_ctrl_get_cur_prio(unsigned int inst) in hw_irq_ctrl_get_cur_prio() argument
107 return nhw_intctrl_st[inst].currently_running_prio; in hw_irq_ctrl_get_cur_prio()
110 void hw_irq_ctrl_prio_set(unsigned int inst, unsigned int irq, unsigned int prio) in hw_irq_ctrl_prio_set() argument
112 nhw_intctrl_st[inst].irq_prio[irq] = prio; in hw_irq_ctrl_prio_set()
115 uint8_t hw_irq_ctrl_get_prio(unsigned int inst, unsigned int irq) in hw_irq_ctrl_get_prio() argument
117 return nhw_intctrl_st[inst].irq_prio[irq]; in hw_irq_ctrl_get_prio()
120 static inline bool irq_status_not_zero(unsigned int inst) { in irq_status_not_zero() argument
122 if (nhw_intctrl_st[inst].irq_status[i] != 0) { in irq_status_not_zero()
135 int hw_irq_ctrl_get_highest_prio_irq(unsigned int inst) in hw_irq_ctrl_get_highest_prio_irq() argument
137 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_get_highest_prio_irq()
163 uint32_t hw_irq_ctrl_get_current_lock(unsigned int inst) in hw_irq_ctrl_get_current_lock() argument
165 return nhw_intctrl_st[inst].irqs_locked; in hw_irq_ctrl_get_current_lock()
173 uint32_t hw_irq_ctrl_change_lock(unsigned int inst, uint32_t new_lock) in hw_irq_ctrl_change_lock() argument
175 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_change_lock()
181 if (irq_status_not_zero(inst)) { in hw_irq_ctrl_change_lock()
182 nsif_cpun_irq_raised_from_sw(inst); in hw_irq_ctrl_change_lock()
188 void hw_irq_ctrl_clear_all_enabled_irqs(unsigned int inst) in hw_irq_ctrl_clear_all_enabled_irqs() argument
190 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_clear_all_enabled_irqs()
205 void hw_irq_ctrl_clear_all_irqs(unsigned int inst) in hw_irq_ctrl_clear_all_irqs() argument
207 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_clear_all_irqs()
221 void hw_irq_ctrl_disable_irq(unsigned int inst, unsigned int irq) in hw_irq_ctrl_disable_irq() argument
223 nhw_intctrl_st[inst].irq_mask[irq/64] &= ~((uint64_t)1<<(irq%64)); in hw_irq_ctrl_disable_irq()
233 int hw_irq_ctrl_is_irq_enabled(unsigned int inst, unsigned int irq) in hw_irq_ctrl_is_irq_enabled() argument
235 return (nhw_intctrl_st[inst].irq_mask[irq/64] & ((uint64_t)1 << (irq%64)))?1:0; in hw_irq_ctrl_is_irq_enabled()
245 int hw_irq_ctrl_is_irq_pending(unsigned int inst, unsigned int irq) in hw_irq_ctrl_is_irq_pending() argument
247 return (nhw_intctrl_st[inst].irq_premask[irq/64] & ((uint64_t)1 << (irq%64)))?1:0; in hw_irq_ctrl_is_irq_pending()
257 void hw_irq_ctrl_clear_irq(unsigned int inst, unsigned int irq) in hw_irq_ctrl_clear_irq() argument
259 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_clear_irq()
276 void hw_irq_ctrl_reeval_level_irq(unsigned int inst, unsigned int irq) in hw_irq_ctrl_reeval_level_irq() argument
278 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_reeval_level_irq()
302 void hw_irq_ctrl_enable_irq(unsigned int inst, unsigned int irq) in hw_irq_ctrl_enable_irq() argument
304 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_enable_irq()
310 hw_irq_ctrl_raise_im_from_sw(inst, irq); in hw_irq_ctrl_enable_irq()
317 int hw_irq_ctrl_set_wake_even_if_lock(unsigned int inst, int value) in hw_irq_ctrl_set_wake_even_if_lock() argument
319 int current = nhw_intctrl_st[inst].wake_even_if_lock; in hw_irq_ctrl_set_wake_even_if_lock()
320 nhw_intctrl_st[inst].wake_even_if_lock = (value!=0); in hw_irq_ctrl_set_wake_even_if_lock()
324 static inline void hw_irq_ctrl_irq_raise_prefix(unsigned int inst, unsigned int irq) in hw_irq_ctrl_irq_raise_prefix() argument
326 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_irq_raise_prefix()
353 void hw_irq_ctrl_set_irq(unsigned int inst, unsigned int irq) in hw_irq_ctrl_set_irq() argument
355 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_set_irq()
357 hw_irq_ctrl_irq_raise_prefix(inst, irq); in hw_irq_ctrl_set_irq()
386 void hw_irq_ctrl_raise_level_irq_line(unsigned int inst, unsigned int irq) in hw_irq_ctrl_raise_level_irq_line() argument
388 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_raise_level_irq_line()
399 hw_irq_ctrl_set_irq(inst, irq); in hw_irq_ctrl_raise_level_irq_line()
411 void hw_irq_ctrl_lower_level_irq_line(unsigned int inst, unsigned int irq) in hw_irq_ctrl_lower_level_irq_line() argument
419 nhw_intctrl_st[inst].irq_lines[irq_idx] &= ~irq_bit; in hw_irq_ctrl_lower_level_irq_line()
423 static void irq_raising_from_hw_now(unsigned int inst) in irq_raising_from_hw_now() argument
425 struct intctrl_status *this = &nhw_intctrl_st[inst]; in irq_raising_from_hw_now()
433 nsif_cpun_irq_raised(inst); in irq_raising_from_hw_now()
446 void hw_irq_ctrl_raise_im(unsigned int inst, unsigned int irq) in hw_irq_ctrl_raise_im() argument
448 hw_irq_ctrl_irq_raise_prefix(inst, irq); in hw_irq_ctrl_raise_im()
449 irq_raising_from_hw_now(inst); in hw_irq_ctrl_raise_im()
457 void hw_irq_ctrl_raise_im_from_sw(unsigned int inst, unsigned int irq) in hw_irq_ctrl_raise_im_from_sw() argument
459 hw_irq_ctrl_irq_raise_prefix(inst, irq); in hw_irq_ctrl_raise_im_from_sw()
461 struct intctrl_status *this = &nhw_intctrl_st[inst]; in hw_irq_ctrl_raise_im_from_sw()
464 nsif_cpun_irq_raised_from_sw(inst); in hw_irq_ctrl_raise_im_from_sw()
491 const char *hw_irq_ctrl_get_name(unsigned int inst, unsigned int irq) in hw_irq_ctrl_get_name() argument
495 if ((inst < NHW_INTCTRL_TOTAL_INST) && (irq < NHW_INTCTRL_MAX_INTLINES)) { in hw_irq_ctrl_get_name()
496 return irqnames[inst][irq]; in hw_irq_ctrl_get_name()