linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] rpmsg: Make rpmsg sample selectable
@ 2016-05-06 18:06 Bjorn Andersson
  2016-05-06 19:25 ` Suman Anna
  0 siblings, 1 reply; 5+ messages in thread
From: Bjorn Andersson @ 2016-05-06 18:06 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Suman Anna, Ohad Ben-Cohen, linux-remoteproc, linux-kernel

rpmsg is not user selectable so the rpmsg sample should not depend on
it, as this limits the possibility of compiling the sample client
without any other clients.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
---
 samples/Kconfig | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/samples/Kconfig b/samples/Kconfig
index d54f28c6dc5e..61a251e579ed 100644
--- a/samples/Kconfig
+++ b/samples/Kconfig
@@ -57,7 +57,8 @@ config SAMPLE_KDB
 
 config SAMPLE_RPMSG_CLIENT
 	tristate "Build rpmsg client sample -- loadable modules only"
-	depends on RPMSG && m
+	select RPMSG
+	depends on m
 	help
 	  Build an rpmsg client sample driver, which demonstrates how
 	  to communicate with an AMP-configured remote processor over
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] rpmsg: Make rpmsg sample selectable
  2016-05-06 18:06 [PATCH] rpmsg: Make rpmsg sample selectable Bjorn Andersson
@ 2016-05-06 19:25 ` Suman Anna
  2016-05-06 22:15   ` Bjorn Andersson
  0 siblings, 1 reply; 5+ messages in thread
From: Suman Anna @ 2016-05-06 19:25 UTC (permalink / raw)
  To: Bjorn Andersson; +Cc: Ohad Ben-Cohen, linux-remoteproc, linux-kernel

Hi Bjorn,

On 05/06/2016 01:06 PM, Bjorn Andersson wrote:
> rpmsg is not user selectable so the rpmsg sample should not depend on
> it, as this limits the possibility of compiling the sample client
> without any other clients.
> 
> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> ---
>  samples/Kconfig | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/samples/Kconfig b/samples/Kconfig
> index d54f28c6dc5e..61a251e579ed 100644
> --- a/samples/Kconfig
> +++ b/samples/Kconfig
> @@ -57,7 +57,8 @@ config SAMPLE_KDB
>  
>  config SAMPLE_RPMSG_CLIENT
>  	tristate "Build rpmsg client sample -- loadable modules only"
> -	depends on RPMSG && m
> +	select RPMSG
> +	depends on m

Well, I believe this has to do with the fact that we also need to have a
remoteproc driver enabled, as you cannot have the sample running by
itself. A remoteproc driver implementing RPMSG would select it, and then
this sample can be enabled. In fact, I follow this for all rpmsg bus
drivers.

regards
Suman

>  	help
>  	  Build an rpmsg client sample driver, which demonstrates how
>  	  to communicate with an AMP-configured remote processor over
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] rpmsg: Make rpmsg sample selectable
  2016-05-06 19:25 ` Suman Anna
@ 2016-05-06 22:15   ` Bjorn Andersson
  2016-05-11 15:39     ` Suman Anna
  0 siblings, 1 reply; 5+ messages in thread
From: Bjorn Andersson @ 2016-05-06 22:15 UTC (permalink / raw)
  To: Suman Anna; +Cc: Ohad Ben-Cohen, linux-remoteproc, linux-kernel

On Fri 06 May 12:25 PDT 2016, Suman Anna wrote:

> Hi Bjorn,
> 
> On 05/06/2016 01:06 PM, Bjorn Andersson wrote:
> > rpmsg is not user selectable so the rpmsg sample should not depend on
> > it, as this limits the possibility of compiling the sample client
> > without any other clients.
> > 
> > Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> > ---
> >  samples/Kconfig | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/samples/Kconfig b/samples/Kconfig
> > index d54f28c6dc5e..61a251e579ed 100644
> > --- a/samples/Kconfig
> > +++ b/samples/Kconfig
> > @@ -57,7 +57,8 @@ config SAMPLE_KDB
> >  
> >  config SAMPLE_RPMSG_CLIENT
> >  	tristate "Build rpmsg client sample -- loadable modules only"
> > -	depends on RPMSG && m
> > +	select RPMSG
> > +	depends on m
> 
> Well, I believe this has to do with the fact that we also need to have a
> remoteproc driver enabled, as you cannot have the sample running by
> itself. A remoteproc driver implementing RPMSG would select it, and then
> this sample can be enabled. In fact, I follow this for all rpmsg bus
> drivers.
> 

That does sound backwards though. Remoteproc provides means to control
the life cycle of your remote processor and establish (among other
things) the virtio channels for e.g. rpmsg, but it certainly does not
depend on rpmsg.

As far as I can see there's 8 other types of virtio services supported
and I presume we're supposed to select those based on the device's need.


But based on this I believe the correct solution is not to fix the
sample but to make RPMSG selectable in itself.

