18c2ecf20Sopenharmony_ci======================
28c2ecf20Sopenharmony_ciCore API Documentation
38c2ecf20Sopenharmony_ci======================
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_ciThis is the beginning of a manual for core kernel APIs.  The conversion
68c2ecf20Sopenharmony_ci(and writing!) of documents for this manual is much appreciated!
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ciCore utilities
98c2ecf20Sopenharmony_ci==============
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciThis section has general and "core core" documentation.  The first is a
128c2ecf20Sopenharmony_cimassive grab-bag of kerneldoc info left over from the docbook days; it
138c2ecf20Sopenharmony_cishould really be broken up someday when somebody finds the energy to do
148c2ecf20Sopenharmony_ciit.
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_ci.. toctree::
178c2ecf20Sopenharmony_ci   :maxdepth: 1
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci   kernel-api
208c2ecf20Sopenharmony_ci   workqueue
218c2ecf20Sopenharmony_ci   printk-basics
228c2ecf20Sopenharmony_ci   printk-formats
238c2ecf20Sopenharmony_ci   symbol-namespaces
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ciData structures and low-level utilities
268c2ecf20Sopenharmony_ci=======================================
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciLibrary functionality that is used throughout the kernel.
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci.. toctree::
318c2ecf20Sopenharmony_ci   :maxdepth: 1
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci   kobject
348c2ecf20Sopenharmony_ci   kref
358c2ecf20Sopenharmony_ci   assoc_array
368c2ecf20Sopenharmony_ci   xarray
378c2ecf20Sopenharmony_ci   idr
388c2ecf20Sopenharmony_ci   circular-buffers
398c2ecf20Sopenharmony_ci   rbtree
408c2ecf20Sopenharmony_ci   generic-radix-tree
418c2ecf20Sopenharmony_ci   packing
428c2ecf20Sopenharmony_ci   bus-virt-phys-mapping
438c2ecf20Sopenharmony_ci   this_cpu_ops
448c2ecf20Sopenharmony_ci   timekeeping
458c2ecf20Sopenharmony_ci   errseq
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ciConcurrency primitives
488c2ecf20Sopenharmony_ci======================
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ciHow Linux keeps everything from happening at the same time.  See
518c2ecf20Sopenharmony_ci:doc:`/locking/index` for more related documentation.
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci.. toctree::
548c2ecf20Sopenharmony_ci   :maxdepth: 1
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci   atomic_ops
578c2ecf20Sopenharmony_ci   refcount-vs-atomic
588c2ecf20Sopenharmony_ci   irq/index
598c2ecf20Sopenharmony_ci   local_ops
608c2ecf20Sopenharmony_ci   padata
618c2ecf20Sopenharmony_ci   ../RCU/index
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ciLow-level hardware management
648c2ecf20Sopenharmony_ci=============================
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_ciCache management, managing CPU hotplug, etc.
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ci.. toctree::
698c2ecf20Sopenharmony_ci   :maxdepth: 1
708c2ecf20Sopenharmony_ci
718c2ecf20Sopenharmony_ci   cachetlb
728c2ecf20Sopenharmony_ci   cpu_hotplug
738c2ecf20Sopenharmony_ci   memory-hotplug
748c2ecf20Sopenharmony_ci   genericirq
758c2ecf20Sopenharmony_ci   protection-keys
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciMemory management
788c2ecf20Sopenharmony_ci=================
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciHow to allocate and use memory in the kernel.  Note that there is a lot
818c2ecf20Sopenharmony_cimore memory-management documentation in :doc:`/vm/index`.
828c2ecf20Sopenharmony_ci
838c2ecf20Sopenharmony_ci.. toctree::
848c2ecf20Sopenharmony_ci   :maxdepth: 1
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci   memory-allocation
878c2ecf20Sopenharmony_ci   unaligned-memory-access
888c2ecf20Sopenharmony_ci   dma-api
898c2ecf20Sopenharmony_ci   dma-api-howto
908c2ecf20Sopenharmony_ci   dma-attributes
918c2ecf20Sopenharmony_ci   dma-isa-lpc
928c2ecf20Sopenharmony_ci   mm-api
938c2ecf20Sopenharmony_ci   genalloc
948c2ecf20Sopenharmony_ci   pin_user_pages
958c2ecf20Sopenharmony_ci   boot-time-mm
968c2ecf20Sopenharmony_ci   gfp_mask-from-fs-io
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ciInterfaces for kernel debugging
998c2ecf20Sopenharmony_ci===============================
1008c2ecf20Sopenharmony_ci
1018c2ecf20Sopenharmony_ci.. toctree::
1028c2ecf20Sopenharmony_ci   :maxdepth: 1
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ci   debug-objects
1058c2ecf20Sopenharmony_ci   tracepoint
1068c2ecf20Sopenharmony_ci   debugging-via-ohci1394
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ciEverything else
1098c2ecf20Sopenharmony_ci===============
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciDocuments that don't fit elsewhere or which have yet to be categorized.
1128c2ecf20Sopenharmony_ci
1138c2ecf20Sopenharmony_ci.. toctree::
1148c2ecf20Sopenharmony_ci   :maxdepth: 1
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ci   librs
1178c2ecf20Sopenharmony_ci
1188c2ecf20Sopenharmony_ci.. only:: subproject and html
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci   Indices
1218c2ecf20Sopenharmony_ci   =======
1228c2ecf20Sopenharmony_ci
1238c2ecf20Sopenharmony_ci   * :ref:`genindex`
124