[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <64f8f865-6a3f-118e-4080-91eb466a5acf@linaro.org>
Date: Sat, 1 Apr 2023 14:06:54 +0200
From: Konrad Dybcio <konrad.dybcio@...aro.org>
To: Shawn Guo <shawn.guo@...aro.org>
Cc: Andy Gross <agross@...nel.org>,
Bjorn Andersson <andersson@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Marc Zyngier <maz@...nel.org>,
Rob Herring <robh+dt@...nel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>,
Marijn Suijten <marijn.suijten@...ainline.org>,
linux-arm-msm@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org
Subject: Re: [PATCH 2/2] irqchip: irq-qcom-mpm: Support passing a slice of
SRAM as reg space
On 30.03.2023 03:34, Shawn Guo wrote:
> 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?
Hm. Yes, we totally can!
Konrad
>
> Shawn
Powered by blists - more mailing lists