Documentation/gpu: use recommended order of heading markers

While splitting the document up, the headings "shifted" from what pandoc
generated. Use the following order for headings for consistency:

==============
Document title
==============

First
=====

Second
------

Third
~~~~~

Leave the lower level headings as they are; I think those are less
important. Although RST doesn't mandate a specific order ("Rather than
imposing a fixed number and order of section title adornment styles, the
order enforced will be the order as encountered."), having the higher
levels the same overall makes it easier to follow the documents.

[I'm sort of kind of writing the recommendation for docs-next in the
mean time, but this order seems sensible, and is what I'm proposing.]

Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: http://patchwork.freedesktop.org/patch/msgid/126f42734defac6cbb8496a481d58db7b38461dd.1466506505.git.jani.nikula@intel.com
diff --git a/Documentation/gpu/drm-internals.rst b/Documentation/gpu/drm-internals.rst
index 8b82578..ee01a4f 100644
--- a/Documentation/gpu/drm-internals.rst
+++ b/Documentation/gpu/drm-internals.rst
@@ -1,3 +1,4 @@
+=============
 DRM Internals
 =============
 
@@ -18,7 +19,7 @@
 DMA services.
 
 Driver Initialization
----------------------
+=====================
 
 At the core of every DRM driver is a :c:type:`struct drm_driver
 <drm_driver>` structure. Drivers typically statically initialize
@@ -36,7 +37,7 @@
 sections.
 
 Driver Information
-~~~~~~~~~~~~~~~~~~
+------------------
 
 Driver Features
 ^^^^^^^^^^^^^^^
@@ -131,7 +132,7 @@
 DRM_IOCTL_VERSION ioctl.
 
 Device Instance and Driver Handling
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_drv.c
    :doc: driver instance overview
@@ -140,7 +141,7 @@
    :export:
 
 Driver Load
-~~~~~~~~~~~
+-----------
 
 IRQ Registration
 ^^^^^^^^^^^^^^^^
@@ -221,7 +222,7 @@
 hangs or memory corruption.
 
 Bus-specific Device Registration and PCI Support
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------------------------
 
 A number of functions are provided to help with device registration. The
 functions deal with PCI and platform devices respectively and are only
@@ -236,7 +237,7 @@
    :export:
 
 Memory management
------------------
+=================
 
 Modern Linux systems require large amount of graphics memory to store
 frame buffers, textures, vertices and other graphics-related data. Given
@@ -262,7 +263,7 @@
 UMA devices.
 
 The Translation Table Manager (TTM)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 TTM design background and information belongs here.
 
@@ -313,7 +314,7 @@
 count for the TTM, which will call your initialization function.
 
 The Graphics Execution Manager (GEM)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------------
 
 The GEM design approach has resulted in a memory manager that doesn't
 provide full coverage of all (or even all common) use cases in its
@@ -576,7 +577,7 @@
 from the client in libdrm.
 
 GEM Function Reference
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_gem.c
    :export:
@@ -585,7 +586,7 @@
    :internal:
 
 VMA Offset Manager
-~~~~~~~~~~~~~~~~~~
+------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_vma_manager.c
    :doc: vma offset manager
@@ -597,7 +598,7 @@
    :internal:
 
 PRIME Buffer Sharing
-~~~~~~~~~~~~~~~~~~~~
+--------------------
 
 PRIME is the cross device buffer sharing framework in drm, originally
 created for the OPTIMUS range of multi-gpu platforms. To userspace PRIME
@@ -648,13 +649,13 @@
    :doc: PRIME Helpers
 
 PRIME Function References
-~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_prime.c
    :export:
 
 DRM MM Range Allocator
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 Overview
 ^^^^^^^^
@@ -669,7 +670,7 @@
    :doc: lru scan roaster
 
 DRM MM Range Allocator Function References
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_mm.c
    :export:
@@ -678,7 +679,7 @@
    :internal:
 
 CMA Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_gem_cma_helper.c
    :doc: cma helpers
@@ -690,7 +691,7 @@
    :internal:
 
 Mode Setting
-------------
+============
 
 Drivers must initialize the mode setting core by calling
 :c:func:`drm_mode_config_init()` on the DRM device. The function
@@ -706,7 +707,7 @@
    Mode setting functions.
 
 Display Modes Function Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------
 
 .. kernel-doc:: include/drm/drm_modes.h
    :internal:
@@ -715,7 +716,7 @@
    :export:
 
 Atomic Mode Setting Function Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_atomic.c
    :export:
@@ -724,7 +725,7 @@
    :internal:
 
 Frame Buffer Abstraction
-~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------
 
 Frame buffers are abstract memory objects that provide a source of
 pixels to scanout to a CRTC. Applications explicitly request the
@@ -752,7 +753,7 @@
 :c:func:`drm_framebuffer_unregister_private()`.
 
 DRM Format Handling
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 .. kernel-doc:: include/drm/drm_fourcc.h
    :internal:
@@ -761,7 +762,7 @@
    :export:
 
 Dumb Buffer Objects
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 The KMS API doesn't standardize backing storage object creation and
 leaves it to driver-specific ioctls. Furthermore actually creating a
@@ -805,7 +806,7 @@
 a hardware-specific ioctl to allocate suitable buffer objects.
 
 Output Polling
-~~~~~~~~~~~~~~
+--------------
 
 void (\*output_poll_changed)(struct drm_device \*dev);
 This operation notifies the driver that the status of one or more
@@ -814,14 +815,14 @@
 operation.
 
 KMS Initialization and Cleanup
-------------------------------
+==============================
 
 A KMS device is abstracted and exposed as a set of planes, CRTCs,
 encoders and connectors. KMS drivers must thus create and initialize all
 those objects at load time after initializing mode setting.
 
 CRTCs (:c:type:`struct drm_crtc <drm_crtc>`)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------------
 
 A CRTC is an abstraction representing a part of the chip that contains a
 pointer to a scanout buffer. Therefore, the number of CRTCs available
@@ -842,7 +843,7 @@
 with a pointer to CRTC functions.
 
 Planes (:c:type:`struct drm_plane <drm_plane>`)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------------
 
 A plane represents an image source that can be blended with or overlayed
 on top of a CRTC during the scanout process. Planes are associated with
@@ -887,7 +888,7 @@
 create and register a primary plane with standard capabilities.
 
 Encoders (:c:type:`struct drm_encoder <drm_encoder>`)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------------------
 
 An encoder takes pixel data from a CRTC and converts it to a format
 suitable for any attached connectors. On some devices, it may be
@@ -927,7 +928,7 @@
 encoders they want to use to a CRTC.
 
 Connectors (:c:type:`struct drm_connector <drm_connector>`)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------------------------
 
 A connector is the final destination for pixel data on a device, and
 usually connects directly to an external display device like a monitor
@@ -1087,7 +1088,7 @@
 should return connector_status_unknown.
 
 Cleanup
-~~~~~~~
+-------
 
 The DRM core manages its objects' lifetime. When an object is not needed
 anymore the core calls its destroy function, which must clean up and
@@ -1106,7 +1107,7 @@
 :c:func:`drm_kms_helper_poll_fini()`.
 
 Output discovery and initialization example
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------------------
 
 ::
 
@@ -1154,19 +1155,19 @@
 make its properties available to applications.
 
 KMS API Functions
-~~~~~~~~~~~~~~~~~
+-----------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_crtc.c
    :export:
 
 KMS Data Structures
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 .. kernel-doc:: include/drm/drm_crtc.h
    :internal:
 
 KMS Locking
-~~~~~~~~~~~
+-----------
 
 .. kernel-doc:: drivers/gpu/drm/drm_modeset_lock.c
    :doc: kms locking
@@ -1178,7 +1179,7 @@
    :export:
 
 Mode Setting Helper Functions
------------------------------
+=============================
 
 The plane, CRTC, encoder and connector functions provided by the drivers
 implement the DRM API. They're called by the DRM core and ioctl handlers
@@ -1214,7 +1215,7 @@
 the three KMS entities.
 
 Atomic Modeset Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------
 
 Overview
 ^^^^^^^^
@@ -1241,7 +1242,7 @@
    :export:
 
 Modeset Helper Reference for Common Vtables
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------------------
 
 .. kernel-doc:: include/drm/drm_modeset_helper_vtables.h
    :internal:
@@ -1250,7 +1251,7 @@
    :doc: overview
 
 Legacy CRTC/Modeset Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+----------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_crtc_helper.c
    :export:
@@ -1259,7 +1260,7 @@
    :doc: overview
 
 Output Probing Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_probe_helper.c
    :doc: output probing helper overview
@@ -1268,7 +1269,7 @@
    :export:
 
 fbdev Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_fb_helper.c
    :doc: fbdev helpers
@@ -1280,7 +1281,7 @@
    :internal:
 
 Framebuffer CMA Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_fb_cma_helper.c
    :doc: framebuffer cma helper functions
@@ -1289,7 +1290,7 @@
    :export:
 
 Display Port Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+---------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_dp_helper.c
    :doc: dp helpers
@@ -1301,7 +1302,7 @@
    :export:
 
 Display Port Dual Mode Adaptor Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+---------------------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_dp_dual_mode_helper.c
    :doc: dp dual mode helpers
@@ -1313,7 +1314,7 @@
    :export:
 
 Display Port MST Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_dp_mst_topology.c
    :doc: dp mst helper
@@ -1325,7 +1326,7 @@
    :export:
 
 MIPI DSI Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_mipi_dsi.c
    :doc: dsi helpers
@@ -1337,13 +1338,13 @@
    :export:
 
 EDID Helper Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_edid.c
    :export:
 
 Rectangle Utilities Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------
 
 .. kernel-doc:: include/drm/drm_rect.h
    :doc: rect utils
@@ -1355,7 +1356,7 @@
    :export:
 
 Flip-work Helper Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------
 
 .. kernel-doc:: include/drm/drm_flip_work.h
    :doc: flip utils
@@ -1367,7 +1368,7 @@
    :export:
 
 HDMI Infoframes Helper Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------
 
 Strictly speaking this is not a DRM helper library but generally useable
 by any driver interfacing with HDMI outputs like v4l or alsa drivers.
@@ -1381,7 +1382,7 @@
    :export:
 
 Plane Helper Reference
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_plane_helper.c
    :export:
@@ -1390,13 +1391,13 @@
    :doc: overview
 
 Tile group
-~~~~~~~~~~
+----------
 
 .. kernel-doc:: drivers/gpu/drm/drm_crtc.c
    :doc: Tile group
 
 Bridges
-~~~~~~~
+-------
 
 Overview
 ^^^^^^^^
@@ -1414,7 +1415,7 @@
    :export:
 
 Panel Helper Reference
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 .. kernel-doc:: include/drm/drm_panel.h
    :internal:
@@ -1426,7 +1427,7 @@
    :doc: drm panel
 
 Simple KMS Helper Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
+---------------------------
 
 .. kernel-doc:: include/drm/drm_simple_kms_helper.h
    :internal:
@@ -1438,7 +1439,7 @@
    :doc: overview
 
 KMS Properties
---------------
+==============
 
 Drivers may need to expose additional parameters to applications than
 those described in the previous sections. KMS supports attaching
@@ -1526,7 +1527,7 @@
 property and an initial instance value.
 
 Existing KMS Properties
-~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------
 
 The following table gives description of drm properties exposed by
 various modules/drivers.
@@ -1790,7 +1791,7 @@
 +-------------------------------+----------------------+--------------------------------------------------------------------------------------------------------------------+-----------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
 
 Vertical Blanking
------------------
+=================
 
 Vertical blanking plays a major role in graphics rendering. To achieve
 tear-free display, users must synchronize page flips and/or rendering to
@@ -1848,7 +1849,7 @@
 operation handler.
 
 Vertical Blanking and Interrupt Handling Functions Reference
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_irq.c
    :export:
@@ -1857,10 +1858,10 @@
    :functions: drm_crtc_vblank_waitqueue
 
 Open/Close, File Operations and IOCTLs
---------------------------------------
+======================================
 
 Open and Close
-~~~~~~~~~~~~~~
+--------------
 
 int (\*firstopen) (struct drm_device \*); void (\*lastclose) (struct
 drm_device \*); int (\*open) (struct drm_device \*, struct drm_file
@@ -1907,7 +1908,7 @@
 over.
 
 File Operations
-~~~~~~~~~~~~~~~
+---------------
 
 .. kernel-doc:: drivers/gpu/drm/drm_fops.c
    :doc: file operations
@@ -1916,7 +1917,7 @@
    :export:
 
 IOCTLs
-~~~~~~
+------
 
 struct drm_ioctl_desc \*ioctls; int num_ioctls;
     Driver-specific ioctls descriptors table.
@@ -1965,7 +1966,7 @@
    :export:
 
 Legacy Support Code
--------------------
+===================
 
 The section very briefly covers some of the old legacy support code
 which is only used by old DRM drivers which have done a so-called
@@ -1975,7 +1976,7 @@
 drivers.
 
 Legacy Suspend/Resume
-~~~~~~~~~~~~~~~~~~~~~
+---------------------
 
 The DRM core provides some suspend/resume code, but drivers wanting full
 suspend/resume support should provide save() and restore() functions.
@@ -1992,7 +1993,7 @@
 dev_pm_ops) and set these methods to NULL.
 
 Legacy DMA Services
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 This should cover how DMA mapping etc. is supported by the core. These
 functions are deprecated and should not be used.
diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/gpu/drm-uapi.rst
index 3b667b1..6da1e77 100644
--- a/Documentation/gpu/drm-uapi.rst
+++ b/Documentation/gpu/drm-uapi.rst
@@ -1,3 +1,4 @@
+===================
 Userland interfaces
 ===================
 
@@ -14,7 +15,7 @@
 info, since man pages should cover the rest.
 
 Render nodes
-------------
+============
 
 DRM core provides multiple character-devices for user-space to use.
 Depending on which device is opened, user-space can perform a different
@@ -67,7 +68,7 @@
 cannot support render nodes.
 
 VBlank event handling
----------------------
+=====================
 
 The DRM core exposes two vertical blank related ioctls:
 
diff --git a/Documentation/gpu/i915.rst b/Documentation/gpu/i915.rst
index 9c67321..2fe5952 100644
--- a/Documentation/gpu/i915.rst
+++ b/Documentation/gpu/i915.rst
@@ -1,5 +1,6 @@
-drm/i915 Intel GFX Driver
-=========================
+===========================
+ drm/i915 Intel GFX Driver
+===========================
 
 The drm/i915 driver supports all (with the exception of some very early
 models) integrated GFX chipsets with both Intel display and rendering
@@ -7,13 +8,13 @@
 those have basic support through the gma500 drm driver.
 
 Core Driver Infrastructure
---------------------------
+==========================
 
 This section covers core driver infrastructure used by both the display
 and the GEM parts of the driver.
 
 Runtime Power Management
-~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_runtime_pm.c
    :doc: runtime pm
@@ -25,7 +26,7 @@
    :internal:
 
 Interrupt Handling
-~~~~~~~~~~~~~~~~~~
+------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_irq.c
    :doc: interrupt handling
@@ -40,7 +41,7 @@
    :functions: intel_runtime_pm_enable_interrupts
 
 Intel GVT-g Guest Support(vGPU)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_vgpu.c
    :doc: Intel GVT-g guest support
@@ -49,14 +50,14 @@
    :internal:
 
 Display Hardware Handling
--------------------------
+=========================
 
 This section covers everything related to the display hardware including
 the mode setting infrastructure, plane, sprite and cursor handling and
 display, output probing and related topics.
 
 Mode Setting Infrastructure
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
+---------------------------
 
 The i915 driver is thus far the only DRM driver which doesn't use the
 common DRM helper code to implement mode setting sequences. Thus it has
@@ -64,7 +65,7 @@
 change.
 
 Frontbuffer Tracking
-~~~~~~~~~~~~~~~~~~~~
+--------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_frontbuffer.c
    :doc: frontbuffer tracking
@@ -76,7 +77,7 @@
    :functions: i915_gem_track_fb
 
 Display FIFO Underrun Reporting
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_fifo_underrun.c
    :doc: fifo underrun handling
@@ -85,7 +86,7 @@
    :internal:
 
 Plane Configuration
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 This section covers plane configuration and composition with the primary
 plane, sprites, cursors and overlays. This includes the infrastructure
@@ -94,7 +95,7 @@
 panel self refresh.
 
 Atomic Plane Helpers
-~~~~~~~~~~~~~~~~~~~~
+--------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_atomic_plane.c
    :doc: atomic plane helpers
@@ -103,7 +104,7 @@
    :internal:
 
 Output Probing
-~~~~~~~~~~~~~~
+--------------
 
 This section covers output probing and related infrastructure like the
 hotplug interrupt storm detection and mitigation code. Note that the
@@ -111,7 +112,7 @@
 probing, so those sections fully apply.
 
 Hotplug
-~~~~~~~
+-------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_hotplug.c
    :doc: Hotplug
@@ -120,7 +121,7 @@
    :internal:
 
 High Definition Audio
-~~~~~~~~~~~~~~~~~~~~~
+---------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_audio.c
    :doc: High Definition Audio over HDMI and Display Port
@@ -132,7 +133,7 @@
    :internal:
 
 Panel Self Refresh PSR (PSR/SRD)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_psr.c
    :doc: Panel Self Refresh (PSR/SRD)
@@ -141,7 +142,7 @@
    :internal:
 
 Frame Buffer Compression (FBC)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_fbc.c
    :doc: Frame Buffer Compression (FBC)
@@ -150,7 +151,7 @@
    :internal:
 
 Display Refresh Rate Switching (DRRS)
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_dp.c
    :doc: Display Refresh Rate Switching (DRRS)
@@ -174,13 +175,13 @@
    :functions: intel_dp_drrs_init
 
 DPIO
-~~~~
+----
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_reg.h
    :doc: DPIO
 
 CSR firmware support for DMC
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+----------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_csr.c
    :doc: csr support for dmc
@@ -189,7 +190,7 @@
    :internal:
 
 Video BIOS Table (VBT)
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_bios.c
    :doc: Video BIOS Table (VBT)
@@ -201,13 +202,13 @@
    :internal:
 
 Memory Management and Command Submission
-----------------------------------------
+========================================
 
 This sections covers all things related to the GEM implementation in the
 i915 driver.
 
 Batchbuffer Parsing
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_cmd_parser.c
    :doc: batch buffer command parser
@@ -216,7 +217,7 @@
    :internal:
 
 Batchbuffer Pools
-~~~~~~~~~~~~~~~~~
+-----------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_batch_pool.c
    :doc: batch pool
@@ -225,7 +226,7 @@
    :internal:
 
 Logical Rings, Logical Ring Contexts and Execlists
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+--------------------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_lrc.c
    :doc: Logical Rings, Logical Ring Contexts and Execlists
@@ -234,7 +235,7 @@
    :internal:
 
 Global GTT views
-~~~~~~~~~~~~~~~~
+----------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_gtt.c
    :doc: Global GTT views
@@ -243,25 +244,25 @@
    :internal:
 
 GTT Fences and Swizzling
-~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence.c
    :internal:
 
 Global GTT Fence Handling
-^^^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence.c
    :doc: fence register handling
 
 Hardware Tiling and Swizzling Details
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_fence.c
    :doc: tiling swizzling details
 
 Object Tiling IOCTLs
-~~~~~~~~~~~~~~~~~~~~
+--------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_gem_tiling.c
    :internal:
@@ -270,7 +271,7 @@
    :doc: buffer object tiling
 
 Buffer Object Eviction
-~~~~~~~~~~~~~~~~~~~~~~
+----------------------
 
 This section documents the interface functions for evicting buffer
 objects to make space available in the virtual gpu address spaces. Note
@@ -282,7 +283,7 @@
    :internal:
 
 Buffer Object Memory Shrinking
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+------------------------------
 
 This section documents the interface function for shrinking memory usage
 of buffer object caches. Shrinking is used to make main memory
@@ -293,10 +294,10 @@
    :internal:
 
 GuC
----
+===
 
 GuC-specific firmware loader
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+----------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_guc_loader.c
    :doc: GuC-specific firmware loader
@@ -305,7 +306,7 @@
    :internal:
 
 GuC-based command submission
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+----------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_guc_submission.c
    :doc: GuC-based command submission
@@ -314,31 +315,31 @@
    :internal:
 
 GuC Firmware Layout
-~~~~~~~~~~~~~~~~~~~
+-------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/intel_guc_fwif.h
    :doc: GuC Firmware Layout
 
 Tracing
--------
+=======
 
 This sections covers all things related to the tracepoints implemented
 in the i915 driver.
 
 i915_ppgtt_create and i915_ppgtt_release
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+----------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h
    :doc: i915_ppgtt_create and i915_ppgtt_release tracepoints
 
 i915_context_create and i915_context_free
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+-----------------------------------------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h
    :doc: i915_context_create and i915_context_free tracepoints
 
 switch_mm
-~~~~~~~~~~
+---------
 
 .. kernel-doc:: drivers/gpu/drm/i915/i915_trace.h
    :doc: switch_mm tracepoint
diff --git a/Documentation/gpu/introduction.rst b/Documentation/gpu/introduction.rst
index cf35c4f..1903595 100644
--- a/Documentation/gpu/introduction.rst
+++ b/Documentation/gpu/introduction.rst
@@ -1,3 +1,4 @@
+============
 Introduction
 ============
 
@@ -16,7 +17,7 @@
 [Insert diagram of typical DRM stack here]
 
 Style Guidelines
-----------------
+================
 
 For consistency this documentation uses American English. Abbreviations
 are written as all-uppercase, for example: DRM, KMS, IOCTL, CRTC, and so