From mboxrd@z Thu Jan 1 00:00:00 1970 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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1FA36C74A5B for ; Thu, 30 Mar 2023 01:35:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229715AbjC3Be7 (ORCPT ); Wed, 29 Mar 2023 21:34:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:55004 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229570AbjC3Be6 (ORCPT ); Wed, 29 Mar 2023 21:34:58 -0400 Received: from mail-pj1-x102c.google.com (mail-pj1-x102c.google.com [IPv6:2607:f8b0:4864:20::102c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A4A3E49F5 for ; Wed, 29 Mar 2023 18:34:57 -0700 (PDT) Received: by mail-pj1-x102c.google.com with SMTP id e15-20020a17090ac20f00b0023d1b009f52so20480801pjt.2 for ; Wed, 29 Mar 2023 18:34:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1680140097; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=+s3/7avJ4jXfEL/EcHu+vdSVHrfTZ0GFVAw0Oijq+5s=; b=Fvg2Ut9YmRIdGmiIGn0vAOuc+ZHU1m8fZpC4dHiKI+1SK3oXa61qaRx2rkr1rYJkz7 i71lQU96Xbnmo3P8Dm2QC5r4YMCmnyhURdPljQ0WbKGuIg5TjeepcD9nwIs+AyWbls4Z dOUZJxDUKTwc7uYxe5h4TO9zFvALEqUiriR8Vqw8frJhrO2ByWApDe4Rnhngohf619Tw jd0wN9xKEJE+8QkMXbMmmzFZ8npJ36rxqt/Y2GSc3kSpURapwoo871F6ib3hpTujXKKz ONoDrfZ+S6fDV7zxFpxXPghWFE5b/HvloxI9WCxYdjk/KyNrDY1rm+sDl3KblEKSNSi0 zMhQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680140097; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=+s3/7avJ4jXfEL/EcHu+vdSVHrfTZ0GFVAw0Oijq+5s=; b=0pYjYLE6vT/kaDo7JgvP0wxRGlMmhXS2WiSSrNK4Z3zkQ4OVi+aTzQ+TXCVFgLgJWK YgyxCN1AHe2E7zMwcHMcAiyE6taugMq+i2nmVS6RHOG5+NUrDQXrF2W1hFiaUSqKhKj9 FCyjUW+PHv9vG4QmwXbPyJ4Z6Uw8PkKfgTbRtp/YcnOqWAfvc81TsxCXWC1fnZ8RMLj8 wT/tXQqi6zTd+zrABO32qDW7ad0MfFyuWP2wDojTQ7tRS8BpM16EfEIZ7dbEqpqQtUas YG6ILSivGBUEYRlE1j3Uqczw2uU819NXxQQpnD48X1hE/VWN6rz3YoC9e6YnwA3ivkK7 SqAQ== X-Gm-Message-State: AAQBX9cfibvwwb1uBdYOardfzmSiGWe8+F5usLEcKNWSmeabymXVzg2e cLGZ6V/lbssMuJo2loGto2O1qQ== X-Google-Smtp-Source: AKy350byhc7BcOIWgRDGMh3ui2tHi24Dd3KnN1ayQaCGu36TkkQY/yVUP2ZTbD6kyTEXIQN2psP5VA== X-Received: by 2002:a17:90a:198e:b0:237:9cc7:28a4 with SMTP id 14-20020a17090a198e00b002379cc728a4mr23166855pji.14.1680140097081; Wed, 29 Mar 2023 18:34:57 -0700 (PDT) Received: from dragon (80.251.214.228.16clouds.com. [80.251.214.228]) by smtp.gmail.com with ESMTPSA id ij21-20020a17090af81500b0023b3d80c76csm2081346pjb.4.2023.03.29.18.34.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 29 Mar 2023 18:34:56 -0700 (PDT) Date: Thu, 30 Mar 2023 09:34:49 +0800 From: Shawn Guo To: Konrad Dybcio Cc: Andy Gross , Bjorn Andersson , Thomas Gleixner , Marc Zyngier , Rob Herring , Krzysztof Kozlowski , Marijn Suijten , linux-arm-msm@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH 2/2] irqchip: irq-qcom-mpm: Support passing a slice of SRAM as reg space Message-ID: <20230330013449.GB3590215@dragon> References: <20230328-topic-msgram_mpm-v1-0-1b788a5f5a33@linaro.org> <20230328-topic-msgram_mpm-v1-2-1b788a5f5a33@linaro.org> <20230329034958.GC3554086@dragon> <20230329132819.GA3590215@dragon> <14350eba-edb6-0243-5451-2e2b7d1bd3fd@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <14350eba-edb6-0243-5451-2e2b7d1bd3fd@linaro.org> Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org On Wed, Mar 29, 2023 at 03:30:12PM +0200, Konrad Dybcio wrote: > >>>> @@ -374,9 +377,21 @@ static int qcom_mpm_init(struct device_node *np, struct device_node *parent) > >>>> > >>>> raw_spin_lock_init(&priv->lock); > >>>> > >>>> - priv->base = devm_platform_ioremap_resource(pdev, 0); > >>>> - if (IS_ERR(priv->base)) > >>>> - return PTR_ERR(priv->base); > >>>> + /* If we have a handle to an RPM message ram partition, use it. */ > >>>> + msgram_np = of_parse_phandle(np, "qcom,rpm-msg-ram", 0); > >>>> + if (msgram_np) { > >>>> + ret = of_address_to_resource(msgram_np, 0, &res); > >>>> + /* Don't use devm_ioremap_resource, as we're accessing a shared region. */ > >>>> + priv->base = ioremap(res.start, resource_size(&res)); > >>> > >>> Are you suggesting that other cores/drivers will also need to access > >>> the mpm slice below? > >>> > >>> apss_mpm: sram@1b8 { > >>> reg = <0x1b8 0x48>; > >>> }; > >> Yes, the RPM M3 core. Other slices may be accessed > >> by any core at any time. > > > > Hmm, let me reword my question. Other than irq-qcom-mpm, is there any > > other Linux drivers that also need to request this slice region? > No. > > > Otherwise, I do not understand why devm_ioremap_resource() cannot be > > used. > drivers/rpmsg/qcom_glink_rpm.c calls devm_ioremap on the entire > RPM MSG RAM. Can we use devm_ioremap() too instead of ioremap() here? Shawn