-----Original Message----- From: Dan Williams dan.j.williams@intel.com Sent: Thursday, November 5, 2020 2:00 PM To: Ertman, David M david.m.ertman@intel.com Cc: alsa-devel@alsa-project.org; Takashi Iwai tiwai@suse.de; Mark Brown broonie@kernel.org; linux-rdma linux-rdma@vger.kernel.org; Jason Gunthorpe jgg@nvidia.com; Doug Ledford dledford@redhat.com; Netdev netdev@vger.kernel.org; David Miller davem@davemloft.net; Jakub Kicinski kuba@kernel.org; Greg KH gregkh@linuxfoundation.org; Ranjani Sridharan ranjani.sridharan@linux.intel.com; Pierre-Louis Bossart pierre-louis.bossart@linux.intel.com; Fred Oh fred.oh@linux.intel.com; Parav Pandit parav@mellanox.com; Saleem, Shiraz shiraz.saleem@intel.com; Patil, Kiran kiran.patil@intel.com; Linux Kernel Mailing List linux-kernel@vger.kernel.org; Leon Romanovsky leonro@nvidia.com Subject: Re: [PATCH v3 01/10] Add auxiliary bus support
On Thu, Nov 5, 2020 at 11:28 AM Ertman, David M david.m.ertman@intel.com wrote: [..]
Each auxiliary_device represents a part of its parent +functionality. The generic behavior can be extended and specialized as
needed
+by encapsulating an auxiliary_device within other domain-specific
structures and
+the use of .ops callbacks. Devices on the auxiliary bus do not share any +structures and the use of a communication channel with the parent is +domain-specific.
Should there be any guidance here on when to use ops and when to just export functions from parent driver to child. EXPORT_SYMBOL_NS()
seems
a perfect fit for publishing shared routines between parent and child.
I would leave this up the driver writers to determine what is best for them.
I think there is a pathological case that can be avoided with a statement like the following:
"Note that ops are intended as a way to augment instance behavior within a class of auxiliary devices, it is not the mechanism for exporting common infrastructure from the parent. Consider EXPORT_SYMBOL_NS() to convey infrastructure from the parent module to the auxiliary module(s)."
As for your other dispositions of the feedback, looks good to me.
I will add this in.
-DaveE