Lines Matching refs:ds

58 static void gic_raise_softirq(struct pl390_dist_driver_state * ds, uint8_t cpumask, uint8_t irq)
61 pl390_gic_dist_ICDSGIR_wr(&ds->devgic, regval);
65 static errval_t pl390_dist_init(struct pl390_dist_driver_state * ds, mackerel_addr_t reg_base){
66 pl390_gic_dist_initialize(&ds->devgic, reg_base);
69 pl390_gic_dist_ICDICTR_t gic_config = pl390_gic_dist_ICDICTR_rd(&ds->devgic);
76 ds->it_num_lines = 32*(it_num_lines_tmp + 1);
77 ds->cpu_count = pl390_gic_dist_ICDICTR_cpu_number_extract(gic_config) + 1;
79 ds->cpu_index = 0;
81 PL390_DEBUG("interrupt lines = %d, cpu_count = %d\n", ds->it_num_lines,
82 ds->cpu_count);
85 pl390_gic_dist_ICDDCR_enable_wrf(&ds->devgic, 0x1);
105 static errval_t enable_interrupt(struct pl390_dist_driver_state *ds, int int_id,
109 pl390_gic_dist_ICDDCR_enable_wrf(&ds->devgic, 0x0);
119 if(!(irq_type == IrqType_SPI && int_id <= ds->it_num_lines))
121 PL390_DEBUG("invalid int_id=%d on cpu=%d\n", int_id, ds->cpu_index);
127 uint32_t regval = pl390_gic_dist_ICDISER_rd(&ds->devgic, ind);
129 pl390_gic_dist_ICDISER_wr(&ds->devgic, ind, regval);
142 pl390_gic_dist_ICDIPR_prio_off0_wrf(&ds->devgic, ind, prio);
145 pl390_gic_dist_ICDIPR_prio_off1_wrf(&ds->devgic, ind, prio);
148 pl390_gic_dist_ICDIPR_prio_off2_wrf(&ds->devgic, ind, prio);
151 pl390_gic_dist_ICDIPR_prio_off3_wrf(&ds->devgic, ind, prio);
161 pl390_gic_dist_ICDIPTR_targets_off0_wrf(&ds->devgic, ind, cpu_targets);
164 pl390_gic_dist_ICDIPTR_targets_off1_wrf(&ds->devgic, ind, cpu_targets);
167 pl390_gic_dist_ICDIPTR_targets_off2_wrf(&ds->devgic, ind, cpu_targets);
170 pl390_gic_dist_ICDIPTR_targets_off3_wrf(&ds->devgic, ind, cpu_targets);
181 pl390_gic_dist_ICDICR_conf0_wrf(&ds->devgic, ind, val);
184 pl390_gic_dist_ICDICR_conf1_wrf(&ds->devgic, ind, val);
187 pl390_gic_dist_ICDICR_conf2_wrf(&ds->devgic, ind, val);
190 pl390_gic_dist_ICDICR_conf3_wrf(&ds->devgic, ind, val);
193 pl390_gic_dist_ICDICR_conf4_wrf(&ds->devgic, ind, val);
196 pl390_gic_dist_ICDICR_conf5_wrf(&ds->devgic, ind, val);
199 pl390_gic_dist_ICDICR_conf6_wrf(&ds->devgic, ind, val);
202 pl390_gic_dist_ICDICR_conf7_wrf(&ds->devgic, ind, val);
205 pl390_gic_dist_ICDICR_conf8_wrf(&ds->devgic, ind, val);
208 pl390_gic_dist_ICDICR_conf9_wrf(&ds->devgic, ind, val);
211 pl390_gic_dist_ICDICR_conf10_wrf(&ds->devgic, ind, val);
214 pl390_gic_dist_ICDICR_conf11_wrf(&ds->devgic, ind, val);
217 pl390_gic_dist_ICDICR_conf12_wrf(&ds->devgic, ind, val);
220 pl390_gic_dist_ICDICR_conf13_wrf(&ds->devgic, ind, val);
223 pl390_gic_dist_ICDICR_conf14_wrf(&ds->devgic, ind, val);
226 pl390_gic_dist_ICDICR_conf15_wrf(&ds->devgic, ind, val);
231 pl390_gic_dist_ICDDCR_enable_wrf(&ds->devgic, 0x1);
259 struct pl390_dist_driver_state * ds = st;
271 snprintf(label, sizeof(label), "dist_%d", ds->cpu_index);