Lines Matching refs:aift

19 struct zpci_aift *aift;  variable
33 lockdep_assert_held(&aift->aift_lock); in kvm_s390_pci_aen_exit()
42 spin_lock_irqsave(&aift->gait_lock, flags); in kvm_s390_pci_aen_exit()
43 gait_kzdev = aift->kzdev; in kvm_s390_pci_aen_exit()
44 aift->gait = NULL; in kvm_s390_pci_aen_exit()
45 aift->sbv = NULL; in kvm_s390_pci_aen_exit()
46 aift->kzdev = NULL; in kvm_s390_pci_aen_exit()
47 spin_unlock_irqrestore(&aift->gait_lock, flags); in kvm_s390_pci_aen_exit()
61 aift->sbv = airq_iv_create(ZPCI_NR_DEVICES, AIRQ_IV_ALLOC, NULL); in zpci_setup_aipb()
62 if (!aift->sbv) { in zpci_setup_aipb()
66 zpci_aif_sbv = aift->sbv; in zpci_setup_aipb()
74 aift->gait = (struct zpci_gaite *)page_to_virt(page); in zpci_setup_aipb()
76 zpci_aipb->aipb.faisb = virt_to_phys(aift->sbv->vector); in zpci_setup_aipb()
77 zpci_aipb->aipb.gait = virt_to_phys(aift->gait); in zpci_setup_aipb()
90 free_pages((unsigned long)aift->gait, size); in zpci_setup_aipb()
92 airq_iv_release(aift->sbv); in zpci_setup_aipb()
114 aift->sbv = zpci_aif_sbv; in zpci_reset_aipb()
115 aift->gait = phys_to_virt(zpci_aipb->aipb.gait); in zpci_reset_aipb()
125 if (aift->gait || aift->sbv) in kvm_s390_pci_aen_init()
128 mutex_lock(&aift->aift_lock); in kvm_s390_pci_aen_init()
129 aift->kzdev = kcalloc(ZPCI_NR_DEVICES, sizeof(struct kvm_zdev *), in kvm_s390_pci_aen_init()
131 if (!aift->kzdev) { in kvm_s390_pci_aen_init()
152 kfree(aift->kzdev); in kvm_s390_pci_aen_init()
154 mutex_unlock(&aift->aift_lock); in kvm_s390_pci_aen_init()
170 fib.fmt0.aisb = virt_to_phys(aift->sbv->vector + (zdev->aisb / 64) * 8); in kvm_zpci_set_airq()
284 mutex_lock(&aift->aift_lock); in kvm_s390_pci_aif_enable()
285 bit = airq_iv_alloc_bit(aift->sbv); in kvm_s390_pci_aif_enable()
294 spin_lock_irq(&aift->gait_lock); in kvm_s390_pci_aif_enable()
295 gaite = (struct zpci_gaite *)aift->gait + (zdev->aisb * in kvm_s390_pci_aif_enable()
309 aift->kzdev[zdev->aisb] = zdev->kzdev; in kvm_s390_pci_aif_enable()
310 spin_unlock_irq(&aift->gait_lock); in kvm_s390_pci_aif_enable()
314 fib->fmt0.aisb = virt_to_phys(aift->sbv->vector + (zdev->aisb / 64) * 8); in kvm_s390_pci_aif_enable()
320 mutex_unlock(&aift->aift_lock); in kvm_s390_pci_aif_enable()
327 mutex_unlock(&aift->aift_lock); in kvm_s390_pci_aif_enable()
348 mutex_lock(&aift->aift_lock); in kvm_s390_pci_aif_disable()
361 spin_lock_irq(&aift->gait_lock); in kvm_s390_pci_aif_disable()
362 gaite = (struct zpci_gaite *)aift->gait + (zdev->aisb * in kvm_s390_pci_aif_disable()
376 aift->kzdev[zdev->aisb] = NULL; in kvm_s390_pci_aif_disable()
378 airq_iv_free_bit(aift->sbv, zdev->aisb); in kvm_s390_pci_aif_disable()
383 spin_unlock_irq(&aift->gait_lock); in kvm_s390_pci_aif_disable()
399 mutex_unlock(&aift->aift_lock); in kvm_s390_pci_aif_disable()
683 aift = kzalloc(sizeof(struct zpci_aift), GFP_KERNEL); in kvm_s390_pci_init()
684 if (!aift) in kvm_s390_pci_init()
687 spin_lock_init(&aift->gait_lock); in kvm_s390_pci_init()
688 mutex_init(&aift->aift_lock); in kvm_s390_pci_init()
701 mutex_destroy(&aift->aift_lock); in kvm_s390_pci_exit()
703 kfree(aift); in kvm_s390_pci_exit()