[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100819152301.GB25193@ovro.caltech.edu>
Date: Thu, 19 Aug 2010 08:23:01 -0700
From: "Ira W. Snyder" <iws@...o.caltech.edu>
To: Arnd Bergmann <arnd@...db.de>
Cc: Richard Cochran <richardcochran@...il.com>,
Rodolfo Giometti <giometti@...ux.it>,
john stultz <johnstul@...ibm.com>,
devicetree-discuss@...ts.ozlabs.org, linux-kernel@...r.kernel.org,
netdev@...r.kernel.org, linuxppc-dev@...ts.ozlabs.org,
linux-arm-kernel@...ts.infradead.org,
Krzysztof Halasa <khc@...waw.pl>
Subject: Re: [PATCH 1/5] ptp: Added a brand new class driver for ptp clocks.
On Thu, Aug 19, 2010 at 02:29:49PM +0200, Arnd Bergmann wrote:
> On Thursday 19 August 2010, Richard Cochran wrote:
> >
> > On Wed, Aug 18, 2010 at 05:02:03PM +0200, Arnd Bergmann wrote:
> > > 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.
>
> > > 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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists