Received: by 2002:ab2:620c:0:b0:1ef:ffd0:ce49 with SMTP id o12csp720274lqt; Tue, 19 Mar 2024 01:23:27 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCWPIt2x39ZjerGboqwhtITgbCRc/HVfGSNFoUo8l3VD52HBAcVY5aBtF8QyHK5w0uy/GZi+cyxZav3XlU9MLleoO0mQjGz/ySunGIpArg== X-Google-Smtp-Source: AGHT+IGTCq9BBfh4rvIj5nuCcsthxYrV5Roo4L5Ym52JsyrHXJeZgIjKbYWhYCltnKcPGOcYju6v X-Received: by 2002:a05:622a:1915:b0:430:c5e4:57e2 with SMTP id w21-20020a05622a191500b00430c5e457e2mr1517687qtc.17.1710836607699; Tue, 19 Mar 2024 01:23:27 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1710836607; cv=pass; d=google.com; s=arc-20160816; b=K9NZhaHaLL1q4vIg0puO8sFJ55iumufQ3fu01faSk1F3W7UW1fkKwDVbJocKZDU8Qk yUoJdJQQWGAG2kuCgnUfv1m2rulaEmbiUD5AeHeudsl6BFIktdlpoDEy+1UhbMhzDziv Tg5jNFeolhGslp0MuiOU9TmbdJJNY/gYa94cQy0YCa4k9f0aUz1HqEzJ2+S99qNAU1eB Kud9h3lA5+Jjn6PmSUAy/6you0gE+rnben7TK9z633Hjg8Wch5kxdH4ZH52xAFzu2qV7 ZoC/BWL0WeVXQ4zQugIscz/KoW/I5TsTM5jsmJmFEA/1hjkAM839s3evyR6CzVT5lIKE 6Brw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=cc:to:content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:from :dkim-signature; bh=5iLAekwhGsP5pBuRt3bOCKSfL3EICM4DhF/O1UO80ro=; fh=WcCL6KUR8dQYKy+ay8Kg8iDaCwPs9JFQ+rlQB15MNpI=; b=tSCDJQaacI54exbCSDInImUOwrsSG/mUkYWZNrxkeDIM61gmb+e9wJs4XB9I8R77CR FooNydnq34ub5sJODJ/AvG+2prIwQu3ipZMdDfHpGJVMni24Y1m4VnaCTtfp+n3H7jtK BlhzNIikzvRHooQR9GgxAahV6XbATN86bQjFX1rlb4A2Txy6GrggxdQSfmfZSje6dugc ENJjDPIEA6NLdpLNvo4eCM1N9FROLc7zK3hVooIaXVCMmRy7Ij1r7+IgVBgW1uHjbITP ExW0+S31juC25ezVuAyo5TLs11NTm301IkynGg9Z32uV4tt/sEUNsui+oJDh9Y6cHh5y 1xRQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=SlVttPhl; arc=pass (i=1 spf=pass spfdomain=ideasonboard.com dkim=pass dkdomain=ideasonboard.com); spf=pass (google.com: domain of linux-kernel+bounces-107221-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-107221-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [147.75.199.223]) by mx.google.com with ESMTPS id f20-20020ac859d4000000b004309ec1802dsi8830729qtf.296.2024.03.19.01.23.27 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 19 Mar 2024 01:23:27 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel+bounces-107221-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) client-ip=147.75.199.223; Authentication-Results: mx.google.com; dkim=pass (test mode) header.i=@ideasonboard.com header.s=mail header.b=SlVttPhl; arc=pass (i=1 spf=pass spfdomain=ideasonboard.com dkim=pass dkdomain=ideasonboard.com); spf=pass (google.com: domain of linux-kernel+bounces-107221-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.199.223 as permitted sender) smtp.mailfrom="linux-kernel+bounces-107221-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 6DD5A1C21AF6 for ; Tue, 19 Mar 2024 08:23:27 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E5A6C64CF6; Tue, 19 Mar 2024 08:23:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="SlVttPhl" Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [213.167.242.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3A4D65381D; Tue, 19 Mar 2024 08:23:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.167.242.64 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710836586; cv=none; b=JJpVScUAscojGmW03TQhHf2go9txlrqeZvidS6KnRC2ZIXreDVqDmU250vkTgYZL3VOSrfluABB1lhRRkOdHuYeiy+WVtktYprFVvB7tivXzn21UTgeco5mYll+rw+9gn5e+R4g8hNrdkfdlr+1lF9I8+cWWvhMsGHOcr7U0xoM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1710836586; c=relaxed/simple; bh=3uEgcL14/KgOuyUT7DBq5tefLQ6t4ehjg3mzEL3+jfo=; h=From:Subject:Date:Message-Id:MIME-Version:Content-Type:To:Cc; b=cX6tpwNtkff5dVlst8K0hhaFVmicZftR00jD0clu4mVaqq6vIl5iWuOCpYXvccpJrT/jrc2FbxHs0ic3LfwXQD4RlaYN/mU98OsTUulEg/CLkJeNkIKMJlLgoGjK/kfxA1nxFv8oQk2mNkMQJyeG+s9Y5OmvsT2jIh58aoBM5yA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com; spf=pass smtp.mailfrom=ideasonboard.com; dkim=pass (1024-bit key) header.d=ideasonboard.com header.i=@ideasonboard.com header.b=SlVttPhl; arc=none smtp.client-ip=213.167.242.64 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=ideasonboard.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ideasonboard.com Received: from [127.0.1.1] (91-154-34-181.elisa-laajakaista.fi [91.154.34.181]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 4C0F9480; Tue, 19 Mar 2024 09:22:34 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1710836555; bh=3uEgcL14/KgOuyUT7DBq5tefLQ6t4ehjg3mzEL3+jfo=; h=From:Subject:Date:To:Cc:From; b=SlVttPhlZmdAZ8gccAq6wQTegHctamRKMdfu9Po5XhbEqiXORQDbrQ8XDmJS3IARs kDy7ymBgWr8EDqEJnJhQfnlWaXDMsLhDy1EmH8hnuokuPF8pey+sThBfYv1ALduMgD 358wyAXc1YStlLyTWSJ9cVzyIDpsdUviGMdfNxuU= From: Tomi Valkeinen Subject: [PATCH v2 0/4] drm: xlnx: zynqmp: Add DP audio support Date: Tue, 19 Mar 2024 10:22:35 +0200 Message-Id: <20240319-xilinx-dp-audio-v2-0-92d6d3a7ca7e@ideasonboard.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAExL+WUC/3WNywrCMBBFf6XM2pEmhmhc9T+kizztgCYl0VIp+ Xdj9y7PgXvuBsVn8gWu3QbZL1QoxQb80IGddLx7JNcYeM9Ff2IcV3pQXNHNqN+OEgp50Y7xoII U0FZz9oHWvXgbG09UXil/9oOF/ez/1sKwR6mkPaugrTFqIOd1SdEknd3RpieMtdYvddEXYLUAA AA= To: Lars-Peter Clausen , Jaroslav Kysela , Takashi Iwai , Liam Girdwood , Mark Brown , Laurent Pinchart , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , David Airlie , Daniel Vetter , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Michal Simek Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Vishal Sagar , Anatoliy Klymenko , =?utf-8?q?P=C3=A9ter_Ujfalusi?= , Tomi Valkeinen X-Mailer: b4 0.13.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=2328; i=tomi.valkeinen@ideasonboard.com; h=from:subject:message-id; bh=3uEgcL14/KgOuyUT7DBq5tefLQ6t4ehjg3mzEL3+jfo=; b=owEBbQKS/ZANAwAIAfo9qoy8lh71AcsmYgBl+UteszrAX3VCstAgTvoLpu8isthstgM8lQo14 ZRi8mNeUreJAjMEAAEIAB0WIQTEOAw+ll79gQef86f6PaqMvJYe9QUCZflLXgAKCRD6PaqMvJYe 9VWGEACTMaOmmgN7gTLqZ+nMj1xJZzveP7DfyJPSYOOzO00onkaLVb6oBLFhnr33FFybYk1hOGi KhYv3zigVDzM73PmV8hEZgCsmBBdU8eYihGctjn8PIkwi2+EQ8MEzlUIkE/zkzMF5t3Z1ttywbu Vc7cSTcAZIGnvYjtqkOLrK34sHGPFJUN5f7pNbS6qwV3zz1zDVGkTFubmRJC6/g07WUxcz/JiMw URydx9qINppM5/CbIOvEG/Q2wOsiDR8ac/KPx/I8Qd/jLKiyIY51SAcrG2k/aPYG6Zni0M52Dy6 Nwt83wdvPC5Vt3BPD3kRMOaseGUCKud+yy8YNHsGb9AkaJzY5cipxLq3YV5DPtwFl1oypmV7tR1 KblwN7cfFezCFtLL7oMq0TZXLeNemll01fISlNjUTvaRo3qA123VdJ9gRhnUCa9N6YVvX3H8xI+ gKy0pCKmSIHRxxrm52ABFe5D0hJa2zbuJzamo+CXRfhB4Ct5QKLmjl57MYCUH/fUm+90Hyyx5ox vapDAMEPx0PZiYknT5y0bK0pqTTH4+TacjnmlxnH04X9JMcw2slKGThvRw6Qi5pbqHo8Sr8BBQJ cwThUb40B/0QNUrGB9PHfDoHX+GLniYBAck9RMt9ZionewHu2qt7WEhSvNMCaCtm9Xwlnd0PhPp tZojWuEVv3/r0Sw== X-Developer-Key: i=tomi.valkeinen@ideasonboard.com; a=openpgp; fpr=C4380C3E965EFD81079FF3A7FA3DAA8CBC961EF5 Add DisplayPort audio support for Xilinx ZynqMP platforms. This depends on patch adding cyclic DMA mode for DPDMA driver: https://lore.kernel.org/all/20240228042124.3074044-3-vishal.sagar@amd.com/ If that patch is missing, starting an audio playback will fail with an ASoC error. The current DT is, for some reason, missing the DMA channels for the audio. This series adds that to the bindings and the dts file, but to support older dtb files without the audio DMA, the driver will not fail if the audio DMA is missing, but will just mark the audio support as disabled. The series also includes an improvement to the soc-generic-dmaengine-pcm.c, required to support two dmaengine_pcms. Signed-off-by: Tomi Valkeinen --- Changes in v2: - Fix a missing double-quote in the DT binding - Link to v1: https://lore.kernel.org/r/20240312-xilinx-dp-audio-v1-0-696c79facbb9@ideasonboard.com --- Tomi Valkeinen (4): ASoC: dmaengine_pcm: Allow passing component name via config dt-bindings: display/xlnx/zynqmp-dpsub: Add audio DMAs arm64: dts: zynqmp: Add DMA for DP audio drm: xlnx: zynqmp_dpsub: Add DP audio support .../bindings/display/xlnx/xlnx,zynqmp-dpsub.yaml | 10 +- arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 7 +- drivers/gpu/drm/xlnx/Kconfig | 9 + drivers/gpu/drm/xlnx/Makefile | 1 + drivers/gpu/drm/xlnx/zynqmp_disp.c | 50 --- drivers/gpu/drm/xlnx/zynqmp_disp_regs.h | 7 +- drivers/gpu/drm/xlnx/zynqmp_dp.c | 54 ++- drivers/gpu/drm/xlnx/zynqmp_dp.h | 7 + drivers/gpu/drm/xlnx/zynqmp_dp_audio.c | 461 +++++++++++++++++++++ drivers/gpu/drm/xlnx/zynqmp_dpsub.c | 39 +- drivers/gpu/drm/xlnx/zynqmp_dpsub.h | 15 +- include/sound/dmaengine_pcm.h | 2 + sound/soc/soc-core.c | 8 +- sound/soc/soc-generic-dmaengine-pcm.c | 3 + 14 files changed, 563 insertions(+), 110 deletions(-) --- base-commit: e8f897f4afef0031fe618a8e94127a0934896aba change-id: 20240312-xilinx-dp-audio-468ad12f9f64 Best regards, -- Tomi Valkeinen