linux/Documentation
Arnd Bergmann 0e3fd810c4 Documentation: document ktime_get_*() APIs
As Dave Chinner points out, we don't have a proper documentation for the
ktime_get() family of interfaces, making it rather unclear which of the
over 30 (!) interfaces one should actually use in a driver or elsewhere
in the kernel.

I wrote up an explanation from how I personally see the interfaces,
documenting what each of the functions do and hopefully making it a bit
clearer which should be used where.

This is the first time I tried writing .rst format documentation, so
in addition to any mistakes in the content, I probably also introduce
nonstandard formatting ;-)

I first tried to add an extra section to
Documentation/timers/timekeeping.txt, but this is currently not included
in the generated API, and it seems useful to have the API docs as part
of what gets generated in
https://www.kernel.org/doc/html/latest/core-api/index.html#core-utilities
instead, so I started a new file there.

I also considered adding the documentation inline in the
include/linux/timekeeping.h header, but couldn't figure out how to do
that in a way that would result both in helpful inline comments as
well as readable html output, so I settled for the latter, with
a small note pointing to it from the header.

Cc: Dave Chinner <david@fromorbit.com>
Cc: John Stultz <john.stultz@linaro.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Stephen Boyd <sboyd@kernel.org>
Tested-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Randy Dunlap <rdunlap@infradead.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jonathan Corbet <corbet@lwn.net>
2018-07-23 09:16:56 -06:00
..
ABI ABI: sysfs-devices-system-cpu: remove a broken reference 2018-06-15 18:10:01 -03:00
accelerators
accounting
acpi
admin-guide Documentation: Add powerpc options for spec_store_bypass_disable 2018-07-10 15:13:20 -06:00
aoe
arm ARM: Device-tree updates 2018-06-11 17:57:38 -07:00
arm64
auxdisplay
backlight
block block: remov blk_queue_invalidate_tags 2018-06-15 08:13:35 -06:00
blockdev zram: introduce zram memory tracking 2018-06-07 17:34:34 -07:00
bpf
bus-devices
cdrom
cgroup-v1
cma
connector
console
core-api Documentation: document ktime_get_*() APIs 2018-07-23 09:16:56 -06:00
cpu-freq
cpuidle
crypto docs: crypto_engine.rst: Fix two parse warnings 2018-06-15 12:48:59 -03:00
dev-tools doc: dev-tools: kselftest.rst: update contributing new tests 2018-06-29 09:01:50 -06:00
device-mapper dm: add writecache target 2018-06-08 11:59:51 -04:00
devicetree devicectree: bindings: fix location of leds common file 2018-07-02 11:25:21 -06:00
doc-guide Documentation/sphinx: allow "functions" with no parameters 2018-06-30 07:52:42 -06:00
driver-api Move all the dma-mapping code to kernel/dma 2018-06-20 16:30:01 +09:00
driver-model
early-userspace
EDID
extcon
fault-injection
fb
features Kbuild: rename HAVE_CC_STACKPROTECTOR config variable 2018-06-15 07:15:28 +09:00
filesystems Documentation : Update relay function types 2018-07-10 15:11:00 -06:00
firmware_class
fmc
gpio
gpu
hid
hwmon docs: Fix more broken references 2018-06-15 18:11:26 -03:00
i2c Merge branch 'i2c/for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2018-06-14 16:21:46 +09:00
ia64
ide
iio
infiniband
input
ioctl SCSI misc on 20180610 2018-06-10 13:01:12 -07:00
isdn
kbuild kconfig: document Kconfig source file comments 2018-06-25 23:21:14 +09:00
kdump
kernel-hacking doc: add some chapter labels 2018-06-26 09:08:06 -06:00
laptops
leds
lightnvm
livepatch
locking
m68k
maintainer docs: Fix more broken references 2018-06-15 18:11:26 -03:00
md
media
memory-devices
mic
mips
misc-devices Mostly small fixes and cleanups, plus a non-trivial fix for charlcd 2018-06-07 14:01:16 -07:00
mmc
mtd
namespaces
netlabel
networking strparser: Corrected typo in documentation. 2018-06-24 16:40:20 +09:00
nfc
nios2
nvdimm
nvmem
openrisc
parisc
PCI
pcmcia
perf
phy
platform
power
powerpc
pps
process Documentation/process/howto.rst: add a missing cross-reference 2018-06-29 09:24:15 -06:00
pti
ptp
rapidio
RCU
riscv
s390
scheduler
scsi
security Kbuild: rename CC_STACKPROTECTOR[_STRONG] config variables 2018-06-14 12:21:18 +09:00
serial
sh
sound
sparc
sphinx Documentation/sphinx: allow "functions" with no parameters 2018-06-30 07:52:42 -06:00
sphinx-static
spi
sysctl doc: add description to dirtytime_expire_seconds 2018-06-26 09:01:35 -06:00
target
thermal
timers
trace docs: histogram.txt: convert it to ReST file format 2018-07-02 11:26:02 -06:00
translations docs: zh_CN: fix location of oops-tracing.txt 2018-07-02 11:25:11 -06:00
usb doc: usb: Fix typo in gadget_configfs documentation 2018-06-18 12:41:00 +03:00
userspace-api
virtual KVM: fix KVM_CAP_HYPERV_TLBFLUSH paragraph number 2018-06-22 17:30:20 +02:00
vm
w1
watchdog
wimax
x86
xtensa
.gitignore
00-INDEX
atomic_bitops.txt
atomic_t.txt
bt8xxgpio.txt
btmrvl.txt
bus-virt-phys-mapping.txt
Changes
clearing-warn-once.txt
CodingStyle
conf.py
cpu-load.txt
cputopology.txt
crc32.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt
dell_rbu.txt
digsig.txt
DMA-API-HOWTO.txt
DMA-API.txt
DMA-attributes.txt
DMA-ISA-LPC.txt
docutils.conf
dontdiff
efi-stub.txt
eisa.txt
flexible-arrays.txt
futex-requeue-pi.txt
gcc-plugins.txt
highuid.txt
hw_random.txt
hwspinlock.txt
index.rst doc: add some chapter labels 2018-06-26 09:08:06 -06:00
Intel-IOMMU.txt
intel_txt.txt
io-mapping.txt
io_ordering.txt
iostats.txt
IPMI.txt
IRQ-affinity.txt
IRQ-domain.txt
IRQ.txt
irqflags-tracing.txt
isa.txt
isapnp.txt
kernel-per-CPU-kthreads.txt
kobject.txt
kprobes.txt docs: Fix some broken references 2018-06-15 18:10:01 -03:00
kref.txt
ldm.txt
lockup-watchdogs.txt
logo.gif
logo.txt
lsm.txt
lzo.txt
mailbox.txt
Makefile
memory-barriers.txt
memory-hotplug.txt
men-chameleon-bus.txt
nommu-mmap.txt Documentation: nommu-map: Fix duplicate word typo 2018-06-26 09:01:27 -06:00
ntb.txt
numastat.txt
padata.txt
parport-lowlevel.txt
percpu-rw-semaphore.txt
phy.txt
pi-futex.txt
pnp.txt
preempt-locking.txt
pwm.txt
rbtree.txt
remoteproc.txt
rfkill.txt
robust-futex-ABI.txt
robust-futexes.txt
rpmsg.txt
rtc.txt
SAK.txt
sgi-ioc4.txt
siphash.txt
SM501.txt
smsc_ece1099.txt
speculation.txt
static-keys.txt
SubmittingPatches
svga.txt
switchtec.txt
sync_file.txt
tee.txt
this_cpu_ops.txt
unaligned-memory-access.txt
vfio-mediated-device.txt vfio/mdev: Check globally for duplicate devices 2018-06-08 10:24:27 -06:00
vfio.txt
video-output.txt
xillybus.txt
xz.txt
zorro.txt