Source organization for two drivers sharing coomon code

Previous thread: [PATCH 2/2] arcmsr: irq handler fixes, cleanups, micro-opts by Jeff Garzik on Friday, July 27, 2007 - 1:01 pm. (2 messages)

Next thread: [patch] x86, serial: always probe for legacy COM ports by Bjorn Helgaas on Friday, July 27, 2007 - 1:58 pm. (7 messages)
To: <linux-kernel@...>
Date: Friday, July 27, 2007 - 1:17 pm

What is the recommended way for two drivers to share common code ?
Our device has two PCI functions and hence two drivers - NIC and
SCSI driver. The source code for these dirvers will fit under
drivers/net and drivers/scsi. But both drivers share some common
code. If possible, I would like to avoid duplicating the common
code under the two driver directories. Is there any recommened
way to organize such common code ? Thanks.

Subbu

___________________________________________________________________________________
This message, together with any attachment(s), contains confidential and proprietary information of
ServerEngines LLC and is intended only for the designated recipient(s) named above. Any unauthorized
review, printing, retention, copying, disclosure or distribution is strictly prohibited. If you are not the
intended recipient of this message, please immediately advise the sender by reply email message and
delete all copies of this message and any attachment(s). Thank you.

-

To: Subbu Seetharaman <subbus@...>
Cc: <linux-kernel@...>
Date: Friday, July 27, 2007 - 3:03 pm

You could create (in total) three modules, e.g. my-common.ko,
my-net.ko and my-scsi.ko, of which the latter two use functions from the first.

Jan
--
-

To: Jan Engelhardt <jengelh@...>
Cc: Subbu Seetharaman <subbus@...>, <linux-kernel@...>
Date: Friday, July 27, 2007 - 3:12 pm

Where would the common code live, in such a case? Would you just pick
one of the two locations at random, or put it in drivers/misc or maybe lib?

Chris
-

To: Chris Friesen <cfriesen@...>
Cc: Subbu Seetharaman <subbus@...>, <linux-kernel@...>
Date: Friday, July 27, 2007 - 3:34 pm

Perhaps drivers/message - well I can't answer that exactly.

As far as the output object files are concerned, it is not relevant,
since they will be autoloaded anyway :)

Jan
--
-

To: Subbu Seetharaman <subbus@...>
Cc: <linux-kernel@...>
Date: Friday, July 27, 2007 - 1:35 pm

On Fri, 27 Jul 2007 10:17:29 -0700

What sort of code is shared - historically the cases we have had in the
driver space have mostly been common message passing interfaces to
co-processor type boards (eg I2O or MPT Fusion) and those have lived
under drivers/message/type/...

I don't think there is any hard rule here.

Alan
-

Previous thread: [PATCH 2/2] arcmsr: irq handler fixes, cleanups, micro-opts by Jeff Garzik on Friday, July 27, 2007 - 1:01 pm. (2 messages)

Next thread: [patch] x86, serial: always probe for legacy COM ports by Bjorn Helgaas on Friday, July 27, 2007 - 1:58 pm. (7 messages)