Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\irq\irqdomain.c Create Date:2022-07-28 10:13:56
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:q_create_direct_mapping() - Allocate an irq for direct mapping*@domain: domain to allocate the irq for or NULL for default domain* This routine is used for irq controllers which can choose the hardware* interrupt numbers they generate

Proto:unsigned int irq_create_direct_mapping(struct irq_domain *domain)

Type:unsigned int

Parameter:

TypeParameterName
struct irq_domain *domain
614  If (domain == NULL) Then domain = irq_default_domain
617  of_node = irq_domain_get_of_node(domain)
618  virq = irq_alloc_desc_from(1, of_node_to_nid(of_node))
619  If Not virq Then
620  pr_debug("create_direct virq allocation failed\n")
621  Return 0
623  If virq >= revmap_direct_max_irq Then
624  pr_err("ERROR: no free irqs available below %i maximum\n", revmap_direct_max_irq)
626  irq_free_desc(virq)
627  Return 0
629  pr_debug("create_direct obtained virq %d\n", virq)
631  If irq_domain_associate(domain, virq, virq) Then
632  irq_free_desc(virq)
633  Return 0
636  Return virq