函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:q_create_mapping() - Map a hardware interrupt into linux irq space*@domain: domain owning this hardware interrupt or NULL for default domain*@hwirq: hardware irq number in that domain space* Only one mapping per hardware interrupt is permitted

函数原型:unsigned int irq_create_mapping(struct irq_domain *domain, irq_hw_number_t hwirq)

返回类型:unsigned int

参数:

类型参数名称
struct irq_domain *domain
irq_hw_number_thwirq
656  pr_debug("irq_create_mapping(0x%p, 0x%lx)\n", domain, hwirq)
659  如果(domain == NULL)则domain等于irq_default_domain
661  如果(domain == NULL)则
662  WARN(1, "%s(, %lx) called with NULL domain\n", __func__, hwirq)
663  返回:0
665  pr_debug("-> using domain @%p\n", domain)
667  of_node等于irq_domain_get_of_node(domain)
670  virq等于q_find_mapping() - Find a linux irq from a hw irq number.*@domain: domain owning this hardware interrupt*@hwirq: hardware irq number in that domain space
671  如果virq
672  pr_debug("-> existing mapping on virq %d\n", virq)
673  返回:virq
677  virq等于irq_domain_alloc_descs( - 1, 1, hwirq, of_node_to_nid(of_node), NULL)
678  如果virq小于等于0则
679  pr_debug("-> virq allocation failed\n")
680  返回:0
683  如果irq_domain_associate(domain, virq, hwirq)则
684  irq_free_desc(virq)
685  返回:0
688  pr_debug("irq %lu on domain %s mapped to virtual irq %u\n", hwirq, of_node_full_name(of_node), virq)
691  返回:virq
调用者
名称描述
irq_create_fwspec_mapping