Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp3291791pxb; Tue, 12 Jan 2021 10:50:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJzOUrU8b9sCPvqE2RyDWK/oc5gka+fFFLGEcJYCYlJYLNIcVFQewagV5NUi9mvF22rMujRq X-Received: by 2002:a17:906:8292:: with SMTP id h18mr137461ejx.481.1610477455427; Tue, 12 Jan 2021 10:50:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610477455; cv=none; d=google.com; s=arc-20160816; b=xWJTmSPnvdk4AnDs0D4KgRSBxy6ZmU9fg7F9A/2y8eRlLVvorquaQnoksUQ72qK4iZ aD5xwRiCmFi1nVebvjE/0KB/rPk34aX1O+9Cq4b4leF2UhwDVVqVQIu8W6RVe2zNRCAl taBOmn92YY/WAddLNaKCfbyCqS/GbfJMYe/mlBwxRyIeGohnKS/4OEcLuV6tVa2GeTbi 7kMYrRNDFQEsxj5azzJZsj3VNGUzwniO7s6Z1a3C+OzUK5JiFWAOdlAFqdo9nHJe6f5C RO79DDCRX6bwBcbWrGn9V+R3iiCwjkNLhqZREDpll5oIa/kOuXmmOSPHExkDBR1hHqrL dp2g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=Mo28dVJ2HUEV0IicF3MnVVdQ/UP47bf6/LOz74G0NV4=; b=M7QRiQCm/95RcHutcJZmiCLaY3UIsQ0/HIxap8HK8mw1KNj9y9j/wDGMPLlW/i9qza oeaOWGt2k+cCe/96cIUD8mi3ik/7U6dPuamftQsqJ0JqkQyXs4L4so79O48JilRATawQ M2QwoiHvfrGCiqaD216I6yg4GE2jzn7FEaKG9Y58lel7KljVuMLzyhi9XPV1OGkdnwtQ +F6qF+Gm+KiY0xALEu9zvP+WvIiC4JZZ0BAroLR/no0GLgdR9JTC5DTaKeTPlkD6UGLM 5rJX+oGCkHA6OPbKeu3oAcc+uoqZr+5srP1qM2ZQ3XG53y8C9yyStaHDXHoklfi1UqqH KNzQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=n0Rv5jgn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id r24si1388556eji.211.2021.01.12.10.50.30; Tue, 12 Jan 2021 10:50:55 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=n0Rv5jgn; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2406187AbhALSrO (ORCPT + 99 others); Tue, 12 Jan 2021 13:47:14 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36260 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391672AbhALSrO (ORCPT ); Tue, 12 Jan 2021 13:47:14 -0500 Received: from mail-pf1-x430.google.com (mail-pf1-x430.google.com [IPv6:2607:f8b0:4864:20::430]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2EC14C061794 for ; Tue, 12 Jan 2021 10:46:33 -0800 (PST) Received: by mail-pf1-x430.google.com with SMTP id c79so1921941pfc.2 for ; Tue, 12 Jan 2021 10:46:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=Mo28dVJ2HUEV0IicF3MnVVdQ/UP47bf6/LOz74G0NV4=; b=n0Rv5jgnsLM1fdHpmyREatiuc98/6FgLXI2u3Dfjn6JkFVDSt5K/DJYSW3AOA3dpNd TaVTPEG8+PSg7Y/loQ41zxKMEkN3JDsv8Rv7UKVx9Ww9e7FVJjezzvUqgap6inF1VAlG ESQlzGvRc2WwnmtIcSDBznngMx4NTnPy5a638LkfJxGH7BKjiuIgG8gDiWM29Z4fY1yM K3kcR6buEPDVC/r+XbO9Uvc2IlNX8eX7633wJBJRrJ+W0jWAmEw9hiBh/A6NOjU5udMK W4XSe0j58MNwisiRQuMWSpk0I9LGrahN17GBJ3Kh1PqFbCq1L0ymPWlyDHcHXfXrBClR 9Lwg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=Mo28dVJ2HUEV0IicF3MnVVdQ/UP47bf6/LOz74G0NV4=; b=nN0jenWV+VbTmFv6VQRbKKvq508LBLdSz8mqqAQruWWubRH0xBMeq0fgHtqq/OIgt0 XmiNIiko8NBAiWYSqQWCJ62+MF+hwD1f3bZ27YxQz8Klj8O9LViQEJgKhgaE65pPQWEX 7FPHJooXdeFi4D9slAnz3caYVI5niQJCJceSn1OpxzUDmxfinT0olM/iZ9At8gutFTvq DTmHjfW/FPfHVNmv5jVGFAhl8bxwibuJl9yBwNrfU2YQ8FMxcRBf04TrsjGpYdYRNSzj GeaZfPdD1gcfAg9SZbEG9qDNvehhchDzQHagW29y9a5fFRIMP64RJZVvPJgOmJLEfTcr 9M9Q== X-Gm-Message-State: AOAM530e4HBS3jKkzRmB3EElhri0hBjPJx7uN9X2/Yq4ECOUd1+I6TT+ iIm0eETRxocztHMHS/h88CA5LA== X-Received: by 2002:a62:7711:0:b029:1aa:3203:73c9 with SMTP id s17-20020a6277110000b02901aa320373c9mr454876pfc.65.1610477192542; Tue, 12 Jan 2021 10:46:32 -0800 (PST) Received: from xps15 (S0106889e681aac74.cg.shawcable.net. [68.147.0.187]) by smtp.gmail.com with ESMTPSA id h3sm4362007pgm.67.2021.01.12.10.46.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 12 Jan 2021 10:46:31 -0800 (PST) Date: Tue, 12 Jan 2021 11:46:29 -0700 From: Mathieu Poirier To: Peng Fan Cc: "ohad@wizery.com" , "bjorn.andersson@linaro.org" , "o.rempel@pengutronix.de" , "shawnguo@kernel.org" , "s.hauer@pengutronix.de" , "kernel@pengutronix.de" , "festevam@gmail.com" , dl-linux-imx , "linux-remoteproc@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-kernel@vger.kernel.org" , "paul@crapouillou.net" , "matthias.bgg@gmail.com" , "agross@kernel.org" , "patrice.chotard@st.com" Subject: Re: [PATCH V5 7/8] remoteproc: imx_rproc: ignore mapping vdev regions Message-ID: <20210112184629.GA186830@xps15> References: <20201229033019.25899-1-peng.fan@nxp.com> <20201229033019.25899-8-peng.fan@nxp.com> <20210111215023.GJ144935@xps15> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Jan 12, 2021 at 09:41:12AM +0000, Peng Fan wrote: > > Subject: Re: [PATCH V5 7/8] remoteproc: imx_rproc: ignore mapping vdev > > regions > > > > On Tue, Dec 29, 2020 at 11:30:18AM +0800, peng.fan@nxp.com wrote: > > > From: Peng Fan > > > > > > vdev regions are vdev0vring0, vdev0vring1, vdevbuffer and similar. > > > They are handled by remoteproc common code, no need to map in imx > > > rproc driver. > > > > > > Signed-off-by: Peng Fan > > > --- > > > drivers/remoteproc/imx_rproc.c | 3 +++ > > > 1 file changed, 3 insertions(+) > > > > > > diff --git a/drivers/remoteproc/imx_rproc.c > > > b/drivers/remoteproc/imx_rproc.c index f80428afb8a7..e62a53ee128e > > > 100644 > > > --- a/drivers/remoteproc/imx_rproc.c > > > +++ b/drivers/remoteproc/imx_rproc.c > > > @@ -417,6 +417,9 @@ static int imx_rproc_addr_init(struct imx_rproc > > *priv, > > > struct resource res; > > > > > > node = of_parse_phandle(np, "memory-region", a); > > > + /* Not map vdev region */ > > > + if (!strcmp(node->name, "vdev")) > > > + continue; > > > > I am very confused and because I don't see an example for the DT in the > > bindings document I have to guess what is going on. > > V6 will include the DT yaml. > > > > > So I am guessing that you have laid out the memory regions for the vrings and > > the vdev0buffer in the DT "memory-region". > > The dts part will be similar as following: > > + #include > + rsc_table: rsc_table@550ff000 { > + no-map; > + reg = <0x550ff000 0x1000>; > + }; > + > + vdev0vring0: vdev0vring0@55000000 { > + no-map; > + reg = <0x55000000 0x8000>; > + }; > + > + vdev0vring1: vdev0vring1@55008000 { > + reg = <0x55008000 0x8000>; > + no-map; > + }; > + > + vdevbuffer: vdevbuffer@55400000 { > + compatible = "shared-dma-pool"; > + reg = <0x55400000 0x100000>; > + no-map; > + }; > + > + imx8mm-cm4 { > + compatible = "fsl,imx8mm-cm4"; > + clocks = <&clk IMX8MM_CLK_M4_DIV>; > + mbox-names = "tx", "rx", "rxdb"; > + mboxes = <&mu 0 1 > + &mu 1 1 > + &mu 3 1>; > + memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>; > + syscon = <&src>; > + }; > > > > > For the vrings I don't see the allocation of a carveout, which means that you > > will take the memory out of the DMA pool and the reserve memory will be > > wasted. > > imx_rproc_parse_memory_regions will alloc carveout. They _will_ but for now they don't and as such there a discrepancy between the bindings and the code that was published in V6. At this point you can either drop the vrings in the DT or send another revision with the carveouts allocated. I would definitely prefer the latter because it wouldn't involve yet another modification of the bindings. > > > > > For the vdev0buffer, what you have will work *only* if that entry is the first > > one in the list of memory regions, as we agreed here [2]. > > Yes. I agree and follow this rule from then. > > Thanks, > Peng. > > > > > [1]. > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Felixir.b > > ootlin.com%2Flinux%2Fv5.11-rc3%2Fsource%2Fdrivers%2Fremoteproc%2Fre > > moteproc_core.c%23L321&data=04%7C01%7Cpeng.fan%40nxp.com%7 > > C581784529b1646b9d34b08d8b67ae8c7%7C686ea1d3bc2b4c6fa92cd99c5c > > 301635%7C0%7C0%7C637459986311799770%7CUnknown%7CTWFpbGZsb3 > > d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0 > > %3D%7C1000&sdata=Qur6YiTWlak0ZRnrUZRzawfoO38EBrAItqZm66b4 > > m20%3D&reserved=0 > > [2]. > > https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatch > > work.kernel.org%2Fproject%2Flinux-remoteproc%2Fpatch%2F202007221315 > > 43.7024-1-peng.fan%40nxp.com%2F&data=04%7C01%7Cpeng.fan%40n > > xp.com%7C581784529b1646b9d34b08d8b67ae8c7%7C686ea1d3bc2b4c6fa9 > > 2cd99c5c301635%7C0%7C0%7C637459986311799770%7CUnknown%7CTW > > FpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJX > > VCI6Mn0%3D%7C1000&sdata=b%2F8muWtb3yxKIsnXmKmRGYYV33%2 > > FHjwA6a8x58geY7eE%3D&reserved=0 > > > > > err = of_address_to_resource(node, 0, &res); > > > if (err) { > > > dev_err(dev, "unable to resolve memory region\n"); > > > -- > > > 2.28.0 > > >