Lines Matching refs:driver_data
22 static const gicv2_driver_data_t *driver_data; variable
39 assert(driver_data != NULL); in gicv2_cpuif_enable()
40 assert(driver_data->gicc_base != 0U); in gicv2_cpuif_enable()
50 gicc_write_pmr(driver_data->gicc_base, GIC_PRI_MASK); in gicv2_cpuif_enable()
51 gicc_write_ctlr(driver_data->gicc_base, val); in gicv2_cpuif_enable()
62 assert(driver_data != NULL); in gicv2_cpuif_disable()
63 assert(driver_data->gicc_base != 0U); in gicv2_cpuif_disable()
66 val = gicc_read_ctlr(driver_data->gicc_base); in gicv2_cpuif_disable()
70 gicc_write_ctlr(driver_data->gicc_base, val); in gicv2_cpuif_disable()
81 assert(driver_data != NULL); in gicv2_pcpu_distif_init()
82 assert(driver_data->gicd_base != 0U); in gicv2_pcpu_distif_init()
84 gicv2_secure_ppi_sgi_setup_props(driver_data->gicd_base, in gicv2_pcpu_distif_init()
85 driver_data->interrupt_props, in gicv2_pcpu_distif_init()
86 driver_data->interrupt_props_num); in gicv2_pcpu_distif_init()
89 ctlr = gicd_read_ctlr(driver_data->gicd_base); in gicv2_pcpu_distif_init()
91 gicd_write_ctlr(driver_data->gicd_base, in gicv2_pcpu_distif_init()
105 assert(driver_data != NULL); in gicv2_distif_init()
106 assert(driver_data->gicd_base != 0U); in gicv2_distif_init()
109 ctlr = gicd_read_ctlr(driver_data->gicd_base); in gicv2_distif_init()
110 gicd_write_ctlr(driver_data->gicd_base, in gicv2_distif_init()
114 gicv2_spis_configure_defaults(driver_data->gicd_base); in gicv2_distif_init()
116 gicv2_secure_spis_configure_props(driver_data->gicd_base, in gicv2_distif_init()
117 driver_data->interrupt_props, in gicv2_distif_init()
118 driver_data->interrupt_props_num); in gicv2_distif_init()
122 gicd_write_ctlr(driver_data->gicd_base, ctlr | CTLR_ENABLE_G0_BIT); in gicv2_distif_init()
158 driver_data = plat_driver_data; in gicv2_driver_init()
169 flush_dcache_range((uintptr_t) &driver_data, sizeof(driver_data)); in gicv2_driver_init()
170 flush_dcache_range((uintptr_t) driver_data, sizeof(*driver_data)); in gicv2_driver_init()
182 assert(driver_data != NULL); in gicv2_is_fiq_enabled()
183 assert(driver_data->gicc_base != 0U); in gicv2_is_fiq_enabled()
185 gicc_ctlr = gicc_read_ctlr(driver_data->gicc_base); in gicv2_is_fiq_enabled()
199 assert(driver_data != NULL); in gicv2_get_pending_interrupt_type()
200 assert(driver_data->gicc_base != 0U); in gicv2_get_pending_interrupt_type()
202 return gicc_read_hppir(driver_data->gicc_base) & INT_ID_MASK; in gicv2_get_pending_interrupt_type()
214 assert(driver_data != NULL); in gicv2_get_pending_interrupt_id()
215 assert(driver_data->gicc_base != 0U); in gicv2_get_pending_interrupt_id()
217 id = gicc_read_hppir(driver_data->gicc_base) & INT_ID_MASK; in gicv2_get_pending_interrupt_id()
224 id = gicc_read_ahppir(driver_data->gicc_base) & INT_ID_MASK; in gicv2_get_pending_interrupt_id()
236 assert(driver_data != NULL); in gicv2_acknowledge_interrupt()
237 assert(driver_data->gicc_base != 0U); in gicv2_acknowledge_interrupt()
239 return gicc_read_IAR(driver_data->gicc_base); in gicv2_acknowledge_interrupt()
248 assert(driver_data != NULL); in gicv2_end_of_interrupt()
249 assert(driver_data->gicc_base != 0U); in gicv2_end_of_interrupt()
260 gicc_write_EOIR(driver_data->gicc_base, id); in gicv2_end_of_interrupt()
271 assert(driver_data != NULL); in gicv2_get_interrupt_group()
272 assert(driver_data->gicd_base != 0U); in gicv2_get_interrupt_group()
274 return gicd_get_igroupr(driver_data->gicd_base, id); in gicv2_get_interrupt_group()
283 assert(driver_data != NULL); in gicv2_get_running_priority()
284 assert(driver_data->gicc_base != 0U); in gicv2_get_running_priority()
286 return gicc_read_rpr(driver_data->gicc_base); in gicv2_get_running_priority()
297 assert(driver_data != NULL); in gicv2_set_pe_target_mask()
298 assert(driver_data->gicd_base != 0U); in gicv2_set_pe_target_mask()
299 assert(driver_data->target_masks != NULL); in gicv2_set_pe_target_mask()
301 assert(proc_num < driver_data->target_masks_num); in gicv2_set_pe_target_mask()
304 if (driver_data->target_masks[proc_num] != 0U) { in gicv2_set_pe_target_mask()
311 if (driver_data->target_masks[proc_num] == 0U) { in gicv2_set_pe_target_mask()
312 driver_data->target_masks[proc_num] = in gicv2_set_pe_target_mask()
313 gicv2_get_cpuif_id(driver_data->gicd_base); in gicv2_set_pe_target_mask()
323 &driver_data->target_masks[proc_num], in gicv2_set_pe_target_mask()
324 sizeof(driver_data->target_masks[proc_num])); in gicv2_set_pe_target_mask()
335 assert(driver_data != NULL); in gicv2_get_interrupt_active()
336 assert(driver_data->gicd_base != 0U); in gicv2_get_interrupt_active()
339 return gicd_get_isactiver(driver_data->gicd_base, id); in gicv2_get_interrupt_active()
347 assert(driver_data != NULL); in gicv2_enable_interrupt()
348 assert(driver_data->gicd_base != 0U); in gicv2_enable_interrupt()
356 gicd_set_isenabler(driver_data->gicd_base, id); in gicv2_enable_interrupt()
364 assert(driver_data != NULL); in gicv2_disable_interrupt()
365 assert(driver_data->gicd_base != 0U); in gicv2_disable_interrupt()
372 gicd_set_icenabler(driver_data->gicd_base, id); in gicv2_disable_interrupt()
382 assert(driver_data != NULL); in gicv2_set_interrupt_priority()
383 assert(driver_data->gicd_base != 0U); in gicv2_set_interrupt_priority()
386 gicd_set_ipriorityr(driver_data->gicd_base, id, priority); in gicv2_set_interrupt_priority()
395 assert(driver_data != NULL); in gicv2_set_interrupt_group()
396 assert(driver_data->gicd_base != 0U); in gicv2_set_interrupt_group()
403 gicd_set_igroupr(driver_data->gicd_base, id); in gicv2_set_interrupt_group()
406 gicd_clr_igroupr(driver_data->gicd_base, id); in gicv2_set_interrupt_group()
425 assert(driver_data != NULL); in gicv2_raise_sgi()
428 assert(driver_data->gicd_base != 0U); in gicv2_raise_sgi()
434 assert(driver_data->target_masks != NULL); in gicv2_raise_sgi()
435 assert(proc_num < (int)driver_data->target_masks_num); in gicv2_raise_sgi()
438 target = driver_data->target_masks[proc_num]; in gicv2_raise_sgi()
448 gicd_write_sgir(driver_data->gicd_base, sgir_val); in gicv2_raise_sgi()
461 assert(driver_data != NULL); in gicv2_set_spi_routing()
462 assert(driver_data->gicd_base != 0U); in gicv2_set_spi_routing()
470 assert(driver_data->target_masks != NULL); in gicv2_set_spi_routing()
472 assert(driver_data->target_masks_num < INT_MAX); in gicv2_set_spi_routing()
473 assert(proc_num < (int)driver_data->target_masks_num); in gicv2_set_spi_routing()
480 target = driver_data->target_masks[proc_num]; in gicv2_set_spi_routing()
484 gicd_set_itargetsr(driver_data->gicd_base, id, target); in gicv2_set_spi_routing()
492 assert(driver_data != NULL); in gicv2_clear_interrupt_pending()
493 assert(driver_data->gicd_base != 0U); in gicv2_clear_interrupt_pending()
502 gicd_set_icpendr(driver_data->gicd_base, id); in gicv2_clear_interrupt_pending()
511 assert(driver_data != NULL); in gicv2_set_interrupt_pending()
512 assert(driver_data->gicd_base != 0U); in gicv2_set_interrupt_pending()
522 gicd_set_ispendr(driver_data->gicd_base, id); in gicv2_set_interrupt_pending()
533 assert(driver_data != NULL); in gicv2_set_pmr()
534 assert(driver_data->gicc_base != 0U); in gicv2_set_pmr()
536 old_mask = gicc_read_pmr(driver_data->gicc_base); in gicv2_set_pmr()
543 gicc_write_pmr(driver_data->gicc_base, mask); in gicv2_set_pmr()
555 gicd_set_icfgr(driver_data->gicd_base, id, cfg); in gicv2_interrupt_set_cfg()