Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp803860rwl; Wed, 29 Mar 2023 08:40:24 -0700 (PDT) X-Google-Smtp-Source: AKy350ax5uUyPJw6tYutmOyeAiB2NIfuRcqYPWBvkIUVngQdknGQyK+GK3OJVTiSEz6VH3U5DpJ8 X-Received: by 2002:a17:903:2803:b0:19c:d309:4612 with SMTP id kp3-20020a170903280300b0019cd3094612mr16575216plb.6.1680104423941; Wed, 29 Mar 2023 08:40:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1680104423; cv=none; d=google.com; s=arc-20160816; b=MHqqMvqMPYbXilPuQchC3XL6gjW1RubgqDSI/8DauuAHLhdGBOfzGu2o164wha2MLE UeIpL/Jn0TkYMizvbNSOeWpyGheiDzXg5vn+P5AN+nmxzBac+HDaHXlHCH9wVokXrrkK akw8Im8HBCaf0AJe8LaczSrj38RKmwgMDkXSdVy2ICvC93T5DpT3dXuA4LH2jWIrm5Oc ZykZIaeDhm6aD7MjaUQFLbETQITlB+il5R9Kp7gjDAHEt3FOO6XF8s0vQXI88DbrPkxm m0yfOCnvP6ukRAuzsCLCBL7Qo6GhQ/bXTXovKtsDyIEL9KeLlgD7dssX6I3jqHB7EJhE rX9A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=fREusIMeN0GHIOSkIVz+onccB2UP2k8rlzNljGz/1KQ=; b=mXhsQLSg3KbeaO5mv6RhmafNPgcSLNjigiDSegbl6qVptPK0nKot9x1y1CcJc+pWsK LFhYGcu48/1xYKQoSSZCXqmFY295/r0nkWpNDyW9hPuHA5xY7lyZQxEeyxAgaBW6itoH 9tkJhAx21nDAjo5b4bHbKQVTXByDVOD3QM9jClB8kMO0BWfMKYJqd8UQOd4HuwCKXsuY xNgWtv3at76zCf9SUTvwpuZcxSh/u4Rzc4lJE1ZAOIYMzRhxc5IHZgtgDDQ53PXI7J/q J3cQdTovp2zgGMqUBMt8VoyTgg+SN82l/aQQG/m7gvH7tUFeB5Hvx9XUvKbDvMvYstp9 HZ7w== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id d19-20020a170903209300b001a05d737a7fsi30613348plc.65.2023.03.29.08.40.11; Wed, 29 Mar 2023 08:40:23 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230355AbjC2PkG (ORCPT + 99 others); Wed, 29 Mar 2023 11:40:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54244 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231127AbjC2Pjy (ORCPT ); Wed, 29 Mar 2023 11:39:54 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 242434C3E for ; Wed, 29 Mar 2023 08:39:50 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id C797E1FB; Wed, 29 Mar 2023 08:40:34 -0700 (PDT) Received: from e120937-lin.. (unknown [172.31.20.19]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 1F0793F663; Wed, 29 Mar 2023 08:39:49 -0700 (PDT) From: Cristian Marussi To: linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: sudeep.holla@arm.com, cristian.marussi@arm.com, vincent.guittot@linaro.org, souvik.chakravarty@arm.com, nicola.mazzucato@arm.com, Tushar.Khandelwal@arm.com, viresh.kumar@linaro.org, jassisinghbrar@gmail.com Subject: [PATCH 0/2] Add MHUv2 support for multiple rx interrupt Date: Wed, 29 Mar 2023 16:39:34 +0100 Message-Id: <20230329153936.394911-1-cristian.marussi@arm.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.3 required=5.0 tests=RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE autolearn=unavailable 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 Hi, I was experimenting with a TotalCompute2022 (TC2) [1] reference design sporting MHUv2 (v2.x) mailboxes and running on top of it an SCMI stack configured platform-side to use multiple per-protocol channels with multiple rx interrupts but NOT using a combined interrupt. (it is not even wired at the hw-level on this platform anyway...) This configuration seemed not supported by the current driver which assumes that you have only one rx interrupt, possibly a combined one. Looking at the MHUv2 spec ([2]/[3] "Channels") seems indeed that per-channel rx-interrupts are indeed a possibility, beside the combined one. This small seriers aims to add such support by simply allowing to specify multiple rx interrupts in the DT node and taking care to register the same orginal ISR for all. On the tx path, instead, I left things unchanged and stuck with the current approach that just uses one single combined interrupt for the clear channel interrupt. (if supported at all) I tested on a TC2 model configured alternatively with MHU v2.1 and v2.0. Series based on v6.3-rc4. Any feedback welcome. Thanks, Cristian ---- [1]: https://gitlab.arm.com/arm-reference-solutions/arm-reference-solutions-docs/-/blob/master/docs/totalcompute/tc2/tc2_sw_stack.rst [2]: https://developer.arm.com/documentation/102342/0000/Message-Handling-Unit/About-the-Message-Handling-Unit/Channels?lang=en [3]: https://developer.arm.com/documentation/101418/0100/Message-Handling-Unit/Message-Handling-Unit-v2/Channel?lang=en Cristian Marussi (2): dt-bindings: mailbox : arm,mhuv2: Allow for more RX interrupts mailbox: arm_mhuv2: Add support for multiple rx interrupt .../bindings/mailbox/arm,mhuv2.yaml | 13 +++++--- drivers/mailbox/arm_mhuv2.c | 30 ++++++++++--------- 2 files changed, 25 insertions(+), 18 deletions(-) -- 2.34.1