/arch/ia64/sn/kernel/ |
D | irq.c | 26 static void register_intr_pda(struct sn_irq_info *sn_irq_info); 27 static void unregister_intr_pda(struct sn_irq_info *sn_irq_info); 34 struct sn_irq_info *sn_irq_info, in sn_intr_alloc() argument 44 (u64) local_widget, __pa(sn_irq_info), (u64) req_irq, in sn_intr_alloc() 51 struct sn_irq_info *sn_irq_info) in sn_intr_free() argument 59 (u64) local_widget, (u64) sn_irq_info->irq_irq, in sn_intr_free() 60 (u64) sn_irq_info->irq_cookie, 0, 0); in sn_intr_free() 64 struct sn_irq_info *sn_irq_info, in sn_intr_redirect() argument 73 (u64) local_widget, __pa(sn_irq_info), in sn_intr_redirect() 115 struct sn_irq_info *sn_retarget_vector(struct sn_irq_info *sn_irq_info, in sn_retarget_vector() argument [all …]
|
D | msi_sn.c | 24 struct sn_irq_info *sn_irq_info; member 37 struct sn_irq_info *sn_irq_info; in sn_teardown_msi_irq() local 41 sn_irq_info = sn_msi_info[irq].sn_irq_info; in sn_teardown_msi_irq() 42 if (sn_irq_info == NULL || sn_irq_info->irq_int_bit >= 0) in sn_teardown_msi_irq() 45 sn_pdev = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; in sn_teardown_msi_irq() 60 sn_intr_free(nasid, widget, sn_irq_info); in sn_teardown_msi_irq() 61 sn_msi_info[irq].sn_irq_info = NULL; in sn_teardown_msi_irq() 73 struct sn_irq_info *sn_irq_info; in sn_setup_msi_irq() local 101 sn_irq_info = kzalloc(sizeof(struct sn_irq_info), GFP_KERNEL); in sn_setup_msi_irq() 102 if (! sn_irq_info) { in sn_setup_msi_irq() [all …]
|
D | tiocx.c | 251 u64 sn_irq_info, in tiocx_intr_alloc() argument 261 widget, sn_irq_info, req_irq, in tiocx_intr_alloc() 267 struct sn_irq_info *sn_irq_info) in tiocx_intr_free() argument 275 widget, sn_irq_info->irq_irq, in tiocx_intr_free() 276 sn_irq_info->irq_cookie, 0, 0); in tiocx_intr_free() 279 struct sn_irq_info *tiocx_irq_alloc(nasid_t nasid, int widget, int irq, in tiocx_irq_alloc() 282 struct sn_irq_info *sn_irq_info; in tiocx_irq_alloc() local 284 int sn_irq_size = sizeof(struct sn_irq_info); in tiocx_irq_alloc() 289 sn_irq_info = kzalloc(sn_irq_size, GFP_KERNEL); in tiocx_irq_alloc() 290 if (sn_irq_info == NULL) in tiocx_irq_alloc() [all …]
|
D | io_acpi_init.c | 172 struct sn_irq_info **sn_irq_info) in sn_extract_device_info() argument 177 struct sn_irq_info *irq_info, *irq_info_prom; in sn_extract_device_info() 222 irq_info = kzalloc(sizeof(struct sn_irq_info), GFP_KERNEL); in sn_extract_device_info() 228 memcpy(irq_info, irq_info_prom, sizeof(struct sn_irq_info)); in sn_extract_device_info() 232 *sn_irq_info = irq_info; in sn_extract_device_info() 354 struct sn_irq_info **sn_irq_info) in sn_acpi_get_pcidev_info() argument 404 if (sn_extract_device_info(pcidev_match.handle, pcidev_info, sn_irq_info)) in sn_acpi_get_pcidev_info() 431 struct sn_irq_info *sn_irq_info = NULL; in sn_acpi_slot_fixup() local 434 if (sn_acpi_get_pcidev_info(dev, &pcidev_info, &sn_irq_info)) { in sn_acpi_slot_fixup() 454 sn_pci_fixup_slot(dev, pcidev_info, sn_irq_info); in sn_acpi_slot_fixup()
|
D | io_init.c | 66 u64 sn_irq_info) in sal_get_pcidev_info() argument 76 sn_irq_info, 0, 0); in sal_get_pcidev_info() 207 struct sn_irq_info *sn_irq_info; in sn_io_slot_fixup() local 214 sn_irq_info = kzalloc(sizeof(struct sn_irq_info), GFP_KERNEL); in sn_io_slot_fixup() 215 if (!sn_irq_info) in sn_io_slot_fixup() 223 (u64) __pa(sn_irq_info)); in sn_io_slot_fixup() 285 sn_pci_fixup_slot(dev, pcidev_info, sn_irq_info); in sn_io_slot_fixup()
|
D | io_common.c | 228 struct sn_irq_info *sn_irq_info) in sn_pci_fixup_slot() argument 264 if (bs && sn_irq_info->irq_irq) { in sn_pci_fixup_slot() 265 pcidev_info->pdi_sn_irq_info = sn_irq_info; in sn_pci_fixup_slot() 267 sn_irq_fixup(dev, sn_irq_info); in sn_pci_fixup_slot() 270 kfree(sn_irq_info); in sn_pci_fixup_slot()
|
/arch/ia64/include/asm/sn/ |
D | intr.h | 37 struct sn_irq_info { struct 38 struct sn_irq_info *irq_next; /* deprecated DO NOT USE */ argument 59 struct sn_irq_info *, argument 61 extern void sn_intr_free(nasid_t, int, struct sn_irq_info *); 62 extern struct sn_irq_info *sn_retarget_vector(struct sn_irq_info *, nasid_t, int);
|
D | pcidev.h | 63 struct sn_irq_info *pdi_sn_irq_info; 70 struct sn_irq_info *sn_irq_info); 82 struct sn_irq_info *);
|
D | pcibr_provider.h | 140 extern void pcibr_force_interrupt(struct sn_irq_info *sn_irq_info); 141 extern void pcibr_change_devices_irq(struct sn_irq_info *sn_irq_info);
|
D | pcibus_provider_defs.h | 52 void (*force_interrupt)(struct sn_irq_info *); 53 void (*target_interrupt)(struct sn_irq_info *);
|
D | tiocx.h | 60 extern struct sn_irq_info *tiocx_irq_alloc(nasid_t, int, int, nasid_t, int); 61 extern void tiocx_irq_free(struct sn_irq_info *);
|
/arch/ia64/sn/pci/pcibr/ |
D | pcibr_provider.c | 197 void pcibr_force_interrupt(struct sn_irq_info *sn_irq_info) in pcibr_force_interrupt() argument 201 int bit = sn_irq_info->irq_int_bit; in pcibr_force_interrupt() 203 if (! sn_irq_info->irq_bridge) in pcibr_force_interrupt() 206 pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; in pcibr_force_interrupt() 215 void pcibr_target_interrupt(struct sn_irq_info *sn_irq_info) in pcibr_target_interrupt() argument 219 int bit = sn_irq_info->irq_int_bit; in pcibr_target_interrupt() 220 u64 xtalk_addr = sn_irq_info->irq_xtalkaddr; in pcibr_target_interrupt() 222 pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; in pcibr_target_interrupt() 237 pcibr_force_interrupt(sn_irq_info); in pcibr_target_interrupt()
|
/arch/ia64/sn/pci/ |
D | tioce_provider.c | 858 tioce_force_interrupt(struct sn_irq_info *sn_irq_info) in tioce_force_interrupt() argument 866 if (!sn_irq_info->irq_bridge) in tioce_force_interrupt() 869 if (sn_irq_info->irq_bridge_type != PCIIO_ASIC_TYPE_TIOCE) in tioce_force_interrupt() 872 pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; in tioce_force_interrupt() 885 u64 int_bit_mask = (1ULL << sn_irq_info->irq_int_bit); in tioce_force_interrupt() 890 u64 force_irq = (1 << 8) | sn_irq_info->irq_irq; in tioce_force_interrupt() 891 u64 ctalk = sn_irq_info->irq_xtalkaddr; in tioce_force_interrupt() 910 switch (sn_irq_info->irq_int_bit) { in tioce_force_interrupt() 953 tioce_target_interrupt(struct sn_irq_info *sn_irq_info) in tioce_target_interrupt() argument 962 pcidev_info = (struct pcidev_info *)sn_irq_info->irq_pciioinfo; in tioce_target_interrupt() [all …]
|