Thread (56 messages) 56 messages, 12 authors, 2010-09-22

Re: [PATCH 1/5] ptp: Added a brand new class driver for ptp clocks.

From: Ira W. Snyder <hidden>
Date: 2010-08-19 15:23:05
Also in: linux-arm-kernel, linux-devicetree, linuxppc-dev, lkml

On Thu, Aug 19, 2010 at 02:29:49PM +0200, Arnd Bergmann wrote:
On Thursday 19 August 2010, Richard Cochran wrote:
quoted
On Wed, Aug 18, 2010 at 05:02:03PM +0200, Arnd Bergmann wrote:
quoted
You might want to use callbacks for these system calls that you
can register to at module load time, like it is done for the
existing syscalls.
Can you point me to a specific example?
The struct k_clock contains callback functions to clock source
specific implementations of the syscalls and other functions.
Adding a new clock source that is (potentially) implemented
as a module means you have to define a new k_clock in that module
that you register using register_posix_clock.

If you need additional syscalls to be implemented by the same
module, you can put more callback functions into struct k_clock
that would then only be implemented by the new module.
quoted
quoted
The simpler way (e.g. for testing) is using Kconfig dependencies, like

config PTP
      bool "IEEE 1588 Precision Time Protocol"

config PPS
      tristate "Pulse per Second"
      depends on PTP || !PTP

The depends statement is a way of expressing that when PTP is enabled,
PPS cannot be a module, while it may be a module if PTP is disabled.
THis did not work for me.

What I got was, in effect, two independent booleans.
Hmm, right. I wonder what I was thinking of then.

You can certainly do

config PTP
	bool "IEEE 1588 Precision Time Protocol"
	depends on PPS != m

but that will hide the PTP option if PPS is set to 'm', which is normally
not what you want.
Arnd,

Perhaps you were thinking of the vhost example (taken from
drivers/vhost/Kconfig):

config VHOST_NET
	tristate "Host kernel accelerator for virtio net (EXPERIMENTAL)"
	depends on NET && EVENTFD && (TUN || !TUN) && (MACVTAP || !MACVTAP) && EXPERIMENTAL

They have a similar construct with both TUN and MACVTAP there. Perhaps
the parens are a necessary part of the "X || !X" syntax? Just a random
guess.

Ira
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help