From patchwork Tue Nov 28 14:07:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Herve Codina X-Patchwork-Id: 13471193 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 48A39C4167B for ; Tue, 28 Nov 2023 14:09:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=zMPmemKs7ru0ZCE4UFiafkzpHTZmxRlNEAjOYS0TpgY=; b=0WfcIWJ/rk5QKf wqDIqQjfc2DJ8CjOY1wrxXzPEYlx2064ACy1mHtepqPlMtWt+TEiZKdkceY9Un/oHWH880Tbf6yz7 d4QrZ5m2DQO7Ru4WTNe2lLALdlb4+zx+sxM64wO1Z6nSwXgGFd5VHpj+enF9qnkpNgiJwfO4xUdT4 qvuSDhdpOy/N1SMn12r3tddRqVXxfBqhZXEHmGBXGhNF0JcfQMdk8uGNVDX14WdvrshkZW9G1k40L 07tuoeSGbzfJ1VVMlf5PM/GCk4lwXOm/psG9Yuh8v9n2VBQDK2Rw4aBfykJ+czE2SpoSTp7dOVfB0 QE+THWN73mFJzUocInEg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r7ylb-005S0k-1S; Tue, 28 Nov 2023 14:08:47 +0000 Received: from relay3-d.mail.gandi.net ([2001:4b98:dc4:8::223]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1r7ylJ-005Rrg-1U for linux-arm-kernel@lists.infradead.org; Tue, 28 Nov 2023 14:08:32 +0000 Received: by mail.gandi.net (Postfix) with ESMTPA id 7055560008; Tue, 28 Nov 2023 14:08:20 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bootlin.com; s=gm1; t=1701180503; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=i7q8w6Mxbljh5af2HafEdvKbBOFPqmcN00tNKcl/Whw=; b=PDZiuP0iwt4HL5jAwOQe9/6sbhDuSvjOtiIVK89XjGPO9jvEVdXxLM1wLaXX628wjWek58 VAuVOZzrZBHvLipMSyQz8uNDHSVCveYdH6w18M65MklIYK7qTRUilNJ8aYB07tFDST4OVf FDIZsZyBia9NFT5qbAm1DlknmHUqV8LCWnHAsM3Q+7n9QkmpXWkZhxbkMafTMeUTIp+W87 h1QUpv4cAasc+n92FMUTw2DAAoNgneH4AQt68WJ84ID0WMQPV8SYGXFZ9FCA89jIKyrLB3 2nLMEpVVVJOpLQ3GYUO9O0VTqemAY1R0XfuIHmgjLyEb0eN5znOYjUojFdsHLA== From: Herve Codina To: Herve Codina , Qiang Zhao , Li Yang , Jakub Kicinski , Shengjiu Wang , Xiubo Li , Fabio Estevam , Nicolin Chen , Liam Girdwood , Mark Brown , Jaroslav Kysela , Takashi Iwai , Christophe Leroy Cc: Arnd Bergmann , linuxppc-dev@lists.ozlabs.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org, Thomas Petazzoni Subject: [PATCH 00/17] Prepare the PowerQUICC QMC and TSA for the HDLC QMC driver Date: Tue, 28 Nov 2023 15:07:59 +0100 Message-ID: <20231128140818.261541-1-herve.codina@bootlin.com> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 X-GND-Sasl: herve.codina@bootlin.com X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231128_060829_804104_1FE1A0C7 X-CRM114-Status: GOOD ( 12.54 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org Hi, This series updates PowerQUICC QMC and TSA drivers to prepare the support for the QMC HDLC driver. Patches were previously sent as part of a full feature series: "Add support for QMC HDLC, framer infrastructure and PEF2256 framer" [1] The full feature series reached the v9 iteration. The v1 was sent the 07/25/2023 followed by the other iterations (07/26/2023, 08/09/2023, 08/18/2023, 09/12/2023, 09/22/2023, 09/28/2023, 10/11/23, 11/15/2023) and was ready to be merged in its v8. https://lore.kernel.org/linux-kernel/20231025123215.5caca7d4@kernel.org/ The lack of feedback from the Freescale SoC and the Quicc Engine maintainers (i.e. drivers/soc/fsl/qe/ to which the QMC and TSA drivers belong) blocks the entire full feature series. These patches are fixes and improvements to TSA and QMC drivers. These drivers were previously acked by Li Yang but without any feedback from Li Yang nor Qiang Zhao the series cannot move forward. In order to ease the review/merge, the full feature series has been split and this series contains patches related to the PowerQUICC SoC part (QMC and TSA). - Perform some fixes (patches 1 to 5) - Add support for child devices (patch 6) - Add QMC dynamic timeslot support (patches 7 to 17) From the original full feature series, a patches extraction without any modification was done. Best regards, Hervé [1]: https://lore.kernel.org/linux-kernel/20231115144007.478111-1-herve.codina@bootlin.com/ Patches extracted: - Patch 1..6 : full feature series patch 1..6 - Patch 7..17 : full feature series patch 9..19 Herve Codina (17): soc: fsl: cpm1: tsa: Fix __iomem addresses declaration soc: fsl: cpm1: qmc: Fix __iomem addresses declaration soc: fsl: cpm1: qmc: Fix rx channel reset soc: fsl: cpm1: qmc: Extend the API to provide Rx status soc: fsl: cpm1: qmc: Remove inline function specifiers soc: fsl: cpm1: qmc: Add support for child devices soc: fsl: cpm1: qmc: Introduce available timeslots masks soc: fsl: cpm1: qmc: Rename qmc_setup_tsa* to qmc_init_tsa* soc: fsl: cpm1: qmc: Introduce qmc_chan_setup_tsa* soc: fsl: cpm1: qmc: Remove no more needed checks from qmc_check_chans() soc: fsl: cpm1: qmc: Check available timeslots in qmc_check_chans() soc: fsl: cpm1: qmc: Add support for disabling channel TSA entries soc: fsl: cpm1: qmc: Split Tx and Rx TSA entries setup soc: fsl: cpm1: qmc: Introduce is_tsa_64rxtx flag soc: fsl: cpm1: qmc: Handle timeslot entries at channel start() and stop() soc: fsl: cpm1: qmc: Remove timeslots handling from setup_chan() soc: fsl: cpm1: qmc: Introduce functions to change timeslots at runtime drivers/soc/fsl/qe/qmc.c | 592 +++++++++++++++++++++++++++------- drivers/soc/fsl/qe/tsa.c | 22 +- include/soc/fsl/qe/qmc.h | 27 +- sound/soc/fsl/fsl_qmc_audio.c | 2 +- 4 files changed, 506 insertions(+), 137 deletions(-)