aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/irq
AgeCommit message (Expand)AuthorFilesLines
2024-03-25genirq: Introduce IRQF_COND_ONESHOT and use it in pinctrl-amdRafael J. Wysocki1-2/+7
2024-03-11Merge tag 'irq-msi-2024-03-10' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds3-56/+184
2024-02-23genirq/matrix: Dynamic bitmap allocationBjörn Töpel1-11/+17
2024-02-20genirq/irqdomain: Don't call ops->select for DOMAIN_BUS_ANY tokensMarc Zyngier1-1/+1
2024-02-19genirq: Wake interrupt threads immediately when changing affinityCrystal Wood1-54/+55
2024-02-15genirq/msi: Provide MSI_FLAG_PARENT_PM_DEVThomas Gleixner1-1/+4
2024-02-15genirq/irqdomain: Reroute device MSI create_mappingThomas Gleixner1-6/+20
2024-02-15genirq/msi: Provide allocation/free functions for "wired" MSI interruptsThomas Gleixner1-0/+68
2024-02-15genirq/msi: Optionally use dev->fwnode for device domainThomas Gleixner1-4/+16
2024-02-15genirq/msi: Split msi_domain_alloc_irq_at()Thomas Gleixner1-33/+43
2024-02-15genirq/msi: Provide optional translation opThomas Gleixner1-0/+15
2024-02-15genirq/irqdomain: Remove the param count restriction from select()Thomas Gleixner1-1/+1
2024-01-29genirq/irq_sim: Shrink code by using <linux/cleanup.h> helpersBartosz Golaszewski1-15/+10
2024-01-26genirq/irq_sim: Order headers alphabeticallyBartosz Golaszewski1-1/+1
2024-01-26genirq/irq_sim: Remove unused field from struct irq_sim_irq_ctxBartosz Golaszewski1-1/+0
2024-01-24genirq: Deduplicate interrupt descriptor initializationDawei Li1-48/+64
2024-01-24genirq: Initialize resend_node hlist for all interrupt descriptorsDawei Li1-1/+1
2023-11-02Merge tag 'mm-nonmm-stable-2023-11-02-14-08' of git://git.kernel.org/pub/scm/...Linus Torvalds1-10/+5
2023-10-30Merge tag 'x86-apic-2023-10-29-v2' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds2-12/+1
2023-10-27genirq/generic_chip: Make irq_remove_generic_chip() irqdomain awareHerve Codina1-6/+19
2023-10-26x86/apic/msi: Fix misconfigured non-maskable MSI quirkKoichiro Den2-12/+1
2023-10-25genirq/matrix: Exclude managed interrupts in irq_matrix_allocated()Chen Yu1-3/+3
2023-10-13genirq/generic-chip: Fix the irq_chip name for /proc/interruptsKeguang Zhang1-1/+5
2023-10-04kthread: add kthread_stop_putAndreas Gruenbacher1-10/+5
2023-08-28Merge tag 'irq-core-2023-08-28' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds3-21/+20
2023-08-26genirq: Fix software resend lockup and nested resendJohan Hovold1-1/+6
2023-07-31genirq: Remove unused extern declarationYueHaibing1-2/+0
2023-07-31genirq: Prevent nested thread vs synchronize_hardirq() deadlockVincent Whitchurch3-19/+20
2023-06-30irqdomain: Use return value of strreplace()Andy Shevchenko1-3/+1
2023-06-26Merge tag 'irqchip-6.5' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/...Thomas Gleixner5-5/+26
2023-06-21Merge branch irq/misc-6.5 into irq/irqchip-nextMarc Zyngier1-0/+2
2023-06-17irqdomain: Include internals.h for function prototypesArnd Bergmann1-0/+2
2023-06-16genirq: Allow fasteoi handler to resend interrupts on concurrent handlingJames Gowans2-1/+17
2023-06-16genirq: Expand doc for PENDING and REPLAY flagsJames Gowans1-2/+5
2023-05-27Merge tag 'for-linus-6.4-rc4-tag' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds1-2/+2
2023-05-24x86/pci/xen: populate MSI sysfs entriesMaximilian Heyne1-2/+2
2023-05-24genirq: Use a maple tree for interrupt descriptor managementShanker Donthineni2-26/+33
2023-05-24genirq: Encapsulate sparse bitmap handlingShanker Donthineni2-12/+22
2023-05-24genirq: Use hlist for managing resend handlersShanker Donthineni4-17/+35
2023-04-15genirq: Update affinity of secondary threadsJohn Keeping1-1/+4
2023-03-05Merge tag 'irq-urgent-2023-03-05' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds4-13/+39
2023-03-02genirq/msi, platform-msi: Ensure that MSI descriptors are unreferencedThomas Gleixner1-1/+22
2023-02-24Merge tag 'for-linus-iommufd' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds2-39/+27
2023-02-24genirq/msi: Drop dead domain name assignmentJohan Hovold1-4/+1
2023-02-23irqdomain: Add missing NULL pointer check in irq_domain_create_hierarchy()Juergen Gross1-1/+2
2023-02-23Merge branch 'irq/core' into irq/urgentThomas Gleixner6-560/+470
2023-02-21Merge tag 'irq-core-2023-02-20' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds6-560/+470
2023-02-21Merge tag 'v6.2' into iommufd.git for-nextJason Gunthorpe2-3/+7
2023-02-21genirq/irqdesc: Make kobj_type structures constantThomas Weißschuh1-2/+2
2023-02-20genirq/msi: Take the per-device MSI lock before validating the control structureMarc Zyngier1-3/+6
2023-02-20genirq/ipi: Fix NULL pointer deref in irq_data_get_affinity_mask()Sergey Shtylyov1-2/+6
2023-02-19Merge tag 'irqchip-6.3' of git://git.kernel.org/pub/scm/linux/kernel/git/maz/...Thomas Gleixner4-163/+457
2023-02-13Merge branch irq/irqdomain-locking into irq/irqchip-nextMarc Zyngier1-163/+245
2023-02-13irqdomain: Switch to per-domain lockingJohan Hovold1-20/+39
2023-02-13irqdomain: Clean up irq_domain_push/pop_irq()Johan Hovold1-33/+32
2023-02-13irqdomain: Drop leftover bracketsJohan Hovold1-4/+2
2023-02-13irqdomain: Drop dead domain-name assignmentJohan Hovold1-8/+0
2023-02-13irqdomain: Drop revmap mutexJohan Hovold1-7/+6
2023-02-13irqdomain: Fix domain registration raceMarc Zyngier1-19/+43
2023-02-13irqdomain: Fix mapping-creation raceJohan Hovold1-18/+46
2023-02-13irqdomain: Refactor __irq_domain_alloc_irqs()Johan Hovold1-40/+48
2023-02-13irqdomain: Look for existing mapping only onceJohan Hovold1-27/+33
2023-02-13irqdomain: Drop bogus fwspec-mapping error handlingJohan Hovold1-6/+1
2023-02-13irqdomain: Fix disassociation raceJohan Hovold1-0/+5
2023-02-13irqdomain: Fix association raceJohan Hovold1-5/+14
2023-02-06genirq/ipi-mux: Use irq_domain_alloc_irqs()Marc Zyngier1-2/+1
2023-02-05Merge tag 'char-misc-6.2-rc7' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-1/+1
2023-02-05genirq: Add mechanism to multiplex a single HW IPIAnup Patel3-0/+213
2023-02-03kernel/irq/irqdomain.c: fix memory leak with using debugfs_lookup()Greg Kroah-Hartman1-1/+1
2023-01-17genirq/msi: Free the fwnode created by msi_create_device_irq_domain()Jason Gunthorpe2-2/+6
2023-01-17genirq/affinity: Move group_cpus_evenly() into lib/Ming Lei1-397/+1
2023-01-17genirq/affinity: Rename irq_build_affinity_masks as group_cpus_evenlyMing Lei1-121/+121
2023-01-17genirq/affinity: Don't pass irq_affinity_desc array to irq_build_affinity_masksMing Lei1-10/+24
2023-01-17genirq/affinity: Pass affinity managed mask array to irq_build_affinity_masksMing Lei1-16/+12
2023-01-17genirq/affinity: Remove the 'firstvec' parameter from irq_build_affinity_masksMing Lei1-3/+2
2023-01-11irq/s390: Add arch_is_isolated_msi() for s390Jason Gunthorpe1-1/+1
2023-01-11genirq/msi: Rename IRQ_DOMAIN_MSI_REMAP to IRQ_DOMAIN_ISOLATED_MSIJason Gunthorpe1-1/+1
2023-01-11genirq/irqdomain: Remove unused irq_domain_check_msi_remap() codeJason Gunthorpe1-39/+0
2023-01-11genirq/msi: Add msi_device_has_isolated_msi()Jason Gunthorpe1-0/+27
2023-01-11genirq: Add might_sleep() to disable_irq()Manfred Spraul1-1/+4
2022-12-16genirq/msi: Return MSI_XA_DOMAIN_SIZE as the maximum MSI index when no domain...Thomas Gleixner1-2/+2
2022-12-16genirq/msi: Check for the presence of an irq domain when validating msi_ctrlMarc Zyngier1-1/+2
2022-12-05genirq/msi: Provide msi_domain_alloc_irq_at()Thomas Gleixner1-10/+95
2022-12-05genirq/msi: Provide msi_domain_ops:: Prepare_desc()Thomas Gleixner1-0/+3
2022-12-05genirq/msi: Provide BUS_DEVICE_PCI_MSI[X]Thomas Gleixner1-0/+4
2022-12-05genirq/msi: Add range checking to msi_insert_desc()Thomas Gleixner1-10/+43
2022-12-05genirq/msi: Provide msi_match_device_domain()Thomas Gleixner1-0/+25
2022-12-05genirq/msi: Provide msi_create/free_device_irq_domain()Thomas Gleixner1-0/+138
2022-12-05genirq/msi: Split msi_create_irq_domain()Thomas Gleixner1-12/+20
2022-12-05genirq/msi: Add size info to struct msi_domain_infoThomas Gleixner1-0/+11
2022-12-05genirq/msi: Provide struct msi_parent_opsThomas Gleixner1-0/+41
2022-12-05genirq/msi: Remove unused alloc/free interfacesThomas Gleixner1-73/+0
2022-12-05genirq/msi: Provide new domain id allocation functionsThomas Gleixner1-39/+136
2022-12-05genirq/msi: Provide new domain id based interfaces for freeing interruptsThomas Gleixner1-22/+120
2022-12-05genirq/msi: Make msi_add_simple_msi_descs() device domain awareThomas Gleixner1-41/+57
2022-12-05genirq/msi: Make descriptor freeing domain awareThomas Gleixner1-10/+48
2022-12-05genirq/msi: Make descriptor allocation device domain awareThomas Gleixner1-8/+12
2022-12-05genirq/msi: Rename msi_add_msi_desc() to msi_insert_msi_desc()Thomas Gleixner1-2/+4
2022-12-05genirq/msi: Make msi_get_virq() device domain awareAhmed S. Darwish1-6/+13
2022-12-05genirq/msi: Make MSI descriptor iterators device domain awareThomas Gleixner1-12/+23
2022-12-05genirq/msi: Add pointers for per device irq domainsThomas Gleixner1-0/+9
2022-12-05genirq/msi: Move xarray into a separate struct and create an arrayThomas Gleixner1-10/+22
2022-12-05genirq/msi: Check for invalid MSI parent domain usageThomas Gleixner1-3/+14
2022-12-05genirq/irqdomain: Rename irq_domain::dev to irq_domain:: Pm_devThomas Gleixner1-4/+4
2022-12-05genirq/msi: Move IRQ_DOMAIN_MSI_NOMASK_QUIRK to MSI flagsThomas Gleixner1-1/+1
2022-11-30genirq/irqdesc: Don't try to remove non-existing sysfs filesYang Yingliang2-6/+11
2022-11-17genirq/msi: Remove msi_domain_ops:: Msi_check()Thomas Gleixner1-16/+1
2022-11-17genirq: Get rid of GENERIC_MSI_IRQ_DOMAINThomas Gleixner2-9/+1
2022-11-17genirq/msi: Add bus token to struct msi_domain_infoAhmed S. Darwish1-2/+5
2022-11-17genirq/msi: Make __msi_domain_free_irqs() staticThomas Gleixner1-1/+2
2022-11-17genirq/msi: Provide msi_domain_ops:: Post_free()Thomas Gleixner1-0/+2
2022-11-17genirq/msi: Make __msi_domain_alloc_irqs() staticThomas Gleixner1-2/+4
2022-11-17genirq/msi: Add missing kernel doc to msi_next_desc()Thomas Gleixner1-0/+1
2022-11-17genirq/msi: Remove filter from msi_free_descs_free_range()Thomas Gleixner1-9/+10
2022-11-17genirq/msi: Use MSI_DESC_ALL in msi_add_simple_msi_descs()Thomas Gleixner1-1/+1
2022-11-17genirq: Remove unused argument force of irq_set_affinity_deactivated()Angus Chen1-2/+2
2022-09-19genirq: Provide generic_handle_domain_irq_safe().Sebastian Andrzej Siewior1-0/+24
2022-07-28Merge tag 'irqchip-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/maz...Thomas Gleixner8-30/+34
2022-07-25Merge branch irq/misc-5.20 into irq/irqchip-nextMarc Zyngier2-7/+9
2022-07-20Merge branch irq/loongarch into irq/irqchip-nextMarc Zyngier1-1/+1
2022-07-20genirq: Use for_each_action_of_desc in actions_show()Paran Lee1-1/+1
2022-07-20genirq/generic_chip: Export irq_unmap_generic_chipJianmin Lv1-1/+1
2022-07-19irqdomain: Use hwirq_max instead of revmap_size for NOMAP domainsXu Qiang1-6/+6
2022-07-19irqdomain: Report irq number for NOMAP domainsXu Qiang1-0/+2
2022-07-10Merge branch irq/plic-masking into irq/irqchip-nextMarc Zyngier5-20/+18
2022-07-07genirq: Return a const cpumask from irq_data_get_affinity_maskSamuel Holland3-11/+15
2022-07-07genirq: Drop redundant irq_init_effective_affinitySamuel Holland1-9/+1
2022-07-07genirq: GENERIC_IRQ_EFFECTIVE_AFF_MASK depends on SMPSamuel Holland1-0/+1
2022-07-07genirq: GENERIC_IRQ_IPI depends on SMPSamuel Holland1-0/+1
2022-07-07genirq: Don't return error on missing optional irq_request_resources()Antonio Borneo1-1/+2
2022-06-13genirq/PM: Unexport {suspend,resume}_device_irqs()Lukas Wunner1-2/+0
2022-06-09genirq: PM: Use runtime PM for chained interruptsMarc Zyngier1-1/+4
2022-05-23Merge tag 'irq-core-2022-05-23' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds7-20/+46
2022-05-20Merge tag 'irqchip-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/maz...Thomas Gleixner2-2/+4
2022-05-14genirq/irq_sim: Make the irq_work always run in hard irq contextSebastian Andrzej Siewior1-1/+1
2022-05-11genirq: Remove WARN_ON_ONCE() in generic_handle_domain_irq()Lukas Wunner1-1/+0
2022-05-05genirq: Synchronize interrupt thread startupThomas Pfaff3-10/+33
2022-05-02genirq: Use pm_runtime_resume_and_get() instead of pm_runtime_get_sync()Minghao Chi1-9/+4
2022-04-25genirq/matrix: Remove redundant assignment to variable 'end'Colin Ian King1-1/+1
2022-04-19Merge branch irq/gpio-immutable into irq/irqchip-nextMarc Zyngier1-0/+1
2022-04-19gpio: Don't fiddle with irqchips marked as immutableMarc Zyngier1-0/+1
2022-04-14genirq: Take the proposed affinity at face value if force==trueMarc Zyngier1-2/+8
2022-04-11genirq/affinity: Consider that CPUs on nodes can be unbalancedRei Yamamoto1-2/+3
2022-04-10genirq/affinity: Replace cpumask_weight() with cpumask_empty() where appropriateYury Norov1-1/+1
2022-04-10genirq: Always limit the affinity to online CPUsMarc Zyngier1-8/+17
2022-04-10genirq/msi: Shutdown managed interrupts with unsatifiable affinitiesMarc Zyngier1-0/+15
2022-03-22Merge tag 'sched-core-2022-03-22' of git://git.kernel.org/pub/scm/linux/kerne...Linus Torvalds2-4/+4
2022-03-14Merge tag 'irqchip-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/maz...Thomas Gleixner3-17/+29
2022-02-21Merge tag 'irq-api-2022-02-21' into irq/coreThomas Gleixner1-0/+23
2022-02-21genirq: Provide generic_handle_irq_safe()Sebastian Andrzej Siewior1-0/+23
2022-02-16sched/isolation: Use single feature type while referring to housekeeping cpumaskFrederic Weisbecker2-4/+4
2022-02-15genirq/debugfs: Use irq_print_chip() when provided by irqchipMarc Zyngier1-2/+6
2022-02-15genirq: Allow irq_chip registration functions to take a const irq_chipMarc Zyngier1-6/+3
2022-02-15irqdomain: Let irq_domain_set_{info,hwirq_and_chip} take a const irq_chipMarc Zyngier1-4/+5
2022-02-10genirq: Kill irq_chip::parent_deviceMarc Zyngier1-3/+0
2022-02-09genirq: Allow the PM device to originate from irq domainMarc Zyngier1-5/+18
2022-02-02genirq, softirq: Use in_hardirq() instead of in_irq()Changbin Du1-2/+2
2022-01-22proc: remove PDE_DATA() completelyMuchun Song1-4/+4
2022-01-13Merge tag 'irq-msi-2022-01-13' of git://git.kernel.org/pub/scm/linux/kernel/g...Linus Torvalds1-223/+569
2022-01-13Merge tag 'irq-core-2022-01-13' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds2-5/+5
2022-01-10genirq/msi: Populate sysfs entry only onceThomas Gleixner1-6/+5
2022-01-07irq: remove unused flags argument from __handle_irq_event_percpu()Sebastian Andrzej Siewior3-11/+4
2022-01-07random: remove unused irq_flags argument from add_interrupt_randomness()Sebastian Andrzej Siewior1-1/+1
2021-12-16genirq/msi: Convert storage to xarrayThomas Gleixner1-92/+77
2021-12-16genirq/msi: Simplify sysfs handlingThomas Gleixner1-107/+91
2021-12-16genirq/msi: Mop up old interfacesThomas Gleixner1-16/+15
2021-12-16genirq/msi: Convert to new functionsThomas Gleixner1-9/+14
2021-12-16genirq/msi: Make interrupt allocation less convolutedThomas Gleixner1-60/+69
2021-12-16platform-msi: Simplify platform device MSI codeThomas Gleixner1-24/+21
2021-12-16genirq/msi: Provide domain flags to allocate/free MSI descriptors automaticallyThomas Gleixner1-0/+48
2021-12-16genirq/msi: Provide msi_alloc_msi_desc() and a simple allocatorThomas Gleixner1-0/+59
2021-12-16genirq/msi: Provide a set of advanced MSI accessors and iteratorsThomas Gleixner1-0/+96
2021-12-16genirq/msi: Provide msi_domain_alloc/free_irqs_descs_locked()Thomas Gleixner1-16/+58
2021-12-16genirq/msi: Add mutex for MSI list protectionThomas Gleixner1-0/+21
2021-12-16genirq/msi: Move descriptor list to struct msi_device_dataThomas Gleixner1-1/+4
2021-12-16genirq/msi: Provide interface to retrieve Linux interrupt numberThomas Gleixner1-0/+36
2021-12-16genirq/msi: Remove the original sysfs interfacesThomas Gleixner1-33/+20
2021-12-16genirq/msi: Provide msi_device_populate/destroy_sysfs()Thomas Gleixner1-2/+40
2021-12-16device: Add device:: Msi_data pointer and struct msi_device_dataThomas Gleixner1-0/+32
2021-12-16genirq/msi: Use PCI device propertyThomas Gleixner1-15/+2
2021-12-10genirq: Provide new interfaces for affinity hintsThomas Gleixner1-4/+4
2021-12-09genirq/msi: Handle PCI/MSI allocation fail in core codeThomas Gleixner1-4/+25
2021-12-09genirq/msi, treewide: Use a named struct for PCI/MSI attributesThomas Gleixner1-2/+2
2021-12-09genirq/msi: Fixup includesThomas Gleixner1-0/+1
2021-12-09genirq/msi: Remove unused domain callbacksThomas Gleixner1-5/+0
2021-12-09genirq/msi: Guard sysfs codeThomas Gleixner1-0/+2
2021-12-01genirq/generic_chip: Constify irq_generic_chip_opsRikard Falkeborn1-1/+1
2021-11-11PCI/MSI: Move non-mask check back into low level accessorsThomas Gleixner1-2/+2
2021-11-06Merge tag 'pci-v5.16-changes' of git://git.kernel.org/pub/scm/linux/kernel/gi...Linus Torvalds1-3/+4
2021-11-04PCI: apple: Add INTx and per-port interrupt supportMarc Zyngier1-0/+1
2021-11-04irqdomain: Make of_phandle_args_to_fwspec() generally availableMarc Zyngier1-3/+3
2021-10-29Merge tag 'irqchip-5.16' into irq/coreBorislav Petkov6-68/+48
2021-10-28Merge branch irq/irq_cpu_offline into irq/irqchip-nextMarc Zyngier2-0/+9
2021-10-28Merge branch irq/remove-handle-domain-irq-20211026 into irq/irqchip-nextMarc Zyngier3-67/+35
2021-10-26genirq: Hide irq_cpu_{on,off}line() behind a deprecated optionMarc Zyngier2-0/+9
2021-10-26irq: remove handle_domain_{irq,nmi}()Mark Rutland2-58/+17
2021-10-26irq: remove CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRYMark Rutland1-26/+0
2021-10-25irq: add a (temporary) CONFIG_HANDLE_DOMAIN_IRQ_IRQENTRYMark Rutland2-0/+34
2021-10-25irq: add generic_handle_arch_irq()Mark Rutland1-0/+18
2021-10-25irq: unexport handle_irq_desc()Mark Rutland1-1/+0