Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp2481762rdb; Tue, 12 Sep 2023 03:23:23 -0700 (PDT) X-Google-Smtp-Source: AGHT+IE+3uur0HoGpGUEGHPwL/lkj5ogIOorlO6mE37+P4MXj/GfB+QkFP7fZFBPKxLupbs1/jYD X-Received: by 2002:a17:903:41d1:b0:1c0:93b6:2e4b with SMTP id u17-20020a17090341d100b001c093b62e4bmr12902320ple.33.1694514203622; Tue, 12 Sep 2023 03:23:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694514203; cv=none; d=google.com; s=arc-20160816; b=N7aifqUC+RfQO7CEddWTLLBBZx+HVOHUQbYEqotC5Gpy41E9YV2ZFbx9OnC9mXlSmX f3PXn3Vc1TOPbnCrxvlcJb9b0L2PT84wT5WLp1eh5CdBIkpFQjjcQynR8RHLaZixSqIx NluX13KFSoIiiajkFiaUYJRPET40wjAMhrXu5a+EATaN7hnFGWB3FY8vKcH8qdLxcP84 Rol+xt7/AF8kMwNd5PMCeU1PsVOOZCA5JbQWAeUJDTC/OccjTh0ptfpEDFVqC1SvWONZ zCiUK0n+UXyEJ4HlPe5BI8tKafbIMsRYIuJLiPMxUcj37IF/fUbP68VUyQnVLWvxXyx6 zVxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=3F8D/kWHFHiPPeca3ZbIL6DzPLlWF/Zt3BHbtxQgodQ=; fh=Q2aQ5uICT1JGidjrDiwFdxoXdPeDRD65OQ0OacKLA+0=; b=tS4W8EcmVCpPnQpGlBbp7qzZItg4wA+VyJRPF6K5djIFiuKXbu3YhSh/jlqXo++dNO gEZMMgkeL1WiHP5O8jJZjp65vlA74iBkiWLzwZPzWqScDunmVeIac1OyQEGm1mU+Obpv GNefrVgkpHDu7ZZcWEWBbCYMi0YzXrJXFj93HarFFZpiIYpwMtnlCFc+LKh+78eI+N4X ocml7KHRFRhmKmsU+/Ps9BWMSwE/3iBXyGXbbX4OTIK2UeiwOAcojOQ5+gK6r063p89s tF4VUJqrGsaz1iioaR+JQrfo/9Vqs7IH2dpjSzR5LQKZDiiGw3pgizOJHM/bEf83UMDx iwOA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 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 snail.vger.email (snail.vger.email. [2620:137:e000::3:7]) by mx.google.com with ESMTPS id b1-20020a170902a9c100b001bbcc4e0211si7637093plr.239.2023.09.12.03.23.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Sep 2023 03:23:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) client-ip=2620:137:e000::3:7; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:7 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by snail.vger.email (Postfix) with ESMTP id 16C45821A160; Tue, 12 Sep 2023 03:14:44 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.8 at snail.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234106AbjILKOi (ORCPT + 99 others); Tue, 12 Sep 2023 06:14:38 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41448 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234067AbjILKOS (ORCPT ); Tue, 12 Sep 2023 06:14:18 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B2B27271B; Tue, 12 Sep 2023 03:14:07 -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 54015C15; Tue, 12 Sep 2023 03:14:44 -0700 (PDT) Received: from [10.1.196.40] (e121345-lin.cambridge.arm.com [10.1.196.40]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3F3373F738; Tue, 12 Sep 2023 03:14:04 -0700 (PDT) Message-ID: <95f9dd3b-1f33-4af5-8757-a97e8b9bb216@arm.com> Date: Tue, 12 Sep 2023 11:13:50 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.15.0 Subject: Re: [PATCH 8/9] dt-bindings: reserved-memory: MediaTek: Add reserved memory for SVP Content-Language: en-GB To: Krzysztof Kozlowski , =?UTF-8?B?WW9uZyBXdSAo5ZC05YuHKQ==?= , "robh@kernel.org" Cc: "sumit.semwal@linaro.org" , "linux-kernel@vger.kernel.org" , "linux-mediatek@lists.infradead.org" , "jstultz@google.com" , "linaro-mm-sig@lists.linaro.org" , "christian.koenig@amd.com" , "devicetree@vger.kernel.org" , =?UTF-8?B?SmlhbmppYW8gWmVuZyAo5pu+5YGl5aejKQ==?= , "linux-media@vger.kernel.org" , =?UTF-8?B?S3VvaG9uZyBXYW5nICjnjovlnIvptLsp?= , "Brian.Starkey@arm.com" , "conor+dt@kernel.org" , "benjamin.gaignard@collabora.com" , "tjmercier@google.com" , "krzysztof.kozlowski+dt@linaro.org" , "dri-devel@lists.freedesktop.org" , "matthias.bgg@gmail.com" , "linux-arm-kernel@lists.infradead.org" , "angelogioacchino.delregno@collabora.com" References: <20230911023038.30649-1-yong.wu@mediatek.com> <20230911023038.30649-9-yong.wu@mediatek.com> <20230911154448.GA1279317-robh@kernel.org> From: Robin Murphy In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (snail.vger.email [0.0.0.0]); Tue, 12 Sep 2023 03:14:44 -0700 (PDT) On 12/09/2023 9:28 am, Krzysztof Kozlowski wrote: > On 12/09/2023 08:16, Yong Wu (吴勇) wrote: >> Hi Rob, >> >> Thanks for your review. >> >> On Mon, 2023-09-11 at 10:44 -0500, Rob Herring wrote: >>> >>> External email : Please do not click links or open attachments until >>> you have verified the sender or the content. >>> On Mon, Sep 11, 2023 at 10:30:37AM +0800, Yong Wu wrote: >>>> This adds the binding for describing a CMA memory for MediaTek >>> SVP(Secure >>>> Video Path). >>> >>> CMA is a Linux thing. How is this related to CMA? >> >>>> >>>> Signed-off-by: Yong Wu >>>> --- >>>> .../mediatek,secure_cma_chunkmem.yaml | 42 >>> +++++++++++++++++++ >>>> 1 file changed, 42 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/reserved- >>> memory/mediatek,secure_cma_chunkmem.yaml >>>> >>>> diff --git a/Documentation/devicetree/bindings/reserved- >>> memory/mediatek,secure_cma_chunkmem.yaml >>> b/Documentation/devicetree/bindings/reserved- >>> memory/mediatek,secure_cma_chunkmem.yaml >>>> new file mode 100644 >>>> index 000000000000..cc10e00d35c4 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/reserved- >>> memory/mediatek,secure_cma_chunkmem.yaml >>>> @@ -0,0 +1,42 @@ >>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>> +%YAML 1.2 >>>> +--- >>>> +$id: >>> http://devicetree.org/schemas/reserved-memory/mediatek,secure_cma_chunkmem.yaml# >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>> + >>>> +title: MediaTek Secure Video Path Reserved Memory >>> >>> What makes this specific to Mediatek? Secure video path is fairly >>> common, right? >> >> Here we just reserve a buffer and would like to create a dma-buf secure >> heap for SVP, then the secure engines(Vcodec and DRM) could prepare >> secure buffer through it. >> >> But the heap driver is pure SW driver, it is not platform device and > > All drivers are pure SW. > >> we don't have a corresponding HW unit for it. Thus I don't think I >> could create a platform dtsi node and use "memory-region" pointer to >> the region. I used RESERVEDMEM_OF_DECLARE currently(The code is in >> [9/9]). Sorry if this is not right. > > If this is not for any hardware and you already understand this (since > you cannot use other bindings) then you cannot have custom bindings for > it either. > >> >> Then in our usage case, is there some similar method to do this? or >> any other suggestion? > > Don't stuff software into DTS. Aren't most reserved-memory bindings just software policy if you look at it that way, though? IIUC this is a pool of memory that is visible and available to the Non-Secure OS, but is fundamentally owned by the Secure TEE, and pages that the TEE allocates from it will become physically inaccessible to the OS. Thus the platform does impose constraints on how the Non-Secure OS may use it, and per the rest of the reserved-memory bindings, describing it as a "reusable" reservation seems entirely appropriate. If anything that's *more* platform-related and so DT-relevant than typical arbitrary reservations which just represent "save some memory to dedicate to a particular driver" and don't actually bear any relationship to firmware or hardware at all. However, the fact that Linux's implementation of how to reuse reserved memory areas is called CMA is indeed still irrelevant and has no place in the binding itself. Thanks, Robin.