[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Yd9KebiZUjTuHtIM@gerhold.net>
Date: Wed, 12 Jan 2022 22:39:53 +0100
From: Stephan Gerhold <stephan@...hold.net>
To: Luca Weiss <luca@...tu.xyz>
Cc: linux-arm-msm@...r.kernel.org,
~postmarketos/upstreaming@...ts.sr.ht, phone-devel@...r.kernel.org,
Vladimir Lypak <vladimir.lypak@...il.com>,
Konrad Dybcio <konrad.dybcio@...ainline.org>,
Andy Gross <agross@...nel.org>,
Bjorn Andersson <bjorn.andersson@...aro.org>,
Ohad Ben-Cohen <ohad@...ery.com>,
Mathieu Poirier <mathieu.poirier@...aro.org>,
linux-remoteproc@...r.kernel.org, linux-kernel@...r.kernel.org,
Srinivas Kandagatla <srinivas.kandagatla@...aro.org>
Subject: Re: [PATCH 09/15] rpmsg: smd: Drop unnecessary condition for channel
creation
Hi,
+Cc Srinivas
On Wed, Jan 12, 2022 at 08:40:58PM +0100, Luca Weiss wrote:
> From: Vladimir Lypak <vladimir.lypak@...il.com>
>
> RPM Firmware on variety of newer SoCs such as MSM8917 (also likely
> MSM8937, MSM8940, MSM8952), MSM8953 and on some MSM8916 devices) doesn't
> initiate opening of the SMD channel if it was previously opened by
> bootloader. This doesn't allow probing of smd-rpm driver on such devices
> because there is a check that requires RPM this behaviour.
>
> Signed-off-by: Vladimir Lypak <vladimir.lypak@...il.com>
> Signed-off-by: Luca Weiss <luca@...tu.xyz>
> Reviewed-by: Konrad Dybcio <konrad.dybcio@...ainline.org>
This is effectively a "Revert "Revert "rpmsg: smd: Create device for all
channels""":
https://lore.kernel.org/linux-arm-msm/20171212235857.10432-3-bjorn.andersson@linaro.org/
https://lore.kernel.org/linux-arm-msm/20180315181244.8859-1-bjorn.andersson@linaro.org/
Won't this cause the same regression reported by Srinivas again?
Thanks,
Stephan
> ---
> drivers/rpmsg/qcom_smd.c | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/drivers/rpmsg/qcom_smd.c b/drivers/rpmsg/qcom_smd.c
> index 8da1b5cb31b3..6a01ef932b01 100644
> --- a/drivers/rpmsg/qcom_smd.c
> +++ b/drivers/rpmsg/qcom_smd.c
> @@ -1280,19 +1280,13 @@ static void qcom_channel_state_worker(struct work_struct *work)
> unsigned long flags;
>
> /*
> - * Register a device for any closed channel where the remote processor
> - * is showing interest in opening the channel.
> + * Register a device for any closed channel.
> */
> spin_lock_irqsave(&edge->channels_lock, flags);
> list_for_each_entry(channel, &edge->channels, list) {
> if (channel->state != SMD_CHANNEL_CLOSED)
> continue;
>
> - remote_state = GET_RX_CHANNEL_INFO(channel, state);
> - if (remote_state != SMD_CHANNEL_OPENING &&
> - remote_state != SMD_CHANNEL_OPENED)
> - continue;
> -
> if (channel->registered)
> continue;
>
> --
> 2.34.1
>
Powered by blists - more mailing lists