Lines Matching full:index
87 uint32_t index, cpu; in extioi_readw() local
91 index = (offset - EXTIOI_NODETYPE_START) >> 2; in extioi_readw()
92 *data = s->nodetype[index]; in extioi_readw()
95 index = (offset - EXTIOI_IPMAP_START) >> 2; in extioi_readw()
96 *data = s->ipmap[index]; in extioi_readw()
99 index = (offset - EXTIOI_ENABLE_START) >> 2; in extioi_readw()
100 *data = s->enable[index]; in extioi_readw()
103 index = (offset - EXTIOI_BOUNCE_START) >> 2; in extioi_readw()
104 *data = s->bounce[index]; in extioi_readw()
107 index = (offset - EXTIOI_COREISR_START) >> 2; in extioi_readw()
108 /* using attrs to get current cpu index */ in extioi_readw()
110 *data = s->cpu[cpu].coreisr[index]; in extioi_readw()
113 index = (offset - EXTIOI_COREMAP_START) >> 2; in extioi_readw()
114 *data = s->coremap[index]; in extioi_readw()
124 static inline void extioi_enable_irq(LoongArchExtIOICommonState *s, int index,\ in extioi_enable_irq() argument
130 val = mask & s->isr[index]; in extioi_enable_irq()
137 extioi_update_irq(s, irq + index * 32, level); in extioi_enable_irq()
186 int index, uint64_t val) in extioi_update_sw_ipmap() argument
200 s->sw_ipmap[index * 4 + i] = ipnum; in extioi_update_sw_ipmap()
210 int cpu, index, old_data, irq; in extioi_writew() local
218 index = (offset - EXTIOI_NODETYPE_START) >> 2; in extioi_writew()
219 s->nodetype[index] = val; in extioi_writew()
226 index = (offset - EXTIOI_IPMAP_START) >> 2; in extioi_writew()
227 s->ipmap[index] = val; in extioi_writew()
228 extioi_update_sw_ipmap(s, index, val); in extioi_writew()
231 index = (offset - EXTIOI_ENABLE_START) >> 2; in extioi_writew()
232 old_data = s->enable[index]; in extioi_writew()
233 s->enable[index] = val; in extioi_writew()
236 val = s->enable[index] & ~old_data; in extioi_writew()
237 extioi_enable_irq(s, index, val, 1); in extioi_writew()
240 val = ~s->enable[index] & old_data; in extioi_writew()
241 extioi_enable_irq(s, index, val, 0); in extioi_writew()
245 index = (offset - EXTIOI_BOUNCE_START) >> 2; in extioi_writew()
246 s->bounce[index] = val; in extioi_writew()
249 index = (offset - EXTIOI_COREISR_START) >> 2; in extioi_writew()
250 /* using attrs to get current cpu index */ in extioi_writew()
252 old_data = s->cpu[cpu].coreisr[index]; in extioi_writew()
253 s->cpu[cpu].coreisr[index] = old_data & ~val; in extioi_writew()
258 extioi_update_irq(s, irq + index * 32, 0); in extioi_writew()
265 index = irq / 4; in extioi_writew()
266 s->coremap[index] = val; in extioi_writew()