Linux Remote Processor Subsystem development
 help / color / mirror / Atom feed
From: Andrew Davis <afd@ti.com>
To: Nishanth Menon <nm@ti.com>, Arnd Bergmann <arnd@arndb.de>
Cc: Arnd Bergmann <arnd@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Mathieu Poirier <mathieu.poirier@linaro.org>,
	Martyn Welch <martyn.welch@collabora.com>,
	Hari Nagalla <hnagalla@ti.com>,
	Jassi Brar <jassisinghbrar@gmail.com>,
	<linux-remoteproc@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] mailbox, remoteproc: k3-m4+: fix compile testing
Date: Mon, 14 Oct 2024 12:26:22 -0500	[thread overview]
Message-ID: <585e5471-8a49-43cd-afba-055855be8e75@ti.com> (raw)
In-Reply-To: <20241014165238.nbllvtnxrxbwg344@frying>

On 10/14/24 11:52 AM, Nishanth Menon wrote:
> On 15:43-20241014, Arnd Bergmann wrote:
>> On Mon, Oct 14, 2024, at 14:56, Andrew Davis wrote:
>>> On 10/7/24 8:23 AM, Arnd Bergmann wrote:
>>>>    config TI_K3_M4_REMOTEPROC
>>>>    	tristate "TI K3 M4 remoteproc support"
>>>> -	depends on ARCH_OMAP2PLUS || ARCH_K3
>>>> -	select MAILBOX
>>>> -	select OMAP2PLUS_MBOX
>>>> +	depends on ARCH_K3 || COMPILE_TEST
>>>> +	depends on TI_SCI_PROTOCOL || (COMPILE_TEST && TI_SCI_PROTOCOL=n)
>>>
>>> This line is odd. IMHO "COMPILE_TEST" should only be added to ARCH_*
>>> dependencies, as often only one ARCH can be selected which prevents
>>> compile testing drivers with various multiple architecture deps in
>>> one compile test.
>>
>> I generally agree, but the TI_SCI_PROTOCOL interface
>> definitions that were added in aa276781a64a ("firmware: Add basic
>> support for TI System Control Interface (TI-SCI) protocol")
>> appear to explicitly support the case of compile-testing.
>>
>> See also 13678f3feb30 ("reset: ti-sci: honor TI_SCI_PROTOCOL
>> setting when not COMPILE_TEST").
>>
>>> Normal dependencies, on the other hand, can simply be enabled if one
>>> wants to compile test its dependent drivers. In this case, TI_SCI_PROTOCOL
>>> cannot be enabled as it has a dependency up the chain that doesn't
>>> allow selecting when not on a TI platform. We can fix that as I posted
>>> here[0]. With that fix in, this line can be simply become:
>>>
>>> depends on TI_SCI_PROTOCOL
>>
>> That's certainly fine with me, but if we do this, I would suggest
>> also removing the stub functions from
>> include/linux/soc/ti/ti_sci_protocol.h, and the dependency in the
>> reset driver.
>>
>> Adding Nishanth Menon to Cc, to see if he has a preference.
>>
>>       Arnd
> 
> While I am OK to do the cleanups and make the drivers independent,
> I am also looking to make TISCI stuff independent and be a module
> itself. So, dropping the stubs will probably get in the way as we move
> ahead with those plans.
> 

Not sure how having the stubs would help with that. TI_SCI_PROTOCOL
can already be built as a module. The stubs are what cause this
issue here. When built as a module, the stubs are not active so any
driver that depends on this module that is built-in will cause a
link error.

Stubs only make sense for optional components, like GPIOLIB, where
the driver using that component can continue when it is not available.
For all drivers that depend on TI-SCI it is not optional. The dependent
driver *will* fail to probe and error out. These stubs do nothing, and
I'd like to just remove them.

Andrew

  reply	other threads:[~2024-10-14 17:26 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-07 13:23 [PATCH] mailbox, remoteproc: k3-m4+: fix compile testing Arnd Bergmann
2024-10-08 14:12 ` Mathieu Poirier
2024-10-09 17:12 ` Mathieu Poirier
2024-10-14 14:56 ` Andrew Davis
2024-10-14 15:43   ` Arnd Bergmann
2024-10-14 16:52     ` Nishanth Menon
2024-10-14 17:26       ` Andrew Davis [this message]
2024-10-15 11:47         ` Nishanth Menon
2024-10-16 15:26   ` Mathieu Poirier
2024-10-16 15:37     ` Andrew Davis
2024-10-16 16:02       ` Mathieu Poirier
2024-10-16 16:43         ` Andrew Davis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=585e5471-8a49-43cd-afba-055855be8e75@ti.com \
    --to=afd@ti.com \
    --cc=andersson@kernel.org \
    --cc=arnd@arndb.de \
    --cc=arnd@kernel.org \
    --cc=hnagalla@ti.com \
    --cc=jassisinghbrar@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=martyn.welch@collabora.com \
    --cc=mathieu.poirier@linaro.org \
    --cc=nm@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox