Hi, +Cc Srinivas On Wed, Jan 12, 2022 at 08:40:58PM +0100, Luca Weiss wrote: > From: Vladimir Lypak <vladimir.lypak@xxxxxxxxx> > > 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@xxxxxxxxx> > Signed-off-by: Luca Weiss <luca@xxxxxxxxx> > Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxxxxxx> 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@xxxxxxxxxx/ https://lore.kernel.org/linux-arm-msm/20180315181244.8859-1-bjorn.andersson@xxxxxxxxxx/ 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 >