From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-lf1-f51.google.com (mail-lf1-f51.google.com [209.85.167.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B4E2837F0EA for ; Tue, 3 Feb 2026 06:41:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.51 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770100876; cv=none; b=pwpiYkx7HxuIsk22kPJJKG5DQhbodjx+hBLMsaoI0HWeOBH2DUT2R1lMMmcXPGxSZYdLu+XF6j9KQpl2opPd6zU3J8madA0YpLzBYjkAb2KKI1Ce/HBrZx+xmjLkzQA8QPv2PZGMHDPyXAMY3pjebFo9t6ErO5hRAvBEi8sh8Ks= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1770100876; c=relaxed/simple; bh=oUP4qXDiIOWsqn/Wh2InSd/J5eOo2q9gQZJPEHI06xs=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=W16i7nBp97/KeWvGra1Nq6+tYibrxH7dUHhwYmGFBIO4udhSJd5QdunYVtTqdY4ICjKOdXze3hSBoylorJDtULh9yeKLnFWSMuRE7eyfH1hiNYyM4gNJj1nIFUR37Ru1eGFWhB5lFFJV+Emq3gGzHYYeJKz9oDIZYafptNAn5Gc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=kOHm9TqQ; arc=none smtp.client-ip=209.85.167.51 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="kOHm9TqQ" Received: by mail-lf1-f51.google.com with SMTP id 2adb3069b0e04-59b672f8ec4so5849555e87.1 for ; Mon, 02 Feb 2026 22:41:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770100873; x=1770705673; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:content-language:from :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=EgJ2Ll3/CgFXhoIE6ohHknq/XdBboRec408Sf48XFuQ=; b=kOHm9TqQ7nxUNqyCVYfMSfIiolWJoy7yo+kK1bZUlV68J1DEtIhtkTFwAj3+sCnFlg 1OSZu9b9ZvnMr5jNnYbc7RZc+I/7QM8HpuKqJnZ4VJd4owzHp+PbuokHzEZF9pqbHc9M 1wLrdS3v4UDUGe5n0ag5AyfCJRXii6QYH3aDHk6OigqNUUeEavIqh9l4ekxx2QoyfGK8 jJb7EoKKSpQqIjr1GGOdGKcN/PqJLMPcxP2RJi0kavkVbGzOHafE0lXumi2R9a9Z/Blk 7iPZ7F5EBmdZVTFN/mdnEnvJ4Qq90Q9eqx8f9yWDsg5KpAL4Knt+pxhF7PN3j6TsorZU x+ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770100873; x=1770705673; h=content-transfer-encoding:in-reply-to:content-language:from :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=EgJ2Ll3/CgFXhoIE6ohHknq/XdBboRec408Sf48XFuQ=; b=DGXAwzWFD2gEq2NOhacZyazrSejAU7NuXiXqg1AhvjDy3q73WI/dPcTP02G+jkEu5F EO8PDZ9BcZ57W412KM6oO/I6lnsBrFC6Q1dib6Q+9f9P90xiLLgd1LBcN5qKGggT5ncM /J9FhrqRd1dpBCK+BLPz7C9ZZ0j+aLn9HaWsxf7Kb8lxwaT+GdGRJhP1BI7N7yC4jdCK ToLirSEAoCB7dHpbaVyJNvq7AJZXw/dpln3lg47NhsYeZaZWtc0+MeCJkR8CKnXInAO4 OGAUmBLZU/7PKDjHqn8144GcH2Yrmlnf4ALhWsGWD7ReE3byS6tTPL0d7f48rC01Ec2J d7Rg== X-Forwarded-Encrypted: i=1; AJvYcCXhybPPXCOOaYcNH/aI8NT0/TqdgKeICLMoVLDa3sbdDurMlcVzrd7sNOwZs76Fe9+bLIK6c/weSRa6/co=@vger.kernel.org X-Gm-Message-State: AOJu0YwSpHD92Dqak4mx4tv4zZmjQnX117Np80yUM8n+L51sw5zsB8PN F58RUjl4xAzgLD6C9fDU+rz9GvFYl8dwjUMOxQ2IFHxCFEwNNmT1TWoZ X-Gm-Gg: AZuq6aJuDgL3NPyN0bLeERdYBu6joK8Yg4HLcqVrHOUsgAZipsC/g2dUIl5EPxcSfoV 1wUCF2UDXK9aL9LFW0ZbfIugxb6TaK7UsifY9JZeQDE+YFa8DvkoUFNcZPUlYorMcapYh9bDw1d gpT458hhjVF6rNiO1DA53WdcFTFchmuHXQ0Fl9Pi+EsxinQJ9HVyKSm/AD/HYYjUdvNTuRuHmuH SwxRSso+VRkKghjWvA4D+NNnFutn8VJIu2rCRgxsX71xgF5f7Fp8YfTdC1olM3utSvn1WI5ZQZH FadPKeUeM4Ms6TAOdzAeRG+F0g3gk2PIM0YBW/oNm3a6oP0rntUqL1VC6u0fPmgiuyGLNbVEBSM a9n2BlcRoT25exkKN1mq5azrPu6CBLDvMKMu5XutUMZBEhFfkNYBglPQjkGVYVBoSSxZChrpl3n 9OaiB6q8qNkVJh4zaTgu2jkTzZZSfWOUE7IisT4F+hi7bNZtsQWb5RpozruiM= X-Received: by 2002:a05:6512:159c:b0:598:853e:4866 with SMTP id 2adb3069b0e04-59e164314f1mr5253830e87.51.1770100872754; Mon, 02 Feb 2026 22:41:12 -0800 (PST) Received: from [10.0.0.100] (host-185-69-74-59.kaisa-laajakaista.fi. [185.69.74.59]) by smtp.gmail.com with ESMTPSA id 2adb3069b0e04-59e07481b72sm4048059e87.11.2026.02.02.22.41.11 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 02 Feb 2026 22:41:12 -0800 (PST) Message-ID: <030ae04b-68b4-4570-90b3-1dfc6f31b4e5@gmail.com> Date: Tue, 3 Feb 2026 08:42:24 +0200 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v4 00/19] dmaengine: ti: Add support for BCDMA v2 and PKTDMA v2 To: Sai Sree Kartheek Adivi , vkoul@kernel.org, robh@kernel.org, krzk+dt@kernel.org, conor+dt@kernel.org, nm@ti.com, ssantosh@kernel.org, dmaengine@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, vigneshr@ti.com Cc: r-sharma3@ti.com, gehariprasath@ti.com References: <20260130110159.359501-1-s-adivi@ti.com> From: =?UTF-8?Q?P=C3=A9ter_Ujfalusi?= Content-Language: en-US In-Reply-To: <20260130110159.359501-1-s-adivi@ti.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hi On 30/01/2026 13:01, Sai Sree Kartheek Adivi wrote: > This series adds support for the BCDMA_V2 and PKTDMA_V2 which is > introduced in AM62L. > > The key differences between the existing DMA and DMA V2 are: > - Absence of TISCI: Instead of configuring via TISCI calls, direct > register writes are required. > - Autopair: There is no longer a need for PSIL pair and instead AUTOPAIR > bit needs to set in the RT_CTL register. > - Static channel mapping: Each channel is mapped to a single peripheral. > - Direct IRQs: There is no INT-A and interrupt lines from DMA are > directly connected to GIC. > - Remote side configuration handled by DMA. So no need to write to PEER > registers to START / STOP / PAUSE / TEARDOWN. I think this looks really good overall, I have few nitpicks around variable declaration order and one bigger ask for the possibility of introducing version member to struct udma_match_data to cut down on changes and have more targeted handling of the differences between the two variants. > > Changes from v3 to v4: > - Rename the dt-binding files to add "ti," prefix. > - Update cell description in dt-bindings and add client examples. > - Update k3_ring_intr_regs reg names > - Rename soc specific data to bcdma_v2_data and pktdma_v2_data to > bcdma_v2_am62l_data and pktdma_v2_am62l_data. > - Add a new patch [18/19] to fix a null pointer dereference issue when > trying to reserve a channel id that is out of bounds in > udma_reserve_##res macro. Also fix logging issues in this macro. > - Add a new patch [19/19] to switch to synchronous descriptor freeing to > avoid running out of memory during stress tests. > - Fix checkpatch warnings. > link to v3: > https://lore.kernel.org/linux-arm-kernel/20250623053716.1493974-1-s-adivi@ti.com > > Changes from v2 to v3: > - Fix checkpatch errors & spellings. > link to v2: > https://lore.kernel.org/linux-arm-kernel/20250612071521.3116831-1-s-adivi@ti.com > > Changes from v1 to v2: > - Split refactoring of k3-udma driver into multiple commits > - Fix bcdma v2 and pktdma v2 dt-binding examples > - Fix compatibles in k3-udma-v2.c > - move udma_is_desc_really_done to k3-udma-common.c as the difference > between k3-udma and k3-udma-v2 implementation is minor. > - remove udma_ prefix to function pointers in udma_dev > - reorder the commits to first refactor the existing code completely and > then introduce k3-udma-v2 related commits. > - remove redundant includes in k3-udma-common.c > - remove ti_sci_ dependency for k3_ringacc in Kconfig > - refactor setup_resources functions to remove ti_sci_ code from common > logic. > link to v1: > https://lore.kernel.org/linux-arm-kernel/20250428072032.946008-1-s-adivi@ti.com > > Sai Sree Kartheek Adivi (19): > dmaengine: ti: k3-udma: move macros to header file > dmaengine: ti: k3-udma: move structs and enums to header file > dmaengine: ti: k3-udma: move static inline helper functions to header > file > dmaengine: ti: k3-udma: move descriptor management to k3-udma-common.c > dmaengine: ti: k3-udma: move ring management functions to > k3-udma-common.c > dmaengine: ti: k3-udma: Add variant-specific function pointers to > udma_dev > dmaengine: ti: k3-udma: move udma utility functions to > k3-udma-common.c > dmaengine: ti: k3-udma: move resource management functions to > k3-udma-common.c > dmaengine: ti: k3-udma: refactor resource setup functions > dmaengine: ti: k3-udma: move inclusion of k3-udma-private.c to > k3-udma-common.c > drivers: soc: ti: k3-ringacc: handle absence of tisci > dt-bindings: dma: ti: Add K3 BCDMA V2 > dt-bindings: dma: ti: Add K3 PKTDMA V2 > dmaengine: ti: k3-psil-am62l: Add AM62Lx PSIL and PDMA data > dmaengine: ti: k3-udma-v2: New driver for K3 BCDMA_V2 > dmaengine: ti: k3-udma-v2: Add support for PKTDMA V2 > dmaengine: ti: k3-udma-v2: Update glue layer to support PKTDMA V2 > dmaengine: ti: k3-udma: Validate resource ID and fix logging in > reservation > dmaengine: ti: k3-udma: switch to synchronous descriptor freeing > > .../bindings/dma/ti/ti,k3-bcdma-v2.yaml | 116 + > .../bindings/dma/ti/ti,k3-pktdma-v2.yaml | 90 + > drivers/dma/ti/Kconfig | 21 +- > drivers/dma/ti/Makefile | 5 +- > drivers/dma/ti/k3-psil-am62l.c | 132 + > drivers/dma/ti/k3-psil-priv.h | 1 + > drivers/dma/ti/k3-psil.c | 1 + > drivers/dma/ti/k3-udma-common.c | 2577 ++++++++++++++ > drivers/dma/ti/k3-udma-glue.c | 91 +- > drivers/dma/ti/k3-udma-private.c | 48 +- > drivers/dma/ti/k3-udma-v2.c | 1472 ++++++++ > drivers/dma/ti/k3-udma.c | 3095 +---------------- > drivers/dma/ti/k3-udma.h | 583 ++++ > drivers/soc/ti/Kconfig | 1 - > drivers/soc/ti/k3-ringacc.c | 188 +- > include/linux/soc/ti/k3-ringacc.h | 20 + > 16 files changed, 5402 insertions(+), 3039 deletions(-) > create mode 100644 Documentation/devicetree/bindings/dma/ti/ti,k3-bcdma-v2.yaml > create mode 100644 Documentation/devicetree/bindings/dma/ti/ti,k3-pktdma-v2.yaml > create mode 100644 drivers/dma/ti/k3-psil-am62l.c > create mode 100644 drivers/dma/ti/k3-udma-common.c > create mode 100644 drivers/dma/ti/k3-udma-v2.c > -- Péter