函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\irq\irqdomain.c Create Date:2022-07-27 11:14:13
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称: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

函数原型:unsigned int irq_create_direct_mapping(struct irq_domain *domain)

返回类型:unsigned int

参数:

类型参数名称
struct irq_domain *domain
614  如果(domain == NULL)则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  如果非virq
620  pr_debug("create_direct virq allocation failed\n")
621  返回:0
623  如果virq大于等于revmap_direct_max_irq
624  打印错误信息("ERROR: no free irqs available below %i maximum\n", revmap_direct_max_irq)
626  irq_free_desc(virq)
627  返回:0
629  pr_debug("create_direct obtained virq %d\n", virq)
631  如果irq_domain_associate(domain, virq, virq)则
632  irq_free_desc(virq)
633  返回:0
636  返回:virq