Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp2905294iog; Mon, 27 Jun 2022 05:29:40 -0700 (PDT) X-Google-Smtp-Source: AGRyM1vgMHWhcawz/g8DaylxmA2r3IU+Aa8Zcv8Z1wMWXe9RcGQJUDDdLC32QFaGgEmqlTMkapmT X-Received: by 2002:a17:90b:1b4d:b0:1ec:c42a:7eb5 with SMTP id nv13-20020a17090b1b4d00b001ecc42a7eb5mr15311383pjb.122.1656332980703; Mon, 27 Jun 2022 05:29:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656332980; cv=none; d=google.com; s=arc-20160816; b=dFwHo/pbNdkq/gKB9L0WbRUuHusO7Z9jfVpn52t9rR7Cz32XOUSlTfoM091oZHOPCg 2M0++GquTWJ8wGsnXxMzFNIhqIsNL9lHRHKDlXDNRdCZ8VdbzynXPIynXBZcwGGpBxmI RUtZ6t2IGf6tpoFRitceP9NbZlSHA4geqJZOfCa+1hToOxAV9aa1b0auFMFQo/uSRyqD 79VeLn0DXqRcAejINkGGKIQ+5p7OYp+VylCw/T0BVZCmQzrjQC1Y9jafzLlsHghFKxSa px3z3mMN7rkqaQ3clEmEM2pXJQmixv43YeJhi2UlpqdXZ8fJDYYxGMJWGtLZ+bpnQ92C K3Fg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:references:in-reply-to:message-id:date:subject :cc:to:from; bh=uNc/UlovcN+sDW8fJlilW1GQZgQKKouQ8/u6xX7PiMs=; b=AR8vcIlZER4uCwpOmbFrrMQwmHdtzcUTQmt807MiXS2NyUdvkctcd0PUmSpcQKL0+T 62iA6W7kNTg3CuSiGSLMHxMuFjK59uSI9nQF1ZxfvxPZqcAaLysYG45Ybs09pdIYKsOZ zg4X46xvJIp8KGAgtAN+pwA9Ehc4kcuAHk3tbWl6E5isOpvwCCBn3P4RY0ogpBYBWV3i Jcu1aSX2WhhDJNjE0EH9J4oQbsCalVZ1bI3aghU8Owrv4UDkLsS59BHDoq42P5ihrzqq DD7Z/+gQIJ+fXjo8tEGT4KzS+yqAAi1O5/x6+8hN8l1hddTKMig4wjw8jYx13nolGZo7 uPsg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id x10-20020a170902b40a00b00158e93cfafesi13568205plr.132.2022.06.27.05.29.28; Mon, 27 Jun 2022 05:29:40 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238717AbiF0Lxr (ORCPT + 99 others); Mon, 27 Jun 2022 07:53:47 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49914 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238265AbiF0LsL (ORCPT ); Mon, 27 Jun 2022 07:48:11 -0400 Received: from loongson.cn (mail.loongson.cn [114.242.206.163]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 3A8E3BCB5 for ; Mon, 27 Jun 2022 04:40:12 -0700 (PDT) Received: from localhost.localdomain.localdomain (unknown [10.2.5.46]) by mail.loongson.cn (Coremail) with SMTP id AQAAf9Dx39kNl7liP_FfAA--.6156S5; Mon, 27 Jun 2022 19:40:01 +0800 (CST) From: Jianmin Lv To: Thomas Gleixner , Marc Zyngier Cc: linux-kernel@vger.kernel.org, Hanjun Guo , Lorenzo Pieralisi , Jiaxun Yang , Huacai Chen Subject: [PATCH V13 03/13] genirq/generic_chip: export irq_unmap_generic_chip Date: Mon, 27 Jun 2022 19:39:47 +0800 Message-Id: <1656329997-20524-4-git-send-email-lvjianmin@loongson.cn> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1656329997-20524-1-git-send-email-lvjianmin@loongson.cn> References: <1656329997-20524-1-git-send-email-lvjianmin@loongson.cn> X-CM-TRANSID: AQAAf9Dx39kNl7liP_FfAA--.6156S5 X-Coremail-Antispam: 1UD129KBjvJXoW7AFy8uFy5JrWrKFy7CFykZrb_yoW8Xw18pa yrWa47WrWkGr18ZFWUGF1kuryavrs7GFW2ya1SvF92yr18Jws2gFykWrnavF40934xuFWY yFs7tFy8ur1UWFJanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDU0xBIdaVrnRJUUUkE1xkIjI8I6I8E6xAIw20EY4v20xvaj40_Wr0E3s1l1IIY67AE w4v_Jr0_Jr4l8cAvFVAK0II2c7xJM28CjxkF64kEwVA0rcxSw2x7M28EF7xvwVC0I7IYx2 IY67AKxVW5JVW7JwA2z4x0Y4vE2Ix0cI8IcVCY1x0267AKxVW8Jr0_Cr1UM28EF7xvwVC2 z280aVAFwI0_GcCE3s1l84ACjcxK6I8E87Iv6xkF7I0E14v26rxl6s0DM2AIxVAIcxkEcV Aq07x20xvEncxIr21l5I8CrVACY4xI64kE6c02F40Ex7xfMcIj6xIIjxv20xvE14v26r1j 6r18McIj6I8E87Iv67AKxVWUJVW8JwAm72CE4IkC6x0Yz7v_Jr0_Gr1lF7xvr2IYc2Ij64 vIr41lF7I21c0EjII2zVCS5cI20VAGYxC7MxkIecxEwVCm-wCF04k20xvY0x0EwIxGrwCF 04k20xvE74AGY7Cv6cx26ryrJr1UJwCFx2IqxVCFs4IE7xkEbVWUJVW8JwC20s026c02F4 0E14v26r1j6r18MI8I3I0E7480Y4vE14v26r106r1rMI8E67AF67kF1VAFwI0_JF0_Jw1l IxkGc2Ij64vIr41lIxAIcVC0I7IYx2IY67AKxVWUJVWUCwCI42IY6xIIjxv20xvEc7CjxV AFwI0_Gr0_Cr1lIxAIcVCF04k26cxKx2IYs7xG6r1j6r1xMIIF0xvEx4A2jsIE14v26r1j 6r4UMIIF0xvEx4A2jsIEc7CjxVAFwI0_Gr0_Gr1UYxBIdaVFxhVjvjDU0xZFpf9x0JUdHU DUUUUU= X-CM-SenderInfo: 5oymxthqpl0qxorr0wxvrqhubq/ X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_PASS, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Some irq controllers have to re-implement a private version for irq_generic_chip_ops, because they have a different xlate to translate hwirq. Export irq_unmap_generic_chip for reusing in user defined ops. Signed-off-by: Jianmin Lv --- include/linux/irq.h | 1 + kernel/irq/generic-chip.c | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/include/linux/irq.h b/include/linux/irq.h index 5053082..83a4574 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -1121,6 +1121,7 @@ struct irq_domain_chip_generic { /* Setup functions for irq_chip_generic */ int irq_map_generic_chip(struct irq_domain *d, unsigned int virq, irq_hw_number_t hw_irq); +void irq_unmap_generic_chip(struct irq_domain *d, unsigned int virq); struct irq_chip_generic * irq_alloc_generic_chip(const char *name, int nr_ct, unsigned int irq_base, void __iomem *reg_base, irq_flow_handler_t handler); diff --git a/kernel/irq/generic-chip.c b/kernel/irq/generic-chip.c index f0862eb..c653cd3 100644 --- a/kernel/irq/generic-chip.c +++ b/kernel/irq/generic-chip.c @@ -431,7 +431,7 @@ int irq_map_generic_chip(struct irq_domain *d, unsigned int virq, return 0; } -static void irq_unmap_generic_chip(struct irq_domain *d, unsigned int virq) +void irq_unmap_generic_chip(struct irq_domain *d, unsigned int virq) { struct irq_data *data = irq_domain_get_irq_data(d, virq); struct irq_domain_chip_generic *dgc = d->gc; -- 1.8.3.1