Lines Matching refs:cd

63 	struct octeon_ciu_chip_data *cd;  in octeon_irq_set_ciu_mapping()  local
65 cd = kzalloc(sizeof(*cd), GFP_KERNEL); in octeon_irq_set_ciu_mapping()
66 if (!cd) in octeon_irq_set_ciu_mapping()
71 cd->line = line; in octeon_irq_set_ciu_mapping()
72 cd->bit = bit; in octeon_irq_set_ciu_mapping()
73 cd->gpio_line = gpio_line; in octeon_irq_set_ciu_mapping()
75 irq_set_chip_data(irq, cd); in octeon_irq_set_ciu_mapping()
83 struct octeon_ciu_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_free_cd() local
86 kfree(cd); in octeon_irq_free_cd()
115 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_ack() local
116 unsigned int bit = cd->bit; in octeon_irq_core_ack()
131 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_eoi() local
138 set_c0_status(0x100 << cd->bit); in octeon_irq_core_eoi()
144 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_set_enable_local() local
145 unsigned int mask = 0x100 << cd->bit; in octeon_irq_core_set_enable_local()
150 if (cd->desired_en) in octeon_irq_core_set_enable_local()
159 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_disable() local
160 cd->desired_en = false; in octeon_irq_core_disable()
165 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_enable() local
166 cd->desired_en = true; in octeon_irq_core_enable()
171 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_bus_lock() local
173 mutex_lock(&cd->core_irq_mutex); in octeon_irq_core_bus_lock()
178 struct octeon_core_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_core_bus_sync_unlock() local
180 if (cd->desired_en != cd->current_en) { in octeon_irq_core_bus_sync_unlock()
183 cd->current_en = cd->desired_en; in octeon_irq_core_bus_sync_unlock()
186 mutex_unlock(&cd->core_irq_mutex); in octeon_irq_core_bus_sync_unlock()
207 struct octeon_core_chip_data *cd; in octeon_irq_init_core() local
210 cd = &octeon_irq_core_chip_data[i]; in octeon_irq_init_core()
211 cd->current_en = false; in octeon_irq_init_core()
212 cd->desired_en = false; in octeon_irq_init_core()
213 cd->bit = i; in octeon_irq_init_core()
214 mutex_init(&cd->core_irq_mutex); in octeon_irq_init_core()
217 irq_set_chip_data(irq, cd); in octeon_irq_init_core()
229 struct octeon_ciu_chip_data *cd = irq_data_get_irq_chip_data(data); in next_cpu_for_irq() local
232 cpu = cd->current_cpu; in next_cpu_for_irq()
247 cd->current_cpu = cpu; in next_cpu_for_irq()
260 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable() local
263 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable()
266 if (cd->line == 0) { in octeon_irq_ciu_enable()
268 __set_bit(cd->bit, pen); in octeon_irq_ciu_enable()
277 __set_bit(cd->bit, pen); in octeon_irq_ciu_enable()
292 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_local() local
295 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_local()
298 if (cd->line == 0) { in octeon_irq_ciu_enable_local()
300 __set_bit(cd->bit, pen); in octeon_irq_ciu_enable_local()
309 __set_bit(cd->bit, pen); in octeon_irq_ciu_enable_local()
324 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_local() local
327 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_local()
330 if (cd->line == 0) { in octeon_irq_ciu_disable_local()
332 __clear_bit(cd->bit, pen); in octeon_irq_ciu_disable_local()
341 __clear_bit(cd->bit, pen); in octeon_irq_ciu_disable_local()
357 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_all() local
360 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_all()
365 if (cd->line == 0) in octeon_irq_ciu_disable_all()
371 __clear_bit(cd->bit, pen); in octeon_irq_ciu_disable_all()
377 if (cd->line == 0) in octeon_irq_ciu_disable_all()
390 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_all() local
393 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_all()
398 if (cd->line == 0) in octeon_irq_ciu_enable_all()
404 __set_bit(cd->bit, pen); in octeon_irq_ciu_enable_all()
410 if (cd->line == 0) in octeon_irq_ciu_enable_all()
426 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_v2() local
428 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_v2()
429 mask = 1ull << (cd->bit); in octeon_irq_ciu_enable_v2()
435 if (cd->line == 0) { in octeon_irq_ciu_enable_v2()
437 set_bit(cd->bit, &per_cpu(octeon_irq_ciu0_en_mirror, cpu)); in octeon_irq_ciu_enable_v2()
441 set_bit(cd->bit, &per_cpu(octeon_irq_ciu1_en_mirror, cpu)); in octeon_irq_ciu_enable_v2()
454 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_sum2() local
456 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_sum2()
457 mask = 1ull << (cd->bit); in octeon_irq_ciu_enable_sum2()
470 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_local_sum2() local
472 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_local_sum2()
473 mask = 1ull << (cd->bit); in octeon_irq_ciu_disable_local_sum2()
483 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_ack_sum2() local
485 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_ack_sum2()
486 mask = 1ull << (cd->bit); in octeon_irq_ciu_ack_sum2()
494 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_all_sum2() local
497 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_all_sum2()
498 mask = 1ull << (cd->bit); in octeon_irq_ciu_disable_all_sum2()
514 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_local_v2() local
516 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_local_v2()
517 mask = 1ull << (cd->bit); in octeon_irq_ciu_enable_local_v2()
519 if (cd->line == 0) { in octeon_irq_ciu_enable_local_v2()
521 set_bit(cd->bit, this_cpu_ptr(&octeon_irq_ciu0_en_mirror)); in octeon_irq_ciu_enable_local_v2()
525 set_bit(cd->bit, this_cpu_ptr(&octeon_irq_ciu1_en_mirror)); in octeon_irq_ciu_enable_local_v2()
533 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_local_v2() local
535 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_local_v2()
536 mask = 1ull << (cd->bit); in octeon_irq_ciu_disable_local_v2()
538 if (cd->line == 0) { in octeon_irq_ciu_disable_local_v2()
540 clear_bit(cd->bit, this_cpu_ptr(&octeon_irq_ciu0_en_mirror)); in octeon_irq_ciu_disable_local_v2()
544 clear_bit(cd->bit, this_cpu_ptr(&octeon_irq_ciu1_en_mirror)); in octeon_irq_ciu_disable_local_v2()
555 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_ack() local
557 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_ack()
558 mask = 1ull << (cd->bit); in octeon_irq_ciu_ack()
560 if (cd->line == 0) { in octeon_irq_ciu_ack()
576 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_all_v2() local
578 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_all_v2()
579 mask = 1ull << (cd->bit); in octeon_irq_ciu_disable_all_v2()
581 if (cd->line == 0) { in octeon_irq_ciu_disable_all_v2()
584 clear_bit(cd->bit, in octeon_irq_ciu_disable_all_v2()
591 clear_bit(cd->bit, in octeon_irq_ciu_disable_all_v2()
606 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_enable_all_v2() local
608 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_enable_all_v2()
609 mask = 1ull << (cd->bit); in octeon_irq_ciu_enable_all_v2()
611 if (cd->line == 0) { in octeon_irq_ciu_enable_all_v2()
614 set_bit(cd->bit, in octeon_irq_ciu_enable_all_v2()
621 set_bit(cd->bit, in octeon_irq_ciu_enable_all_v2()
631 struct octeon_ciu_chip_data *cd; in octeon_irq_gpio_setup() local
634 cd = irq_data_get_irq_chip_data(data); in octeon_irq_gpio_setup()
645 cvmx_write_csr(CVMX_GPIO_BIT_CFGX(cd->gpio_line), cfg.u64); in octeon_irq_gpio_setup()
670 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_gpio_v2() local
672 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_gpio_v2()
673 cvmx_write_csr(CVMX_GPIO_BIT_CFGX(cd->gpio_line), 0); in octeon_irq_ciu_disable_gpio_v2()
680 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_disable_gpio() local
682 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_disable_gpio()
683 cvmx_write_csr(CVMX_GPIO_BIT_CFGX(cd->gpio_line), 0); in octeon_irq_ciu_disable_gpio()
690 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_gpio_ack() local
693 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_gpio_ack()
694 mask = 1ull << (cd->gpio_line); in octeon_irq_ciu_gpio_ack()
738 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_set_affinity() local
742 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_set_affinity()
762 if (cd->line == 0) in octeon_irq_ciu_set_affinity()
769 __set_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity()
771 __clear_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity()
779 if (cd->line == 0) in octeon_irq_ciu_set_affinity()
800 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_set_affinity_v2() local
805 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_set_affinity_v2()
806 mask = 1ull << cd->bit; in octeon_irq_ciu_set_affinity_v2()
808 if (cd->line == 0) { in octeon_irq_ciu_set_affinity_v2()
814 set_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity_v2()
817 clear_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity_v2()
827 set_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity_v2()
830 clear_bit(cd->bit, pen); in octeon_irq_ciu_set_affinity_v2()
845 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu_set_affinity_sum2() local
850 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu_set_affinity_sum2()
851 mask = 1ull << cd->bit; in octeon_irq_ciu_set_affinity_sum2()
1597 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_wd_enable() local
1599 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_wd_enable()
1600 mask = 1ull << (cd->bit); in octeon_irq_ciu2_wd_enable()
1603 (0x1000ull * cd->line); in octeon_irq_ciu2_wd_enable()
1614 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_enable() local
1616 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_enable()
1617 mask = 1ull << (cd->bit); in octeon_irq_ciu2_enable()
1620 (0x1000ull * cd->line); in octeon_irq_ciu2_enable()
1629 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_enable_local() local
1631 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_enable_local()
1632 mask = 1ull << (cd->bit); in octeon_irq_ciu2_enable_local()
1635 (0x1000ull * cd->line); in octeon_irq_ciu2_enable_local()
1645 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_disable_local() local
1647 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_disable_local()
1648 mask = 1ull << (cd->bit); in octeon_irq_ciu2_disable_local()
1651 (0x1000ull * cd->line); in octeon_irq_ciu2_disable_local()
1661 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_ack() local
1663 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_ack()
1664 mask = 1ull << (cd->bit); in octeon_irq_ciu2_ack()
1666 en_addr = CVMX_CIU2_RAW_PPX_IP2_WRKQ(coreid) + (0x1000ull * cd->line); in octeon_irq_ciu2_ack()
1675 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_disable_all() local
1677 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_disable_all()
1678 mask = 1ull << (cd->bit); in octeon_irq_ciu2_disable_all()
1682 octeon_coreid_for_cpu(cpu)) + (0x1000ull * cd->line); in octeon_irq_ciu2_disable_all()
1744 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_set_affinity() local
1749 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_set_affinity()
1750 mask = 1ull << cd->bit; in octeon_irq_ciu2_set_affinity()
1758 (0x1000ull * cd->line); in octeon_irq_ciu2_set_affinity()
1762 (0x1000ull * cd->line); in octeon_irq_ciu2_set_affinity()
1779 struct octeon_ciu_chip_data *cd; in octeon_irq_ciu2_disable_gpio() local
1781 cd = irq_data_get_irq_chip_data(data); in octeon_irq_ciu2_disable_gpio()
1783 cvmx_write_csr(CVMX_GPIO_BIT_CFGX(cd->gpio_line), 0); in octeon_irq_ciu2_disable_gpio()
2086 struct octeon_irq_cib_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_cib_enable() local
2087 struct octeon_irq_cib_host_data *host_data = cd->host_data; in octeon_irq_cib_enable()
2091 en |= 1ull << cd->bit; in octeon_irq_cib_enable()
2100 struct octeon_irq_cib_chip_data *cd = irq_data_get_irq_chip_data(data); in octeon_irq_cib_disable() local
2101 struct octeon_irq_cib_host_data *host_data = cd->host_data; in octeon_irq_cib_disable()
2105 en &= ~(1ull << cd->bit); in octeon_irq_cib_disable()
2158 struct octeon_irq_cib_chip_data *cd; in octeon_irq_cib_map() local
2166 cd = kzalloc(sizeof(*cd), GFP_KERNEL); in octeon_irq_cib_map()
2167 cd->host_data = host_data; in octeon_irq_cib_map()
2168 cd->bit = hw; in octeon_irq_cib_map()
2172 irq_set_chip_data(virq, cd); in octeon_irq_cib_map()