Regards,
Bjorn

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] rpmsg: Make rpmsg sample selectable
  2016-05-06 22:15   ` Bjorn Andersson
@ 2016-05-11 15:39     ` Suman Anna
  2016-05-11 19:45       ` Bjorn Andersson
  0 siblings, 1 reply; 5+ messages in thread
From: Suman Anna @ 2016-05-11 15:39 UTC (permalink / raw)
  To: Bjorn Andersson; +Cc: Ohad Ben-Cohen, linux-remoteproc, linux-kernel

On 05/06/2016 05:15 PM, Bjorn Andersson wrote:
> On Fri 06 May 12:25 PDT 2016, Suman Anna wrote:
> 
>> Hi Bjorn,
>>
>> On 05/06/2016 01:06 PM, Bjorn Andersson wrote:
>>> rpmsg is not user selectable so the rpmsg sample should not depend on
>>> it, as this limits the possibility of compiling the sample client
>>> without any other clients.
>>>
>>> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
>>> ---
>>>  samples/Kconfig | 3 ++-
>>>  1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/samples/Kconfig b/samples/Kconfig
>>> index d54f28c6dc5e..61a251e579ed 100644
>>> --- a/samples/Kconfig
>>> +++ b/samples/Kconfig
>>> @@ -57,7 +57,8 @@ config SAMPLE_KDB
>>>  
>>>  config SAMPLE_RPMSG_CLIENT
>>>  	tristate "Build rpmsg client sample -- loadable modules only"
>>> -	depends on RPMSG && m
>>> +	select RPMSG
>>> +	depends on m
>>
>> Well, I believe this has to do with the fact that we also need to have a
>> remoteproc driver enabled, as you cannot have the sample running by
>> itself. A remoteproc driver implementing RPMSG would select it, and then
>> this sample can be enabled. In fact, I follow this for all rpmsg bus
>> drivers.
>>
> 
> That does sound backwards though. Remoteproc provides means to control
> the life cycle of your remote processor and establish (among other
> things) the virtio channels for e.g. rpmsg, but it certainly does not
> depend on rpmsg.

True, but the boot of a remote processor that supports virtio devices is
automatic only when you have the virtio_rpmsg_bus probed because of
the link between remoteproc_virtio and virtio_rpmsg_bus.

> 
> As far as I can see there's 8 other types of virtio services supported
> and I presume we're supposed to select those based on the device's need.
> 
> 
> But based on this I believe the correct solution is not to fix the
> sample but to make RPMSG selectable in itself.

Yeah, agreed.

regards
Suman

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] rpmsg: Make rpmsg sample selectable
  2016-05-11 15:39     ` Suman Anna
@ 2016-05-11 19:45       ` Bjorn Andersson
  0 siblings, 0 replies; 5+ messages in thread
From: Bjorn Andersson @ 2016-05-11 19:45 UTC (permalink / raw)
  To: Suman Anna; +Cc: Ohad Ben-Cohen, linux-remoteproc, linux-kernel

On Wed 11 May 08:39 PDT 2016, Suman Anna wrote:

> On 05/06/2016 05:15 PM, Bjorn Andersson wrote:
> > On Fri 06 May 12:25 PDT 2016, Suman Anna wrote:
> > 
> >> Hi Bjorn,
> >>
> >> On 05/06/2016 01:06 PM, Bjorn Andersson wrote:
> >>> rpmsg is not user selectable so the rpmsg sample should not depend on
> >>> it, as this limits the possibility of compiling the sample client
> >>> without any other clients.
> >>>
> >>> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> >>> ---
> >>>  samples/Kconfig | 3 ++-
> >>>  1 file changed, 2 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/samples/Kconfig b/samples/Kconfig
> >>> index d54f28c6dc5e..61a251e579ed 100644
> >>> --- a/samples/Kconfig
> >>> +++ b/samples/Kconfig
> >>> @@ -57,7 +57,8 @@ config SAMPLE_KDB
> >>>  
> >>>  config SAMPLE_RPMSG_CLIENT
> >>>  	tristate "Build rpmsg client sample -- loadable modules only"
> >>> -	depends on RPMSG && m
> >>> +	select RPMSG
> >>> +	depends on m
> >>
> >> Well, I believe this has to do with the fact that we also need to have a
> >> remoteproc driver enabled, as you cannot have the sample running by
> >> itself. A remoteproc driver implementing RPMSG would select it, and then
> >> this sample can be enabled. In fact, I follow this for all rpmsg bus
> >> drivers.
> >>
> > 
> > That does sound backwards though. Remoteproc provides means to control
> > the life cycle of your remote processor and establish (among other
> > things) the virtio channels for e.g. rpmsg, but it certainly does not
> > depend on rpmsg.
> 
> True, but the boot of a remote processor that supports virtio devices is
> automatic only when you have the virtio_rpmsg_bus probed because of
> the link between remoteproc_virtio and virtio_rpmsg_bus.
> 

If I read the code correctly we register the virtios found in the
resource table, which will trigger a probe of a virtio driver with the
matching "id".

The probed vdev will acquire the virtqueues through the find_vqs op,
which will upon matching boot the remoteproc.

So as far as I understand this does not only apply to rpmsg, but to any
virtio driver. Not saying that the "depends" is wrong, just trying to
better understand the relationship between these components.

> > 
> > As far as I can see there's 8 other types of virtio services supported
> > and I presume we're supposed to select those based on the device's need.
> > 
> > 
> > But based on this I believe the correct solution is not to fix the
> > sample but to make RPMSG selectable in itself.
> 
> Yeah, agreed.
> 

I'll send a patch for that next time I'm messing around in there.

Regards,
Bjorn

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-05-11 19:45 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-05-06 18:06 [PATCH] rpmsg: Make rpmsg sample selectable Bjorn Andersson
2016-05-06 19:25 ` Suman Anna
2016-05-06 22:15   ` Bjorn Andersson
2016-05-11 15:39     ` Suman Anna
2016-05-11 19:45       ` Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).