~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/driver-api/hte/tegra-hte.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/driver-api/hte/tegra-hte.rst (Architecture mips) and /Documentation/driver-api/hte/tegra-hte.rst (Architecture m68k)


  1 .. SPDX-License-Identifier: GPL-2.0+                1 .. SPDX-License-Identifier: GPL-2.0+
  2                                                     2 
  3 HTE Kernel provider driver                          3 HTE Kernel provider driver
  4 ==========================                          4 ==========================
  5                                                     5 
  6 Description                                         6 Description
  7 -----------                                         7 -----------
  8 The Nvidia tegra HTE provider also known as GT      8 The Nvidia tegra HTE provider also known as GTE (Generic Timestamping Engine)
  9 driver implements two GTE instances: 1) GPIO G      9 driver implements two GTE instances: 1) GPIO GTE and 2) LIC
 10 (Legacy Interrupt Controller) IRQ GTE. Both GT     10 (Legacy Interrupt Controller) IRQ GTE. Both GTE instances get the timestamp
 11 from the system counter TSC which has 31.25MHz     11 from the system counter TSC which has 31.25MHz clock rate, and the driver
 12 converts clock tick rate to nanoseconds before     12 converts clock tick rate to nanoseconds before storing it as timestamp value.
 13                                                    13 
 14 GPIO GTE                                           14 GPIO GTE
 15 --------                                           15 --------
 16                                                    16 
 17 This GTE instance timestamps GPIO in real time     17 This GTE instance timestamps GPIO in real time. For that to happen GPIO
 18 needs to be configured as input. Only the alwa     18 needs to be configured as input. Only the always on (AON) GPIO controller
 19 instance supports timestamping GPIOs in real t     19 instance supports timestamping GPIOs in real time as it is tightly coupled with
 20 the GPIO GTE. To support this, GPIOLIB adds tw     20 the GPIO GTE. To support this, GPIOLIB adds two optional APIs as mentioned
 21 below. The GPIO GTE code supports both kernel      21 below. The GPIO GTE code supports both kernel and userspace consumers. The
 22 kernel space consumers can directly talk to HT     22 kernel space consumers can directly talk to HTE subsystem while userspace
 23 consumers timestamp requests go through GPIOLI     23 consumers timestamp requests go through GPIOLIB CDEV framework to HTE
 24 subsystem. The hte devicetree binding describe     24 subsystem. The hte devicetree binding described at
 25 ``Documentation/devicetree/bindings/timestamp`     25 ``Documentation/devicetree/bindings/timestamp`` provides an example of how a
 26 consumer can request an GPIO line.                 26 consumer can request an GPIO line.
 27                                                    27 
 28 See gpiod_enable_hw_timestamp_ns() and gpiod_d     28 See gpiod_enable_hw_timestamp_ns() and gpiod_disable_hw_timestamp_ns().
 29                                                    29 
 30 For userspace consumers, GPIO_V2_LINE_FLAG_EVE     30 For userspace consumers, GPIO_V2_LINE_FLAG_EVENT_CLOCK_HTE flag must be
 31 specified during IOCTL calls. Refer to ``tools     31 specified during IOCTL calls. Refer to ``tools/gpio/gpio-event-mon.c``, which
 32 returns the timestamp in nanoseconds.              32 returns the timestamp in nanoseconds.
 33                                                    33 
 34 LIC (Legacy Interrupt Controller) IRQ GTE          34 LIC (Legacy Interrupt Controller) IRQ GTE
 35 -----------------------------------------          35 -----------------------------------------
 36                                                    36 
 37 This GTE instance timestamps LIC IRQ lines in      37 This GTE instance timestamps LIC IRQ lines in real time. The hte devicetree
 38 binding described at ``Documentation/devicetre     38 binding described at ``Documentation/devicetree/bindings/timestamp``
 39 provides an example of how a consumer can requ     39 provides an example of how a consumer can request an IRQ line. Since it is a
 40 one-to-one mapping with IRQ GTE provider, cons     40 one-to-one mapping with IRQ GTE provider, consumers can simply specify the IRQ
 41 number that they are interested in. There is n     41 number that they are interested in. There is no userspace consumer support for
 42 this GTE instance in the HTE framework.            42 this GTE instance in the HTE framework.
 43                                                    43 
 44 The provider source code of both IRQ and GPIO      44 The provider source code of both IRQ and GPIO GTE instances is located at
 45 ``drivers/hte/hte-tegra194.c``. The test drive     45 ``drivers/hte/hte-tegra194.c``. The test driver
 46 ``drivers/hte/hte-tegra194-test.c`` demonstrat     46 ``drivers/hte/hte-tegra194-test.c`` demonstrates HTE API usage for both IRQ
 47 and GPIO GTE.                                      47 and GPIO GTE.
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php