Linux Input/HID development
 help / color / mirror / Atom feed
* [PATCH v4 1/3] dt-bindings: Add pixart vendor
From: Alexandre Mergnat @ 2019-07-13  8:04 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, devicetree, Alexandre Mergnat
In-Reply-To: <20190713080455.17513-1-amergnat@baylibre.com>

PixArt Imaging Inc. is expertized in CMOS image sensors (CIS),
capacitive touch controllers and related imaging application development.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 18b79c4cf7d5..120529f40c7c 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -705,6 +705,8 @@ patternProperties:
     description: Pine64
   "^pineriver,.*":
     description: Shenzhen PineRiver Designs Co., Ltd.
+  "^pixart,.*":
+    description: PixArt Imaging Inc.
   "^pixcir,.*":
     description: PIXCIR MICROELECTRONICS Co., Ltd
   "^plantower,.*":
-- 
2.17.1

^ permalink raw reply related

* [PATCH v4 0/3] Add PAT9125 optical tracker driver
From: Alexandre Mergnat @ 2019-07-13  8:04 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, devicetree, Alexandre Mergnat

PixArt Imaging PAT9125 is a miniature low power optical navigation chip
using LASER light source enabling digital surface tracking.

This device driver use IIO API to provide punctual and/or buffered data.
The data is a relative position from where start the device on X and Y
axis, depend on CPI (Counts Per Inch) resolution setting chosen.

The device support CPI configuration through IIO interface.

This patchset :
- Update vendor prefix
- Add the bindings for this device
- Add the device driver
- Add directory for optical tracker devices

Change since v3:
- Replace delta value by relative position
- Improve write protected reg function by removing print log and obvious
  returns
- Handle error in postenable buffer function

Change since v2:
- Fix typo
- Add constructor webpage and datasheet in commit message
- Use BIT() macro for define bit mask
- Remove shift from IIO channel spec structure
- Replace IIO_LE by IIO_CPU from IIO channel spec structure
- Replace memcpy() by cast (s32)
- Rename "pat9125_trig_try_reen" to "pat9125_trig_try_reenable"
- Add carriage return (\n) at the end of each "dev_err" function
- Remove "iio_trigger_unregister" in case of "iio_trigger_register" fail,
  register function already manage it
- Remove log which print device name in case of successful initialization
- Fix enabled IRQ flag warning during nested IRQ thread
- Improve retry algo now based on status register
- Remove "ts", "motion_detected" and "buffer_mode" from pat9125_data
  structure
- Rename all "ot" directories to "position"
- Polling sample through IIO_CHAN_INFO_RAW now return position value
  (relative to the position at initialization time) instead of delta
  position
- Clean iio_buffer_setup_ops structure by removing NULL pointer.
- Use devm_iio_ function for all init functions and then delete
  "pat9125_remove"
- Move device_register at the end of probe function
- Replace MODULE_PARM_DESC by IIO_SCALE to set axis resolution (CPI)

Change since v1:
- Fix typo
- Rename some defines / variables
- Remove I2C client from driver structure
- Change type of delta_x and delta_y from s16 to s32 to simplify signed
  operations
- Add module parameter for axis resolution
- Replace "IIO_MOD_X_AND_Y" by "IIO_MOD_X" and "IIO_MOD_Y"
- Add sign extension macro
- Improve read value algorithm to avoid data loss
- Implement a trigger handler function which can work with any IIO
  trigger, independently of it own GPIO IRQ, to match with IIO
  requirement/behaviour
- Replace iio push event function by iio trigger poll in GPIO IRQ handler
- Use triggered_buffer helpers to replace kfifo use, setup buffer,
  implement enable/disable setup buffer operations, IIO trigger
  allocation and re-enable operations
- Remove useless "goto"
- Change GPIO IRQ handler from planified thread to IRQ thread
- Change GPIO IRQ trigger from low level and one shot to falling edge
- Add device unregister and buffer cleanup to driver remove function

Alexandre Mergnat (3):
  dt-bindings: Add pixart vendor
  dt-bindings: iio: position: Add docs pat9125
  iio: Add PAT9125 optical tracker sensor

 .../bindings/iio/position/pat9125.txt         |  18 +
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 drivers/iio/Kconfig                           |   1 +
 drivers/iio/Makefile                          |   1 +
 drivers/iio/position/Kconfig                  |  18 +
 drivers/iio/position/Makefile                 |   6 +
 drivers/iio/position/pat9125.c                | 506 ++++++++++++++++++
 7 files changed, 552 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/position/pat9125.txt
 create mode 100644 drivers/iio/position/Kconfig
 create mode 100644 drivers/iio/position/Makefile
 create mode 100644 drivers/iio/position/pat9125.c

-- 
2.17.1

^ permalink raw reply

* Re: [PATCH] Input: gtco - bounds check collection indent level
From: Dmitry Torokhov @ 2019-07-13  8:02 UTC (permalink / raw)
  To: Grant Hernandez; +Cc: linux-input, linux-usb, stable
In-Reply-To: <20190711222232.77701-1-granthernandez@google.com>

On Thu, Jul 11, 2019 at 03:22:32PM -0700, Grant Hernandez wrote:
> The GTCO tablet input driver configures itself from an HID report sent
> via USB during the initial enumeration process. Some debugging messages
> are generated during the parsing. A debugging message indentation
> counter is not bounds checked, leading to the ability for a specially
> crafted HID report to cause '-' and null bytes be written past the end
> of the indentation array. As long as the kernel has CONFIG_DYNAMIC_DEBUG
> enabled, this code will not be optimized out.  This was discovered
> during code review after a previous syzkaller bug was found in this
> driver.
> 
> Cc: stable@vger.kernel.org
> Signed-off-by: Grant Hernandez <granthernandez@google.com>

I wish we could convert gtco to be proper HID driver, so we woudl not
have to deal with custom HID parsing, but in the meantime this is
needed.

Applied, thank you.

-- 
Dmitry

^ permalink raw reply

* Re: [PATCH] input: API for Setting a Timestamp from a Driver
From: Dmitry Torokhov @ 2019-07-13  7:59 UTC (permalink / raw)
  To: Peter Hutterer
  Cc: Benjamin Tissoires, Atif Niyaz, Atif Niyaz, Siarhei Vishniakou,
	open list:HID CORE LAYER, lkml
In-Reply-To: <20190712114619.GA7753@jelly>

On Fri, Jul 12, 2019 at 09:46:19PM +1000, Peter Hutterer wrote:
> On Fri, Jul 12, 2019 at 09:23:20AM +0200, Benjamin Tissoires wrote:
> > On Fri, Jul 12, 2019 at 8:41 AM Dmitry Torokhov
> > <dmitry.torokhov@gmail.com> wrote:
> > >
> > > Hi Atif,
> > >
> > > On Wed, Jul 10, 2019 at 04:04:10PM -0700, Atif Niyaz wrote:
> > > > Currently, evdev stamps time with timestamps acquired in
> > > > evdev_events. However, this timestamping may not be accurate in terms of
> > > > measuring when the actual event happened. This API allows any 3rd party
> > > > driver to be able to call input_set_timestamp, and provide a timestamp
> > > > that can be utilized in order to provide a more accurate sense of time
> > > > for the event
> > > >
> > > > Signed-off-by: Atif Niyaz <atifniyaz@google.com>
> > >
> > > This looks OK to me. Benjamin, Peter, any concerns here?
> > >
> > 
> > No red flags from me (though Peter is the one using all of this).
> > 
> > Just curious, which drivers do you think will be using this new API?
> > I can see that we might want to use hid-multitouch for it, with the
> > Scan Time forwarded by the device, but what do you have in mind?
> 
> that'd be my question as well. I'm all for more precise evdev timestamps but
> there's some overlap with MSC_TIMESTAMP (which at least libinput isn't
> handling well right now, with the exception of some quirk detection). 

I expect it will be used by drivers that use threaded interrupts to mark
the time in the hard interrupt and avoid the latency of scheduling the
thread, slow bus communication, etc.

This is not supposed to replace MSC_TIMESTAMP as MSC_TIMESTAMP carries
timestamp acquired by the device itself.

Thanks.

-- 
Dmitry

^ permalink raw reply

* [PATCH 2/2] gpiolib: add support for fetching descriptors from static properties
From: Dmitry Torokhov @ 2019-07-13  7:52 UTC (permalink / raw)
  To: Linus Walleij, Rafael J . Wysocki,
	Enrico Weigelt, metux IT consult
  Cc: linux-input, linux-gpio, linux-kernel, Andy Shevchenko,
	Heikki Krogerus
In-Reply-To: <20190713075259.243565-1-dmitry.torokhov@gmail.com>

Now that static device properties understand notion of child nodes, let's
teach gpiolib to tie such children and machine GPIO descriptor tables.
We will continue using a single table for entire device, but instead of
using connection ID as a lookup key in the GPIO descriptor table directly,
we will perform additional translation: fwnode_get_named_gpiod() when
dealing with property_set-backed fwnodes will try parsing string property
with name matching connection ID and use result of the lookup as the key in
the table:

static const struct property_entry dev_child1_props[] __initconst = {
	...
	PROPERTY_ENTRY_STRING("gpios",		"child-1-gpios"),
	{ }
};

static struct gpiod_lookup_table dev_gpiod_table = {
	.dev_id = "some-device",
	.table = {
		...
		GPIO_LOOKUP_IDX("B", 1, "child-1-gpios", 1, GPIO_ACTIVE_LOW),
		...
	},
};

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/gpio/gpiolib.c | 108 ++++++++++++++++++++++++++++++-----------
 1 file changed, 79 insertions(+), 29 deletions(-)

diff --git a/drivers/gpio/gpiolib.c b/drivers/gpio/gpiolib.c
index e013d417a936..b6574febe2b8 100644
--- a/drivers/gpio/gpiolib.c
+++ b/drivers/gpio/gpiolib.c
@@ -4307,39 +4307,44 @@ struct gpio_desc *gpiod_get_from_of_node(struct device_node *node,
 }
 EXPORT_SYMBOL(gpiod_get_from_of_node);
 
-/**
- * fwnode_get_named_gpiod - obtain a GPIO from firmware node
- * @fwnode:	handle of the firmware node
- * @propname:	name of the firmware property representing the GPIO
- * @index:	index of the GPIO to obtain for the consumer
- * @dflags:	GPIO initialization flags
- * @label:	label to attach to the requested GPIO
- *
- * This function can be used for drivers that get their configuration
- * from opaque firmware.
- *
- * The function properly finds the corresponding GPIO using whatever is the
- * underlying firmware interface and then makes sure that the GPIO
- * descriptor is requested before it is returned to the caller.
- *
- * Returns:
- * On successful request the GPIO pin is configured in accordance with
- * provided @dflags.
- *
- * In case of error an ERR_PTR() is returned.
- */
-struct gpio_desc *fwnode_get_named_gpiod(struct fwnode_handle *fwnode,
-					 const char *propname, int index,
-					 enum gpiod_flags dflags,
-					 const char *label)
+static struct gpio_desc *
+software_node_get_gpiod(struct fwnode_handle *fwnode,
+			const char *propname, int index, unsigned long *flags)
+{
+	struct device *dev;
+	const char *con_id;
+
+	dev = software_node_get_linked_device(fwnode);
+	if (IS_ERR_OR_NULL(dev))
+		return ERR_PTR(-EINVAL);
+
+	if (fwnode_property_read_string(fwnode, propname, &con_id)) {
+		/*
+		 * We could not find string mapping property name to
+		 * entry in gpio lookup table. Let's see if we are
+		 * dealing with firmware node corresponding to the
+		 * device (and not a child node): for such nodes we can
+		 * try doing lookup directly with property name.
+		 */
+		if (fwnode_get_parent(fwnode))
+			return ERR_PTR(-ENOENT);
+
+		con_id = propname;
+	}
+
+	return gpiod_find(dev, con_id, index, flags);
+}
+
+static struct gpio_desc *__fwnode_get_named_gpiod(struct fwnode_handle *fwnode,
+						  const char *propname,
+						  int index,
+						  enum gpiod_flags dflags,
+						  const char *label)
 {
 	unsigned long lflags = GPIO_LOOKUP_FLAGS_DEFAULT;
 	struct gpio_desc *desc = ERR_PTR(-ENODEV);
 	int ret;
 
-	if (!fwnode)
-		return ERR_PTR(-EINVAL);
-
 	if (is_of_node(fwnode)) {
 		desc = gpiod_get_from_of_node(to_of_node(fwnode),
 					      propname, index,
@@ -4355,9 +4360,13 @@ struct gpio_desc *fwnode_get_named_gpiod(struct fwnode_handle *fwnode,
 
 		acpi_gpio_update_gpiod_flags(&dflags, &info);
 		acpi_gpio_update_gpiod_lookup_flags(&lflags, &info);
+	} else if (is_software_node(fwnode)) {
+		desc = software_node_get_gpiod(fwnode, propname, index,
+					       &lflags);
+		if (IS_ERR(desc))
+			return desc;
 	}
 
-	/* Currently only ACPI takes this path */
 	ret = gpiod_request(desc, label);
 	if (ret)
 		return ERR_PTR(ret);
@@ -4370,6 +4379,47 @@ struct gpio_desc *fwnode_get_named_gpiod(struct fwnode_handle *fwnode,
 
 	return desc;
 }
+
+/**
+ * fwnode_get_named_gpiod - obtain a GPIO from firmware node
+ * @fwnode:	handle of the firmware node
+ * @propname:	name of the firmware property representing the GPIO
+ * @index:	index of the GPIO to obtain for the consumer
+ * @dflags:	GPIO initialization flags
+ * @label:	label to attach to the requested GPIO
+ *
+ * This function can be used for drivers that get their configuration
+ * from opaque firmware.
+ *
+ * The function properly finds the corresponding GPIO using whatever is the
+ * underlying firmware interface and then makes sure that the GPIO
+ * descriptor is requested before it is returned to the caller.
+ *
+ * Returns:
+ * On successful request the GPIO pin is configured in accordance with
+ * provided @dflags.
+ *
+ * In case of error an ERR_PTR() is returned.
+ */
+struct gpio_desc *fwnode_get_named_gpiod(struct fwnode_handle *fwnode,
+					 const char *propname, int index,
+					 enum gpiod_flags dflags,
+					 const char *label)
+{
+	struct gpio_desc *desc;
+
+	if (!fwnode)
+		return ERR_PTR(-EINVAL);
+
+	desc = __fwnode_get_named_gpiod(fwnode, propname, index, dflags, label);
+	if (IS_ERR(desc) && PTR_ERR(desc) == -ENOENT &&
+	    !IS_ERR_OR_NULL(fwnode->secondary)) {
+		desc = __fwnode_get_named_gpiod(fwnode->secondary,
+						propname, index, dflags, label);
+	}
+
+	return desc;
+}
 EXPORT_SYMBOL_GPL(fwnode_get_named_gpiod);
 
 /**
-- 
2.22.0.510.g264f2c817a-goog

^ permalink raw reply related

* [PATCH 1/2] drivers: base: swnode: link devices to software nodes
From: Dmitry Torokhov @ 2019-07-13  7:52 UTC (permalink / raw)
  To: Linus Walleij, Rafael J . Wysocki,
	Enrico Weigelt, metux IT consult
  Cc: linux-input, linux-gpio, linux-kernel, Andy Shevchenko,
	Heikki Krogerus
In-Reply-To: <20190713075259.243565-1-dmitry.torokhov@gmail.com>

It is helpful to know what device, if any, a software node is tied to, so
let's store a pointer to the device in software node structure. Note that
children software nodes will inherit their parent's device pointer, so we
do not have to traverse hierarchy to see what device the [sub]tree belongs
to.

We will be using the device pointer to locate GPIO lookup tables for
devices with static properties.

Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/base/property.c  |  1 +
 drivers/base/swnode.c    | 35 ++++++++++++++++++++++++++++++++++-
 include/linux/property.h |  5 +++++
 3 files changed, 40 insertions(+), 1 deletion(-)

diff --git a/drivers/base/property.c b/drivers/base/property.c
index 348b37e64944..3bc93d4b35c4 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -527,6 +527,7 @@ int device_add_properties(struct device *dev,
 	if (IS_ERR(fwnode))
 		return PTR_ERR(fwnode);
 
+	software_node_link_device(fwnode, dev);
 	set_secondary_fwnode(dev, fwnode);
 	return 0;
 }
diff --git a/drivers/base/swnode.c b/drivers/base/swnode.c
index 7fc5a18e02ad..fd12eea539b6 100644
--- a/drivers/base/swnode.c
+++ b/drivers/base/swnode.c
@@ -24,6 +24,9 @@ struct software_node {
 
 	/* properties */
 	const struct property_entry *properties;
+
+	/* device this node is associated with */
+	struct device *dev;
 };
 
 static DEFINE_IDA(swnode_root_ids);
@@ -607,8 +610,14 @@ fwnode_create_software_node(const struct property_entry *properties,
 	INIT_LIST_HEAD(&swnode->children);
 	swnode->parent = p;
 
-	if (p)
+	if (p) {
 		list_add_tail(&swnode->entry, &p->children);
+		/*
+		 * We want to maintain the same association as the parent node,
+		 * so we can easily locate corresponding device.
+		 */
+		swnode->dev = p->dev;
+	}
 
 	ret = kobject_init_and_add(&swnode->kobj, &software_node_type,
 				   p ? &p->kobj : NULL, "node%d", swnode->id);
@@ -639,6 +648,30 @@ void fwnode_remove_software_node(struct fwnode_handle *fwnode)
 }
 EXPORT_SYMBOL_GPL(fwnode_remove_software_node);
 
+int software_node_link_device(struct fwnode_handle *fwnode, struct device *dev)
+{
+	struct software_node *swnode = to_software_node(fwnode);
+
+	if (!swnode)
+		return -EINVAL;
+
+	swnode->dev = dev;
+	return 0;
+}
+EXPORT_SYMBOL_GPL(software_node_link_device);
+
+struct device *
+software_node_get_linked_device(const struct fwnode_handle *fwnode)
+{
+	const struct software_node *swnode = to_software_node(fwnode);
+
+	if (!swnode)
+		return ERR_PTR(-EINVAL);
+
+	return swnode->dev;
+}
+EXPORT_SYMBOL_GPL(software_node_get_linked_device);
+
 int software_node_notify(struct device *dev, unsigned long action)
 {
 	struct fwnode_handle *fwnode = dev_fwnode(dev);
diff --git a/include/linux/property.h b/include/linux/property.h
index e9caa290cda5..754188cfd9db 100644
--- a/include/linux/property.h
+++ b/include/linux/property.h
@@ -338,4 +338,9 @@ fwnode_create_software_node(const struct property_entry *properties,
 			    const struct fwnode_handle *parent);
 void fwnode_remove_software_node(struct fwnode_handle *fwnode);
 
+int software_node_link_device(struct fwnode_handle *fwnode,
+			      struct device *device);
+struct device *
+software_node_get_linked_device(const struct fwnode_handle *fwnode);
+
 #endif /* _LINUX_PROPERTY_H_ */
-- 
2.22.0.510.g264f2c817a-goog

^ permalink raw reply related

* [PATCH 0/2] Make gpiolib work with static device properties
From: Dmitry Torokhov @ 2019-07-13  7:52 UTC (permalink / raw)
  To: Linus Walleij, Rafael J . Wysocki,
	Enrico Weigelt, metux IT consult
  Cc: linux-input, linux-gpio, linux-kernel, Andy Shevchenko,
	Heikki Krogerus

Hi,

These 2 patches implement GPIOs lookup for boards still using static
properties (instead of OF or ACPI), which will allow drivers to abandon
the custom platform data structures and switch to using generic bindings
with gpiod_get_*() API working transparently.

The 2nd patch was posted in September of 2018, before Heikki did the
switch from psets to software_nodes; I finally rebased it.

Enrico, it looks like you are working with a board that uses gpio_keys
that still uses platform data, it would be great if you could try this
out as I have not.

Thanks!

Dmitry Torokhov (2):
  drivers: base: swnode: link devices to software nodes
  gpiolib: add support for fetching descriptors from static properties

 drivers/base/property.c  |   1 +
 drivers/base/swnode.c    |  35 ++++++++++++-
 drivers/gpio/gpiolib.c   | 108 ++++++++++++++++++++++++++++-----------
 include/linux/property.h |   5 ++
 4 files changed, 119 insertions(+), 30 deletions(-)

-- 
2.22.0.510.g264f2c817a-goog

^ permalink raw reply

* [PATCH] Input: synaptics - enable RMI mode for HP Spectre X360
From: Dmitry Torokhov @ 2019-07-13  7:41 UTC (permalink / raw)
  To: linux-input; +Cc: Benjamin Tissoires, Nate Graham, linux-kernel

The 2016 kabylake HP Spectre X360 (model number 13-w013dx) works much better
with psmouse.synaptics_intertouch=1 kernel parameter, so let's enable RMI4
mode automatically.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204115
Reported-by: Nate Graham <pointedstick@zoho.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
---
 drivers/input/mouse/synaptics.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
index 7f8f4780b511..c0e188cd3811 100644
--- a/drivers/input/mouse/synaptics.c
+++ b/drivers/input/mouse/synaptics.c
@@ -182,6 +182,7 @@ static const char * const smbus_pnp_ids[] = {
 	"LEN2055", /* E580 */
 	"SYN3052", /* HP EliteBook 840 G4 */
 	"SYN3221", /* HP 15-ay000 */
+	"SYN323d", /* HP Spectre X360 13-w013dx */
 	NULL
 };
 

-- 
Dmitry

^ permalink raw reply related

* Re: [PATCH v4 0/3] Add PAT9125 optical tracker driver
From: Rob Herring @ 2019-07-12 13:34 UTC (permalink / raw)
  To: Alexandre Mergnat
  Cc: Mark Rutland, Jonathan Cameron, linux-kernel@vger.kernel.org,
	open list:IIO SUBSYSTEM AND DRIVERS, baylibre-upstreaming,
	Dmitry Torokhov, Linux Input
In-Reply-To: <20190712094050.17432-1-amergnat@baylibre.com>

On Fri, Jul 12, 2019 at 3:41 AM Alexandre Mergnat <amergnat@baylibre.com> wrote:
>
> PixArt Imaging PAT9125 is a miniature low power optical navigation chip
> using LASER light source enabling digital surface tracking.

Please resend to the DT list if you want this reviewed.

Rob

^ permalink raw reply

* Re: [PATCH] dt-bindings: input: Convert Allwinner LRADC to a schema
From: Rob Herring @ 2019-07-12 13:21 UTC (permalink / raw)
  Cc: Mark Rutland, devicetree, Maxime Ripard, Dmitry Torokhov,
	Chen-Yu Tsai, linux-input, Frank Rowand, linux-arm-kernel
In-Reply-To: <20190711093835.20663-1-maxime.ripard@bootlin.com>

On Thu, 11 Jul 2019 11:38:35 +0200, Maxime Ripard wrote:
> The Allwinner SoCs have an LRADC used to report keys and supported in
> Linux, with a matching Device Tree binding.
> 
> Now that we have the DT validation in place, let's convert the device tree
> bindings for that controller over to a YAML schemas.
> 
> Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
> ---
>  .../input/allwinner,sun4i-a10-lradc-keys.yaml | 95 +++++++++++++++++++
>  .../bindings/input/sun4i-lradc-keys.txt       | 65 -------------
>  2 files changed, 95 insertions(+), 65 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/input/allwinner,sun4i-a10-lradc-keys.yaml
>  delete mode 100644 Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt
> 

Applied, thanks.

Rob

^ permalink raw reply

* Re: [PATCH] input: API for Setting a Timestamp from a Driver
From: Peter Hutterer @ 2019-07-12 11:46 UTC (permalink / raw)
  To: Benjamin Tissoires
  Cc: Dmitry Torokhov, Atif Niyaz, Atif Niyaz, Siarhei Vishniakou,
	open list:HID CORE LAYER, lkml
In-Reply-To: <CAO-hwJK-VAGpjN03XDTmmT4fYxb1V_izfvT9Z3tKDmLJ3henGw@mail.gmail.com>

On Fri, Jul 12, 2019 at 09:23:20AM +0200, Benjamin Tissoires wrote:
> On Fri, Jul 12, 2019 at 8:41 AM Dmitry Torokhov
> <dmitry.torokhov@gmail.com> wrote:
> >
> > Hi Atif,
> >
> > On Wed, Jul 10, 2019 at 04:04:10PM -0700, Atif Niyaz wrote:
> > > Currently, evdev stamps time with timestamps acquired in
> > > evdev_events. However, this timestamping may not be accurate in terms of
> > > measuring when the actual event happened. This API allows any 3rd party
> > > driver to be able to call input_set_timestamp, and provide a timestamp
> > > that can be utilized in order to provide a more accurate sense of time
> > > for the event
> > >
> > > Signed-off-by: Atif Niyaz <atifniyaz@google.com>
> >
> > This looks OK to me. Benjamin, Peter, any concerns here?
> >
> 
> No red flags from me (though Peter is the one using all of this).
> 
> Just curious, which drivers do you think will be using this new API?
> I can see that we might want to use hid-multitouch for it, with the
> Scan Time forwarded by the device, but what do you have in mind?

that'd be my question as well. I'm all for more precise evdev timestamps but
there's some overlap with MSC_TIMESTAMP (which at least libinput isn't
handling well right now, with the exception of some quirk detection). 

but yeah, overall this is a good solution from my POV.

Cheers,
   Peter

> > > ---
> > >  drivers/input/evdev.c | 42 ++++++++++++++++--------------------------
> > >  drivers/input/input.c | 17 +++++++++++++++++
> > >  include/linux/input.h | 38 ++++++++++++++++++++++++++++++++++++++
> > >  3 files changed, 71 insertions(+), 26 deletions(-)
> > >
> > > diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
> > > index 867c2cfd0038..a331efa0a3f6 100644
> > > --- a/drivers/input/evdev.c
> > > +++ b/drivers/input/evdev.c
> > > @@ -25,13 +25,6 @@
> > >  #include <linux/cdev.h>
> > >  #include "input-compat.h"
> > >
> > > -enum evdev_clock_type {
> > > -     EV_CLK_REAL = 0,
> > > -     EV_CLK_MONO,
> > > -     EV_CLK_BOOT,
> > > -     EV_CLK_MAX
> > > -};
> > > -
> > >  struct evdev {
> > >       int open;
> > >       struct input_handle handle;
> > > @@ -53,7 +46,7 @@ struct evdev_client {
> > >       struct fasync_struct *fasync;
> > >       struct evdev *evdev;
> > >       struct list_head node;
> > > -     unsigned int clk_type;
> > > +     input_clk_t clk_type;
> > >       bool revoked;
> > >       unsigned long *evmasks[EV_CNT];
> > >       unsigned int bufsize;
> > > @@ -150,16 +143,18 @@ static void __evdev_flush_queue(struct evdev_client *client, unsigned int type)
> > >  static void __evdev_queue_syn_dropped(struct evdev_client *client)
> > >  {
> > >       struct input_event ev;
> > > -     ktime_t time;
> > >       struct timespec64 ts;
> > > +     ktime_t *time = input_get_timestamp(client->evdev->handle.dev);
> > >
> > > -     time = client->clk_type == EV_CLK_REAL ?
> > > -                     ktime_get_real() :
> > > -                     client->clk_type == EV_CLK_MONO ?
> > > -                             ktime_get() :
> > > -                             ktime_get_boottime();
> > > +     switch (client->clk_type) {
> > > +     case INPUT_CLK_REAL:
> > > +     case INPUT_CLK_MONO:
> > > +             ts = ktime_to_timespec64(time[client->clk_type]);
> > > +             break;
> > > +     default:
> > > +             ts = ktime_to_timespec64(time[INPUT_CLK_BOOT]);
> >
> > Add "break" here please.
> >
> > > +     }
> > >
> > > -     ts = ktime_to_timespec64(time);
> > >       ev.input_event_sec = ts.tv_sec;
> > >       ev.input_event_usec = ts.tv_nsec / NSEC_PER_USEC;
> > >       ev.type = EV_SYN;
> > > @@ -185,21 +180,21 @@ static void evdev_queue_syn_dropped(struct evdev_client *client)
> > >       spin_unlock_irqrestore(&client->buffer_lock, flags);
> > >  }
> > >
> > > -static int evdev_set_clk_type(struct evdev_client *client, unsigned int clkid)
> > > +static int evdev_set_clk_type(struct evdev_client *client, clockid_t clkid)
> > >  {
> > >       unsigned long flags;
> > > -     unsigned int clk_type;
> > > +     input_clk_t clk_type;
> > >
> > >       switch (clkid) {
> > >
> > >       case CLOCK_REALTIME:
> > > -             clk_type = EV_CLK_REAL;
> > > +             clk_type = INPUT_CLK_REAL;
> > >               break;
> > >       case CLOCK_MONOTONIC:
> > > -             clk_type = EV_CLK_MONO;
> > > +             clk_type = INPUT_CLK_MONO;
> > >               break;
> > >       case CLOCK_BOOTTIME:
> > > -             clk_type = EV_CLK_BOOT;
> > > +             clk_type = INPUT_CLK_BOOT;
> > >               break;
> > >       default:
> > >               return -EINVAL;
> > > @@ -307,12 +302,7 @@ static void evdev_events(struct input_handle *handle,
> > >  {
> > >       struct evdev *evdev = handle->private;
> > >       struct evdev_client *client;
> > > -     ktime_t ev_time[EV_CLK_MAX];
> > > -
> > > -     ev_time[EV_CLK_MONO] = ktime_get();
> > > -     ev_time[EV_CLK_REAL] = ktime_mono_to_real(ev_time[EV_CLK_MONO]);
> > > -     ev_time[EV_CLK_BOOT] = ktime_mono_to_any(ev_time[EV_CLK_MONO],
> > > -                                              TK_OFFS_BOOT);
> > > +     ktime_t *ev_time = input_get_timestamp(handle->dev);
> > >
> > >       rcu_read_lock();
> > >
> > > diff --git a/drivers/input/input.c b/drivers/input/input.c
> > > index 7f3c5fcb9ed6..ae8b0ee58120 100644
> > > --- a/drivers/input/input.c
> > > +++ b/drivers/input/input.c
> > > @@ -1894,6 +1894,23 @@ void input_free_device(struct input_dev *dev)
> > >  }
> > >  EXPORT_SYMBOL(input_free_device);
> > >
> > > +/**
> > > + * input_get_timestamp - get timestamp for input events
> > > + * @dev: input device to get timestamp from
> > > + *
> > > + * A valid timestamp is a timestamp of non-zero value.
> > > + */
> > > +ktime_t *input_get_timestamp(struct input_dev *dev)
> > > +{
> > > +     const ktime_t invalid_timestamp = ktime_set(0, 0);
> > > +
> > > +     if (!ktime_compare(dev->timestamp[INPUT_CLK_MONO], ktime_zero)) {
> >
> > You need to replace ktime_zero with invalid_timestamp here.
> >
> > > +             input_set_timestamp(dev, ktime_get());
> > > +     }
> >
> > No need for curly braces for 1-line body.
> >
> > > +     return dev->timestamp;
> > > +}
> > > +EXPORT_SYMBOL(input_get_timestamp);
> > > +
> > >  /**
> > >   * input_set_capability - mark device as capable of a certain event
> > >   * @dev: device that is capable of emitting or accepting event
> > > diff --git a/include/linux/input.h b/include/linux/input.h
> > > index 510e78558c10..3929b62ccbe5 100644
> > > --- a/include/linux/input.h
> > > +++ b/include/linux/input.h
> > > @@ -33,6 +33,14 @@ struct input_value {
> > >       __s32 value;
> > >  };
> > >
> > > +enum input_clock_type {
> > > +     INPUT_CLK_REAL = 0,
> > > +     INPUT_CLK_MONO,
> > > +     INPUT_CLK_BOOT,
> > > +     INPUT_CLK_MAX
> > > +};
> > > +typedef enum input_clock_type input_clk_t;
> >
> > We typically avoid typedefs unless we really want to hide kind of data
> > we are dealing with. Let's just use "enum input_clock_type" everywhere.
> >
> > > +
> > >  /**
> > >   * struct input_dev - represents an input device
> > >   * @name: name of the device
> > > @@ -114,6 +122,8 @@ struct input_value {
> > >   * @vals: array of values queued in the current frame
> > >   * @devres_managed: indicates that devices is managed with devres framework
> > >   *   and needs not be explicitly unregistered or freed.
> > > + * @timestamp: storage for a timestamp set by input_set_timestamp called
> > > + *  by a driver
> > >   */
> > >  struct input_dev {
> > >       const char *name;
> > > @@ -184,6 +194,8 @@ struct input_dev {
> > >       struct input_value *vals;
> > >
> > >       bool devres_managed;
> > > +
> > > +     ktime_t timestamp[INPUT_CLK_MAX];
> > >  };
> > >  #define to_input_dev(d) container_of(d, struct input_dev, dev)
> > >
> > > @@ -382,6 +394,32 @@ void input_close_device(struct input_handle *);
> > >
> > >  int input_flush_device(struct input_handle *handle, struct file *file);
> > >
> > > +/**
> > > + * input_set_timestamp - set timestamp for input events
> > > + * @dev: input device to set timestamp for
> > > + * @timestamp: the time at which the event has occurred
> > > + *   in CLOCK_MONOTONIC
> > > + *
> > > + * This function is intended to provide to the input system a more
> > > + * accurate time of when an event actually occurred. The driver should
> > > + * call this function as soon as a timestamp is acquired ensuring
> > > + * clock conversions in input_set_timestamp are done correctly.
> > > + *
> > > + * The system entering a suspend between timestamp acquisition and
> > > + * calling input_set_timestamp can result in inaccurate conversions.
> > > + *
> > > + */
> > > +static inline void input_set_timestamp(struct input_dev *dev,
> > > +     ktime_t timestamp)
> > > +{
> > > +     dev->timestamp[INPUT_CLK_MONO] = timestamp;
> > > +     dev->timestamp[INPUT_CLK_REAL] = ktime_mono_to_real(timestamp);
> > > +     dev->timestamp[INPUT_CLK_BOOT] = ktime_mono_to_any(
> > > +             timestamp, TK_OFFS_BOOT);
> > > +}
> > > +
> > > +ktime_t *input_get_timestamp(struct input_dev *dev);
> > > +
> > >  void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value);
> > >  void input_inject_event(struct input_handle *handle, unsigned int type, unsigned int code, int value);
> > >
> > > --
> > > 2.22.0.410.gd8fdbe21b5-goog
> > >
> >
> > --
> > Dmitry

^ permalink raw reply

* [PATCH v4 3/3] iio: Add PAT9125 optical tracker sensor
From: Alexandre Mergnat @ 2019-07-12  9:40 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, Alexandre Mergnat
In-Reply-To: <20190712094050.17432-1-amergnat@baylibre.com>

This adds support for PixArt Imaging’s miniature low power optical
navigation chip using LASER light source enabling digital surface tracking.

Features and datasheet: [0]

This IIO driver allows to read relative position from where the system
started on X and Y axis through two way:
  - Punctual "read_raw" which will issue a read in the device registers to
  get the delta between last/current read and return the addition of all
  the deltas.
  - Buffer read. Data can be retrieved using triggered buffer subscription
  (i.e. iio_readdev). The buffer payload is:
    |32 bits delta X|32 bits delta Y|timestamp|.

The possible I2C addresses are 0x73, 0x75 and 0x79.

X and Y axis CPI resolution can be get/set independently through IIO_SCALE.
The range value is 0-255 which means:
  - 0 to ~1,275 Counts Per Inch on flat surface.
  - 0 to ~630 Counts Per Rev on 1.0mm diameter STS shaft at 1.0mm distance.
More details on the datasheet.

The "position" directory is added to contain drivers which can provide
position data.

[0]: http://www.pixart.com/products-detail/72/PAT9125EL-TKIT___TKMT

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 drivers/iio/Kconfig            |   1 +
 drivers/iio/Makefile           |   1 +
 drivers/iio/position/Kconfig   |  18 ++
 drivers/iio/position/Makefile  |   6 +
 drivers/iio/position/pat9125.c | 506 +++++++++++++++++++++++++++++++++
 5 files changed, 532 insertions(+)
 create mode 100644 drivers/iio/position/Kconfig
 create mode 100644 drivers/iio/position/Makefile
 create mode 100644 drivers/iio/position/pat9125.c

diff --git a/drivers/iio/Kconfig b/drivers/iio/Kconfig
index 5bd51853b15e..aca6fcbceeab 100644
--- a/drivers/iio/Kconfig
+++ b/drivers/iio/Kconfig
@@ -85,6 +85,7 @@ source "drivers/iio/light/Kconfig"
 source "drivers/iio/magnetometer/Kconfig"
 source "drivers/iio/multiplexer/Kconfig"
 source "drivers/iio/orientation/Kconfig"
+source "drivers/iio/position/Kconfig"
 if IIO_TRIGGER
    source "drivers/iio/trigger/Kconfig"
 endif #IIO_TRIGGER
diff --git a/drivers/iio/Makefile b/drivers/iio/Makefile
index bff682ad1cfb..1712011c0f4a 100644
--- a/drivers/iio/Makefile
+++ b/drivers/iio/Makefile
@@ -31,6 +31,7 @@ obj-y += light/
 obj-y += magnetometer/
 obj-y += multiplexer/
 obj-y += orientation/
+obj-y += position/
 obj-y += potentiometer/
 obj-y += potentiostat/
 obj-y += pressure/
diff --git a/drivers/iio/position/Kconfig b/drivers/iio/position/Kconfig
new file mode 100644
index 000000000000..1cf28896511c
--- /dev/null
+++ b/drivers/iio/position/Kconfig
@@ -0,0 +1,18 @@
+#
+# Optical tracker sensors
+#
+# When adding new entries keep the list in alphabetical order
+
+menu "Optical tracker sensors"
+
+config PAT9125
+	tristate "Optical tracker PAT9125 I2C driver"
+	depends on I2C
+	select IIO_BUFFER
+	help
+	  Say yes here to build support for PAT9125 optical tracker
+	  sensors.
+
+          To compile this driver as a module, say M here: the module will
+          be called pat9125.
+endmenu
diff --git a/drivers/iio/position/Makefile b/drivers/iio/position/Makefile
new file mode 100644
index 000000000000..cf294917ae2c
--- /dev/null
+++ b/drivers/iio/position/Makefile
@@ -0,0 +1,6 @@
+#
+# Makefile for industrial I/O Optical tracker sensor drivers
+#
+
+# When adding new entries keep the list in alphabetical order
+obj-$(CONFIG_PAT9125) += pat9125.o
diff --git a/drivers/iio/position/pat9125.c b/drivers/iio/position/pat9125.c
new file mode 100644
index 000000000000..2f04777e0790
--- /dev/null
+++ b/drivers/iio/position/pat9125.c
@@ -0,0 +1,506 @@
+// SPDX-License-Identifier: (GPL-2.0)
+/*
+ * Copyright (C) 2019 BayLibre, SAS
+ * Author: Alexandre Mergnat <amergnat@baylibre.com>
+ */
+
+#include <linux/bitops.h>
+#include <linux/delay.h>
+#include <linux/interrupt.h>
+#include <linux/i2c.h>
+#include <linux/iio/iio.h>
+#include <linux/iio/sysfs.h>
+#include <linux/iio/events.h>
+#include <linux/iio/buffer.h>
+#include <linux/iio/trigger.h>
+#include <linux/iio/trigger_consumer.h>
+#include <linux/iio/triggered_buffer.h>
+#include <linux/iio/kfifo_buf.h>
+#include <linux/kernel.h>
+#include <linux/module.h>
+#include <linux/regmap.h>
+#include <linux/slab.h>
+
+/* I2C Address function to ID pin*/
+#define PAT9125_I2C_ADDR_HI		0x73
+#define PAT9125_I2C_ADDR_LO		0x75
+#define PAT9125_I2C_ADDR_NC		0x79
+
+/* Registers */
+#define PAT9125_PRD_ID1_REG		0x00
+#define PAT9125_PRD_ID2_REG		0x01
+#define PAT9125_MOTION_STATUS_REG	0x02
+#define PAT9125_DELTA_X_LO_REG		0x03
+#define PAT9125_DELTA_Y_LO_REG		0x04
+#define PAT9125_OP_MODE_REG		0x05
+#define PAT9125_CONFIG_REG		0x06
+#define PAT9125_WRITE_PROTEC_REG	0x09
+#define PAT9125_SLEEP1_REG		0x0A
+#define PAT9125_SLEEP2_REG		0x0B
+#define PAT9125_RES_X_REG		0x0D
+#define PAT9125_RES_Y_REG		0x0E
+#define PAT9125_DELTA_XY_HI_REG		0x12
+#define PAT9125_SHUTER_REG		0x14
+#define PAT9125_FRAME_AVG_REG		0x17
+#define PAT9125_ORIENTATION_REG		0x19
+
+/* Bits */
+#define PAT9125_VALID_MOTION_DATA_BIT	BIT(7)
+#define PAT9125_RESET_BIT		BIT(7)
+
+/* Registers' values */
+#define PAT9125_SENSOR_ID_VAL			0x31
+#define PAT9125_DISABLE_WRITE_PROTECT_VAL	0x5A
+#define PAT9125_ENABLE_WRITE_PROTECT_VAL	0x00
+
+/* Default Value of sampled value size */
+#define PAT9125_SAMPLED_VAL_BIT_SIZE		12
+
+struct pat9125_data {
+	struct regmap *regmap;
+	struct iio_trigger *indio_trig;	/* Motion detection */
+	s32 position_x;
+	s32 position_y;
+	bool sampling;
+};
+
+static const struct iio_chan_spec pat9125_channels[] = {
+	{
+		.type = IIO_DISTANCE,
+		.modified = 1,
+		.channel2 = IIO_MOD_X,
+		.info_mask_separate = BIT(IIO_CHAN_INFO_RAW) |
+			BIT(IIO_CHAN_INFO_SCALE),
+		.scan_index = 0,
+		.scan_type = {
+			.sign = 's',
+			.realbits = 32,
+			.storagebits = 32,
+			.endianness = IIO_CPU,
+		},
+	},
+	{
+		.type = IIO_DISTANCE,
+		.modified = 1,
+		.channel2 = IIO_MOD_Y,
+		.info_mask_separate = BIT(IIO_CHAN_INFO_RAW) |
+			BIT(IIO_CHAN_INFO_SCALE),
+		.scan_index = 1,
+		.scan_type = {
+			.sign = 's',
+			.realbits = 32,
+			.storagebits = 32,
+			.endianness = IIO_CPU,
+		},
+	},
+	IIO_CHAN_SOFT_TIMESTAMP(2),
+};
+
+/**
+ * pat9125_write_pretected_reg() - Write value in protected register.
+ *
+ * @regmap: Pointer to I2C register map.
+ * @reg_addr: Register address.
+ * @reg_value: Value to be write in register.
+ *
+ * A value of zero will be returned on success, a negative errno will
+ * be returned in error cases.
+ */
+static int pat9125_write_pretected_reg(struct iio_dev *indio_dev,
+	u8 reg_addr, u8 reg_value)
+{
+	struct pat9125_data *data = iio_priv(indio_dev);
+	int ret;
+
+	ret = regmap_write(data->regmap,
+		PAT9125_WRITE_PROTEC_REG,
+		PAT9125_DISABLE_WRITE_PROTECT_VAL);
+
+	if (!ret)
+		ret = regmap_write(data->regmap, reg_addr, reg_value);
+
+	/* Try to put back write protection everytime */
+	ret |= regmap_write(data->regmap,
+		PAT9125_WRITE_PROTEC_REG,
+		PAT9125_ENABLE_WRITE_PROTECT_VAL);
+
+	return ret;
+}
+/**
+ * pat9125_read_delta() - Read delta value, update delta & position data.
+ *
+ * @data: Driver's data structure.
+ *
+ * A value of zero will be returned on success, a negative errno will
+ * be returned in error cases.
+ */
+static int pat9125_read_delta(struct pat9125_data *data)
+{
+	struct regmap *regmap = data->regmap;
+	int status = 0;
+	int val_x = 0;
+	int val_y = 0;
+	int val_high_nibbles = 0;
+	int ret;
+
+	ret = regmap_read(regmap, PAT9125_MOTION_STATUS_REG, &status);
+	if (ret < 0)
+		return ret;
+
+	/* Check if motion is detected */
+	if (status & PAT9125_VALID_MOTION_DATA_BIT) {
+		ret = regmap_read(regmap, PAT9125_DELTA_X_LO_REG, &val_x);
+		if (ret < 0)
+			return ret;
+
+		ret = regmap_read(regmap, PAT9125_DELTA_Y_LO_REG, &val_y);
+		if (ret < 0)
+			return ret;
+
+		ret = regmap_read(regmap, PAT9125_DELTA_XY_HI_REG,
+			&val_high_nibbles);
+		if (ret < 0)
+			return ret;
+
+		val_x |= (val_high_nibbles << 4) & 0xF00;
+		val_y |= (val_high_nibbles << 8) & 0xF00;
+		val_x = sign_extend32(val_x,
+			PAT9125_SAMPLED_VAL_BIT_SIZE - 1);
+		val_y = sign_extend32(val_y,
+			PAT9125_SAMPLED_VAL_BIT_SIZE - 1);
+		data->position_x += val_x;
+		data->position_y += val_y;
+	}
+	return 0;
+}
+
+/**
+ * pat9125_read_raw() - Sample and return the value(s)
+ * function to the associated channel info enum.
+ *
+ * @indio_dev:	Industrial I/O device.
+ * @chan:	Specification of a single channel.
+ * @val:	Contain the elements making up the returned value.
+ * @val2:	Not used.
+ * @mask:	(enum iio_chan_info_enum) Type of the info attribute.
+ *
+ * Zero will be returned on success, negative value otherwise.
+ **/
+static int pat9125_read_raw(struct iio_dev *indio_dev,
+			    struct iio_chan_spec const *chan,
+			    int *val, int *val2, long mask)
+{
+	struct pat9125_data *data = iio_priv(indio_dev);
+	int ret;
+
+	switch (mask) {
+	case IIO_CHAN_INFO_RAW:
+		ret = pat9125_read_delta(data);
+		if (ret)
+			return ret;
+		switch (chan->channel2) {
+		case IIO_MOD_X:
+			*val = data->position_x;
+			return IIO_VAL_INT;
+		case IIO_MOD_Y:
+			*val = data->position_y;
+			return IIO_VAL_INT;
+		default:
+			return -EINVAL;
+		}
+	case IIO_CHAN_INFO_SCALE:
+		switch (chan->channel2) {
+		case IIO_MOD_X:
+			ret = regmap_read(data->regmap, PAT9125_RES_X_REG, val);
+			if (ret)
+				return ret;
+			else
+				return IIO_VAL_INT;
+		case IIO_MOD_Y:
+			ret = regmap_read(data->regmap, PAT9125_RES_Y_REG, val);
+			if (ret)
+				return ret;
+			else
+				return IIO_VAL_INT;
+		default:
+			return -EINVAL;
+		}
+	default:
+		return -EINVAL;
+	}
+}
+
+/**
+ * pat9125_write_raw() - Write the value(s)
+ * function to the associated channel info enum.
+ *
+ * @indio_dev:	Industrial I/O device.
+ * @chan:	Specification of a single channel.
+ * @val:	Value write in the channel.
+ * @val2:	Not used.
+ * @mask:	(enum iio_chan_info_enum) Type of the info attribute.
+ *
+ * Zero will be returned on success, negative value otherwise.
+ **/
+static int pat9125_write_raw(struct iio_dev *indio_dev,
+			     struct iio_chan_spec const *chan, int val,
+			     int val2, long mask)
+{
+	int ret;
+
+	switch (mask) {
+	case IIO_CHAN_INFO_SCALE:
+		switch (chan->channel2) {
+		case IIO_MOD_X:
+			ret = pat9125_write_pretected_reg(indio_dev,
+				PAT9125_RES_X_REG, val);
+			return ret;
+		case IIO_MOD_Y:
+			ret = pat9125_write_pretected_reg(indio_dev,
+				PAT9125_RES_Y_REG, val);
+			return ret;
+		default:
+			return -EINVAL;
+		}
+	default:
+		return -EINVAL;
+	}
+}
+
+static irqreturn_t pat9125_threaded_trigger_handler(int irq, void *p)
+{
+	struct iio_poll_func *pf = p;
+	struct iio_dev *indio_dev = pf->indio_dev;
+	struct pat9125_data *data = iio_priv(indio_dev);
+	u8 buf[16]; /* Payload: Pos_X (4) | Pos_Y (4) | Timestamp (8) */
+	int ret;
+	s64 timestamp;
+
+	data->sampling = true;
+	ret = pat9125_read_delta(data);
+	if (ret) {
+		dev_err(indio_dev->dev.parent, "Read delta failed %d\n", ret);
+		return IRQ_NONE;
+	}
+	timestamp = iio_get_time_ns(indio_dev);
+	*((s32 *)&buf[0]) = data->position_x;
+	*((s32 *)&buf[sizeof(s32)]) = data->position_y;
+	iio_push_to_buffers_with_timestamp(indio_dev, buf, timestamp);
+	iio_trigger_notify_done(indio_dev->trig);
+	return IRQ_HANDLED;
+}
+
+/**
+ * pat9125_threaded_event_handler() - Threaded motion detection event handler
+ * @irq: The irq being handled.
+ * @private: struct iio_device pointer for the device.
+ */
+static irqreturn_t pat9125_threaded_event_handler(int irq, void *private)
+{
+	struct iio_dev *indio_dev = private;
+	struct pat9125_data *data = iio_priv(indio_dev);
+
+	iio_trigger_poll_chained(data->indio_trig);
+	return IRQ_HANDLED;
+}
+
+/**
+ * pat9125_buffer_postenable() - Buffer post enable actions
+ *
+ * @indio_dev:	Industrial I/O device.
+ */
+static int pat9125_buffer_postenable(struct iio_dev *indio_dev)
+{
+	struct pat9125_data *data = iio_priv(indio_dev);
+	int ret = 0;
+
+	ret = iio_triggered_buffer_postenable(indio_dev);
+	if (ret)
+		return ret;
+
+	/* Release interrupt pin on the device */
+	ret = pat9125_read_delta(data);
+
+	/* iio_trigger_detach_poll_func isn't reachable, so use this function */
+	if (ret)
+		ret = iio_triggered_buffer_predisable(indio_dev);
+
+	return ret;
+}
+
+static const struct iio_buffer_setup_ops pat9125_buffer_ops = {
+	.postenable = pat9125_buffer_postenable,
+};
+
+static const struct regmap_config pat9125_regmap_config = {
+	.reg_bits = 8,
+	.val_bits = 8,
+};
+
+static const struct iio_info pat9125_info = {
+	.read_raw = pat9125_read_raw,
+	.write_raw = pat9125_write_raw,
+};
+
+/*
+ * To detect if a new value is available, register status is checked. This
+ * method is safer than using a flag on GPIO IRQ to track event while sampling
+ * because falling edge is missed when device trig just after a read reg value
+ * (that happen for fast motions or high CPI setting).
+ *
+ * Note: To avoid infinite loop in "iio_trigger_notify_done" when it is not in
+ * buffer mode and kernel warning due to nested IRQ thread,
+ * this function must return 0.
+ */
+static int pat9125_trig_try_reenable(struct iio_trigger *trig)
+{
+	struct pat9125_data *data = iio_trigger_get_drvdata(trig);
+	struct regmap *regmap = data->regmap;
+	int status = 0;
+
+	if (data->sampling) {
+		regmap_read(regmap, PAT9125_MOTION_STATUS_REG, &status);
+		if (status & PAT9125_VALID_MOTION_DATA_BIT) {
+			data->sampling = false;
+			iio_trigger_poll_chained(data->indio_trig);
+			return 0;
+		}
+	}
+	data->sampling = false;
+	return 0;
+}
+
+static const struct iio_trigger_ops pat9125_trigger_ops = {
+	.try_reenable = pat9125_trig_try_reenable,
+};
+
+static int pat9125_probe(struct i2c_client *client,
+			 const struct i2c_device_id *id)
+{
+	struct pat9125_data *data;
+	struct iio_dev *indio_dev;
+	int ret, sensor_pid;
+
+	indio_dev = devm_iio_device_alloc(&client->dev, sizeof(*data));
+	if (!indio_dev) {
+		dev_err(&client->dev, "IIO device allocation failed\n");
+		return -ENOMEM;
+	}
+
+	data = iio_priv(indio_dev);
+	indio_dev->dev.parent = &client->dev;
+	indio_dev->name = id->name;
+	indio_dev->channels = pat9125_channels;
+	indio_dev->num_channels = ARRAY_SIZE(pat9125_channels);
+	indio_dev->info = &pat9125_info;
+	indio_dev->modes = INDIO_DIRECT_MODE;
+
+	ret = devm_iio_triggered_buffer_setup(&client->dev, indio_dev, NULL,
+		pat9125_threaded_trigger_handler, &pat9125_buffer_ops);
+	if (ret) {
+		dev_err(&client->dev, "unable to setup triggered buffer\n");
+		return ret;
+	}
+
+	data->indio_trig = devm_iio_trigger_alloc(&client->dev, "%s-dev%d",
+		indio_dev->name, indio_dev->id);
+	if (!data->indio_trig)
+		return -ENOMEM;
+	data->indio_trig->dev.parent = &client->dev;
+	data->indio_trig->ops = &pat9125_trigger_ops;
+	iio_trigger_set_drvdata(data->indio_trig, data);
+	ret = devm_iio_trigger_register(&client->dev, data->indio_trig);
+	if (ret) {
+		dev_err(&client->dev, "unable to register trigger\n");
+		return ret;
+	}
+
+	data->regmap = devm_regmap_init_i2c(client, &pat9125_regmap_config);
+	if (IS_ERR(data->regmap)) {
+		dev_err(&client->dev, "regmap init failed %ld\n",
+			PTR_ERR(data->regmap));
+		return PTR_ERR(data->regmap);
+	}
+
+	/* Check device ID */
+	ret = regmap_read(data->regmap, PAT9125_PRD_ID1_REG, &sensor_pid);
+	if (ret < 0) {
+		dev_err(&client->dev, "register 0x%x access failed %d\n",
+			PAT9125_PRD_ID1_REG, ret);
+		return ret;
+	}
+	if (sensor_pid != PAT9125_SENSOR_ID_VAL)
+		return -ENODEV;
+
+	/* Switch to bank0 (Magic number)*/
+	ret = regmap_write(data->regmap, 0x7F, 0x00);
+	if (ret < 0) {
+		dev_err(indio_dev->dev.parent, "register 0x%x access failed %d\n",
+			0x7F, ret);
+		return ret;
+	}
+
+	/* Software reset */
+	ret = regmap_write_bits(data->regmap,
+			      PAT9125_CONFIG_REG,
+			      PAT9125_RESET_BIT,
+			      1);
+	if (ret < 0) {
+		dev_err(&client->dev, "register 0x%x access failed %d\n",
+			PAT9125_CONFIG_REG, ret);
+		return ret;
+	}
+
+	msleep(20);
+
+	/* Init GPIO IRQ */
+	if (client->irq) {
+		ret = devm_request_threaded_irq(&client->dev,
+			client->irq,
+			NULL,
+			pat9125_threaded_event_handler,
+			IRQF_TRIGGER_FALLING | IRQF_ONESHOT,
+			"pat9125",
+			indio_dev);
+		if (ret) {
+			dev_err(&client->dev, "GPIO IRQ init failed\n");
+			return ret;
+		}
+	}
+
+	ret = devm_iio_device_register(&client->dev, indio_dev);
+	if (ret) {
+		dev_err(&client->dev, "IIO device register failed\n");
+		return ret;
+	}
+
+	return 0;
+}
+
+static const struct i2c_device_id pat9125_id[] = {
+	{ "pat9125", 0 },
+	{}
+};
+MODULE_DEVICE_TABLE(i2c, pat9125_id);
+
+static const unsigned short normal_i2c[] = {
+	PAT9125_I2C_ADDR_HI,
+	PAT9125_I2C_ADDR_LO,
+	PAT9125_I2C_ADDR_NC,
+	I2C_CLIENT_END
+};
+
+static struct i2c_driver pat9125_driver = {
+	.driver = {
+		.name = "pat9125",
+	},
+	.probe = pat9125_probe,
+	.address_list = normal_i2c,
+	.id_table = pat9125_id,
+};
+
+module_i2c_driver(pat9125_driver);
+
+MODULE_AUTHOR("Alexandre Mergnat <amergnat@baylibre.com>");
+MODULE_DESCRIPTION("Optical Tracking sensor");
+MODULE_LICENSE("GPL");
-- 
2.17.1

^ permalink raw reply related

* [PATCH v4 2/3] dt-bindings: iio: position: Add docs pat9125
From: Alexandre Mergnat @ 2019-07-12  9:40 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, Alexandre Mergnat
In-Reply-To: <20190712094050.17432-1-amergnat@baylibre.com>

Add documentation for the optical tracker PAT9125 and
"position" directory for chip which can provides position data.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 .../bindings/iio/position/pat9125.txt          | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/position/pat9125.txt

diff --git a/Documentation/devicetree/bindings/iio/position/pat9125.txt b/Documentation/devicetree/bindings/iio/position/pat9125.txt
new file mode 100644
index 000000000000..4028aeef9b42
--- /dev/null
+++ b/Documentation/devicetree/bindings/iio/position/pat9125.txt
@@ -0,0 +1,18 @@
+PixArt Imaging PAT9125 Optical Tracking Miniature Chip device driver
+
+Required properties:
+	- compatible: must be "pixart,pat9125"
+	- reg: i2c address where to find the device
+	- interrupts: the sole interrupt generated by the device
+
+	Refer to interrupt-controller/interrupts.txt for generic
+	interrupt client node bindings.
+
+Example:
+
+pat9125@75 {
+	compatible = "pixart,pat9125";
+	reg = <0x75>;
+	interrupt-parent = <&gpio3>;
+	interrupts = <12 IRQ_TYPE_EDGE_FALLING>;
+};
-- 
2.17.1

^ permalink raw reply related

* [PATCH v4 1/3] dt-bindings: Add pixart vendor
From: Alexandre Mergnat @ 2019-07-12  9:40 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, Alexandre Mergnat
In-Reply-To: <20190712094050.17432-1-amergnat@baylibre.com>

PixArt Imaging Inc. is expertized in CMOS image sensors (CIS),
capacitive touch controllers and related imaging application development.

Signed-off-by: Alexandre Mergnat <amergnat@baylibre.com>
---
 Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
index 18b79c4cf7d5..120529f40c7c 100644
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
@@ -705,6 +705,8 @@ patternProperties:
     description: Pine64
   "^pineriver,.*":
     description: Shenzhen PineRiver Designs Co., Ltd.
+  "^pixart,.*":
+    description: PixArt Imaging Inc.
   "^pixcir,.*":
     description: PIXCIR MICROELECTRONICS Co., Ltd
   "^plantower,.*":
-- 
2.17.1

^ permalink raw reply related

* [PATCH v4 0/3] Add PAT9125 optical tracker driver
From: Alexandre Mergnat @ 2019-07-12  9:40 UTC (permalink / raw)
  To: robh+dt, mark.rutland, jic23
  Cc: linux-kernel, linux-iio, baylibre-upstreaming, dmitry.torokhov,
	linux-input, Alexandre Mergnat

PixArt Imaging PAT9125 is a miniature low power optical navigation chip
using LASER light source enabling digital surface tracking.

This device driver use IIO API to provide punctual and/or buffered data.
The data is a relative position from where start the device on X and Y
axis, depend on CPI (Counts Per Inch) resolution setting chosen.

The device support CPI configuration through IIO interface.

This patchset :
- Update vendor prefix
- Add the bindings for this device
- Add the device driver
- Add directory for optical tracker devices

Change since v3:
- Replace delta value by relative position
- Improve write protected reg function by removing print log and obvious
  returns
- Handle error in postenable buffer function

Change since v2:
- Fix typo
- Add constructor webpage and datasheet in commit message
- Use BIT() macro for define bit mask
- Remove shift from IIO channel spec structure
- Replace IIO_LE by IIO_CPU from IIO channel spec structure
- Replace memcpy() by cast (s32)
- Rename "pat9125_trig_try_reen" to "pat9125_trig_try_reenable"
- Add carriage return (\n) at the end of each "dev_err" function
- Remove "iio_trigger_unregister" in case of "iio_trigger_register" fail,
  register function already manage it
- Remove log which print device name in case of successful initialization
- Fix enabled IRQ flag warning during nested IRQ thread
- Improve retry algo now based on status register
- Remove "ts", "motion_detected" and "buffer_mode" from pat9125_data
  structure
- Rename all "ot" directories to "position"
- Polling sample through IIO_CHAN_INFO_RAW now return position value
  (relative to the position at initialization time) instead of delta
  position
- Clean iio_buffer_setup_ops structure by removing NULL pointer.
- Use devm_iio_ function for all init functions and then delete
  "pat9125_remove"
- Move device_register at the end of probe function
- Replace MODULE_PARM_DESC by IIO_SCALE to set axis resolution (CPI)

Change since v1:
- Fix typo
- Rename some defines / variables
- Remove I2C client from driver structure
- Change type of delta_x and delta_y from s16 to s32 to simplify signed
  operations
- Add module parameter for axis resolution
- Replace "IIO_MOD_X_AND_Y" by "IIO_MOD_X" and "IIO_MOD_Y"
- Add sign extension macro
- Improve read value algorithm to avoid data loss
- Implement a trigger handler function which can work with any IIO
  trigger, independently of it own GPIO IRQ, to match with IIO
  requirement/behaviour
- Replace iio push event function by iio trigger poll in GPIO IRQ handler
- Use triggered_buffer helpers to replace kfifo use, setup buffer,
  implement enable/disable setup buffer operations, IIO trigger
  allocation and re-enable operations
- Remove useless "goto"
- Change GPIO IRQ handler from planified thread to IRQ thread
- Change GPIO IRQ trigger from low level and one shot to falling edge
- Add device unregister and buffer cleanup to driver remove function

Alexandre Mergnat (3):
  dt-bindings: Add pixart vendor
  dt-bindings: iio: position: Add docs pat9125
  iio: Add PAT9125 optical tracker sensor

 .../bindings/iio/position/pat9125.txt         |  18 +
 .../devicetree/bindings/vendor-prefixes.yaml  |   2 +
 drivers/iio/Kconfig                           |   1 +
 drivers/iio/Makefile                          |   1 +
 drivers/iio/position/Kconfig                  |  18 +
 drivers/iio/position/Makefile                 |   6 +
 drivers/iio/position/pat9125.c                | 506 ++++++++++++++++++
 7 files changed, 552 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/iio/position/pat9125.txt
 create mode 100644 drivers/iio/position/Kconfig
 create mode 100644 drivers/iio/position/Makefile
 create mode 100644 drivers/iio/position/pat9125.c

-- 
2.17.1

^ permalink raw reply

* Re: [PATCH] input: API for Setting a Timestamp from a Driver
From: Benjamin Tissoires @ 2019-07-12  7:23 UTC (permalink / raw)
  To: Dmitry Torokhov
  Cc: Atif Niyaz, Peter Hutterer, Atif Niyaz, Siarhei Vishniakou,
	open list:HID CORE LAYER, lkml
In-Reply-To: <20190712064134.GA150689@dtor-ws>

On Fri, Jul 12, 2019 at 8:41 AM Dmitry Torokhov
<dmitry.torokhov@gmail.com> wrote:
>
> Hi Atif,
>
> On Wed, Jul 10, 2019 at 04:04:10PM -0700, Atif Niyaz wrote:
> > Currently, evdev stamps time with timestamps acquired in
> > evdev_events. However, this timestamping may not be accurate in terms of
> > measuring when the actual event happened. This API allows any 3rd party
> > driver to be able to call input_set_timestamp, and provide a timestamp
> > that can be utilized in order to provide a more accurate sense of time
> > for the event
> >
> > Signed-off-by: Atif Niyaz <atifniyaz@google.com>
>
> This looks OK to me. Benjamin, Peter, any concerns here?
>

No red flags from me (though Peter is the one using all of this).

Just curious, which drivers do you think will be using this new API?
I can see that we might want to use hid-multitouch for it, with the
Scan Time forwarded by the device, but what do you have in mind?

Cheers,
Benjamin

>
> > ---
> >  drivers/input/evdev.c | 42 ++++++++++++++++--------------------------
> >  drivers/input/input.c | 17 +++++++++++++++++
> >  include/linux/input.h | 38 ++++++++++++++++++++++++++++++++++++++
> >  3 files changed, 71 insertions(+), 26 deletions(-)
> >
> > diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
> > index 867c2cfd0038..a331efa0a3f6 100644
> > --- a/drivers/input/evdev.c
> > +++ b/drivers/input/evdev.c
> > @@ -25,13 +25,6 @@
> >  #include <linux/cdev.h>
> >  #include "input-compat.h"
> >
> > -enum evdev_clock_type {
> > -     EV_CLK_REAL = 0,
> > -     EV_CLK_MONO,
> > -     EV_CLK_BOOT,
> > -     EV_CLK_MAX
> > -};
> > -
> >  struct evdev {
> >       int open;
> >       struct input_handle handle;
> > @@ -53,7 +46,7 @@ struct evdev_client {
> >       struct fasync_struct *fasync;
> >       struct evdev *evdev;
> >       struct list_head node;
> > -     unsigned int clk_type;
> > +     input_clk_t clk_type;
> >       bool revoked;
> >       unsigned long *evmasks[EV_CNT];
> >       unsigned int bufsize;
> > @@ -150,16 +143,18 @@ static void __evdev_flush_queue(struct evdev_client *client, unsigned int type)
> >  static void __evdev_queue_syn_dropped(struct evdev_client *client)
> >  {
> >       struct input_event ev;
> > -     ktime_t time;
> >       struct timespec64 ts;
> > +     ktime_t *time = input_get_timestamp(client->evdev->handle.dev);
> >
> > -     time = client->clk_type == EV_CLK_REAL ?
> > -                     ktime_get_real() :
> > -                     client->clk_type == EV_CLK_MONO ?
> > -                             ktime_get() :
> > -                             ktime_get_boottime();
> > +     switch (client->clk_type) {
> > +     case INPUT_CLK_REAL:
> > +     case INPUT_CLK_MONO:
> > +             ts = ktime_to_timespec64(time[client->clk_type]);
> > +             break;
> > +     default:
> > +             ts = ktime_to_timespec64(time[INPUT_CLK_BOOT]);
>
> Add "break" here please.
>
> > +     }
> >
> > -     ts = ktime_to_timespec64(time);
> >       ev.input_event_sec = ts.tv_sec;
> >       ev.input_event_usec = ts.tv_nsec / NSEC_PER_USEC;
> >       ev.type = EV_SYN;
> > @@ -185,21 +180,21 @@ static void evdev_queue_syn_dropped(struct evdev_client *client)
> >       spin_unlock_irqrestore(&client->buffer_lock, flags);
> >  }
> >
> > -static int evdev_set_clk_type(struct evdev_client *client, unsigned int clkid)
> > +static int evdev_set_clk_type(struct evdev_client *client, clockid_t clkid)
> >  {
> >       unsigned long flags;
> > -     unsigned int clk_type;
> > +     input_clk_t clk_type;
> >
> >       switch (clkid) {
> >
> >       case CLOCK_REALTIME:
> > -             clk_type = EV_CLK_REAL;
> > +             clk_type = INPUT_CLK_REAL;
> >               break;
> >       case CLOCK_MONOTONIC:
> > -             clk_type = EV_CLK_MONO;
> > +             clk_type = INPUT_CLK_MONO;
> >               break;
> >       case CLOCK_BOOTTIME:
> > -             clk_type = EV_CLK_BOOT;
> > +             clk_type = INPUT_CLK_BOOT;
> >               break;
> >       default:
> >               return -EINVAL;
> > @@ -307,12 +302,7 @@ static void evdev_events(struct input_handle *handle,
> >  {
> >       struct evdev *evdev = handle->private;
> >       struct evdev_client *client;
> > -     ktime_t ev_time[EV_CLK_MAX];
> > -
> > -     ev_time[EV_CLK_MONO] = ktime_get();
> > -     ev_time[EV_CLK_REAL] = ktime_mono_to_real(ev_time[EV_CLK_MONO]);
> > -     ev_time[EV_CLK_BOOT] = ktime_mono_to_any(ev_time[EV_CLK_MONO],
> > -                                              TK_OFFS_BOOT);
> > +     ktime_t *ev_time = input_get_timestamp(handle->dev);
> >
> >       rcu_read_lock();
> >
> > diff --git a/drivers/input/input.c b/drivers/input/input.c
> > index 7f3c5fcb9ed6..ae8b0ee58120 100644
> > --- a/drivers/input/input.c
> > +++ b/drivers/input/input.c
> > @@ -1894,6 +1894,23 @@ void input_free_device(struct input_dev *dev)
> >  }
> >  EXPORT_SYMBOL(input_free_device);
> >
> > +/**
> > + * input_get_timestamp - get timestamp for input events
> > + * @dev: input device to get timestamp from
> > + *
> > + * A valid timestamp is a timestamp of non-zero value.
> > + */
> > +ktime_t *input_get_timestamp(struct input_dev *dev)
> > +{
> > +     const ktime_t invalid_timestamp = ktime_set(0, 0);
> > +
> > +     if (!ktime_compare(dev->timestamp[INPUT_CLK_MONO], ktime_zero)) {
>
> You need to replace ktime_zero with invalid_timestamp here.
>
> > +             input_set_timestamp(dev, ktime_get());
> > +     }
>
> No need for curly braces for 1-line body.
>
> > +     return dev->timestamp;
> > +}
> > +EXPORT_SYMBOL(input_get_timestamp);
> > +
> >  /**
> >   * input_set_capability - mark device as capable of a certain event
> >   * @dev: device that is capable of emitting or accepting event
> > diff --git a/include/linux/input.h b/include/linux/input.h
> > index 510e78558c10..3929b62ccbe5 100644
> > --- a/include/linux/input.h
> > +++ b/include/linux/input.h
> > @@ -33,6 +33,14 @@ struct input_value {
> >       __s32 value;
> >  };
> >
> > +enum input_clock_type {
> > +     INPUT_CLK_REAL = 0,
> > +     INPUT_CLK_MONO,
> > +     INPUT_CLK_BOOT,
> > +     INPUT_CLK_MAX
> > +};
> > +typedef enum input_clock_type input_clk_t;
>
> We typically avoid typedefs unless we really want to hide kind of data
> we are dealing with. Let's just use "enum input_clock_type" everywhere.
>
> > +
> >  /**
> >   * struct input_dev - represents an input device
> >   * @name: name of the device
> > @@ -114,6 +122,8 @@ struct input_value {
> >   * @vals: array of values queued in the current frame
> >   * @devres_managed: indicates that devices is managed with devres framework
> >   *   and needs not be explicitly unregistered or freed.
> > + * @timestamp: storage for a timestamp set by input_set_timestamp called
> > + *  by a driver
> >   */
> >  struct input_dev {
> >       const char *name;
> > @@ -184,6 +194,8 @@ struct input_dev {
> >       struct input_value *vals;
> >
> >       bool devres_managed;
> > +
> > +     ktime_t timestamp[INPUT_CLK_MAX];
> >  };
> >  #define to_input_dev(d) container_of(d, struct input_dev, dev)
> >
> > @@ -382,6 +394,32 @@ void input_close_device(struct input_handle *);
> >
> >  int input_flush_device(struct input_handle *handle, struct file *file);
> >
> > +/**
> > + * input_set_timestamp - set timestamp for input events
> > + * @dev: input device to set timestamp for
> > + * @timestamp: the time at which the event has occurred
> > + *   in CLOCK_MONOTONIC
> > + *
> > + * This function is intended to provide to the input system a more
> > + * accurate time of when an event actually occurred. The driver should
> > + * call this function as soon as a timestamp is acquired ensuring
> > + * clock conversions in input_set_timestamp are done correctly.
> > + *
> > + * The system entering a suspend between timestamp acquisition and
> > + * calling input_set_timestamp can result in inaccurate conversions.
> > + *
> > + */
> > +static inline void input_set_timestamp(struct input_dev *dev,
> > +     ktime_t timestamp)
> > +{
> > +     dev->timestamp[INPUT_CLK_MONO] = timestamp;
> > +     dev->timestamp[INPUT_CLK_REAL] = ktime_mono_to_real(timestamp);
> > +     dev->timestamp[INPUT_CLK_BOOT] = ktime_mono_to_any(
> > +             timestamp, TK_OFFS_BOOT);
> > +}
> > +
> > +ktime_t *input_get_timestamp(struct input_dev *dev);
> > +
> >  void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value);
> >  void input_inject_event(struct input_handle *handle, unsigned int type, unsigned int code, int value);
> >
> > --
> > 2.22.0.410.gd8fdbe21b5-goog
> >
>
> --
> Dmitry

^ permalink raw reply

* Re: [PATCH] input: keyboard: mtk-pmic-keys: Add of_node_put() before return
From: Dmitry Torokhov @ 2019-07-12  6:50 UTC (permalink / raw)
  To: Nishka Dasgupta
  Cc: matthias.bgg, linux-mediatek, linux-arm-kernel, linux-input
In-Reply-To: <20190709180019.14339-1-nishkadg.linux@gmail.com>

On Tue, Jul 09, 2019 at 11:30:19PM +0530, Nishka Dasgupta wrote:
> Each iteration of for_each_child_of_node puts the previous
> node, but in the case of a return from the middle of the loop, there is
> no put, thus causing a memory leak. Hence add an of_node_put before the
> return in three places.
> Issue found with Coccinelle.
> 
> Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com>

Applied, thank you.

> ---
>  drivers/input/keyboard/mtk-pmic-keys.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/input/keyboard/mtk-pmic-keys.c b/drivers/input/keyboard/mtk-pmic-keys.c
> index 746ff06eaf8d..62391d6c7da6 100644
> --- a/drivers/input/keyboard/mtk-pmic-keys.c
> +++ b/drivers/input/keyboard/mtk-pmic-keys.c
> @@ -277,8 +277,10 @@ static int mtk_pmic_keys_probe(struct platform_device *pdev)
>  		keys->keys[index].regs = &mtk_pmic_regs->keys_regs[index];
>  
>  		keys->keys[index].irq = platform_get_irq(pdev, index);
> -		if (keys->keys[index].irq < 0)
> +		if (keys->keys[index].irq < 0) {
> +			of_node_put(child);
>  			return keys->keys[index].irq;
> +		}
>  
>  		error = of_property_read_u32(child,
>  			"linux,keycodes", &keys->keys[index].keycode);
> @@ -286,6 +288,7 @@ static int mtk_pmic_keys_probe(struct platform_device *pdev)
>  			dev_err(keys->dev,
>  				"failed to read key:%d linux,keycode property: %d\n",
>  				index, error);
> +			of_node_put(child);
>  			return error;
>  		}
>  
> @@ -293,8 +296,10 @@ static int mtk_pmic_keys_probe(struct platform_device *pdev)
>  			keys->keys[index].wakeup = true;
>  
>  		error = mtk_pmic_key_setup(keys, &keys->keys[index]);
> -		if (error)
> +		if (error) {
> +			of_node_put(child);
>  			return error;
> +		}
>  
>  		index++;
>  	}
> -- 
> 2.19.1
> 

-- 
Dmitry

^ permalink raw reply

* Re: [PATCH] input: keyboard: sun4i-lradc-keys: Add of_node_put() before return
From: Dmitry Torokhov @ 2019-07-12  6:50 UTC (permalink / raw)
  To: Nishka Dasgupta
  Cc: maxime.ripard, hdegoede, wens, linux-arm-kernel, linux-input
In-Reply-To: <20190709175707.14278-1-nishkadg.linux@gmail.com>

On Tue, Jul 09, 2019 at 11:27:07PM +0530, Nishka Dasgupta wrote:
> Each iteration of for_each_child_of_node puts the previous
> node, but in the case of a return from the middle of the loop, there is
> no put, thus causing a memory leak. Hence add an of_node_put before the
> return in three places.
> Issue found with Coccinelle.
> 
> Signed-off-by: Nishka Dasgupta <nishkadg.linux@gmail.com>

Applied, thank you.

> ---
>  drivers/input/keyboard/sun4i-lradc-keys.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/input/keyboard/sun4i-lradc-keys.c b/drivers/input/keyboard/sun4i-lradc-keys.c
> index 6ffdc26b9c89..4a796bed48ac 100644
> --- a/drivers/input/keyboard/sun4i-lradc-keys.c
> +++ b/drivers/input/keyboard/sun4i-lradc-keys.c
> @@ -198,18 +198,21 @@ static int sun4i_lradc_load_dt_keymap(struct device *dev,
>  		error = of_property_read_u32(pp, "channel", &channel);
>  		if (error || channel != 0) {
>  			dev_err(dev, "%pOFn: Inval channel prop\n", pp);
> +			of_node_put(pp);
>  			return -EINVAL;
>  		}
>  
>  		error = of_property_read_u32(pp, "voltage", &map->voltage);
>  		if (error) {
>  			dev_err(dev, "%pOFn: Inval voltage prop\n", pp);
> +			of_node_put(pp);
>  			return -EINVAL;
>  		}
>  
>  		error = of_property_read_u32(pp, "linux,code", &map->keycode);
>  		if (error) {
>  			dev_err(dev, "%pOFn: Inval linux,code prop\n", pp);
> +			of_node_put(pp);
>  			return -EINVAL;
>  		}
>  
> -- 
> 2.19.1
> 

-- 
Dmitry

^ permalink raw reply

* Re: [PATCH] input: touchscreen: add delay time to device power on
From: Dmitry Torokhov @ 2019-07-12  6:48 UTC (permalink / raw)
  To: Crag Wang
  Cc: yjjung, jsj1012, leesh832, Mario Limonciello,
	chrome.os.engineering, Crag.Wang, Sangwon Jee, linux-input,
	linux-kernel
In-Reply-To: <CAP-8N0hTEXkK3iqGP=+gtuVVcqo-+KYHC_N6+8Q90ndf_UVJpA@mail.gmail.com>

Hi Crag,

On Wed, Jul 10, 2019 at 04:58:40PM +0800, Crag Wang wrote:
> Adding more
> 
> On Wed, Jul 10, 2019 at 10:59 AM <crag0715@gmail.com> wrote:
> >
> > From: "Crag.Wang" <crag.wang@dell.com>
> >
> > Delay time for MELFAS MIP4 controller is required at power on stage
> > regardless the existence of GPIO consumer lookup from devicetree or
> > ACPI device table.
> >
> > There is an issue if GPIO ce is undefined in the ACPI results no delay
> > time for deive power on, the controller ended up in an abnormal state.
> >

If kernel does not reset the controller it should not have to wait for
reset to complete either. Since your firmware resets the controller it
also has to conform to the timing requirements.

Thanks.

-- 
Dmitry

^ permalink raw reply

* Re: [PATCH] Input: synaptics - enable RMI on ThinkPad T580
From: Dmitry Torokhov @ 2019-07-12  6:45 UTC (permalink / raw)
  To: Kai-Heng Feng; +Cc: benjamin.tissoires, linux-input, linux-kernel
In-Reply-To: <20190711105436.6290-1-kai.heng.feng@canonical.com>

Hi,

On Thu, Jul 11, 2019 at 06:54:36PM +0800, Kai-Heng Feng wrote:
> Like the ThinkPad T560 case, now we can use RMI on T580 to have a more
> responsive touchpad.
> 
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>

I already applied Nick Black'spatch for this, thanks.

> ---
>  drivers/input/mouse/synaptics.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/input/mouse/synaptics.c b/drivers/input/mouse/synaptics.c
> index b8ec301025b7..eb3f642967ab 100644
> --- a/drivers/input/mouse/synaptics.c
> +++ b/drivers/input/mouse/synaptics.c
> @@ -175,6 +175,7 @@ static const char * const smbus_pnp_ids[] = {
>  	"LEN0092", /* X1 Carbon 6 */
>  	"LEN0096", /* X280 */
>  	"LEN0097", /* X280 -> ALPS trackpoint */
> +	"LEN009b", /* T580 */
>  	"LEN200f", /* T450s */
>  	"LEN2054", /* E480 */
>  	"LEN2055", /* E580 */
> -- 
> 2.17.1
> 

-- 
Dmitry

^ permalink raw reply

* Re: [PATCH] input: API for Setting a Timestamp from a Driver
From: Dmitry Torokhov @ 2019-07-12  6:41 UTC (permalink / raw)
  To: Atif Niyaz, Benjamin Tissoires, Peter Hutterer
  Cc: Atif Niyaz, Siarhei Vishniakou, linux-input, linux-kernel
In-Reply-To: <20190710230410.9386-1-atifniyaz@google.com>

Hi Atif,

On Wed, Jul 10, 2019 at 04:04:10PM -0700, Atif Niyaz wrote:
> Currently, evdev stamps time with timestamps acquired in
> evdev_events. However, this timestamping may not be accurate in terms of
> measuring when the actual event happened. This API allows any 3rd party
> driver to be able to call input_set_timestamp, and provide a timestamp
> that can be utilized in order to provide a more accurate sense of time
> for the event
> 
> Signed-off-by: Atif Niyaz <atifniyaz@google.com>

This looks OK to me. Benjamin, Peter, any concerns here?


> ---
>  drivers/input/evdev.c | 42 ++++++++++++++++--------------------------
>  drivers/input/input.c | 17 +++++++++++++++++
>  include/linux/input.h | 38 ++++++++++++++++++++++++++++++++++++++
>  3 files changed, 71 insertions(+), 26 deletions(-)
> 
> diff --git a/drivers/input/evdev.c b/drivers/input/evdev.c
> index 867c2cfd0038..a331efa0a3f6 100644
> --- a/drivers/input/evdev.c
> +++ b/drivers/input/evdev.c
> @@ -25,13 +25,6 @@
>  #include <linux/cdev.h>
>  #include "input-compat.h"
>  
> -enum evdev_clock_type {
> -	EV_CLK_REAL = 0,
> -	EV_CLK_MONO,
> -	EV_CLK_BOOT,
> -	EV_CLK_MAX
> -};
> -
>  struct evdev {
>  	int open;
>  	struct input_handle handle;
> @@ -53,7 +46,7 @@ struct evdev_client {
>  	struct fasync_struct *fasync;
>  	struct evdev *evdev;
>  	struct list_head node;
> -	unsigned int clk_type;
> +	input_clk_t clk_type;
>  	bool revoked;
>  	unsigned long *evmasks[EV_CNT];
>  	unsigned int bufsize;
> @@ -150,16 +143,18 @@ static void __evdev_flush_queue(struct evdev_client *client, unsigned int type)
>  static void __evdev_queue_syn_dropped(struct evdev_client *client)
>  {
>  	struct input_event ev;
> -	ktime_t time;
>  	struct timespec64 ts;
> +	ktime_t *time = input_get_timestamp(client->evdev->handle.dev);
>  
> -	time = client->clk_type == EV_CLK_REAL ?
> -			ktime_get_real() :
> -			client->clk_type == EV_CLK_MONO ?
> -				ktime_get() :
> -				ktime_get_boottime();
> +	switch (client->clk_type) {
> +	case INPUT_CLK_REAL:
> +	case INPUT_CLK_MONO:
> +		ts = ktime_to_timespec64(time[client->clk_type]);
> +		break;
> +	default:
> +		ts = ktime_to_timespec64(time[INPUT_CLK_BOOT]);

Add "break" here please.

> +	}
>  
> -	ts = ktime_to_timespec64(time);
>  	ev.input_event_sec = ts.tv_sec;
>  	ev.input_event_usec = ts.tv_nsec / NSEC_PER_USEC;
>  	ev.type = EV_SYN;
> @@ -185,21 +180,21 @@ static void evdev_queue_syn_dropped(struct evdev_client *client)
>  	spin_unlock_irqrestore(&client->buffer_lock, flags);
>  }
>  
> -static int evdev_set_clk_type(struct evdev_client *client, unsigned int clkid)
> +static int evdev_set_clk_type(struct evdev_client *client, clockid_t clkid)
>  {
>  	unsigned long flags;
> -	unsigned int clk_type;
> +	input_clk_t clk_type;
>  
>  	switch (clkid) {
>  
>  	case CLOCK_REALTIME:
> -		clk_type = EV_CLK_REAL;
> +		clk_type = INPUT_CLK_REAL;
>  		break;
>  	case CLOCK_MONOTONIC:
> -		clk_type = EV_CLK_MONO;
> +		clk_type = INPUT_CLK_MONO;
>  		break;
>  	case CLOCK_BOOTTIME:
> -		clk_type = EV_CLK_BOOT;
> +		clk_type = INPUT_CLK_BOOT;
>  		break;
>  	default:
>  		return -EINVAL;
> @@ -307,12 +302,7 @@ static void evdev_events(struct input_handle *handle,
>  {
>  	struct evdev *evdev = handle->private;
>  	struct evdev_client *client;
> -	ktime_t ev_time[EV_CLK_MAX];
> -
> -	ev_time[EV_CLK_MONO] = ktime_get();
> -	ev_time[EV_CLK_REAL] = ktime_mono_to_real(ev_time[EV_CLK_MONO]);
> -	ev_time[EV_CLK_BOOT] = ktime_mono_to_any(ev_time[EV_CLK_MONO],
> -						 TK_OFFS_BOOT);
> +	ktime_t *ev_time = input_get_timestamp(handle->dev);
>  
>  	rcu_read_lock();
>  
> diff --git a/drivers/input/input.c b/drivers/input/input.c
> index 7f3c5fcb9ed6..ae8b0ee58120 100644
> --- a/drivers/input/input.c
> +++ b/drivers/input/input.c
> @@ -1894,6 +1894,23 @@ void input_free_device(struct input_dev *dev)
>  }
>  EXPORT_SYMBOL(input_free_device);
>  
> +/**
> + * input_get_timestamp - get timestamp for input events
> + * @dev: input device to get timestamp from
> + *
> + * A valid timestamp is a timestamp of non-zero value.
> + */
> +ktime_t *input_get_timestamp(struct input_dev *dev)
> +{
> +	const ktime_t invalid_timestamp = ktime_set(0, 0);
> +
> +	if (!ktime_compare(dev->timestamp[INPUT_CLK_MONO], ktime_zero)) {

You need to replace ktime_zero with invalid_timestamp here.

> +		input_set_timestamp(dev, ktime_get());
> +	}

No need for curly braces for 1-line body.

> +	return dev->timestamp;
> +}
> +EXPORT_SYMBOL(input_get_timestamp);
> +
>  /**
>   * input_set_capability - mark device as capable of a certain event
>   * @dev: device that is capable of emitting or accepting event
> diff --git a/include/linux/input.h b/include/linux/input.h
> index 510e78558c10..3929b62ccbe5 100644
> --- a/include/linux/input.h
> +++ b/include/linux/input.h
> @@ -33,6 +33,14 @@ struct input_value {
>  	__s32 value;
>  };
>  
> +enum input_clock_type {
> +	INPUT_CLK_REAL = 0,
> +	INPUT_CLK_MONO,
> +	INPUT_CLK_BOOT,
> +	INPUT_CLK_MAX
> +};
> +typedef enum input_clock_type input_clk_t;

We typically avoid typedefs unless we really want to hide kind of data
we are dealing with. Let's just use "enum input_clock_type" everywhere.

> +
>  /**
>   * struct input_dev - represents an input device
>   * @name: name of the device
> @@ -114,6 +122,8 @@ struct input_value {
>   * @vals: array of values queued in the current frame
>   * @devres_managed: indicates that devices is managed with devres framework
>   *	and needs not be explicitly unregistered or freed.
> + * @timestamp: storage for a timestamp set by input_set_timestamp called
> + *  by a driver
>   */
>  struct input_dev {
>  	const char *name;
> @@ -184,6 +194,8 @@ struct input_dev {
>  	struct input_value *vals;
>  
>  	bool devres_managed;
> +
> +	ktime_t timestamp[INPUT_CLK_MAX];
>  };
>  #define to_input_dev(d) container_of(d, struct input_dev, dev)
>  
> @@ -382,6 +394,32 @@ void input_close_device(struct input_handle *);
>  
>  int input_flush_device(struct input_handle *handle, struct file *file);
>  
> +/**
> + * input_set_timestamp - set timestamp for input events
> + * @dev: input device to set timestamp for
> + * @timestamp: the time at which the event has occurred
> + *   in CLOCK_MONOTONIC
> + *
> + * This function is intended to provide to the input system a more
> + * accurate time of when an event actually occurred. The driver should
> + * call this function as soon as a timestamp is acquired ensuring
> + * clock conversions in input_set_timestamp are done correctly.
> + *
> + * The system entering a suspend between timestamp acquisition and
> + * calling input_set_timestamp can result in inaccurate conversions.
> + *
> + */
> +static inline void input_set_timestamp(struct input_dev *dev,
> +	ktime_t timestamp)
> +{
> +	dev->timestamp[INPUT_CLK_MONO] = timestamp;
> +	dev->timestamp[INPUT_CLK_REAL] = ktime_mono_to_real(timestamp);
> +	dev->timestamp[INPUT_CLK_BOOT] = ktime_mono_to_any(
> +		timestamp, TK_OFFS_BOOT);
> +}
> +
> +ktime_t *input_get_timestamp(struct input_dev *dev);
> +
>  void input_event(struct input_dev *dev, unsigned int type, unsigned int code, int value);
>  void input_inject_event(struct input_handle *handle, unsigned int type, unsigned int code, int value);
>  
> -- 
> 2.22.0.410.gd8fdbe21b5-goog
> 

-- 
Dmitry

^ permalink raw reply

* [RFC PATCH] Docs: move more driver,device related docs into drivers dir follows kernel source
From: Alex Shi @ 2019-07-12  6:10 UTC (permalink / raw)
  Cc: Alex Shi, linux-pci-u79uwXL29TY76Z2rM5mHXA,
	linux-doc-u79uwXL29TY76Z2rM5mHXA,
	linux-kernel-u79uwXL29TY76Z2rM5mHXA,
	linuxppc-dev-uLR06cmDAlY/bJ5BZ2RsiQ,
	drbd-dev-cunTk1MwBs8qoQakbn7OcQ,
	linux-block-u79uwXL29TY76Z2rM5mHXA, nbd-2H2hN8V1XRtuHlm7Suoebg,
	linux-ide-u79uwXL29TY76Z2rM5mHXA, linux-pm-u79uwXL29TY76Z2rM5mHXA,
	linux-crypto-u79uwXL29TY76Z2rM5mHXA,
	keyrings-u79uwXL29TY76Z2rM5mHXA,
	linux-wireless-u79uwXL29TY76Z2rM5mHXA,
	linux-media-u79uwXL29TY76Z2rM5mHXA,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	linaro-mm-sig-cunTk1MwBs8s++Sfvej+rw,
	dmaengine-u79uwXL29TY76Z2rM5mHXA,
	linux-edac-u79uwXL29TY76Z2rM5mHXA,
	linux-fpga-u79uwXL29TY76Z2rM5mHXA,
	linux-iio-u79uwXL29TY76Z2rM5mHXA,
	linux-gpio-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA,
	linux-s390-u79uwXL29TY76Z2rM5mHXA,
	alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw,
	linux-usb-u79uwXL29TY76Z2rM5mHXA,
	devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b,
	linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r

Could I have a proposal to move the following driver/devices dirs which
under Documentation/ into Documentation/drivers/, follows kernel source

acpi backlight  bus cpu-freq  device-mapper  driver-model gpio  hid
ide leds md memory  mmc nfc nvmem pcmcia scsi sound  watchdog
auxdisplay  blockdev   cdrom  crypto driver-api fpga  gpu
i2c  infiniband  lightnvm  media  misc  mtd  nvdimm  PCI  apidio
serial  usb

More docs and dirs could move into this dir later, that could make
Documenation dir much more clear, and don't cause trouble to find them.

If it's acceptable, we could do docs pointer redirect further.

Signed-off-by: Alex Shi <alex.shi-KPsoFbNs7GizrGE5bRqYAgC/G2K4zDHf@public.gmane.org>
Cc: linux-pci-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linuxppc-dev-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org 
Cc: drbd-dev-cunTk1MwBs8qoQakbn7OcQ@public.gmane.org 
Cc: linux-block-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: nbd-2H2hN8V1XRtuHlm7Suoebg@public.gmane.org 
Cc: linux-ide-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-pm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-crypto-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: keyrings-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-wireless-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org 
Cc: linaro-mm-sig-cunTk1MwBs8s++Sfvej+rw@public.gmane.org 
Cc: dmaengine-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-edac-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-fpga-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-iio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-gpio-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-s390-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: alsa-devel-K7yf7f+aM1XWsZ/bQMPhNw@public.gmane.org 
Cc: linux-usb-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: devel-gWbeCf7V1WCQmaza687I9mD2FQJk+8+b@public.gmane.org 
Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org 
Cc: linux-amlogic-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org 
Cc: linux-tegra-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org 
Cc: xen-devel-GuqFBffKawtpuQazS67q72D2FQJk+8+b@public.gmane.org 
Cc: linux-input-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-leds-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: linux-scsi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
Cc: dc395x-rWtB/k1P5JpAfugRpC6u6w@public.gmane.org 
Cc: esc.storagedev-dzo6w/eZyo2tG0bUXCXiUA@public.gmane.org 
Cc: megaraidlinux.pdl-dY08KVG/lbpWk0Htik3J/w@public.gmane.org 
Cc: osst-users-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org 
Cc: linux-watchdog-u79uwXL29TY76Z2rM5mHXA@public.gmane.org 
---
 Documentation/{ => drivers}/PCI/MSI-HOWTO.txt                     | 0
 Documentation/{ => drivers}/PCI/PCIEBUS-HOWTO.txt                 | 0
 Documentation/{ => drivers}/PCI/acpi-info.txt                     | 0
 .../{ => drivers}/PCI/endpoint/function/binding/pci-test.txt      | 0
 Documentation/{ => drivers}/PCI/endpoint/pci-endpoint-cfs.txt     | 0
 Documentation/{ => drivers}/PCI/endpoint/pci-endpoint.txt         | 0
 Documentation/{ => drivers}/PCI/endpoint/pci-test-function.txt    | 0
 Documentation/{ => drivers}/PCI/endpoint/pci-test-howto.txt       | 0
 Documentation/{ => drivers}/PCI/pci-error-recovery.txt            | 0
 Documentation/{ => drivers}/PCI/pci-iov-howto.txt                 | 0
 Documentation/{ => drivers}/PCI/pci.txt                           | 0
 Documentation/{ => drivers}/PCI/pcieaer-howto.txt                 | 0
 Documentation/{ => drivers}/acpi/dsd/leds.txt                     | 0
 Documentation/{ => drivers}/auxdisplay/cfag12864b                 | 0
 Documentation/{ => drivers}/auxdisplay/ks0108                     | 0
 Documentation/{ => drivers}/auxdisplay/lcd-panel-cgram.txt        | 0
 Documentation/{ => drivers}/backlight/lp855x-driver.txt           | 0
 .../{ => drivers}/blockdev/drbd/DRBD-8.3-data-packets.svg         | 0
 Documentation/{ => drivers}/blockdev/drbd/DRBD-data-packets.svg   | 0
 Documentation/{ => drivers}/blockdev/drbd/README.txt              | 0
 Documentation/{ => drivers}/blockdev/drbd/conn-states-8.dot       | 0
 Documentation/{ => drivers}/blockdev/drbd/data-structure-v9.txt   | 0
 Documentation/{ => drivers}/blockdev/drbd/disk-states-8.dot       | 0
 .../blockdev/drbd/drbd-connection-state-overview.dot              | 0
 Documentation/{ => drivers}/blockdev/drbd/node-states-8.dot       | 0
 Documentation/{ => drivers}/blockdev/floppy.txt                   | 0
 Documentation/{ => drivers}/blockdev/nbd.txt                      | 0
 Documentation/{ => drivers}/blockdev/paride.txt                   | 0
 Documentation/{ => drivers}/blockdev/ramdisk.txt                  | 0
 Documentation/{ => drivers}/blockdev/zram.txt                     | 0
 Documentation/{bus-devices => drivers/bus}/ti-gpmc.txt            | 0
 Documentation/{ => drivers}/cdrom/cdrom-standard.rst              | 0
 Documentation/{ => drivers}/cdrom/ide-cd.rst                      | 0
 Documentation/{ => drivers}/cdrom/index.rst                       | 0
 Documentation/{ => drivers}/cdrom/packet-writing.rst              | 0
 Documentation/{ => drivers}/cpu-freq/amd-powernow.txt             | 0
 Documentation/{ => drivers}/cpu-freq/core.txt                     | 0
 Documentation/{ => drivers}/cpu-freq/cpu-drivers.txt              | 0
 Documentation/{ => drivers}/cpu-freq/cpufreq-nforce2.txt          | 0
 Documentation/{ => drivers}/cpu-freq/cpufreq-stats.txt            | 0
 Documentation/{ => drivers}/cpu-freq/index.txt                    | 0
 Documentation/{ => drivers}/cpu-freq/pcc-cpufreq.txt              | 0
 Documentation/{ => drivers}/crypto/api-aead.rst                   | 0
 Documentation/{ => drivers}/crypto/api-akcipher.rst               | 0
 Documentation/{ => drivers}/crypto/api-digest.rst                 | 0
 Documentation/{ => drivers}/crypto/api-intro.txt                  | 0
 Documentation/{ => drivers}/crypto/api-kpp.rst                    | 0
 Documentation/{ => drivers}/crypto/api-rng.rst                    | 0
 Documentation/{ => drivers}/crypto/api-samples.rst                | 0
 Documentation/{ => drivers}/crypto/api-skcipher.rst               | 0
 Documentation/{ => drivers}/crypto/api.rst                        | 0
 Documentation/{ => drivers}/crypto/architecture.rst               | 0
 Documentation/{ => drivers}/crypto/asymmetric-keys.txt            | 0
 Documentation/{ => drivers}/crypto/async-tx-api.txt               | 0
 Documentation/{ => drivers}/crypto/conf.py                        | 0
 Documentation/{ => drivers}/crypto/crypto_engine.rst              | 0
 Documentation/{ => drivers}/crypto/descore-readme.txt             | 0
 Documentation/{ => drivers}/crypto/devel-algos.rst                | 0
 Documentation/{ => drivers}/crypto/index.rst                      | 0
 Documentation/{ => drivers}/crypto/intro.rst                      | 0
 Documentation/{ => drivers}/crypto/userspace-if.rst               | 0
 Documentation/{ => drivers}/device-mapper/cache-policies.rst      | 0
 Documentation/{ => drivers}/device-mapper/cache.rst               | 0
 Documentation/{ => drivers}/device-mapper/delay.rst               | 0
 Documentation/{ => drivers}/device-mapper/dm-crypt.rst            | 0
 Documentation/{ => drivers}/device-mapper/dm-dust.txt             | 0
 Documentation/{ => drivers}/device-mapper/dm-flakey.rst           | 0
 Documentation/{ => drivers}/device-mapper/dm-init.rst             | 0
 Documentation/{ => drivers}/device-mapper/dm-integrity.rst        | 0
 Documentation/{ => drivers}/device-mapper/dm-io.rst               | 0
 Documentation/{ => drivers}/device-mapper/dm-log.rst              | 0
 Documentation/{ => drivers}/device-mapper/dm-queue-length.rst     | 0
 Documentation/{ => drivers}/device-mapper/dm-raid.rst             | 0
 Documentation/{ => drivers}/device-mapper/dm-service-time.rst     | 0
 Documentation/{ => drivers}/device-mapper/dm-uevent.rst           | 0
 Documentation/{ => drivers}/device-mapper/dm-zoned.rst            | 0
 Documentation/{ => drivers}/device-mapper/era.rst                 | 0
 Documentation/{ => drivers}/device-mapper/index.rst               | 0
 Documentation/{ => drivers}/device-mapper/kcopyd.rst              | 0
 Documentation/{ => drivers}/device-mapper/linear.rst              | 0
 Documentation/{ => drivers}/device-mapper/log-writes.rst          | 0
 Documentation/{ => drivers}/device-mapper/persistent-data.rst     | 0
 Documentation/{ => drivers}/device-mapper/snapshot.rst            | 0
 Documentation/{ => drivers}/device-mapper/statistics.rst          | 0
 Documentation/{ => drivers}/device-mapper/striped.rst             | 0
 Documentation/{ => drivers}/device-mapper/switch.rst              | 0
 Documentation/{ => drivers}/device-mapper/thin-provisioning.rst   | 0
 Documentation/{ => drivers}/device-mapper/unstriped.rst           | 0
 Documentation/{ => drivers}/device-mapper/verity.rst              | 0
 Documentation/{ => drivers}/device-mapper/writecache.rst          | 0
 Documentation/{ => drivers}/device-mapper/zero.rst                | 0
 Documentation/{ => drivers}/driver-api/80211/cfg80211.rst         | 0
 Documentation/{ => drivers}/driver-api/80211/conf.py              | 0
 Documentation/{ => drivers}/driver-api/80211/index.rst            | 0
 Documentation/{ => drivers}/driver-api/80211/introduction.rst     | 0
 .../{ => drivers}/driver-api/80211/mac80211-advanced.rst          | 0
 Documentation/{ => drivers}/driver-api/80211/mac80211.rst         | 0
 Documentation/{ => drivers}/driver-api/acpi/index.rst             | 0
 Documentation/{ => drivers}/driver-api/acpi/linuxized-acpica.rst  | 0
 Documentation/{ => drivers}/driver-api/acpi/scan_handlers.rst     | 0
 Documentation/{ => drivers}/driver-api/basics.rst                 | 0
 Documentation/{ => drivers}/driver-api/clk.rst                    | 0
 Documentation/{ => drivers}/driver-api/component.rst              | 0
 Documentation/{ => drivers}/driver-api/conf.py                    | 0
 Documentation/{ => drivers}/driver-api/device-io.rst              | 0
 Documentation/{ => drivers}/driver-api/device_connection.rst      | 0
 Documentation/{ => drivers}/driver-api/device_link.rst            | 0
 Documentation/{ => drivers}/driver-api/dma-buf.rst                | 0
 Documentation/{ => drivers}/driver-api/dmaengine/client.rst       | 0
 Documentation/{ => drivers}/driver-api/dmaengine/dmatest.rst      | 0
 Documentation/{ => drivers}/driver-api/dmaengine/index.rst        | 0
 Documentation/{ => drivers}/driver-api/dmaengine/provider.rst     | 0
 Documentation/{ => drivers}/driver-api/dmaengine/pxa_dma.rst      | 0
 Documentation/{ => drivers}/driver-api/edac.rst                   | 0
 Documentation/{ => drivers}/driver-api/firewire.rst               | 0
 Documentation/{ => drivers}/driver-api/firmware/built-in-fw.rst   | 0
 Documentation/{ => drivers}/driver-api/firmware/core.rst          | 0
 .../{ => drivers}/driver-api/firmware/direct-fs-lookup.rst        | 0
 .../{ => drivers}/driver-api/firmware/fallback-mechanisms.rst     | 0
 .../{ => drivers}/driver-api/firmware/firmware_cache.rst          | 0
 .../{ => drivers}/driver-api/firmware/fw_search_path.rst          | 0
 Documentation/{ => drivers}/driver-api/firmware/index.rst         | 0
 Documentation/{ => drivers}/driver-api/firmware/introduction.rst  | 0
 Documentation/{ => drivers}/driver-api/firmware/lookup-order.rst  | 0
 .../{ => drivers}/driver-api/firmware/other_interfaces.rst        | 0
 .../{ => drivers}/driver-api/firmware/request_firmware.rst        | 0
 Documentation/{ => drivers}/driver-api/fpga/fpga-bridge.rst       | 0
 Documentation/{ => drivers}/driver-api/fpga/fpga-mgr.rst          | 0
 Documentation/{ => drivers}/driver-api/fpga/fpga-programming.rst  | 0
 Documentation/{ => drivers}/driver-api/fpga/fpga-region.rst       | 0
 Documentation/{ => drivers}/driver-api/fpga/index.rst             | 0
 Documentation/{ => drivers}/driver-api/fpga/intro.rst             | 0
 Documentation/{ => drivers}/driver-api/frame-buffer.rst           | 0
 Documentation/{ => drivers}/driver-api/generic-counter.rst        | 0
 Documentation/{ => drivers}/driver-api/gpio/board.rst             | 0
 Documentation/{ => drivers}/driver-api/gpio/consumer.rst          | 0
 Documentation/{ => drivers}/driver-api/gpio/driver.rst            | 0
 Documentation/{ => drivers}/driver-api/gpio/drivers-on-gpio.rst   | 0
 Documentation/{ => drivers}/driver-api/gpio/index.rst             | 0
 Documentation/{ => drivers}/driver-api/gpio/intro.rst             | 0
 Documentation/{ => drivers}/driver-api/gpio/legacy.rst            | 0
 Documentation/{ => drivers}/driver-api/hsi.rst                    | 0
 Documentation/{ => drivers}/driver-api/i2c.rst                    | 0
 Documentation/{ => drivers}/driver-api/i3c/device-driver-api.rst  | 0
 Documentation/{ => drivers}/driver-api/i3c/index.rst              | 0
 Documentation/{ => drivers}/driver-api/i3c/master-driver-api.rst  | 0
 Documentation/{ => drivers}/driver-api/i3c/protocol.rst           | 0
 Documentation/{ => drivers}/driver-api/iio/buffers.rst            | 0
 Documentation/{ => drivers}/driver-api/iio/core.rst               | 0
 Documentation/{ => drivers}/driver-api/iio/hw-consumer.rst        | 0
 Documentation/{ => drivers}/driver-api/iio/index.rst              | 0
 Documentation/{ => drivers}/driver-api/iio/intro.rst              | 0
 Documentation/{ => drivers}/driver-api/iio/triggered-buffers.rst  | 0
 Documentation/{ => drivers}/driver-api/iio/triggers.rst           | 0
 Documentation/{ => drivers}/driver-api/index.rst                  | 0
 Documentation/{ => drivers}/driver-api/infrastructure.rst         | 0
 Documentation/{ => drivers}/driver-api/input.rst                  | 0
 Documentation/{ => drivers}/driver-api/libata.rst                 | 0
 Documentation/{ => drivers}/driver-api/message-based.rst          | 0
 Documentation/{ => drivers}/driver-api/misc_devices.rst           | 0
 Documentation/{ => drivers}/driver-api/miscellaneous.rst          | 0
 Documentation/{ => drivers}/driver-api/mtdnand.rst                | 0
 Documentation/{ => drivers}/driver-api/pci/index.rst              | 0
 Documentation/{ => drivers}/driver-api/pci/p2pdma.rst             | 0
 Documentation/{ => drivers}/driver-api/pci/pci.rst                | 0
 Documentation/{ => drivers}/driver-api/pinctl.rst                 | 0
 Documentation/{ => drivers}/driver-api/pm/conf.py                 | 0
 Documentation/{ => drivers}/driver-api/pm/cpuidle.rst             | 0
 Documentation/{ => drivers}/driver-api/pm/devices.rst             | 0
 Documentation/{ => drivers}/driver-api/pm/index.rst               | 0
 Documentation/{ => drivers}/driver-api/pm/notifiers.rst           | 0
 Documentation/{ => drivers}/driver-api/pm/types.rst               | 0
 Documentation/{ => drivers}/driver-api/pps.rst                    | 0
 Documentation/{ => drivers}/driver-api/ptp.rst                    | 0
 Documentation/{ => drivers}/driver-api/rapidio.rst                | 0
 Documentation/{ => drivers}/driver-api/regulator.rst              | 0
 Documentation/{ => drivers}/driver-api/s390-drivers.rst           | 0
 Documentation/{ => drivers}/driver-api/scsi.rst                   | 0
 Documentation/{ => drivers}/driver-api/slimbus.rst                | 0
 Documentation/{ => drivers}/driver-api/sound.rst                  | 0
 .../{ => drivers}/driver-api/soundwire/error_handling.rst         | 0
 Documentation/{ => drivers}/driver-api/soundwire/index.rst        | 0
 Documentation/{ => drivers}/driver-api/soundwire/locking.rst      | 0
 Documentation/{ => drivers}/driver-api/soundwire/stream.rst       | 0
 Documentation/{ => drivers}/driver-api/soundwire/summary.rst      | 0
 Documentation/{ => drivers}/driver-api/spi.rst                    | 0
 Documentation/{ => drivers}/driver-api/target.rst                 | 0
 Documentation/{ => drivers}/driver-api/uio-howto.rst              | 0
 Documentation/{ => drivers}/driver-api/usb/URB.rst                | 0
 Documentation/{ => drivers}/driver-api/usb/anchors.rst            | 0
 Documentation/{ => drivers}/driver-api/usb/bulk-streams.rst       | 0
 Documentation/{ => drivers}/driver-api/usb/callbacks.rst          | 0
 Documentation/{ => drivers}/driver-api/usb/dma.rst                | 0
 Documentation/{ => drivers}/driver-api/usb/dwc3.rst               | 0
 Documentation/{ => drivers}/driver-api/usb/error-codes.rst        | 0
 Documentation/{ => drivers}/driver-api/usb/gadget.rst             | 0
 Documentation/{ => drivers}/driver-api/usb/hotplug.rst            | 0
 Documentation/{ => drivers}/driver-api/usb/index.rst              | 0
 Documentation/{ => drivers}/driver-api/usb/persist.rst            | 0
 Documentation/{ => drivers}/driver-api/usb/power-management.rst   | 0
 Documentation/{ => drivers}/driver-api/usb/typec.rst              | 0
 Documentation/{ => drivers}/driver-api/usb/typec_bus.rst          | 0
 Documentation/{ => drivers}/driver-api/usb/usb.rst                | 0
 Documentation/{ => drivers}/driver-api/usb/usb3-debug-port.rst    | 0
 .../{ => drivers}/driver-api/usb/writing_musb_glue_layer.rst      | 0
 Documentation/{ => drivers}/driver-api/usb/writing_usb_driver.rst | 0
 Documentation/{ => drivers}/driver-api/vme.rst                    | 0
 Documentation/{ => drivers}/driver-api/w1.rst                     | 0
 Documentation/{ => drivers}/driver-model/binding.txt              | 0
 Documentation/{ => drivers}/driver-model/bus.txt                  | 0
 Documentation/{ => drivers}/driver-model/class.txt                | 0
 Documentation/{ => drivers}/driver-model/design-patterns.txt      | 0
 Documentation/{ => drivers}/driver-model/device.txt               | 0
 Documentation/{ => drivers}/driver-model/devres.txt               | 0
 Documentation/{ => drivers}/driver-model/driver.txt               | 0
 Documentation/{ => drivers}/driver-model/overview.txt             | 0
 Documentation/{ => drivers}/driver-model/platform.txt             | 0
 Documentation/{ => drivers}/driver-model/porting.txt              | 0
 Documentation/{ => drivers}/fpga/dfl.rst                          | 0
 Documentation/{ => drivers}/fpga/index.rst                        | 0
 Documentation/{ => drivers}/gpio/index.rst                        | 0
 Documentation/{ => drivers}/gpio/sysfs.rst                        | 0
 Documentation/{ => drivers}/gpu/afbc.rst                          | 0
 Documentation/{ => drivers}/gpu/amdgpu-dc.rst                     | 0
 Documentation/{ => drivers}/gpu/amdgpu.rst                        | 0
 Documentation/{ => drivers}/gpu/bridge/dw-hdmi.rst                | 0
 Documentation/{ => drivers}/gpu/conf.py                           | 0
 Documentation/{ => drivers}/gpu/dp-mst/topology-figure-1.dot      | 0
 Documentation/{ => drivers}/gpu/dp-mst/topology-figure-2.dot      | 0
 Documentation/{ => drivers}/gpu/dp-mst/topology-figure-3.dot      | 0
 Documentation/{ => drivers}/gpu/drivers.rst                       | 0
 Documentation/{ => drivers}/gpu/drm-client.rst                    | 0
 Documentation/{ => drivers}/gpu/drm-internals.rst                 | 0
 Documentation/{ => drivers}/gpu/drm-kms-helpers.rst               | 0
 Documentation/{ => drivers}/gpu/drm-kms.rst                       | 0
 Documentation/{ => drivers}/gpu/drm-mm.rst                        | 0
 Documentation/{ => drivers}/gpu/drm-uapi.rst                      | 0
 Documentation/{ => drivers}/gpu/i915.rst                          | 0
 Documentation/{ => drivers}/gpu/index.rst                         | 0
 Documentation/{ => drivers}/gpu/introduction.rst                  | 0
 Documentation/{ => drivers}/gpu/kms-properties.csv                | 0
 Documentation/{ => drivers}/gpu/komeda-kms.rst                    | 0
 Documentation/{ => drivers}/gpu/meson.rst                         | 0
 Documentation/{ => drivers}/gpu/msm-crash-dump.rst                | 0
 Documentation/{ => drivers}/gpu/pl111.rst                         | 0
 Documentation/{ => drivers}/gpu/tegra.rst                         | 0
 Documentation/{ => drivers}/gpu/tinydrm.rst                       | 0
 Documentation/{ => drivers}/gpu/todo.rst                          | 0
 Documentation/{ => drivers}/gpu/tve200.rst                        | 0
 Documentation/{ => drivers}/gpu/v3d.rst                           | 0
 Documentation/{ => drivers}/gpu/vc4.rst                           | 0
 Documentation/{ => drivers}/gpu/vga-switcheroo.rst                | 0
 Documentation/{ => drivers}/gpu/vgaarbiter.rst                    | 0
 Documentation/{ => drivers}/gpu/vkms.rst                          | 0
 Documentation/{ => drivers}/gpu/xen-front.rst                     | 0
 Documentation/{ => drivers}/hid/hid-alps.txt                      | 0
 Documentation/{ => drivers}/hid/hid-sensor.txt                    | 0
 Documentation/{ => drivers}/hid/hid-transport.txt                 | 0
 Documentation/{ => drivers}/hid/hiddev.txt                        | 0
 Documentation/{ => drivers}/hid/hidraw.txt                        | 0
 Documentation/{ => drivers}/hid/intel-ish-hid.txt                 | 0
 Documentation/{ => drivers}/hid/uhid.txt                          | 0
 Documentation/{ => drivers}/i2c/DMA-considerations                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-ali1535                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-ali1563                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-ali15x3                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-amd-mp2                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-amd756                 | 0
 Documentation/{ => drivers}/i2c/busses/i2c-amd8111                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-diolan-u2c             | 0
 Documentation/{ => drivers}/i2c/busses/i2c-i801                   | 0
 Documentation/{ => drivers}/i2c/busses/i2c-ismt                   | 0
 Documentation/{ => drivers}/i2c/busses/i2c-mlxcpld                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-nforce2                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-nvidia-gpu             | 0
 Documentation/{ => drivers}/i2c/busses/i2c-ocores                 | 0
 Documentation/{ => drivers}/i2c/busses/i2c-parport                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-parport-light          | 0
 Documentation/{ => drivers}/i2c/busses/i2c-pca-isa                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-piix4                  | 0
 Documentation/{ => drivers}/i2c/busses/i2c-sis5595                | 0
 Documentation/{ => drivers}/i2c/busses/i2c-sis630                 | 0
 Documentation/{ => drivers}/i2c/busses/i2c-sis96x                 | 0
 Documentation/{ => drivers}/i2c/busses/i2c-taos-evm               | 0
 Documentation/{ => drivers}/i2c/busses/i2c-via                    | 0
 Documentation/{ => drivers}/i2c/busses/i2c-viapro                 | 0
 Documentation/{ => drivers}/i2c/busses/scx200_acb                 | 0
 Documentation/{ => drivers}/i2c/dev-interface                     | 0
 Documentation/{ => drivers}/i2c/fault-codes                       | 0
 Documentation/{ => drivers}/i2c/functionality                     | 0
 Documentation/{ => drivers}/i2c/gpio-fault-injection              | 0
 Documentation/{ => drivers}/i2c/i2c-protocol                      | 0
 Documentation/{ => drivers}/i2c/i2c-stub                          | 0
 Documentation/{ => drivers}/i2c/i2c-topology                      | 0
 Documentation/{ => drivers}/i2c/instantiating-devices             | 0
 Documentation/{ => drivers}/i2c/muxes/i2c-mux-gpio                | 0
 Documentation/{ => drivers}/i2c/old-module-parameters             | 0
 Documentation/{ => drivers}/i2c/slave-eeprom-backend              | 0
 Documentation/{ => drivers}/i2c/slave-interface                   | 0
 Documentation/{ => drivers}/i2c/smbus-protocol                    | 0
 Documentation/{ => drivers}/i2c/summary                           | 0
 Documentation/{ => drivers}/i2c/ten-bit-addresses                 | 0
 Documentation/{ => drivers}/i2c/upgrading-clients                 | 0
 Documentation/{ => drivers}/i2c/writing-clients                   | 0
 Documentation/{ => drivers}/ide/ChangeLog.ide-cd.1994-2004        | 0
 Documentation/{ => drivers}/ide/ChangeLog.ide-floppy.1996-2002    | 0
 Documentation/{ => drivers}/ide/ChangeLog.ide-tape.1995-2002      | 0
 Documentation/{ => drivers}/ide/changelogs.rst                    | 0
 Documentation/{ => drivers}/ide/ide-tape.rst                      | 0
 Documentation/{ => drivers}/ide/ide.rst                           | 0
 Documentation/{ => drivers}/ide/index.rst                         | 0
 Documentation/{ => drivers}/ide/warm-plug-howto.rst               | 0
 Documentation/{ => drivers}/infiniband/core_locking.txt           | 0
 Documentation/{ => drivers}/infiniband/ipoib.txt                  | 0
 Documentation/{ => drivers}/infiniband/opa_vnic.txt               | 0
 Documentation/{ => drivers}/infiniband/sysfs.txt                  | 0
 Documentation/{ => drivers}/infiniband/tag_matching.txt           | 0
 Documentation/{ => drivers}/infiniband/user_mad.txt               | 0
 Documentation/{ => drivers}/infiniband/user_verbs.txt             | 0
 Documentation/{ => drivers}/leds/index.rst                        | 0
 Documentation/{ => drivers}/leds/leds-blinkm.rst                  | 0
 Documentation/{ => drivers}/leds/leds-class-flash.rst             | 0
 Documentation/{ => drivers}/leds/leds-class.rst                   | 0
 Documentation/{ => drivers}/leds/leds-lm3556.rst                  | 0
 Documentation/{ => drivers}/leds/leds-lp3944.rst                  | 0
 Documentation/{ => drivers}/leds/leds-lp5521.rst                  | 0
 Documentation/{ => drivers}/leds/leds-lp5523.rst                  | 0
 Documentation/{ => drivers}/leds/leds-lp5562.rst                  | 0
 Documentation/{ => drivers}/leds/leds-lp55xx.rst                  | 0
 Documentation/{ => drivers}/leds/leds-mlxcpld.rst                 | 0
 Documentation/{ => drivers}/leds/ledtrig-oneshot.rst              | 0
 Documentation/{ => drivers}/leds/ledtrig-transient.rst            | 0
 Documentation/{ => drivers}/leds/ledtrig-usbport.rst              | 0
 Documentation/{ => drivers}/leds/uleds.rst                        | 0
 Documentation/{ => drivers}/lightnvm/pblk.txt                     | 0
 Documentation/{ => drivers}/md/md-cluster.txt                     | 0
 Documentation/{ => drivers}/md/raid5-cache.txt                    | 0
 Documentation/{ => drivers}/md/raid5-ppl.txt                      | 0
 Documentation/{ => drivers}/media/.gitignore                      | 0
 Documentation/{ => drivers}/media/Makefile                        | 0
 Documentation/{ => drivers}/media/audio.h.rst.exceptions          | 0
 Documentation/{ => drivers}/media/ca.h.rst.exceptions             | 0
 Documentation/{ => drivers}/media/cec-drivers/index.rst           | 0
 Documentation/{ => drivers}/media/cec-drivers/pulse8-cec.rst      | 0
 Documentation/{ => drivers}/media/cec.h.rst.exceptions            | 0
 Documentation/{ => drivers}/media/conf.py                         | 0
 Documentation/{ => drivers}/media/conf_nitpick.py                 | 0
 Documentation/{ => drivers}/media/dmx.h.rst.exceptions            | 0
 Documentation/{ => drivers}/media/dvb-drivers/avermedia.rst       | 0
 Documentation/{ => drivers}/media/dvb-drivers/bt8xx.rst           | 0
 Documentation/{ => drivers}/media/dvb-drivers/cards.rst           | 0
 Documentation/{ => drivers}/media/dvb-drivers/ci.rst              | 0
 Documentation/{ => drivers}/media/dvb-drivers/contributors.rst    | 0
 Documentation/{ => drivers}/media/dvb-drivers/dvb-usb.rst         | 0
 Documentation/{ => drivers}/media/dvb-drivers/faq.rst             | 0
 Documentation/{ => drivers}/media/dvb-drivers/frontends.rst       | 0
 Documentation/{ => drivers}/media/dvb-drivers/index.rst           | 0
 Documentation/{ => drivers}/media/dvb-drivers/intro.rst           | 0
 Documentation/{ => drivers}/media/dvb-drivers/lmedm04.rst         | 0
 Documentation/{ => drivers}/media/dvb-drivers/opera-firmware.rst  | 0
 Documentation/{ => drivers}/media/dvb-drivers/technisat.rst       | 0
 Documentation/{ => drivers}/media/dvb-drivers/ttusb-dec.rst       | 0
 Documentation/{ => drivers}/media/dvb-drivers/udev.rst            | 0
 Documentation/{ => drivers}/media/frontend.h.rst.exceptions       | 0
 Documentation/{ => drivers}/media/index.rst                       | 0
 Documentation/{ => drivers}/media/intro.rst                       | 0
 Documentation/{ => drivers}/media/kapi/cec-core.rst               | 0
 Documentation/{ => drivers}/media/kapi/csi2.rst                   | 0
 Documentation/{ => drivers}/media/kapi/dtv-ca.rst                 | 0
 Documentation/{ => drivers}/media/kapi/dtv-common.rst             | 0
 Documentation/{ => drivers}/media/kapi/dtv-core.rst               | 0
 Documentation/{ => drivers}/media/kapi/dtv-demux.rst              | 0
 Documentation/{ => drivers}/media/kapi/dtv-frontend.rst           | 0
 Documentation/{ => drivers}/media/kapi/dtv-net.rst                | 0
 Documentation/{ => drivers}/media/kapi/mc-core.rst                | 0
 Documentation/{ => drivers}/media/kapi/rc-core.rst                | 0
 Documentation/{ => drivers}/media/kapi/v4l2-async.rst             | 0
 Documentation/{ => drivers}/media/kapi/v4l2-clocks.rst            | 0
 Documentation/{ => drivers}/media/kapi/v4l2-common.rst            | 0
 Documentation/{ => drivers}/media/kapi/v4l2-controls.rst          | 0
 Documentation/{ => drivers}/media/kapi/v4l2-core.rst              | 0
 Documentation/{ => drivers}/media/kapi/v4l2-dev.rst               | 0
 Documentation/{ => drivers}/media/kapi/v4l2-device.rst            | 0
 Documentation/{ => drivers}/media/kapi/v4l2-dv-timings.rst        | 0
 Documentation/{ => drivers}/media/kapi/v4l2-event.rst             | 0
 Documentation/{ => drivers}/media/kapi/v4l2-fh.rst                | 0
 Documentation/{ => drivers}/media/kapi/v4l2-flash-led-class.rst   | 0
 Documentation/{ => drivers}/media/kapi/v4l2-fwnode.rst            | 0
 Documentation/{ => drivers}/media/kapi/v4l2-intro.rst             | 0
 Documentation/{ => drivers}/media/kapi/v4l2-mc.rst                | 0
 Documentation/{ => drivers}/media/kapi/v4l2-mediabus.rst          | 0
 Documentation/{ => drivers}/media/kapi/v4l2-mem2mem.rst           | 0
 Documentation/{ => drivers}/media/kapi/v4l2-rect.rst              | 0
 Documentation/{ => drivers}/media/kapi/v4l2-subdev.rst            | 0
 Documentation/{ => drivers}/media/kapi/v4l2-tuner.rst             | 0
 Documentation/{ => drivers}/media/kapi/v4l2-tveeprom.rst          | 0
 Documentation/{ => drivers}/media/kapi/v4l2-videobuf.rst          | 0
 Documentation/{ => drivers}/media/kapi/v4l2-videobuf2.rst         | 0
 Documentation/{ => drivers}/media/lirc.h.rst.exceptions           | 0
 Documentation/{ => drivers}/media/media.h.rst.exceptions          | 0
 Documentation/{ => drivers}/media/media_kapi.rst                  | 0
 Documentation/{ => drivers}/media/media_uapi.rst                  | 0
 Documentation/{ => drivers}/media/net.h.rst.exceptions            | 0
 Documentation/{ => drivers}/media/typical_media_device.svg        | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-api.rst            | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-func-close.rst     | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-func-ioctl.rst     | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-func-open.rst      | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-func-poll.rst      | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-funcs.rst          | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-header.rst         | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-intro.rst          | 0
 .../{ => drivers}/media/uapi/cec/cec-ioc-adap-g-caps.rst          | 0
 .../{ => drivers}/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst     | 0
 .../{ => drivers}/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst     | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-ioc-dqevent.rst    | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-ioc-g-mode.rst     | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-ioc-receive.rst    | 0
 Documentation/{ => drivers}/media/uapi/cec/cec-pin-error-inj.rst  | 0
 .../media/uapi/dvb/audio-bilingual-channel-select.rst             | 0
 .../{ => drivers}/media/uapi/dvb/audio-channel-select.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-clear-buffer.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-continue.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-fclose.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-fopen.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-fwrite.rst       | 0
 .../{ => drivers}/media/uapi/dvb/audio-get-capabilities.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-get-status.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-pause.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-play.rst         | 0
 .../{ => drivers}/media/uapi/dvb/audio-select-source.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-set-av-sync.rst  | 0
 .../{ => drivers}/media/uapi/dvb/audio-set-bypass-mode.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-set-id.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-set-mixer.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-set-mute.rst     | 0
 .../{ => drivers}/media/uapi/dvb/audio-set-streamtype.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio-stop.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio.rst              | 0
 Documentation/{ => drivers}/media/uapi/dvb/audio_data_types.rst   | 0
 .../{ => drivers}/media/uapi/dvb/audio_function_calls.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-fclose.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-fopen.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-get-cap.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-get-descr-info.rst  | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-get-msg.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-get-slot-info.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-reset.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-send-msg.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca-set-descr.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca.rst                 | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca_data_types.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/ca_function_calls.rst  | 0
 Documentation/{ => drivers}/media/uapi/dvb/demux.rst              | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-add-pid.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-expbuf.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-fclose.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-fopen.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-fread.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-fwrite.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-get-pes-pids.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-get-stc.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-mmap.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-munmap.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-qbuf.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-querybuf.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-remove-pid.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-reqbufs.rst        | 0
 .../{ => drivers}/media/uapi/dvb/dmx-set-buffer-size.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-set-filter.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-set-pes-filter.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-start.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx-stop.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx_fcalls.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/dmx_types.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/dvb-fe-read-status.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/dvb-frontend-event.rst | 0
 .../{ => drivers}/media/uapi/dvb/dvb-frontend-parameters.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/dvbapi.rst             | 0
 Documentation/{ => drivers}/media/uapi/dvb/dvbproperty.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/dvbstb.svg             | 0
 Documentation/{ => drivers}/media/uapi/dvb/examples.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-bandwidth-t.rst     | 0
 .../{ => drivers}/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst   | 0
 .../{ => drivers}/media/uapi/dvb/fe-diseqc-reset-overload.rst     | 0
 .../{ => drivers}/media/uapi/dvb/fe-diseqc-send-burst.rst         | 0
 .../{ => drivers}/media/uapi/dvb/fe-diseqc-send-master-cmd.rst    | 0
 .../media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst             | 0
 .../{ => drivers}/media/uapi/dvb/fe-enable-high-lnb-voltage.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-get-event.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-get-frontend.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-get-info.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-get-property.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-read-ber.rst        | 0
 .../{ => drivers}/media/uapi/dvb/fe-read-signal-strength.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-read-snr.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-read-status.rst     | 0
 .../{ => drivers}/media/uapi/dvb/fe-read-uncorrected-blocks.rst   | 0
 .../{ => drivers}/media/uapi/dvb/fe-set-frontend-tune-mode.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-set-frontend.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-set-tone.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-set-voltage.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/fe-type-t.rst          | 0
 .../{ => drivers}/media/uapi/dvb/fe_property_parameters.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/frontend-header.rst    | 0
 .../media/uapi/dvb/frontend-property-cable-systems.rst            | 0
 .../media/uapi/dvb/frontend-property-satellite-systems.rst        | 0
 .../media/uapi/dvb/frontend-property-terrestrial-systems.rst      | 0
 .../{ => drivers}/media/uapi/dvb/frontend-stat-properties.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/frontend.rst           | 0
 Documentation/{ => drivers}/media/uapi/dvb/frontend_f_close.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/frontend_f_open.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/frontend_fcalls.rst    | 0
 .../{ => drivers}/media/uapi/dvb/frontend_legacy_api.rst          | 0
 .../{ => drivers}/media/uapi/dvb/frontend_legacy_dvbv3_api.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/headers.rst            | 0
 Documentation/{ => drivers}/media/uapi/dvb/intro.rst              | 0
 Documentation/{ => drivers}/media/uapi/dvb/legacy_dvb_apis.rst    | 0
 Documentation/{ => drivers}/media/uapi/dvb/net-add-if.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/net-get-if.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/net-remove-if.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/net-types.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/net.rst                | 0
 .../{ => drivers}/media/uapi/dvb/query-dvb-frontend-info.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-clear-buffer.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-command.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-continue.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-fast-forward.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-fclose.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-fopen.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-freeze.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-fwrite.rst       | 0
 .../{ => drivers}/media/uapi/dvb/video-get-capabilities.rst       | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-get-event.rst    | 0
 .../{ => drivers}/media/uapi/dvb/video-get-frame-count.rst        | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-get-pts.rst      | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-get-size.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-get-status.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-play.rst         | 0
 .../{ => drivers}/media/uapi/dvb/video-select-source.rst          | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-set-blank.rst    | 0
 .../{ => drivers}/media/uapi/dvb/video-set-display-format.rst     | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-set-format.rst   | 0
 .../{ => drivers}/media/uapi/dvb/video-set-streamtype.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-slowmotion.rst   | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-stillpicture.rst | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-stop.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/video-try-command.rst  | 0
 Documentation/{ => drivers}/media/uapi/dvb/video.rst              | 0
 .../{ => drivers}/media/uapi/dvb/video_function_calls.rst         | 0
 Documentation/{ => drivers}/media/uapi/dvb/video_types.rst        | 0
 Documentation/{ => drivers}/media/uapi/fdl-appendix.rst           | 0
 Documentation/{ => drivers}/media/uapi/gen-errors.rst             | 0
 .../{ => drivers}/media/uapi/mediactl/media-controller-intro.rst  | 0
 .../{ => drivers}/media/uapi/mediactl/media-controller-model.rst  | 0
 .../{ => drivers}/media/uapi/mediactl/media-controller.rst        | 0
 .../{ => drivers}/media/uapi/mediactl/media-func-close.rst        | 0
 .../{ => drivers}/media/uapi/mediactl/media-func-ioctl.rst        | 0
 .../{ => drivers}/media/uapi/mediactl/media-func-open.rst         | 0
 Documentation/{ => drivers}/media/uapi/mediactl/media-funcs.rst   | 0
 Documentation/{ => drivers}/media/uapi/mediactl/media-header.rst  | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-device-info.rst   | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-enum-entities.rst | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-enum-links.rst    | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-g-topology.rst    | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-request-alloc.rst | 0
 .../{ => drivers}/media/uapi/mediactl/media-ioc-setup-link.rst    | 0
 .../{ => drivers}/media/uapi/mediactl/media-request-ioc-queue.rst | 0
 .../media/uapi/mediactl/media-request-ioc-reinit.rst              | 0
 Documentation/{ => drivers}/media/uapi/mediactl/media-types.rst   | 0
 Documentation/{ => drivers}/media/uapi/mediactl/request-api.rst   | 0
 .../{ => drivers}/media/uapi/mediactl/request-func-close.rst      | 0
 .../{ => drivers}/media/uapi/mediactl/request-func-ioctl.rst      | 0
 .../{ => drivers}/media/uapi/mediactl/request-func-poll.rst       | 0
 Documentation/{ => drivers}/media/uapi/rc/keytable.c.rst          | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-dev-intro.rst      | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-dev.rst            | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-func.rst           | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-get-features.rst   | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-get-rec-mode.rst   | 0
 .../{ => drivers}/media/uapi/rc/lirc-get-rec-resolution.rst       | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-get-send-mode.rst  | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-get-timeout.rst    | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-header.rst         | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-read.rst           | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-measure-carrier-mode.rst | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-rec-carrier-range.rst    | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-rec-carrier.rst          | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-rec-timeout-reports.rst  | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-rec-timeout.rst          | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-send-carrier.rst         | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-send-duty-cycle.rst      | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-transmitter-mask.rst     | 0
 .../{ => drivers}/media/uapi/rc/lirc-set-wideband-receiver.rst    | 0
 Documentation/{ => drivers}/media/uapi/rc/lirc-write.rst          | 0
 Documentation/{ => drivers}/media/uapi/rc/rc-intro.rst            | 0
 Documentation/{ => drivers}/media/uapi/rc/rc-sysfs-nodes.rst      | 0
 Documentation/{ => drivers}/media/uapi/rc/rc-table-change.rst     | 0
 Documentation/{ => drivers}/media/uapi/rc/rc-tables.rst           | 0
 Documentation/{ => drivers}/media/uapi/rc/remote_controllers.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/app-pri.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/async.rst              | 0
 Documentation/{ => drivers}/media/uapi/v4l/audio.rst              | 0
 Documentation/{ => drivers}/media/uapi/v4l/bayer.svg              | 0
 Documentation/{ => drivers}/media/uapi/v4l/biblio.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/buffer.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/capture-example.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/capture.c.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/colorspaces-defs.rst   | 0
 .../{ => drivers}/media/uapi/v4l/colorspaces-details.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/colorspaces.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/common-defs.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/common.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/compat.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/constraints.svg        | 0
 Documentation/{ => drivers}/media/uapi/v4l/control.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/crop.rst               | 0
 Documentation/{ => drivers}/media/uapi/v4l/crop.svg               | 0
 Documentation/{ => drivers}/media/uapi/v4l/depth-formats.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-capture.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-event.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-mem2mem.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-meta.rst           | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-osd.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-output.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-overlay.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-radio.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-raw-vbi.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-rds.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-sdr.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-sliced-vbi.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-subdev.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/dev-touch.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/devices.rst            | 0
 Documentation/{ => drivers}/media/uapi/v4l/diff-v4l.rst           | 0
 Documentation/{ => drivers}/media/uapi/v4l/dmabuf.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/dv-timings.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-camera.rst   | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-codec.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-detect.rst   | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-dv.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-flash.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-fm-rx.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-fm-tx.rst    | 0
 .../{ => drivers}/media/uapi/v4l/ext-ctrls-image-process.rst      | 0
 .../{ => drivers}/media/uapi/v4l/ext-ctrls-image-source.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-jpeg.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-rf-tuner.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/extended-controls.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/field-order.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/fieldseq_bt.svg        | 0
 Documentation/{ => drivers}/media/uapi/v4l/fieldseq_tb.svg        | 0
 Documentation/{ => drivers}/media/uapi/v4l/format.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-close.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-ioctl.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-mmap.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-munmap.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-open.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-poll.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-read.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-select.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/func-write.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/hist-v4l2.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/hsv-formats.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/io.rst                 | 0
 .../{ => drivers}/media/uapi/v4l/libv4l-introduction.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/libv4l.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/meta-formats.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/mmap.rst               | 0
 Documentation/{ => drivers}/media/uapi/v4l/nv12mt.svg             | 0
 Documentation/{ => drivers}/media/uapi/v4l/nv12mt_example.svg     | 0
 Documentation/{ => drivers}/media/uapi/v4l/open.rst               | 0
 Documentation/{ => drivers}/media/uapi/v4l/pipeline.dot           | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-cnf4.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-compressed.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-grey.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-indexed.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-intro.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-inzi.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-m420.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-d4xx.rst   | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-uvc.rst    | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst         | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12m.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12mt.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv16.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv16m.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv24.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-hsv.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-rgb.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-yuv.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-reserved.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-rgb.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cs08.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cs14le.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cu08.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cu16le.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu16be.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu18be.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu20be.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-ru12le.rst  | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-srggb10-ipu3.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10.rst     | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-srggb10alaw8.rst          | 0
 .../{ => drivers}/media/uapi/v4l/pixfmt-srggb10dpcm8.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10p.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb12.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb12p.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb14p.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb16.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb8.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-td08.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-td16.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-tu08.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-tu16.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-uv8.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-uyvy.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-v4l2-mplane.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-v4l2.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-vyuy.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10b.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10p.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y12.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y12i.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y16-be.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y16.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y41p.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y8i.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv410.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv411p.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv420.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv420m.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv422m.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv422p.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv444m.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuyv.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yvyu.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt-z16.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/pixfmt.rst             | 0
 Documentation/{ => drivers}/media/uapi/v4l/planar-apis.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/querycap.rst           | 0
 Documentation/{ => drivers}/media/uapi/v4l/rw.rst                 | 0
 Documentation/{ => drivers}/media/uapi/v4l/sdr-formats.rst        | 0
 .../{ => drivers}/media/uapi/v4l/selection-api-configuration.rst  | 0
 .../{ => drivers}/media/uapi/v4l/selection-api-examples.rst       | 0
 .../{ => drivers}/media/uapi/v4l/selection-api-intro.rst          | 0
 .../{ => drivers}/media/uapi/v4l/selection-api-targets.rst        | 0
 .../{ => drivers}/media/uapi/v4l/selection-api-vs-crop-api.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/selection-api.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/selection.svg          | 0
 Documentation/{ => drivers}/media/uapi/v4l/selections-common.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/standard.rst           | 0
 Documentation/{ => drivers}/media/uapi/v4l/streaming-par.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/subdev-formats.rst     | 0
 .../{ => drivers}/media/uapi/v4l/subdev-image-processing-crop.svg | 0
 .../{ => drivers}/media/uapi/v4l/subdev-image-processing-full.svg | 0
 .../uapi/v4l/subdev-image-processing-scaling-multi-source.svg     | 0
 Documentation/{ => drivers}/media/uapi/v4l/tch-formats.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/tuner.rst              | 0
 Documentation/{ => drivers}/media/uapi/v4l/user-func.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/userp.rst              | 0
 .../{ => drivers}/media/uapi/v4l/v4l2-selection-flags.rst         | 0
 .../{ => drivers}/media/uapi/v4l/v4l2-selection-targets.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/v4l2.rst               | 0
 Documentation/{ => drivers}/media/uapi/v4l/v4l2grab-example.rst   | 0
 Documentation/{ => drivers}/media/uapi/v4l/v4l2grab.c.rst         | 0
 Documentation/{ => drivers}/media/uapi/v4l/vbi_525.svg            | 0
 Documentation/{ => drivers}/media/uapi/v4l/vbi_625.svg            | 0
 Documentation/{ => drivers}/media/uapi/v4l/vbi_hsync.svg          | 0
 Documentation/{ => drivers}/media/uapi/v4l/video.rst              | 0
 Documentation/{ => drivers}/media/uapi/v4l/videodev.rst           | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-create-bufs.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-cropcap.rst     | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-dbg-g-chip-info.rst       | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-dbg-g-register.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-decoder-cmd.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-dqevent.rst     | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-dv-timings-cap.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-encoder-cmd.rst | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-enum-dv-timings.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-fmt.rst    | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-enum-frameintervals.rst   | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-enum-framesizes.rst       | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-enum-freq-bands.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumaudio.rst   | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-enumaudioout.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-enuminput.rst   | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumoutput.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumstd.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-expbuf.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-audio.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-audioout.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-crop.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-ctrl.rst      | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-g-dv-timings.rst          | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-edid.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-enc-index.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-ext-ctrls.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-fbuf.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-fmt.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-frequency.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-input.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-jpegcomp.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-modulator.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-output.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-parm.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-priority.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-selection.rst | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-std.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-tuner.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-log-status.rst  | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-overlay.rst     | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-prepare-buf.rst | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-qbuf.rst        | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-query-dv-timings.rst      | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-querybuf.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-querycap.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-queryctrl.rst   | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-querystd.rst    | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-reqbufs.rst     | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-s-hw-freq-seek.rst        | 0
 Documentation/{ => drivers}/media/uapi/v4l/vidioc-streamon.rst    | 0
 .../media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst          | 0
 .../media/uapi/v4l/vidioc-subdev-enum-frame-size.rst              | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-subdev-g-crop.rst         | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-subdev-g-fmt.rst          | 0
 .../media/uapi/v4l/vidioc-subdev-g-frame-interval.rst             | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-subdev-g-selection.rst    | 0
 .../{ => drivers}/media/uapi/v4l/vidioc-subscribe-event.rst       | 0
 Documentation/{ => drivers}/media/uapi/v4l/yuv-formats.rst        | 0
 Documentation/{ => drivers}/media/v4l-drivers/au0828-cardlist.rst | 0
 Documentation/{ => drivers}/media/v4l-drivers/bttv-cardlist.rst   | 0
 Documentation/{ => drivers}/media/v4l-drivers/bttv.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/cafe_ccic.rst       | 0
 Documentation/{ => drivers}/media/v4l-drivers/cardlist.rst        | 0
 Documentation/{ => drivers}/media/v4l-drivers/cpia2.rst           | 0
 Documentation/{ => drivers}/media/v4l-drivers/cx18.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/cx2341x.rst         | 0
 .../{ => drivers}/media/v4l-drivers/cx23885-cardlist.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/cx88-cardlist.rst   | 0
 Documentation/{ => drivers}/media/v4l-drivers/cx88.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/davinci-vpbe.rst    | 0
 Documentation/{ => drivers}/media/v4l-drivers/em28xx-cardlist.rst | 0
 Documentation/{ => drivers}/media/v4l-drivers/fimc.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/fourcc.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/gspca-cardlist.rst  | 0
 Documentation/{ => drivers}/media/v4l-drivers/imx.rst             | 0
 Documentation/{ => drivers}/media/v4l-drivers/imx7.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/index.rst           | 0
 Documentation/{ => drivers}/media/v4l-drivers/ipu3.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/ivtv-cardlist.rst   | 0
 Documentation/{ => drivers}/media/v4l-drivers/ivtv.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/max2175.rst         | 0
 Documentation/{ => drivers}/media/v4l-drivers/meye.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/omap3isp.rst        | 0
 Documentation/{ => drivers}/media/v4l-drivers/omap4_camera.rst    | 0
 Documentation/{ => drivers}/media/v4l-drivers/philips.rst         | 0
 Documentation/{ => drivers}/media/v4l-drivers/pvrusb2.rst         | 0
 Documentation/{ => drivers}/media/v4l-drivers/pxa_camera.rst      | 0
 Documentation/{ => drivers}/media/v4l-drivers/qcom_camss.rst      | 0
 .../{ => drivers}/media/v4l-drivers/qcom_camss_8x96_graph.dot     | 0
 .../{ => drivers}/media/v4l-drivers/qcom_camss_graph.dot          | 0
 Documentation/{ => drivers}/media/v4l-drivers/radiotrack.rst      | 0
 Documentation/{ => drivers}/media/v4l-drivers/rcar-fdp1.rst       | 0
 .../{ => drivers}/media/v4l-drivers/saa7134-cardlist.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/saa7134.rst         | 0
 .../{ => drivers}/media/v4l-drivers/saa7164-cardlist.rst          | 0
 .../{ => drivers}/media/v4l-drivers/sh_mobile_ceu_camera.rst      | 0
 Documentation/{ => drivers}/media/v4l-drivers/si470x.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/si4713.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/si476x.rst          | 0
 Documentation/{ => drivers}/media/v4l-drivers/soc-camera.rst      | 0
 Documentation/{ => drivers}/media/v4l-drivers/tm6000-cardlist.rst | 0
 Documentation/{ => drivers}/media/v4l-drivers/tuner-cardlist.rst  | 0
 Documentation/{ => drivers}/media/v4l-drivers/tuners.rst          | 0
 .../{ => drivers}/media/v4l-drivers/usbvision-cardlist.rst        | 0
 Documentation/{ => drivers}/media/v4l-drivers/uvcvideo.rst        | 0
 Documentation/{ => drivers}/media/v4l-drivers/v4l-with-ir.rst     | 0
 Documentation/{ => drivers}/media/v4l-drivers/vimc.dot            | 0
 Documentation/{ => drivers}/media/v4l-drivers/vimc.rst            | 0
 Documentation/{ => drivers}/media/v4l-drivers/vivid.rst           | 0
 Documentation/{ => drivers}/media/v4l-drivers/zr364xx.rst         | 0
 Documentation/{ => drivers}/media/video.h.rst.exceptions          | 0
 Documentation/{ => drivers}/media/videodev2.h.rst.exceptions      | 0
 Documentation/{memory-devices => drivers/memory}/ti-emif.txt      | 0
 Documentation/{misc-devices => drivers/misc}/ad525x_dpot.txt      | 0
 Documentation/{misc-devices => drivers/misc}/apds990x.txt         | 0
 Documentation/{misc-devices => drivers/misc}/bh1770glc.txt        | 0
 Documentation/{misc-devices => drivers/misc}/c2port.txt           | 0
 Documentation/{misc-devices => drivers/misc}/eeprom               | 0
 Documentation/{misc-devices => drivers/misc}/ibmvmc.rst           | 0
 Documentation/{misc-devices => drivers/misc}/ics932s401           | 0
 Documentation/{misc-devices => drivers/misc}/index.rst            | 0
 Documentation/{misc-devices => drivers/misc}/isl29003             | 0
 Documentation/{misc-devices => drivers/misc}/lis3lv02d            | 0
 Documentation/{misc-devices => drivers/misc}/max6875              | 0
 .../{misc-devices => drivers/misc}/mei/mei-client-bus.txt         | 0
 Documentation/{misc-devices => drivers/misc}/mei/mei.txt          | 0
 .../{misc-devices => drivers/misc}/pci-endpoint-test.txt          | 0
 .../{misc-devices => drivers/misc}/spear-pcie-gadget.txt          | 0
 Documentation/{ => drivers}/mmc/mmc-async-req.txt                 | 0
 Documentation/{ => drivers}/mmc/mmc-dev-attrs.txt                 | 0
 Documentation/{ => drivers}/mmc/mmc-dev-parts.txt                 | 0
 Documentation/{ => drivers}/mmc/mmc-tools.txt                     | 0
 Documentation/{ => drivers}/mtd/intel-spi.txt                     | 0
 Documentation/{ => drivers}/mtd/nand_ecc.txt                      | 0
 Documentation/{ => drivers}/mtd/spi-nor.txt                       | 0
 Documentation/{ => drivers}/nfc/nfc-hci.txt                       | 0
 Documentation/{ => drivers}/nfc/nfc-pn544.txt                     | 0
 Documentation/{ => drivers}/nvdimm/btt.txt                        | 0
 Documentation/{ => drivers}/nvdimm/nvdimm.txt                     | 0
 Documentation/{ => drivers}/nvdimm/security.txt                   | 0
 Documentation/{ => drivers}/nvmem/nvmem.txt                       | 0
 Documentation/{ => drivers}/pcmcia/devicetable.rst                | 0
 Documentation/{ => drivers}/pcmcia/driver-changes.rst             | 0
 Documentation/{ => drivers}/pcmcia/driver.rst                     | 0
 Documentation/{ => drivers}/pcmcia/index.rst                      | 0
 Documentation/{ => drivers}/pcmcia/locking.rst                    | 0
 Documentation/{ => drivers}/rapidio/mport_cdev.txt                | 0
 Documentation/{ => drivers}/rapidio/rapidio.txt                   | 0
 Documentation/{ => drivers}/rapidio/rio_cm.txt                    | 0
 Documentation/{ => drivers}/rapidio/sysfs.txt                     | 0
 Documentation/{ => drivers}/rapidio/tsi721.txt                    | 0
 Documentation/{ => drivers}/scsi/53c700.txt                       | 0
 Documentation/{ => drivers}/scsi/BusLogic.txt                     | 0
 Documentation/{ => drivers}/scsi/ChangeLog.arcmsr                 | 0
 Documentation/{ => drivers}/scsi/ChangeLog.ips                    | 0
 Documentation/{ => drivers}/scsi/ChangeLog.lpfc                   | 0
 Documentation/{ => drivers}/scsi/ChangeLog.megaraid               | 0
 Documentation/{ => drivers}/scsi/ChangeLog.megaraid_sas           | 0
 Documentation/{ => drivers}/scsi/ChangeLog.ncr53c8xx              | 0
 Documentation/{ => drivers}/scsi/ChangeLog.sym53c8xx              | 0
 Documentation/{ => drivers}/scsi/ChangeLog.sym53c8xx_2            | 0
 Documentation/{ => drivers}/scsi/FlashPoint.txt                   | 0
 Documentation/{ => drivers}/scsi/LICENSE.FlashPoint               | 0
 Documentation/{ => drivers}/scsi/LICENSE.qla2xxx                  | 0
 Documentation/{ => drivers}/scsi/LICENSE.qla4xxx                  | 0
 Documentation/{ => drivers}/scsi/NinjaSCSI.txt                    | 0
 Documentation/{ => drivers}/scsi/aacraid.txt                      | 0
 Documentation/{ => drivers}/scsi/advansys.txt                     | 0
 Documentation/{ => drivers}/scsi/aha152x.txt                      | 0
 Documentation/{ => drivers}/scsi/aic79xx.txt                      | 0
 Documentation/{ => drivers}/scsi/aic7xxx.txt                      | 0
 Documentation/{ => drivers}/scsi/arcmsr_spec.txt                  | 0
 Documentation/{ => drivers}/scsi/bfa.txt                          | 0
 Documentation/{ => drivers}/scsi/bnx2fc.txt                       | 0
 Documentation/{ => drivers}/scsi/cxgb3i.txt                       | 0
 Documentation/{ => drivers}/scsi/dc395x.txt                       | 0
 Documentation/{ => drivers}/scsi/dpti.txt                         | 0
 Documentation/{ => drivers}/scsi/g_NCR5380.txt                    | 0
 Documentation/{ => drivers}/scsi/hpsa.txt                         | 0
 Documentation/{ => drivers}/scsi/hptiop.txt                       | 0
 Documentation/{ => drivers}/scsi/libsas.txt                       | 0
 Documentation/{ => drivers}/scsi/link_power_management_policy.txt | 0
 Documentation/{ => drivers}/scsi/lpfc.txt                         | 0
 Documentation/{ => drivers}/scsi/megaraid.txt                     | 0
 Documentation/{ => drivers}/scsi/ncr53c8xx.txt                    | 0
 Documentation/{ => drivers}/scsi/osst.txt                         | 0
 Documentation/{ => drivers}/scsi/ppa.txt                          | 0
 Documentation/{ => drivers}/scsi/qlogicfas.txt                    | 0
 Documentation/{ => drivers}/scsi/scsi-changer.txt                 | 0
 Documentation/{ => drivers}/scsi/scsi-generic.txt                 | 0
 Documentation/{ => drivers}/scsi/scsi-parameters.txt              | 0
 Documentation/{ => drivers}/scsi/scsi.txt                         | 0
 Documentation/{ => drivers}/scsi/scsi_eh.txt                      | 0
 Documentation/{ => drivers}/scsi/scsi_fc_transport.txt            | 0
 Documentation/{ => drivers}/scsi/scsi_mid_low_api.txt             | 0
 Documentation/{ => drivers}/scsi/scsi_transport_srp/Makefile      | 0
 .../{ => drivers}/scsi/scsi_transport_srp/rport_state_diagram.dot | 0
 Documentation/{ => drivers}/scsi/sd-parameters.txt                | 0
 Documentation/{ => drivers}/scsi/smartpqi.txt                     | 0
 Documentation/{ => drivers}/scsi/st.txt                           | 0
 Documentation/{ => drivers}/scsi/sym53c500_cs.txt                 | 0
 Documentation/{ => drivers}/scsi/sym53c8xx_2.txt                  | 0
 Documentation/{ => drivers}/scsi/tcm_qla2xxx.txt                  | 0
 Documentation/{ => drivers}/scsi/ufs.txt                          | 0
 Documentation/{ => drivers}/scsi/wd719x.txt                       | 0
 Documentation/{ => drivers}/serial/cyclades_z.rst                 | 0
 Documentation/{ => drivers}/serial/driver.rst                     | 0
 Documentation/{ => drivers}/serial/index.rst                      | 0
 Documentation/{ => drivers}/serial/moxa-smartio.rst               | 0
 Documentation/{ => drivers}/serial/n_gsm.rst                      | 0
 Documentation/{ => drivers}/serial/rocket.rst                     | 0
 Documentation/{ => drivers}/serial/serial-iso7816.rst             | 0
 Documentation/{ => drivers}/serial/serial-rs485.rst               | 0
 Documentation/{ => drivers}/serial/tty.rst                        | 0
 Documentation/{ => drivers}/sound/alsa-configuration.rst          | 0
 Documentation/{ => drivers}/sound/cards/audigy-mixer.rst          | 0
 Documentation/{ => drivers}/sound/cards/audiophile-usb.rst        | 0
 Documentation/{ => drivers}/sound/cards/bt87x.rst                 | 0
 Documentation/{ => drivers}/sound/cards/cmipci.rst                | 0
 Documentation/{ => drivers}/sound/cards/emu10k1-jack.rst          | 0
 Documentation/{ => drivers}/sound/cards/hdspm.rst                 | 0
 Documentation/{ => drivers}/sound/cards/img-spdif-in.rst          | 0
 Documentation/{ => drivers}/sound/cards/index.rst                 | 0
 Documentation/{ => drivers}/sound/cards/joystick.rst              | 0
 Documentation/{ => drivers}/sound/cards/maya44.rst                | 0
 Documentation/{ => drivers}/sound/cards/mixart.rst                | 0
 Documentation/{ => drivers}/sound/cards/multisound.sh             | 0
 Documentation/{ => drivers}/sound/cards/sb-live-mixer.rst         | 0
 Documentation/{ => drivers}/sound/cards/serial-u16550.rst         | 0
 Documentation/{ => drivers}/sound/cards/via82xx-mixer.rst         | 0
 Documentation/{ => drivers}/sound/conf.py                         | 0
 Documentation/{ => drivers}/sound/designs/channel-mapping-api.rst | 0
 Documentation/{ => drivers}/sound/designs/compress-offload.rst    | 0
 Documentation/{ => drivers}/sound/designs/control-names.rst       | 0
 Documentation/{ => drivers}/sound/designs/index.rst               | 0
 Documentation/{ => drivers}/sound/designs/jack-controls.rst       | 0
 Documentation/{ => drivers}/sound/designs/oss-emulation.rst       | 0
 Documentation/{ => drivers}/sound/designs/powersave.rst           | 0
 Documentation/{ => drivers}/sound/designs/procfile.rst            | 0
 Documentation/{ => drivers}/sound/designs/seq-oss.rst             | 0
 Documentation/{ => drivers}/sound/designs/timestamping.rst        | 0
 Documentation/{ => drivers}/sound/designs/tracepoints.rst         | 0
 Documentation/{ => drivers}/sound/hd-audio/controls.rst           | 0
 Documentation/{ => drivers}/sound/hd-audio/dp-mst.rst             | 0
 Documentation/{ => drivers}/sound/hd-audio/index.rst              | 0
 Documentation/{ => drivers}/sound/hd-audio/models.rst             | 0
 Documentation/{ => drivers}/sound/hd-audio/notes.rst              | 0
 Documentation/{ => drivers}/sound/index.rst                       | 0
 Documentation/{ => drivers}/sound/kernel-api/alsa-driver-api.rst  | 0
 Documentation/{ => drivers}/sound/kernel-api/index.rst            | 0
 .../{ => drivers}/sound/kernel-api/writing-an-alsa-driver.rst     | 0
 Documentation/{ => drivers}/sound/soc/clocking.rst                | 0
 Documentation/{ => drivers}/sound/soc/codec-to-codec.rst          | 0
 Documentation/{ => drivers}/sound/soc/codec.rst                   | 0
 Documentation/{ => drivers}/sound/soc/dai.rst                     | 0
 Documentation/{ => drivers}/sound/soc/dapm.rst                    | 0
 Documentation/{ => drivers}/sound/soc/dpcm.rst                    | 0
 Documentation/{ => drivers}/sound/soc/index.rst                   | 0
 Documentation/{ => drivers}/sound/soc/jack.rst                    | 0
 Documentation/{ => drivers}/sound/soc/machine.rst                 | 0
 Documentation/{ => drivers}/sound/soc/overview.rst                | 0
 Documentation/{ => drivers}/sound/soc/platform.rst                | 0
 Documentation/{ => drivers}/sound/soc/pops-clicks.rst             | 0
 Documentation/{ => drivers}/usb/CREDITS                           | 0
 Documentation/{ => drivers}/usb/WUSB-Design-overview.txt          | 0
 Documentation/{ => drivers}/usb/acm.txt                           | 0
 Documentation/{ => drivers}/usb/authorization.txt                 | 0
 Documentation/{ => drivers}/usb/chipidea.txt                      | 0
 Documentation/{ => drivers}/usb/dwc3.txt                          | 0
 Documentation/{ => drivers}/usb/ehci.txt                          | 0
 Documentation/{ => drivers}/usb/functionfs.txt                    | 0
 Documentation/{ => drivers}/usb/gadget-testing.txt                | 0
 Documentation/{ => drivers}/usb/gadget_configfs.txt               | 0
 Documentation/{ => drivers}/usb/gadget_hid.txt                    | 0
 Documentation/{ => drivers}/usb/gadget_multi.txt                  | 0
 Documentation/{ => drivers}/usb/gadget_printer.txt                | 0
 Documentation/{ => drivers}/usb/gadget_serial.txt                 | 0
 Documentation/{ => drivers}/usb/iuu_phoenix.txt                   | 0
 Documentation/{ => drivers}/usb/linux-cdc-acm.inf                 | 0
 Documentation/{ => drivers}/usb/linux.inf                         | 0
 Documentation/{ => drivers}/usb/mass-storage.txt                  | 0
 Documentation/{ => drivers}/usb/misc_usbsevseg.txt                | 0
 Documentation/{ => drivers}/usb/mtouchusb.txt                     | 0
 Documentation/{ => drivers}/usb/ohci.txt                          | 0
 Documentation/{ => drivers}/usb/rio.txt                           | 0
 Documentation/{ => drivers}/usb/usb-help.txt                      | 0
 Documentation/{ => drivers}/usb/usb-serial.txt                    | 0
 Documentation/{ => drivers}/usb/usbdevfs-drop-permissions.c       | 0
 Documentation/{ => drivers}/usb/usbip_protocol.txt                | 0
 Documentation/{ => drivers}/usb/usbmon.txt                        | 0
 Documentation/{ => drivers}/usb/wusb-cbaf                         | 0
 .../{ => drivers}/watchdog/convert_drivers_to_kernel_api.rst      | 0
 Documentation/{ => drivers}/watchdog/hpwdt.rst                    | 0
 Documentation/{ => drivers}/watchdog/index.rst                    | 0
 Documentation/{ => drivers}/watchdog/mlx-wdt.rst                  | 0
 Documentation/{ => drivers}/watchdog/pcwd-watchdog.rst            | 0
 Documentation/{ => drivers}/watchdog/watchdog-api.rst             | 0
 Documentation/{ => drivers}/watchdog/watchdog-kernel-api.rst      | 0
 Documentation/{ => drivers}/watchdog/watchdog-parameters.rst      | 0
 Documentation/{ => drivers}/watchdog/watchdog-pm.rst              | 0
 Documentation/{ => drivers}/watchdog/wdt.rst                      | 0
 1079 files changed, 0 insertions(+), 0 deletions(-)
 rename Documentation/{ => drivers}/PCI/MSI-HOWTO.txt (100%)
 rename Documentation/{ => drivers}/PCI/PCIEBUS-HOWTO.txt (100%)
 rename Documentation/{ => drivers}/PCI/acpi-info.txt (100%)
 rename Documentation/{ => drivers}/PCI/endpoint/function/binding/pci-test.txt (100%)
 rename Documentation/{ => drivers}/PCI/endpoint/pci-endpoint-cfs.txt (100%)
 rename Documentation/{ => drivers}/PCI/endpoint/pci-endpoint.txt (100%)
 rename Documentation/{ => drivers}/PCI/endpoint/pci-test-function.txt (100%)
 rename Documentation/{ => drivers}/PCI/endpoint/pci-test-howto.txt (100%)
 rename Documentation/{ => drivers}/PCI/pci-error-recovery.txt (100%)
 rename Documentation/{ => drivers}/PCI/pci-iov-howto.txt (100%)
 rename Documentation/{ => drivers}/PCI/pci.txt (100%)
 rename Documentation/{ => drivers}/PCI/pcieaer-howto.txt (100%)
 rename Documentation/{ => drivers}/acpi/dsd/leds.txt (100%)
 rename Documentation/{ => drivers}/auxdisplay/cfag12864b (100%)
 rename Documentation/{ => drivers}/auxdisplay/ks0108 (100%)
 rename Documentation/{ => drivers}/auxdisplay/lcd-panel-cgram.txt (100%)
 rename Documentation/{ => drivers}/backlight/lp855x-driver.txt (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/DRBD-8.3-data-packets.svg (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/DRBD-data-packets.svg (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/README.txt (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/conn-states-8.dot (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/data-structure-v9.txt (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/disk-states-8.dot (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/drbd-connection-state-overview.dot (100%)
 rename Documentation/{ => drivers}/blockdev/drbd/node-states-8.dot (100%)
 rename Documentation/{ => drivers}/blockdev/floppy.txt (100%)
 rename Documentation/{ => drivers}/blockdev/nbd.txt (100%)
 rename Documentation/{ => drivers}/blockdev/paride.txt (100%)
 rename Documentation/{ => drivers}/blockdev/ramdisk.txt (100%)
 rename Documentation/{ => drivers}/blockdev/zram.txt (100%)
 rename Documentation/{bus-devices => drivers/bus}/ti-gpmc.txt (100%)
 rename Documentation/{ => drivers}/cdrom/cdrom-standard.rst (100%)
 rename Documentation/{ => drivers}/cdrom/ide-cd.rst (100%)
 rename Documentation/{ => drivers}/cdrom/index.rst (100%)
 rename Documentation/{ => drivers}/cdrom/packet-writing.rst (100%)
 rename Documentation/{ => drivers}/cpu-freq/amd-powernow.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/core.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/cpu-drivers.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/cpufreq-nforce2.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/cpufreq-stats.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/index.txt (100%)
 rename Documentation/{ => drivers}/cpu-freq/pcc-cpufreq.txt (100%)
 rename Documentation/{ => drivers}/crypto/api-aead.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-akcipher.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-digest.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-intro.txt (100%)
 rename Documentation/{ => drivers}/crypto/api-kpp.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-rng.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-samples.rst (100%)
 rename Documentation/{ => drivers}/crypto/api-skcipher.rst (100%)
 rename Documentation/{ => drivers}/crypto/api.rst (100%)
 rename Documentation/{ => drivers}/crypto/architecture.rst (100%)
 rename Documentation/{ => drivers}/crypto/asymmetric-keys.txt (100%)
 rename Documentation/{ => drivers}/crypto/async-tx-api.txt (100%)
 rename Documentation/{ => drivers}/crypto/conf.py (100%)
 rename Documentation/{ => drivers}/crypto/crypto_engine.rst (100%)
 rename Documentation/{ => drivers}/crypto/descore-readme.txt (100%)
 rename Documentation/{ => drivers}/crypto/devel-algos.rst (100%)
 rename Documentation/{ => drivers}/crypto/index.rst (100%)
 rename Documentation/{ => drivers}/crypto/intro.rst (100%)
 rename Documentation/{ => drivers}/crypto/userspace-if.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/cache-policies.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/cache.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/delay.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-crypt.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-dust.txt (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-flakey.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-init.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-integrity.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-io.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-log.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-queue-length.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-raid.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-service-time.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-uevent.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/dm-zoned.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/era.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/index.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/kcopyd.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/linear.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/log-writes.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/persistent-data.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/snapshot.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/statistics.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/striped.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/switch.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/thin-provisioning.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/unstriped.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/verity.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/writecache.rst (100%)
 rename Documentation/{ => drivers}/device-mapper/zero.rst (100%)
 rename Documentation/{ => drivers}/driver-api/80211/cfg80211.rst (100%)
 rename Documentation/{ => drivers}/driver-api/80211/conf.py (100%)
 rename Documentation/{ => drivers}/driver-api/80211/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/80211/introduction.rst (100%)
 rename Documentation/{ => drivers}/driver-api/80211/mac80211-advanced.rst (100%)
 rename Documentation/{ => drivers}/driver-api/80211/mac80211.rst (100%)
 rename Documentation/{ => drivers}/driver-api/acpi/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/acpi/linuxized-acpica.rst (100%)
 rename Documentation/{ => drivers}/driver-api/acpi/scan_handlers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/basics.rst (100%)
 rename Documentation/{ => drivers}/driver-api/clk.rst (100%)
 rename Documentation/{ => drivers}/driver-api/component.rst (100%)
 rename Documentation/{ => drivers}/driver-api/conf.py (100%)
 rename Documentation/{ => drivers}/driver-api/device-io.rst (100%)
 rename Documentation/{ => drivers}/driver-api/device_connection.rst (100%)
 rename Documentation/{ => drivers}/driver-api/device_link.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dma-buf.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dmaengine/client.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dmaengine/dmatest.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dmaengine/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dmaengine/provider.rst (100%)
 rename Documentation/{ => drivers}/driver-api/dmaengine/pxa_dma.rst (100%)
 rename Documentation/{ => drivers}/driver-api/edac.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firewire.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/built-in-fw.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/core.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/direct-fs-lookup.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/fallback-mechanisms.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/firmware_cache.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/fw_search_path.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/introduction.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/lookup-order.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/other_interfaces.rst (100%)
 rename Documentation/{ => drivers}/driver-api/firmware/request_firmware.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/fpga-bridge.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/fpga-mgr.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/fpga-programming.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/fpga-region.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/fpga/intro.rst (100%)
 rename Documentation/{ => drivers}/driver-api/frame-buffer.rst (100%)
 rename Documentation/{ => drivers}/driver-api/generic-counter.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/board.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/consumer.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/driver.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/drivers-on-gpio.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/intro.rst (100%)
 rename Documentation/{ => drivers}/driver-api/gpio/legacy.rst (100%)
 rename Documentation/{ => drivers}/driver-api/hsi.rst (100%)
 rename Documentation/{ => drivers}/driver-api/i2c.rst (100%)
 rename Documentation/{ => drivers}/driver-api/i3c/device-driver-api.rst (100%)
 rename Documentation/{ => drivers}/driver-api/i3c/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/i3c/master-driver-api.rst (100%)
 rename Documentation/{ => drivers}/driver-api/i3c/protocol.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/buffers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/core.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/hw-consumer.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/intro.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/triggered-buffers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/iio/triggers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/infrastructure.rst (100%)
 rename Documentation/{ => drivers}/driver-api/input.rst (100%)
 rename Documentation/{ => drivers}/driver-api/libata.rst (100%)
 rename Documentation/{ => drivers}/driver-api/message-based.rst (100%)
 rename Documentation/{ => drivers}/driver-api/misc_devices.rst (100%)
 rename Documentation/{ => drivers}/driver-api/miscellaneous.rst (100%)
 rename Documentation/{ => drivers}/driver-api/mtdnand.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pci/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pci/p2pdma.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pci/pci.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pinctl.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pm/conf.py (100%)
 rename Documentation/{ => drivers}/driver-api/pm/cpuidle.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pm/devices.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pm/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pm/notifiers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pm/types.rst (100%)
 rename Documentation/{ => drivers}/driver-api/pps.rst (100%)
 rename Documentation/{ => drivers}/driver-api/ptp.rst (100%)
 rename Documentation/{ => drivers}/driver-api/rapidio.rst (100%)
 rename Documentation/{ => drivers}/driver-api/regulator.rst (100%)
 rename Documentation/{ => drivers}/driver-api/s390-drivers.rst (100%)
 rename Documentation/{ => drivers}/driver-api/scsi.rst (100%)
 rename Documentation/{ => drivers}/driver-api/slimbus.rst (100%)
 rename Documentation/{ => drivers}/driver-api/sound.rst (100%)
 rename Documentation/{ => drivers}/driver-api/soundwire/error_handling.rst (100%)
 rename Documentation/{ => drivers}/driver-api/soundwire/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/soundwire/locking.rst (100%)
 rename Documentation/{ => drivers}/driver-api/soundwire/stream.rst (100%)
 rename Documentation/{ => drivers}/driver-api/soundwire/summary.rst (100%)
 rename Documentation/{ => drivers}/driver-api/spi.rst (100%)
 rename Documentation/{ => drivers}/driver-api/target.rst (100%)
 rename Documentation/{ => drivers}/driver-api/uio-howto.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/URB.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/anchors.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/bulk-streams.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/callbacks.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/dma.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/dwc3.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/error-codes.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/gadget.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/hotplug.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/index.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/persist.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/power-management.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/typec.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/typec_bus.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/usb.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/usb3-debug-port.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/writing_musb_glue_layer.rst (100%)
 rename Documentation/{ => drivers}/driver-api/usb/writing_usb_driver.rst (100%)
 rename Documentation/{ => drivers}/driver-api/vme.rst (100%)
 rename Documentation/{ => drivers}/driver-api/w1.rst (100%)
 rename Documentation/{ => drivers}/driver-model/binding.txt (100%)
 rename Documentation/{ => drivers}/driver-model/bus.txt (100%)
 rename Documentation/{ => drivers}/driver-model/class.txt (100%)
 rename Documentation/{ => drivers}/driver-model/design-patterns.txt (100%)
 rename Documentation/{ => drivers}/driver-model/device.txt (100%)
 rename Documentation/{ => drivers}/driver-model/devres.txt (100%)
 rename Documentation/{ => drivers}/driver-model/driver.txt (100%)
 rename Documentation/{ => drivers}/driver-model/overview.txt (100%)
 rename Documentation/{ => drivers}/driver-model/platform.txt (100%)
 rename Documentation/{ => drivers}/driver-model/porting.txt (100%)
 rename Documentation/{ => drivers}/fpga/dfl.rst (100%)
 rename Documentation/{ => drivers}/fpga/index.rst (100%)
 rename Documentation/{ => drivers}/gpio/index.rst (100%)
 rename Documentation/{ => drivers}/gpio/sysfs.rst (100%)
 rename Documentation/{ => drivers}/gpu/afbc.rst (100%)
 rename Documentation/{ => drivers}/gpu/amdgpu-dc.rst (100%)
 rename Documentation/{ => drivers}/gpu/amdgpu.rst (100%)
 rename Documentation/{ => drivers}/gpu/bridge/dw-hdmi.rst (100%)
 rename Documentation/{ => drivers}/gpu/conf.py (100%)
 rename Documentation/{ => drivers}/gpu/dp-mst/topology-figure-1.dot (100%)
 rename Documentation/{ => drivers}/gpu/dp-mst/topology-figure-2.dot (100%)
 rename Documentation/{ => drivers}/gpu/dp-mst/topology-figure-3.dot (100%)
 rename Documentation/{ => drivers}/gpu/drivers.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-client.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-internals.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-kms-helpers.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-kms.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-mm.rst (100%)
 rename Documentation/{ => drivers}/gpu/drm-uapi.rst (100%)
 rename Documentation/{ => drivers}/gpu/i915.rst (100%)
 rename Documentation/{ => drivers}/gpu/index.rst (100%)
 rename Documentation/{ => drivers}/gpu/introduction.rst (100%)
 rename Documentation/{ => drivers}/gpu/kms-properties.csv (100%)
 rename Documentation/{ => drivers}/gpu/komeda-kms.rst (100%)
 rename Documentation/{ => drivers}/gpu/meson.rst (100%)
 rename Documentation/{ => drivers}/gpu/msm-crash-dump.rst (100%)
 rename Documentation/{ => drivers}/gpu/pl111.rst (100%)
 rename Documentation/{ => drivers}/gpu/tegra.rst (100%)
 rename Documentation/{ => drivers}/gpu/tinydrm.rst (100%)
 rename Documentation/{ => drivers}/gpu/todo.rst (100%)
 rename Documentation/{ => drivers}/gpu/tve200.rst (100%)
 rename Documentation/{ => drivers}/gpu/v3d.rst (100%)
 rename Documentation/{ => drivers}/gpu/vc4.rst (100%)
 rename Documentation/{ => drivers}/gpu/vga-switcheroo.rst (100%)
 rename Documentation/{ => drivers}/gpu/vgaarbiter.rst (100%)
 rename Documentation/{ => drivers}/gpu/vkms.rst (100%)
 rename Documentation/{ => drivers}/gpu/xen-front.rst (100%)
 rename Documentation/{ => drivers}/hid/hid-alps.txt (100%)
 rename Documentation/{ => drivers}/hid/hid-sensor.txt (100%)
 rename Documentation/{ => drivers}/hid/hid-transport.txt (100%)
 rename Documentation/{ => drivers}/hid/hiddev.txt (100%)
 rename Documentation/{ => drivers}/hid/hidraw.txt (100%)
 rename Documentation/{ => drivers}/hid/intel-ish-hid.txt (100%)
 rename Documentation/{ => drivers}/hid/uhid.txt (100%)
 rename Documentation/{ => drivers}/i2c/DMA-considerations (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-ali1535 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-ali1563 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-ali15x3 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-amd-mp2 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-amd756 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-amd8111 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-diolan-u2c (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-i801 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-ismt (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-mlxcpld (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-nforce2 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-nvidia-gpu (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-ocores (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-parport (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-parport-light (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-pca-isa (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-piix4 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-sis5595 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-sis630 (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-sis96x (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-taos-evm (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-via (100%)
 rename Documentation/{ => drivers}/i2c/busses/i2c-viapro (100%)
 rename Documentation/{ => drivers}/i2c/busses/scx200_acb (100%)
 rename Documentation/{ => drivers}/i2c/dev-interface (100%)
 rename Documentation/{ => drivers}/i2c/fault-codes (100%)
 rename Documentation/{ => drivers}/i2c/functionality (100%)
 rename Documentation/{ => drivers}/i2c/gpio-fault-injection (100%)
 rename Documentation/{ => drivers}/i2c/i2c-protocol (100%)
 rename Documentation/{ => drivers}/i2c/i2c-stub (100%)
 rename Documentation/{ => drivers}/i2c/i2c-topology (100%)
 rename Documentation/{ => drivers}/i2c/instantiating-devices (100%)
 rename Documentation/{ => drivers}/i2c/muxes/i2c-mux-gpio (100%)
 rename Documentation/{ => drivers}/i2c/old-module-parameters (100%)
 rename Documentation/{ => drivers}/i2c/slave-eeprom-backend (100%)
 rename Documentation/{ => drivers}/i2c/slave-interface (100%)
 rename Documentation/{ => drivers}/i2c/smbus-protocol (100%)
 rename Documentation/{ => drivers}/i2c/summary (100%)
 rename Documentation/{ => drivers}/i2c/ten-bit-addresses (100%)
 rename Documentation/{ => drivers}/i2c/upgrading-clients (100%)
 rename Documentation/{ => drivers}/i2c/writing-clients (100%)
 rename Documentation/{ => drivers}/ide/ChangeLog.ide-cd.1994-2004 (100%)
 rename Documentation/{ => drivers}/ide/ChangeLog.ide-floppy.1996-2002 (100%)
 rename Documentation/{ => drivers}/ide/ChangeLog.ide-tape.1995-2002 (100%)
 rename Documentation/{ => drivers}/ide/changelogs.rst (100%)
 rename Documentation/{ => drivers}/ide/ide-tape.rst (100%)
 rename Documentation/{ => drivers}/ide/ide.rst (100%)
 rename Documentation/{ => drivers}/ide/index.rst (100%)
 rename Documentation/{ => drivers}/ide/warm-plug-howto.rst (100%)
 rename Documentation/{ => drivers}/infiniband/core_locking.txt (100%)
 rename Documentation/{ => drivers}/infiniband/ipoib.txt (100%)
 rename Documentation/{ => drivers}/infiniband/opa_vnic.txt (100%)
 rename Documentation/{ => drivers}/infiniband/sysfs.txt (100%)
 rename Documentation/{ => drivers}/infiniband/tag_matching.txt (100%)
 rename Documentation/{ => drivers}/infiniband/user_mad.txt (100%)
 rename Documentation/{ => drivers}/infiniband/user_verbs.txt (100%)
 rename Documentation/{ => drivers}/leds/index.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-blinkm.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-class-flash.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-class.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lm3556.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lp3944.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lp5521.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lp5523.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lp5562.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-lp55xx.rst (100%)
 rename Documentation/{ => drivers}/leds/leds-mlxcpld.rst (100%)
 rename Documentation/{ => drivers}/leds/ledtrig-oneshot.rst (100%)
 rename Documentation/{ => drivers}/leds/ledtrig-transient.rst (100%)
 rename Documentation/{ => drivers}/leds/ledtrig-usbport.rst (100%)
 rename Documentation/{ => drivers}/leds/uleds.rst (100%)
 rename Documentation/{ => drivers}/lightnvm/pblk.txt (100%)
 rename Documentation/{ => drivers}/md/md-cluster.txt (100%)
 rename Documentation/{ => drivers}/md/raid5-cache.txt (100%)
 rename Documentation/{ => drivers}/md/raid5-ppl.txt (100%)
 rename Documentation/{ => drivers}/media/.gitignore (100%)
 rename Documentation/{ => drivers}/media/Makefile (100%)
 rename Documentation/{ => drivers}/media/audio.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/ca.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/cec-drivers/index.rst (100%)
 rename Documentation/{ => drivers}/media/cec-drivers/pulse8-cec.rst (100%)
 rename Documentation/{ => drivers}/media/cec.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/conf.py (100%)
 rename Documentation/{ => drivers}/media/conf_nitpick.py (100%)
 rename Documentation/{ => drivers}/media/dmx.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/avermedia.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/bt8xx.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/cards.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/ci.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/contributors.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/dvb-usb.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/faq.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/frontends.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/index.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/intro.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/lmedm04.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/opera-firmware.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/technisat.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/ttusb-dec.rst (100%)
 rename Documentation/{ => drivers}/media/dvb-drivers/udev.rst (100%)
 rename Documentation/{ => drivers}/media/frontend.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/index.rst (100%)
 rename Documentation/{ => drivers}/media/intro.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/cec-core.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/csi2.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-ca.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-common.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-core.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-demux.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-frontend.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/dtv-net.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/mc-core.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/rc-core.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-async.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-clocks.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-common.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-controls.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-core.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-dev.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-device.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-dv-timings.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-event.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-fh.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-flash-led-class.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-fwnode.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-intro.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-mc.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-mediabus.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-mem2mem.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-rect.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-subdev.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-tuner.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-tveeprom.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-videobuf.rst (100%)
 rename Documentation/{ => drivers}/media/kapi/v4l2-videobuf2.rst (100%)
 rename Documentation/{ => drivers}/media/lirc.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/media.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/media_kapi.rst (100%)
 rename Documentation/{ => drivers}/media/media_uapi.rst (100%)
 rename Documentation/{ => drivers}/media/net.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/typical_media_device.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-func-close.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-func-ioctl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-func-open.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-func-poll.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-funcs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-header.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-adap-g-caps.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-dqevent.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-g-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-ioc-receive.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/cec/cec-pin-error-inj.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-bilingual-channel-select.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-channel-select.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-clear-buffer.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-continue.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-fclose.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-fopen.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-fwrite.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-get-capabilities.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-get-status.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-pause.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-play.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-select-source.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-av-sync.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-bypass-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-id.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-mixer.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-mute.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-set-streamtype.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio-stop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio_data_types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/audio_function_calls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-fclose.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-fopen.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-get-cap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-get-descr-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-get-msg.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-get-slot-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-reset.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-send-msg.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca-set-descr.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca_data_types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/ca_function_calls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/demux.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-add-pid.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-expbuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-fclose.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-fopen.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-fread.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-fwrite.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-get-pes-pids.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-get-stc.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-mmap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-munmap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-qbuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-querybuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-remove-pid.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-reqbufs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-set-buffer-size.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-set-filter.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-set-pes-filter.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-start.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx-stop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx_fcalls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dmx_types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvb-fe-read-status.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvb-frontend-event.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvb-frontend-parameters.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvbapi.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvbproperty.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/dvbstb.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/examples.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-bandwidth-t.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-diseqc-reset-overload.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-diseqc-send-burst.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-diseqc-send-master-cmd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-enable-high-lnb-voltage.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-get-event.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-get-frontend.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-get-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-get-property.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-read-ber.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-read-signal-strength.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-read-snr.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-read-status.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-read-uncorrected-blocks.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-set-frontend-tune-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-set-frontend.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-set-tone.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-set-voltage.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe-type-t.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/fe_property_parameters.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend-header.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend-property-cable-systems.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend-property-satellite-systems.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend-property-terrestrial-systems.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend-stat-properties.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend_f_close.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend_f_open.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend_fcalls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend_legacy_api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/frontend_legacy_dvbv3_api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/headers.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/legacy_dvb_apis.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/net-add-if.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/net-get-if.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/net-remove-if.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/net-types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/net.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/query-dvb-frontend-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-clear-buffer.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-command.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-continue.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-fast-forward.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-fclose.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-fopen.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-freeze.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-fwrite.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-capabilities.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-event.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-frame-count.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-pts.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-size.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-get-status.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-play.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-select-source.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-set-blank.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-set-display-format.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-set-format.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-set-streamtype.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-slowmotion.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-stillpicture.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-stop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video-try-command.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video_function_calls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/dvb/video_types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/fdl-appendix.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/gen-errors.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-controller-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-controller-model.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-controller.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-func-close.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-func-ioctl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-func-open.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-funcs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-header.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-device-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-enum-entities.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-enum-links.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-g-topology.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-request-alloc.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-ioc-setup-link.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-request-ioc-queue.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-request-ioc-reinit.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/media-types.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/request-api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/request-func-close.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/request-func-ioctl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/mediactl/request-func-poll.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/keytable.c.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-dev-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-dev.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-func.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-get-features.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-get-rec-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-get-rec-resolution.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-get-send-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-get-timeout.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-header.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-read.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-measure-carrier-mode.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-rec-carrier-range.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-rec-carrier.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-rec-timeout-reports.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-rec-timeout.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-send-carrier.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-send-duty-cycle.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-transmitter-mask.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-set-wideband-receiver.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/lirc-write.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/rc-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/rc-sysfs-nodes.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/rc-table-change.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/rc-tables.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/rc/remote_controllers.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/app-pri.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/async.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/audio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/bayer.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/biblio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/buffer.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/capture-example.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/capture.c.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/colorspaces-defs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/colorspaces-details.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/colorspaces.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/common-defs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/common.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/compat.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/constraints.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/control.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/crop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/crop.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/depth-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-capture.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-event.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-mem2mem.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-meta.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-osd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-output.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-overlay.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-radio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-raw-vbi.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-rds.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-sdr.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-sliced-vbi.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-subdev.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dev-touch.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/devices.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/diff-v4l.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dmabuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/dv-timings.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-camera.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-codec.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-detect.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-dv.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-flash.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-fm-rx.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-fm-tx.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-image-process.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-image-source.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-jpeg.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/ext-ctrls-rf-tuner.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/extended-controls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/field-order.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/fieldseq_bt.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/fieldseq_tb.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/format.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-close.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-ioctl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-mmap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-munmap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-open.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-poll.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-read.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-select.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/func-write.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/hist-v4l2.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/hsv-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/io.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/libv4l-introduction.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/libv4l.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/meta-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/mmap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/nv12mt.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/nv12mt_example.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/open.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pipeline.dot (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-cnf4.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-compressed.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-grey.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-indexed.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-inzi.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-m420.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-d4xx.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-uvc.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12m.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv12mt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv16m.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-nv24.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-hsv.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-rgb.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-packed-yuv.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-reserved.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-rgb.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cs08.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cs14le.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cu08.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-cu16le.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu16be.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu18be.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-pcu20be.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-sdr-ru12le.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10-ipu3.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10alaw8.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10dpcm8.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb10p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb12.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb12p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb14p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-srggb8.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-td08.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-td16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-tu08.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-tch-tu16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-uv8.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-uyvy.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-v4l2-mplane.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-v4l2.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-vyuy.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10b.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y10p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y12.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y12i.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y16-be.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y41p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-y8i.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv410.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv411p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv420.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv420m.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv422m.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv422p.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuv444m.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yuyv.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-yvyu.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt-z16.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/pixfmt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/planar-apis.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/querycap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/rw.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/sdr-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api-configuration.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api-examples.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api-intro.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api-targets.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api-vs-crop-api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection-api.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selection.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/selections-common.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/standard.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/streaming-par.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/subdev-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/subdev-image-processing-crop.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/subdev-image-processing-full.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/subdev-image-processing-scaling-multi-source.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/tch-formats.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/tuner.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/user-func.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/userp.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/v4l2-selection-flags.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/v4l2-selection-targets.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/v4l2.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/v4l2grab-example.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/v4l2grab.c.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vbi_525.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vbi_625.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vbi_hsync.svg (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/video.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/videodev.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-create-bufs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-cropcap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-dbg-g-chip-info.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-dbg-g-register.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-decoder-cmd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-dqevent.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-dv-timings-cap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-encoder-cmd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-dv-timings.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-fmt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-frameintervals.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-framesizes.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enum-freq-bands.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumaudio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumaudioout.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enuminput.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumoutput.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-enumstd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-expbuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-audio.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-audioout.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-crop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-ctrl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-dv-timings.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-edid.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-enc-index.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-ext-ctrls.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-fbuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-fmt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-frequency.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-input.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-jpegcomp.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-modulator.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-output.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-parm.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-priority.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-selection.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-std.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-g-tuner.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-log-status.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-overlay.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-prepare-buf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-qbuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-query-dv-timings.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-querybuf.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-querycap.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-queryctrl.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-querystd.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-reqbufs.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-s-hw-freq-seek.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-streamon.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-g-crop.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-g-fmt.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subdev-g-selection.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/vidioc-subscribe-event.rst (100%)
 rename Documentation/{ => drivers}/media/uapi/v4l/yuv-formats.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/au0828-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/bttv-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/bttv.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cafe_ccic.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cpia2.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cx18.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cx2341x.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cx23885-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cx88-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/cx88.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/davinci-vpbe.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/em28xx-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/fimc.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/fourcc.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/gspca-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/imx.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/imx7.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/index.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/ipu3.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/ivtv-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/ivtv.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/max2175.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/meye.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/omap3isp.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/omap4_camera.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/philips.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/pvrusb2.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/pxa_camera.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/qcom_camss.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/qcom_camss_8x96_graph.dot (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/qcom_camss_graph.dot (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/radiotrack.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/rcar-fdp1.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/saa7134-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/saa7134.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/saa7164-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/sh_mobile_ceu_camera.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/si470x.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/si4713.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/si476x.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/soc-camera.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/tm6000-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/tuner-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/tuners.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/usbvision-cardlist.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/uvcvideo.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/v4l-with-ir.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/vimc.dot (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/vimc.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/vivid.rst (100%)
 rename Documentation/{ => drivers}/media/v4l-drivers/zr364xx.rst (100%)
 rename Documentation/{ => drivers}/media/video.h.rst.exceptions (100%)
 rename Documentation/{ => drivers}/media/videodev2.h.rst.exceptions (100%)
 rename Documentation/{memory-devices => drivers/memory}/ti-emif.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/ad525x_dpot.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/apds990x.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/bh1770glc.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/c2port.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/eeprom (100%)
 rename Documentation/{misc-devices => drivers/misc}/ibmvmc.rst (100%)
 rename Documentation/{misc-devices => drivers/misc}/ics932s401 (100%)
 rename Documentation/{misc-devices => drivers/misc}/index.rst (100%)
 rename Documentation/{misc-devices => drivers/misc}/isl29003 (100%)
 rename Documentation/{misc-devices => drivers/misc}/lis3lv02d (100%)
 rename Documentation/{misc-devices => drivers/misc}/max6875 (100%)
 rename Documentation/{misc-devices => drivers/misc}/mei/mei-client-bus.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/mei/mei.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/pci-endpoint-test.txt (100%)
 rename Documentation/{misc-devices => drivers/misc}/spear-pcie-gadget.txt (100%)
 rename Documentation/{ => drivers}/mmc/mmc-async-req.txt (100%)
 rename Documentation/{ => drivers}/mmc/mmc-dev-attrs.txt (100%)
 rename Documentation/{ => drivers}/mmc/mmc-dev-parts.txt (100%)
 rename Documentation/{ => drivers}/mmc/mmc-tools.txt (100%)
 rename Documentation/{ => drivers}/mtd/intel-spi.txt (100%)
 rename Documentation/{ => drivers}/mtd/nand_ecc.txt (100%)
 rename Documentation/{ => drivers}/mtd/spi-nor.txt (100%)
 rename Documentation/{ => drivers}/nfc/nfc-hci.txt (100%)
 rename Documentation/{ => drivers}/nfc/nfc-pn544.txt (100%)
 rename Documentation/{ => drivers}/nvdimm/btt.txt (100%)
 rename Documentation/{ => drivers}/nvdimm/nvdimm.txt (100%)
 rename Documentation/{ => drivers}/nvdimm/security.txt (100%)
 rename Documentation/{ => drivers}/nvmem/nvmem.txt (100%)
 rename Documentation/{ => drivers}/pcmcia/devicetable.rst (100%)
 rename Documentation/{ => drivers}/pcmcia/driver-changes.rst (100%)
 rename Documentation/{ => drivers}/pcmcia/driver.rst (100%)
 rename Documentation/{ => drivers}/pcmcia/index.rst (100%)
 rename Documentation/{ => drivers}/pcmcia/locking.rst (100%)
 rename Documentation/{ => drivers}/rapidio/mport_cdev.txt (100%)
 rename Documentation/{ => drivers}/rapidio/rapidio.txt (100%)
 rename Documentation/{ => drivers}/rapidio/rio_cm.txt (100%)
 rename Documentation/{ => drivers}/rapidio/sysfs.txt (100%)
 rename Documentation/{ => drivers}/rapidio/tsi721.txt (100%)
 rename Documentation/{ => drivers}/scsi/53c700.txt (100%)
 rename Documentation/{ => drivers}/scsi/BusLogic.txt (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.arcmsr (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.ips (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.lpfc (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.megaraid (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.megaraid_sas (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.ncr53c8xx (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.sym53c8xx (100%)
 rename Documentation/{ => drivers}/scsi/ChangeLog.sym53c8xx_2 (100%)
 rename Documentation/{ => drivers}/scsi/FlashPoint.txt (100%)
 rename Documentation/{ => drivers}/scsi/LICENSE.FlashPoint (100%)
 rename Documentation/{ => drivers}/scsi/LICENSE.qla2xxx (100%)
 rename Documentation/{ => drivers}/scsi/LICENSE.qla4xxx (100%)
 rename Documentation/{ => drivers}/scsi/NinjaSCSI.txt (100%)
 rename Documentation/{ => drivers}/scsi/aacraid.txt (100%)
 rename Documentation/{ => drivers}/scsi/advansys.txt (100%)
 rename Documentation/{ => drivers}/scsi/aha152x.txt (100%)
 rename Documentation/{ => drivers}/scsi/aic79xx.txt (100%)
 rename Documentation/{ => drivers}/scsi/aic7xxx.txt (100%)
 rename Documentation/{ => drivers}/scsi/arcmsr_spec.txt (100%)
 rename Documentation/{ => drivers}/scsi/bfa.txt (100%)
 rename Documentation/{ => drivers}/scsi/bnx2fc.txt (100%)
 rename Documentation/{ => drivers}/scsi/cxgb3i.txt (100%)
 rename Documentation/{ => drivers}/scsi/dc395x.txt (100%)
 rename Documentation/{ => drivers}/scsi/dpti.txt (100%)
 rename Documentation/{ => drivers}/scsi/g_NCR5380.txt (100%)
 rename Documentation/{ => drivers}/scsi/hpsa.txt (100%)
 rename Documentation/{ => drivers}/scsi/hptiop.txt (100%)
 rename Documentation/{ => drivers}/scsi/libsas.txt (100%)
 rename Documentation/{ => drivers}/scsi/link_power_management_policy.txt (100%)
 rename Documentation/{ => drivers}/scsi/lpfc.txt (100%)
 rename Documentation/{ => drivers}/scsi/megaraid.txt (100%)
 rename Documentation/{ => drivers}/scsi/ncr53c8xx.txt (100%)
 rename Documentation/{ => drivers}/scsi/osst.txt (100%)
 rename Documentation/{ => drivers}/scsi/ppa.txt (100%)
 rename Documentation/{ => drivers}/scsi/qlogicfas.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi-changer.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi-generic.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi-parameters.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi_eh.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi_fc_transport.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi_mid_low_api.txt (100%)
 rename Documentation/{ => drivers}/scsi/scsi_transport_srp/Makefile (100%)
 rename Documentation/{ => drivers}/scsi/scsi_transport_srp/rport_state_diagram.dot (100%)
 rename Documentation/{ => drivers}/scsi/sd-parameters.txt (100%)
 rename Documentation/{ => drivers}/scsi/smartpqi.txt (100%)
 rename Documentation/{ => drivers}/scsi/st.txt (100%)
 rename Documentation/{ => drivers}/scsi/sym53c500_cs.txt (100%)
 rename Documentation/{ => drivers}/scsi/sym53c8xx_2.txt (100%)
 rename Documentation/{ => drivers}/scsi/tcm_qla2xxx.txt (100%)
 rename Documentation/{ => drivers}/scsi/ufs.txt (100%)
 rename Documentation/{ => drivers}/scsi/wd719x.txt (100%)
 rename Documentation/{ => drivers}/serial/cyclades_z.rst (100%)
 rename Documentation/{ => drivers}/serial/driver.rst (100%)
 rename Documentation/{ => drivers}/serial/index.rst (100%)
 rename Documentation/{ => drivers}/serial/moxa-smartio.rst (100%)
 rename Documentation/{ => drivers}/serial/n_gsm.rst (100%)
 rename Documentation/{ => drivers}/serial/rocket.rst (100%)
 rename Documentation/{ => drivers}/serial/serial-iso7816.rst (100%)
 rename Documentation/{ => drivers}/serial/serial-rs485.rst (100%)
 rename Documentation/{ => drivers}/serial/tty.rst (100%)
 rename Documentation/{ => drivers}/sound/alsa-configuration.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/audigy-mixer.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/audiophile-usb.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/bt87x.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/cmipci.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/emu10k1-jack.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/hdspm.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/img-spdif-in.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/index.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/joystick.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/maya44.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/mixart.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/multisound.sh (100%)
 rename Documentation/{ => drivers}/sound/cards/sb-live-mixer.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/serial-u16550.rst (100%)
 rename Documentation/{ => drivers}/sound/cards/via82xx-mixer.rst (100%)
 rename Documentation/{ => drivers}/sound/conf.py (100%)
 rename Documentation/{ => drivers}/sound/designs/channel-mapping-api.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/compress-offload.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/control-names.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/index.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/jack-controls.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/oss-emulation.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/powersave.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/procfile.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/seq-oss.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/timestamping.rst (100%)
 rename Documentation/{ => drivers}/sound/designs/tracepoints.rst (100%)
 rename Documentation/{ => drivers}/sound/hd-audio/controls.rst (100%)
 rename Documentation/{ => drivers}/sound/hd-audio/dp-mst.rst (100%)
 rename Documentation/{ => drivers}/sound/hd-audio/index.rst (100%)
 rename Documentation/{ => drivers}/sound/hd-audio/models.rst (100%)
 rename Documentation/{ => drivers}/sound/hd-audio/notes.rst (100%)
 rename Documentation/{ => drivers}/sound/index.rst (100%)
 rename Documentation/{ => drivers}/sound/kernel-api/alsa-driver-api.rst (100%)
 rename Documentation/{ => drivers}/sound/kernel-api/index.rst (100%)
 rename Documentation/{ => drivers}/sound/kernel-api/writing-an-alsa-driver.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/clocking.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/codec-to-codec.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/codec.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/dai.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/dapm.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/dpcm.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/index.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/jack.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/machine.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/overview.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/platform.rst (100%)
 rename Documentation/{ => drivers}/sound/soc/pops-clicks.rst (100%)
 rename Documentation/{ => drivers}/usb/CREDITS (100%)
 rename Documentation/{ => drivers}/usb/WUSB-Design-overview.txt (100%)
 rename Documentation/{ => drivers}/usb/acm.txt (100%)
 rename Documentation/{ => drivers}/usb/authorization.txt (100%)
 rename Documentation/{ => drivers}/usb/chipidea.txt (100%)
 rename Documentation/{ => drivers}/usb/dwc3.txt (100%)
 rename Documentation/{ => drivers}/usb/ehci.txt (100%)
 rename Documentation/{ => drivers}/usb/functionfs.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget-testing.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget_configfs.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget_hid.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget_multi.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget_printer.txt (100%)
 rename Documentation/{ => drivers}/usb/gadget_serial.txt (100%)
 rename Documentation/{ => drivers}/usb/iuu_phoenix.txt (100%)
 rename Documentation/{ => drivers}/usb/linux-cdc-acm.inf (100%)
 rename Documentation/{ => drivers}/usb/linux.inf (100%)
 rename Documentation/{ => drivers}/usb/mass-storage.txt (100%)
 rename Documentation/{ => drivers}/usb/misc_usbsevseg.txt (100%)
 rename Documentation/{ => drivers}/usb/mtouchusb.txt (100%)
 rename Documentation/{ => drivers}/usb/ohci.txt (100%)
 rename Documentation/{ => drivers}/usb/rio.txt (100%)
 rename Documentation/{ => drivers}/usb/usb-help.txt (100%)
 rename Documentation/{ => drivers}/usb/usb-serial.txt (100%)
 rename Documentation/{ => drivers}/usb/usbdevfs-drop-permissions.c (100%)
 rename Documentation/{ => drivers}/usb/usbip_protocol.txt (100%)
 rename Documentation/{ => drivers}/usb/usbmon.txt (100%)
 rename Documentation/{ => drivers}/usb/wusb-cbaf (100%)
 rename Documentation/{ => drivers}/watchdog/convert_drivers_to_kernel_api.rst (100%)
 rename Documentation/{ => drivers}/watchdog/hpwdt.rst (100%)
 rename Documentation/{ => drivers}/watchdog/index.rst (100%)
 rename Documentation/{ => drivers}/watchdog/mlx-wdt.rst (100%)
 rename Documentation/{ => drivers}/watchdog/pcwd-watchdog.rst (100%)
 rename Documentation/{ => drivers}/watchdog/watchdog-api.rst (100%)
 rename Documentation/{ => drivers}/watchdog/watchdog-kernel-api.rst (100%)
 rename Documentation/{ => drivers}/watchdog/watchdog-parameters.rst (100%)
 rename Documentation/{ => drivers}/watchdog/watchdog-pm.rst (100%)
 rename Documentation/{ => drivers}/watchdog/wdt.rst (100%)

diff --git a/Documentation/PCI/MSI-HOWTO.txt b/Documentation/drivers/PCI/MSI-HOWTO.txt
similarity index 100%
rename from Documentation/PCI/MSI-HOWTO.txt
rename to Documentation/drivers/PCI/MSI-HOWTO.txt
diff --git a/Documentation/PCI/PCIEBUS-HOWTO.txt b/Documentation/drivers/PCI/PCIEBUS-HOWTO.txt
similarity index 100%
rename from Documentation/PCI/PCIEBUS-HOWTO.txt
rename to Documentation/drivers/PCI/PCIEBUS-HOWTO.txt
diff --git a/Documentation/PCI/acpi-info.txt b/Documentation/drivers/PCI/acpi-info.txt
similarity index 100%
rename from Documentation/PCI/acpi-info.txt
rename to Documentation/drivers/PCI/acpi-info.txt
diff --git a/Documentation/PCI/endpoint/function/binding/pci-test.txt b/Documentation/drivers/PCI/endpoint/function/binding/pci-test.txt
similarity index 100%
rename from Documentation/PCI/endpoint/function/binding/pci-test.txt
rename to Documentation/drivers/PCI/endpoint/function/binding/pci-test.txt
diff --git a/Documentation/PCI/endpoint/pci-endpoint-cfs.txt b/Documentation/drivers/PCI/endpoint/pci-endpoint-cfs.txt
similarity index 100%
rename from Documentation/PCI/endpoint/pci-endpoint-cfs.txt
rename to Documentation/drivers/PCI/endpoint/pci-endpoint-cfs.txt
diff --git a/Documentation/PCI/endpoint/pci-endpoint.txt b/Documentation/drivers/PCI/endpoint/pci-endpoint.txt
similarity index 100%
rename from Documentation/PCI/endpoint/pci-endpoint.txt
rename to Documentation/drivers/PCI/endpoint/pci-endpoint.txt
diff --git a/Documentation/PCI/endpoint/pci-test-function.txt b/Documentation/drivers/PCI/endpoint/pci-test-function.txt
similarity index 100%
rename from Documentation/PCI/endpoint/pci-test-function.txt
rename to Documentation/drivers/PCI/endpoint/pci-test-function.txt
diff --git a/Documentation/PCI/endpoint/pci-test-howto.txt b/Documentation/drivers/PCI/endpoint/pci-test-howto.txt
similarity index 100%
rename from Documentation/PCI/endpoint/pci-test-howto.txt
rename to Documentation/drivers/PCI/endpoint/pci-test-howto.txt
diff --git a/Documentation/PCI/pci-error-recovery.txt b/Documentation/drivers/PCI/pci-error-recovery.txt
similarity index 100%
rename from Documentation/PCI/pci-error-recovery.txt
rename to Documentation/drivers/PCI/pci-error-recovery.txt
diff --git a/Documentation/PCI/pci-iov-howto.txt b/Documentation/drivers/PCI/pci-iov-howto.txt
similarity index 100%
rename from Documentation/PCI/pci-iov-howto.txt
rename to Documentation/drivers/PCI/pci-iov-howto.txt
diff --git a/Documentation/PCI/pci.txt b/Documentation/drivers/PCI/pci.txt
similarity index 100%
rename from Documentation/PCI/pci.txt
rename to Documentation/drivers/PCI/pci.txt
diff --git a/Documentation/PCI/pcieaer-howto.txt b/Documentation/drivers/PCI/pcieaer-howto.txt
similarity index 100%
rename from Documentation/PCI/pcieaer-howto.txt
rename to Documentation/drivers/PCI/pcieaer-howto.txt
diff --git a/Documentation/acpi/dsd/leds.txt b/Documentation/drivers/acpi/dsd/leds.txt
similarity index 100%
rename from Documentation/acpi/dsd/leds.txt
rename to Documentation/drivers/acpi/dsd/leds.txt
diff --git a/Documentation/auxdisplay/cfag12864b b/Documentation/drivers/auxdisplay/cfag12864b
similarity index 100%
rename from Documentation/auxdisplay/cfag12864b
rename to Documentation/drivers/auxdisplay/cfag12864b
diff --git a/Documentation/auxdisplay/ks0108 b/Documentation/drivers/auxdisplay/ks0108
similarity index 100%
rename from Documentation/auxdisplay/ks0108
rename to Documentation/drivers/auxdisplay/ks0108
diff --git a/Documentation/auxdisplay/lcd-panel-cgram.txt b/Documentation/drivers/auxdisplay/lcd-panel-cgram.txt
similarity index 100%
rename from Documentation/auxdisplay/lcd-panel-cgram.txt
rename to Documentation/drivers/auxdisplay/lcd-panel-cgram.txt
diff --git a/Documentation/backlight/lp855x-driver.txt b/Documentation/drivers/backlight/lp855x-driver.txt
similarity index 100%
rename from Documentation/backlight/lp855x-driver.txt
rename to Documentation/drivers/backlight/lp855x-driver.txt
diff --git a/Documentation/blockdev/drbd/DRBD-8.3-data-packets.svg b/Documentation/drivers/blockdev/drbd/DRBD-8.3-data-packets.svg
similarity index 100%
rename from Documentation/blockdev/drbd/DRBD-8.3-data-packets.svg
rename to Documentation/drivers/blockdev/drbd/DRBD-8.3-data-packets.svg
diff --git a/Documentation/blockdev/drbd/DRBD-data-packets.svg b/Documentation/drivers/blockdev/drbd/DRBD-data-packets.svg
similarity index 100%
rename from Documentation/blockdev/drbd/DRBD-data-packets.svg
rename to Documentation/drivers/blockdev/drbd/DRBD-data-packets.svg
diff --git a/Documentation/blockdev/drbd/README.txt b/Documentation/drivers/blockdev/drbd/README.txt
similarity index 100%
rename from Documentation/blockdev/drbd/README.txt
rename to Documentation/drivers/blockdev/drbd/README.txt
diff --git a/Documentation/blockdev/drbd/conn-states-8.dot b/Documentation/drivers/blockdev/drbd/conn-states-8.dot
similarity index 100%
rename from Documentation/blockdev/drbd/conn-states-8.dot
rename to Documentation/drivers/blockdev/drbd/conn-states-8.dot
diff --git a/Documentation/blockdev/drbd/data-structure-v9.txt b/Documentation/drivers/blockdev/drbd/data-structure-v9.txt
similarity index 100%
rename from Documentation/blockdev/drbd/data-structure-v9.txt
rename to Documentation/drivers/blockdev/drbd/data-structure-v9.txt
diff --git a/Documentation/blockdev/drbd/disk-states-8.dot b/Documentation/drivers/blockdev/drbd/disk-states-8.dot
similarity index 100%
rename from Documentation/blockdev/drbd/disk-states-8.dot
rename to Documentation/drivers/blockdev/drbd/disk-states-8.dot
diff --git a/Documentation/blockdev/drbd/drbd-connection-state-overview.dot b/Documentation/drivers/blockdev/drbd/drbd-connection-state-overview.dot
similarity index 100%
rename from Documentation/blockdev/drbd/drbd-connection-state-overview.dot
rename to Documentation/drivers/blockdev/drbd/drbd-connection-state-overview.dot
diff --git a/Documentation/blockdev/drbd/node-states-8.dot b/Documentation/drivers/blockdev/drbd/node-states-8.dot
similarity index 100%
rename from Documentation/blockdev/drbd/node-states-8.dot
rename to Documentation/drivers/blockdev/drbd/node-states-8.dot
diff --git a/Documentation/blockdev/floppy.txt b/Documentation/drivers/blockdev/floppy.txt
similarity index 100%
rename from Documentation/blockdev/floppy.txt
rename to Documentation/drivers/blockdev/floppy.txt
diff --git a/Documentation/blockdev/nbd.txt b/Documentation/drivers/blockdev/nbd.txt
similarity index 100%
rename from Documentation/blockdev/nbd.txt
rename to Documentation/drivers/blockdev/nbd.txt
diff --git a/Documentation/blockdev/paride.txt b/Documentation/drivers/blockdev/paride.txt
similarity index 100%
rename from Documentation/blockdev/paride.txt
rename to Documentation/drivers/blockdev/paride.txt
diff --git a/Documentation/blockdev/ramdisk.txt b/Documentation/drivers/blockdev/ramdisk.txt
similarity index 100%
rename from Documentation/blockdev/ramdisk.txt
rename to Documentation/drivers/blockdev/ramdisk.txt
diff --git a/Documentation/blockdev/zram.txt b/Documentation/drivers/blockdev/zram.txt
similarity index 100%
rename from Documentation/blockdev/zram.txt
rename to Documentation/drivers/blockdev/zram.txt
diff --git a/Documentation/bus-devices/ti-gpmc.txt b/Documentation/drivers/bus/ti-gpmc.txt
similarity index 100%
rename from Documentation/bus-devices/ti-gpmc.txt
rename to Documentation/drivers/bus/ti-gpmc.txt
diff --git a/Documentation/cdrom/cdrom-standard.rst b/Documentation/drivers/cdrom/cdrom-standard.rst
similarity index 100%
rename from Documentation/cdrom/cdrom-standard.rst
rename to Documentation/drivers/cdrom/cdrom-standard.rst
diff --git a/Documentation/cdrom/ide-cd.rst b/Documentation/drivers/cdrom/ide-cd.rst
similarity index 100%
rename from Documentation/cdrom/ide-cd.rst
rename to Documentation/drivers/cdrom/ide-cd.rst
diff --git a/Documentation/cdrom/index.rst b/Documentation/drivers/cdrom/index.rst
similarity index 100%
rename from Documentation/cdrom/index.rst
rename to Documentation/drivers/cdrom/index.rst
diff --git a/Documentation/cdrom/packet-writing.rst b/Documentation/drivers/cdrom/packet-writing.rst
similarity index 100%
rename from Documentation/cdrom/packet-writing.rst
rename to Documentation/drivers/cdrom/packet-writing.rst
diff --git a/Documentation/cpu-freq/amd-powernow.txt b/Documentation/drivers/cpu-freq/amd-powernow.txt
similarity index 100%
rename from Documentation/cpu-freq/amd-powernow.txt
rename to Documentation/drivers/cpu-freq/amd-powernow.txt
diff --git a/Documentation/cpu-freq/core.txt b/Documentation/drivers/cpu-freq/core.txt
similarity index 100%
rename from Documentation/cpu-freq/core.txt
rename to Documentation/drivers/cpu-freq/core.txt
diff --git a/Documentation/cpu-freq/cpu-drivers.txt b/Documentation/drivers/cpu-freq/cpu-drivers.txt
similarity index 100%
rename from Documentation/cpu-freq/cpu-drivers.txt
rename to Documentation/drivers/cpu-freq/cpu-drivers.txt
diff --git a/Documentation/cpu-freq/cpufreq-nforce2.txt b/Documentation/drivers/cpu-freq/cpufreq-nforce2.txt
similarity index 100%
rename from Documentation/cpu-freq/cpufreq-nforce2.txt
rename to Documentation/drivers/cpu-freq/cpufreq-nforce2.txt
diff --git a/Documentation/cpu-freq/cpufreq-stats.txt b/Documentation/drivers/cpu-freq/cpufreq-stats.txt
similarity index 100%
rename from Documentation/cpu-freq/cpufreq-stats.txt
rename to Documentation/drivers/cpu-freq/cpufreq-stats.txt
diff --git a/Documentation/cpu-freq/index.txt b/Documentation/drivers/cpu-freq/index.txt
similarity index 100%
rename from Documentation/cpu-freq/index.txt
rename to Documentation/drivers/cpu-freq/index.txt
diff --git a/Documentation/cpu-freq/pcc-cpufreq.txt b/Documentation/drivers/cpu-freq/pcc-cpufreq.txt
similarity index 100%
rename from Documentation/cpu-freq/pcc-cpufreq.txt
rename to Documentation/drivers/cpu-freq/pcc-cpufreq.txt
diff --git a/Documentation/crypto/api-aead.rst b/Documentation/drivers/crypto/api-aead.rst
similarity index 100%
rename from Documentation/crypto/api-aead.rst
rename to Documentation/drivers/crypto/api-aead.rst
diff --git a/Documentation/crypto/api-akcipher.rst b/Documentation/drivers/crypto/api-akcipher.rst
similarity index 100%
rename from Documentation/crypto/api-akcipher.rst
rename to Documentation/drivers/crypto/api-akcipher.rst
diff --git a/Documentation/crypto/api-digest.rst b/Documentation/drivers/crypto/api-digest.rst
similarity index 100%
rename from Documentation/crypto/api-digest.rst
rename to Documentation/drivers/crypto/api-digest.rst
diff --git a/Documentation/crypto/api-intro.txt b/Documentation/drivers/crypto/api-intro.txt
similarity index 100%
rename from Documentation/crypto/api-intro.txt
rename to Documentation/drivers/crypto/api-intro.txt
diff --git a/Documentation/crypto/api-kpp.rst b/Documentation/drivers/crypto/api-kpp.rst
similarity index 100%
rename from Documentation/crypto/api-kpp.rst
rename to Documentation/drivers/crypto/api-kpp.rst
diff --git a/Documentation/crypto/api-rng.rst b/Documentation/drivers/crypto/api-rng.rst
similarity index 100%
rename from Documentation/crypto/api-rng.rst
rename to Documentation/drivers/crypto/api-rng.rst
diff --git a/Documentation/crypto/api-samples.rst b/Documentation/drivers/crypto/api-samples.rst
similarity index 100%
rename from Documentation/crypto/api-samples.rst
rename to Documentation/drivers/crypto/api-samples.rst
diff --git a/Documentation/crypto/api-skcipher.rst b/Documentation/drivers/crypto/api-skcipher.rst
similarity index 100%
rename from Documentation/crypto/api-skcipher.rst
rename to Documentation/drivers/crypto/api-skcipher.rst
diff --git a/Documentation/crypto/api.rst b/Documentation/drivers/crypto/api.rst
similarity index 100%
rename from Documentation/crypto/api.rst
rename to Documentation/drivers/crypto/api.rst
diff --git a/Documentation/crypto/architecture.rst b/Documentation/drivers/crypto/architecture.rst
similarity index 100%
rename from Documentation/crypto/architecture.rst
rename to Documentation/drivers/crypto/architecture.rst
diff --git a/Documentation/crypto/asymmetric-keys.txt b/Documentation/drivers/crypto/asymmetric-keys.txt
similarity index 100%
rename from Documentation/crypto/asymmetric-keys.txt
rename to Documentation/drivers/crypto/asymmetric-keys.txt
diff --git a/Documentation/crypto/async-tx-api.txt b/Documentation/drivers/crypto/async-tx-api.txt
similarity index 100%
rename from Documentation/crypto/async-tx-api.txt
rename to Documentation/drivers/crypto/async-tx-api.txt
diff --git a/Documentation/crypto/conf.py b/Documentation/drivers/crypto/conf.py
similarity index 100%
rename from Documentation/crypto/conf.py
rename to Documentation/drivers/crypto/conf.py
diff --git a/Documentation/crypto/crypto_engine.rst b/Documentation/drivers/crypto/crypto_engine.rst
similarity index 100%
rename from Documentation/crypto/crypto_engine.rst
rename to Documentation/drivers/crypto/crypto_engine.rst
diff --git a/Documentation/crypto/descore-readme.txt b/Documentation/drivers/crypto/descore-readme.txt
similarity index 100%
rename from Documentation/crypto/descore-readme.txt
rename to Documentation/drivers/crypto/descore-readme.txt
diff --git a/Documentation/crypto/devel-algos.rst b/Documentation/drivers/crypto/devel-algos.rst
similarity index 100%
rename from Documentation/crypto/devel-algos.rst
rename to Documentation/drivers/crypto/devel-algos.rst
diff --git a/Documentation/crypto/index.rst b/Documentation/drivers/crypto/index.rst
similarity index 100%
rename from Documentation/crypto/index.rst
rename to Documentation/drivers/crypto/index.rst
diff --git a/Documentation/crypto/intro.rst b/Documentation/drivers/crypto/intro.rst
similarity index 100%
rename from Documentation/crypto/intro.rst
rename to Documentation/drivers/crypto/intro.rst
diff --git a/Documentation/crypto/userspace-if.rst b/Documentation/drivers/crypto/userspace-if.rst
similarity index 100%
rename from Documentation/crypto/userspace-if.rst
rename to Documentation/drivers/crypto/userspace-if.rst
diff --git a/Documentation/device-mapper/cache-policies.rst b/Documentation/drivers/device-mapper/cache-policies.rst
similarity index 100%
rename from Documentation/device-mapper/cache-policies.rst
rename to Documentation/drivers/device-mapper/cache-policies.rst
diff --git a/Documentation/device-mapper/cache.rst b/Documentation/drivers/device-mapper/cache.rst
similarity index 100%
rename from Documentation/device-mapper/cache.rst
rename to Documentation/drivers/device-mapper/cache.rst
diff --git a/Documentation/device-mapper/delay.rst b/Documentation/drivers/device-mapper/delay.rst
similarity index 100%
rename from Documentation/device-mapper/delay.rst
rename to Documentation/drivers/device-mapper/delay.rst
diff --git a/Documentation/device-mapper/dm-crypt.rst b/Documentation/drivers/device-mapper/dm-crypt.rst
similarity index 100%
rename from Documentation/device-mapper/dm-crypt.rst
rename to Documentation/drivers/device-mapper/dm-crypt.rst
diff --git a/Documentation/device-mapper/dm-dust.txt b/Documentation/drivers/device-mapper/dm-dust.txt
similarity index 100%
rename from Documentation/device-mapper/dm-dust.txt
rename to Documentation/drivers/device-mapper/dm-dust.txt
diff --git a/Documentation/device-mapper/dm-flakey.rst b/Documentation/drivers/device-mapper/dm-flakey.rst
similarity index 100%
rename from Documentation/device-mapper/dm-flakey.rst
rename to Documentation/drivers/device-mapper/dm-flakey.rst
diff --git a/Documentation/device-mapper/dm-init.rst b/Documentation/drivers/device-mapper/dm-init.rst
similarity index 100%
rename from Documentation/device-mapper/dm-init.rst
rename to Documentation/drivers/device-mapper/dm-init.rst
diff --git a/Documentation/device-mapper/dm-integrity.rst b/Documentation/drivers/device-mapper/dm-integrity.rst
similarity index 100%
rename from Documentation/device-mapper/dm-integrity.rst
rename to Documentation/drivers/device-mapper/dm-integrity.rst
diff --git a/Documentation/device-mapper/dm-io.rst b/Documentation/drivers/device-mapper/dm-io.rst
similarity index 100%
rename from Documentation/device-mapper/dm-io.rst
rename to Documentation/drivers/device-mapper/dm-io.rst
diff --git a/Documentation/device-mapper/dm-log.rst b/Documentation/drivers/device-mapper/dm-log.rst
similarity index 100%
rename from Documentation/device-mapper/dm-log.rst
rename to Documentation/drivers/device-mapper/dm-log.rst
diff --git a/Documentation/device-mapper/dm-queue-length.rst b/Documentation/drivers/device-mapper/dm-queue-length.rst
similarity index 100%
rename from Documentation/device-mapper/dm-queue-length.rst
rename to Documentation/drivers/device-mapper/dm-queue-length.rst
diff --git a/Documentation/device-mapper/dm-raid.rst b/Documentation/drivers/device-mapper/dm-raid.rst
similarity index 100%
rename from Documentation/device-mapper/dm-raid.rst
rename to Documentation/drivers/device-mapper/dm-raid.rst
diff --git a/Documentation/device-mapper/dm-service-time.rst b/Documentation/drivers/device-mapper/dm-service-time.rst
similarity index 100%
rename from Documentation/device-mapper/dm-service-time.rst
rename to Documentation/drivers/device-mapper/dm-service-time.rst
diff --git a/Documentation/device-mapper/dm-uevent.rst b/Documentation/drivers/device-mapper/dm-uevent.rst
similarity index 100%
rename from Documentation/device-mapper/dm-uevent.rst
rename to Documentation/drivers/device-mapper/dm-uevent.rst
diff --git a/Documentation/device-mapper/dm-zoned.rst b/Documentation/drivers/device-mapper/dm-zoned.rst
similarity index 100%
rename from Documentation/device-mapper/dm-zoned.rst
rename to Documentation/drivers/device-mapper/dm-zoned.rst
diff --git a/Documentation/device-mapper/era.rst b/Documentation/drivers/device-mapper/era.rst
similarity index 100%
rename from Documentation/device-mapper/era.rst
rename to Documentation/drivers/device-mapper/era.rst
diff --git a/Documentation/device-mapper/index.rst b/Documentation/drivers/device-mapper/index.rst
similarity index 100%
rename from Documentation/device-mapper/index.rst
rename to Documentation/drivers/device-mapper/index.rst
diff --git a/Documentation/device-mapper/kcopyd.rst b/Documentation/drivers/device-mapper/kcopyd.rst
similarity index 100%
rename from Documentation/device-mapper/kcopyd.rst
rename to Documentation/drivers/device-mapper/kcopyd.rst
diff --git a/Documentation/device-mapper/linear.rst b/Documentation/drivers/device-mapper/linear.rst
similarity index 100%
rename from Documentation/device-mapper/linear.rst
rename to Documentation/drivers/device-mapper/linear.rst
diff --git a/Documentation/device-mapper/log-writes.rst b/Documentation/drivers/device-mapper/log-writes.rst
similarity index 100%
rename from Documentation/device-mapper/log-writes.rst
rename to Documentation/drivers/device-mapper/log-writes.rst
diff --git a/Documentation/device-mapper/persistent-data.rst b/Documentation/drivers/device-mapper/persistent-data.rst
similarity index 100%
rename from Documentation/device-mapper/persistent-data.rst
rename to Documentation/drivers/device-mapper/persistent-data.rst
diff --git a/Documentation/device-mapper/snapshot.rst b/Documentation/drivers/device-mapper/snapshot.rst
similarity index 100%
rename from Documentation/device-mapper/snapshot.rst
rename to Documentation/drivers/device-mapper/snapshot.rst
diff --git a/Documentation/device-mapper/statistics.rst b/Documentation/drivers/device-mapper/statistics.rst
similarity index 100%
rename from Documentation/device-mapper/statistics.rst
rename to Documentation/drivers/device-mapper/statistics.rst
diff --git a/Documentation/device-mapper/striped.rst b/Documentation/drivers/device-mapper/striped.rst
similarity index 100%
rename from Documentation/device-mapper/striped.rst
rename to Documentation/drivers/device-mapper/striped.rst
diff --git a/Documentation/device-mapper/switch.rst b/Documentation/drivers/device-mapper/switch.rst
similarity index 100%
rename from Documentation/device-mapper/switch.rst
rename to Documentation/drivers/device-mapper/switch.rst
diff --git a/Documentation/device-mapper/thin-provisioning.rst b/Documentation/drivers/device-mapper/thin-provisioning.rst
similarity index 100%
rename from Documentation/device-mapper/thin-provisioning.rst
rename to Documentation/drivers/device-mapper/thin-provisioning.rst
diff --git a/Documentation/device-mapper/unstriped.rst b/Documentation/drivers/device-mapper/unstriped.rst
similarity index 100%
rename from Documentation/device-mapper/unstriped.rst
rename to Documentation/drivers/device-mapper/unstriped.rst
diff --git a/Documentation/device-mapper/verity.rst b/Documentation/drivers/device-mapper/verity.rst
similarity index 100%
rename from Documentation/device-mapper/verity.rst
rename to Documentation/drivers/device-mapper/verity.rst
diff --git a/Documentation/device-mapper/writecache.rst b/Documentation/drivers/device-mapper/writecache.rst
similarity index 100%
rename from Documentation/device-mapper/writecache.rst
rename to Documentation/drivers/device-mapper/writecache.rst
diff --git a/Documentation/device-mapper/zero.rst b/Documentation/drivers/device-mapper/zero.rst
similarity index 100%
rename from Documentation/device-mapper/zero.rst
rename to Documentation/drivers/device-mapper/zero.rst
diff --git a/Documentation/driver-api/80211/cfg80211.rst b/Documentation/drivers/driver-api/80211/cfg80211.rst
similarity index 100%
rename from Documentation/driver-api/80211/cfg80211.rst
rename to Documentation/drivers/driver-api/80211/cfg80211.rst
diff --git a/Documentation/driver-api/80211/conf.py b/Documentation/drivers/driver-api/80211/conf.py
similarity index 100%
rename from Documentation/driver-api/80211/conf.py
rename to Documentation/drivers/driver-api/80211/conf.py
diff --git a/Documentation/driver-api/80211/index.rst b/Documentation/drivers/driver-api/80211/index.rst
similarity index 100%
rename from Documentation/driver-api/80211/index.rst
rename to Documentation/drivers/driver-api/80211/index.rst
diff --git a/Documentation/driver-api/80211/introduction.rst b/Documentation/drivers/driver-api/80211/introduction.rst
similarity index 100%
rename from Documentation/driver-api/80211/introduction.rst
rename to Documentation/drivers/driver-api/80211/introduction.rst
diff --git a/Documentation/driver-api/80211/mac80211-advanced.rst b/Documentation/drivers/driver-api/80211/mac80211-advanced.rst
similarity index 100%
rename from Documentation/driver-api/80211/mac80211-advanced.rst
rename to Documentation/drivers/driver-api/80211/mac80211-advanced.rst
diff --git a/Documentation/driver-api/80211/mac80211.rst b/Documentation/drivers/driver-api/80211/mac80211.rst
similarity index 100%
rename from Documentation/driver-api/80211/mac80211.rst
rename to Documentation/drivers/driver-api/80211/mac80211.rst
diff --git a/Documentation/driver-api/acpi/index.rst b/Documentation/drivers/driver-api/acpi/index.rst
similarity index 100%
rename from Documentation/driver-api/acpi/index.rst
rename to Documentation/drivers/driver-api/acpi/index.rst
diff --git a/Documentation/driver-api/acpi/linuxized-acpica.rst b/Documentation/drivers/driver-api/acpi/linuxized-acpica.rst
similarity index 100%
rename from Documentation/driver-api/acpi/linuxized-acpica.rst
rename to Documentation/drivers/driver-api/acpi/linuxized-acpica.rst
diff --git a/Documentation/driver-api/acpi/scan_handlers.rst b/Documentation/drivers/driver-api/acpi/scan_handlers.rst
similarity index 100%
rename from Documentation/driver-api/acpi/scan_handlers.rst
rename to Documentation/drivers/driver-api/acpi/scan_handlers.rst
diff --git a/Documentation/driver-api/basics.rst b/Documentation/drivers/driver-api/basics.rst
similarity index 100%
rename from Documentation/driver-api/basics.rst
rename to Documentation/drivers/driver-api/basics.rst
diff --git a/Documentation/driver-api/clk.rst b/Documentation/drivers/driver-api/clk.rst
similarity index 100%
rename from Documentation/driver-api/clk.rst
rename to Documentation/drivers/driver-api/clk.rst
diff --git a/Documentation/driver-api/component.rst b/Documentation/drivers/driver-api/component.rst
similarity index 100%
rename from Documentation/driver-api/component.rst
rename to Documentation/drivers/driver-api/component.rst
diff --git a/Documentation/driver-api/conf.py b/Documentation/drivers/driver-api/conf.py
similarity index 100%
rename from Documentation/driver-api/conf.py
rename to Documentation/drivers/driver-api/conf.py
diff --git a/Documentation/driver-api/device-io.rst b/Documentation/drivers/driver-api/device-io.rst
similarity index 100%
rename from Documentation/driver-api/device-io.rst
rename to Documentation/drivers/driver-api/device-io.rst
diff --git a/Documentation/driver-api/device_connection.rst b/Documentation/drivers/driver-api/device_connection.rst
similarity index 100%
rename from Documentation/driver-api/device_connection.rst
rename to Documentation/drivers/driver-api/device_connection.rst
diff --git a/Documentation/driver-api/device_link.rst b/Documentation/drivers/driver-api/device_link.rst
similarity index 100%
rename from Documentation/driver-api/device_link.rst
rename to Documentation/drivers/driver-api/device_link.rst
diff --git a/Documentation/driver-api/dma-buf.rst b/Documentation/drivers/driver-api/dma-buf.rst
similarity index 100%
rename from Documentation/driver-api/dma-buf.rst
rename to Documentation/drivers/driver-api/dma-buf.rst
diff --git a/Documentation/driver-api/dmaengine/client.rst b/Documentation/drivers/driver-api/dmaengine/client.rst
similarity index 100%
rename from Documentation/driver-api/dmaengine/client.rst
rename to Documentation/drivers/driver-api/dmaengine/client.rst
diff --git a/Documentation/driver-api/dmaengine/dmatest.rst b/Documentation/drivers/driver-api/dmaengine/dmatest.rst
similarity index 100%
rename from Documentation/driver-api/dmaengine/dmatest.rst
rename to Documentation/drivers/driver-api/dmaengine/dmatest.rst
diff --git a/Documentation/driver-api/dmaengine/index.rst b/Documentation/drivers/driver-api/dmaengine/index.rst
similarity index 100%
rename from Documentation/driver-api/dmaengine/index.rst
rename to Documentation/drivers/driver-api/dmaengine/index.rst
diff --git a/Documentation/driver-api/dmaengine/provider.rst b/Documentation/drivers/driver-api/dmaengine/provider.rst
similarity index 100%
rename from Documentation/driver-api/dmaengine/provider.rst
rename to Documentation/drivers/driver-api/dmaengine/provider.rst
diff --git a/Documentation/driver-api/dmaengine/pxa_dma.rst b/Documentation/drivers/driver-api/dmaengine/pxa_dma.rst
similarity index 100%
rename from Documentation/driver-api/dmaengine/pxa_dma.rst
rename to Documentation/drivers/driver-api/dmaengine/pxa_dma.rst
diff --git a/Documentation/driver-api/edac.rst b/Documentation/drivers/driver-api/edac.rst
similarity index 100%
rename from Documentation/driver-api/edac.rst
rename to Documentation/drivers/driver-api/edac.rst
diff --git a/Documentation/driver-api/firewire.rst b/Documentation/drivers/driver-api/firewire.rst
similarity index 100%
rename from Documentation/driver-api/firewire.rst
rename to Documentation/drivers/driver-api/firewire.rst
diff --git a/Documentation/driver-api/firmware/built-in-fw.rst b/Documentation/drivers/driver-api/firmware/built-in-fw.rst
similarity index 100%
rename from Documentation/driver-api/firmware/built-in-fw.rst
rename to Documentation/drivers/driver-api/firmware/built-in-fw.rst
diff --git a/Documentation/driver-api/firmware/core.rst b/Documentation/drivers/driver-api/firmware/core.rst
similarity index 100%
rename from Documentation/driver-api/firmware/core.rst
rename to Documentation/drivers/driver-api/firmware/core.rst
diff --git a/Documentation/driver-api/firmware/direct-fs-lookup.rst b/Documentation/drivers/driver-api/firmware/direct-fs-lookup.rst
similarity index 100%
rename from Documentation/driver-api/firmware/direct-fs-lookup.rst
rename to Documentation/drivers/driver-api/firmware/direct-fs-lookup.rst
diff --git a/Documentation/driver-api/firmware/fallback-mechanisms.rst b/Documentation/drivers/driver-api/firmware/fallback-mechanisms.rst
similarity index 100%
rename from Documentation/driver-api/firmware/fallback-mechanisms.rst
rename to Documentation/drivers/driver-api/firmware/fallback-mechanisms.rst
diff --git a/Documentation/driver-api/firmware/firmware_cache.rst b/Documentation/drivers/driver-api/firmware/firmware_cache.rst
similarity index 100%
rename from Documentation/driver-api/firmware/firmware_cache.rst
rename to Documentation/drivers/driver-api/firmware/firmware_cache.rst
diff --git a/Documentation/driver-api/firmware/fw_search_path.rst b/Documentation/drivers/driver-api/firmware/fw_search_path.rst
similarity index 100%
rename from Documentation/driver-api/firmware/fw_search_path.rst
rename to Documentation/drivers/driver-api/firmware/fw_search_path.rst
diff --git a/Documentation/driver-api/firmware/index.rst b/Documentation/drivers/driver-api/firmware/index.rst
similarity index 100%
rename from Documentation/driver-api/firmware/index.rst
rename to Documentation/drivers/driver-api/firmware/index.rst
diff --git a/Documentation/driver-api/firmware/introduction.rst b/Documentation/drivers/driver-api/firmware/introduction.rst
similarity index 100%
rename from Documentation/driver-api/firmware/introduction.rst
rename to Documentation/drivers/driver-api/firmware/introduction.rst
diff --git a/Documentation/driver-api/firmware/lookup-order.rst b/Documentation/drivers/driver-api/firmware/lookup-order.rst
similarity index 100%
rename from Documentation/driver-api/firmware/lookup-order.rst
rename to Documentation/drivers/driver-api/firmware/lookup-order.rst
diff --git a/Documentation/driver-api/firmware/other_interfaces.rst b/Documentation/drivers/driver-api/firmware/other_interfaces.rst
similarity index 100%
rename from Documentation/driver-api/firmware/other_interfaces.rst
rename to Documentation/drivers/driver-api/firmware/other_interfaces.rst
diff --git a/Documentation/driver-api/firmware/request_firmware.rst b/Documentation/drivers/driver-api/firmware/request_firmware.rst
similarity index 100%
rename from Documentation/driver-api/firmware/request_firmware.rst
rename to Documentation/drivers/driver-api/firmware/request_firmware.rst
diff --git a/Documentation/driver-api/fpga/fpga-bridge.rst b/Documentation/drivers/driver-api/fpga/fpga-bridge.rst
similarity index 100%
rename from Documentation/driver-api/fpga/fpga-bridge.rst
rename to Documentation/drivers/driver-api/fpga/fpga-bridge.rst
diff --git a/Documentation/driver-api/fpga/fpga-mgr.rst b/Documentation/drivers/driver-api/fpga/fpga-mgr.rst
similarity index 100%
rename from Documentation/driver-api/fpga/fpga-mgr.rst
rename to Documentation/drivers/driver-api/fpga/fpga-mgr.rst
diff --git a/Documentation/driver-api/fpga/fpga-programming.rst b/Documentation/drivers/driver-api/fpga/fpga-programming.rst
similarity index 100%
rename from Documentation/driver-api/fpga/fpga-programming.rst
rename to Documentation/drivers/driver-api/fpga/fpga-programming.rst
diff --git a/Documentation/driver-api/fpga/fpga-region.rst b/Documentation/drivers/driver-api/fpga/fpga-region.rst
similarity index 100%
rename from Documentation/driver-api/fpga/fpga-region.rst
rename to Documentation/drivers/driver-api/fpga/fpga-region.rst
diff --git a/Documentation/driver-api/fpga/index.rst b/Documentation/drivers/driver-api/fpga/index.rst
similarity index 100%
rename from Documentation/driver-api/fpga/index.rst
rename to Documentation/drivers/driver-api/fpga/index.rst
diff --git a/Documentation/driver-api/fpga/intro.rst b/Documentation/drivers/driver-api/fpga/intro.rst
similarity index 100%
rename from Documentation/driver-api/fpga/intro.rst
rename to Documentation/drivers/driver-api/fpga/intro.rst
diff --git a/Documentation/driver-api/frame-buffer.rst b/Documentation/drivers/driver-api/frame-buffer.rst
similarity index 100%
rename from Documentation/driver-api/frame-buffer.rst
rename to Documentation/drivers/driver-api/frame-buffer.rst
diff --git a/Documentation/driver-api/generic-counter.rst b/Documentation/drivers/driver-api/generic-counter.rst
similarity index 100%
rename from Documentation/driver-api/generic-counter.rst
rename to Documentation/drivers/driver-api/generic-counter.rst
diff --git a/Documentation/driver-api/gpio/board.rst b/Documentation/drivers/driver-api/gpio/board.rst
similarity index 100%
rename from Documentation/driver-api/gpio/board.rst
rename to Documentation/drivers/driver-api/gpio/board.rst
diff --git a/Documentation/driver-api/gpio/consumer.rst b/Documentation/drivers/driver-api/gpio/consumer.rst
similarity index 100%
rename from Documentation/driver-api/gpio/consumer.rst
rename to Documentation/drivers/driver-api/gpio/consumer.rst
diff --git a/Documentation/driver-api/gpio/driver.rst b/Documentation/drivers/driver-api/gpio/driver.rst
similarity index 100%
rename from Documentation/driver-api/gpio/driver.rst
rename to Documentation/drivers/driver-api/gpio/driver.rst
diff --git a/Documentation/driver-api/gpio/drivers-on-gpio.rst b/Documentation/drivers/driver-api/gpio/drivers-on-gpio.rst
similarity index 100%
rename from Documentation/driver-api/gpio/drivers-on-gpio.rst
rename to Documentation/drivers/driver-api/gpio/drivers-on-gpio.rst
diff --git a/Documentation/driver-api/gpio/index.rst b/Documentation/drivers/driver-api/gpio/index.rst
similarity index 100%
rename from Documentation/driver-api/gpio/index.rst
rename to Documentation/drivers/driver-api/gpio/index.rst
diff --git a/Documentation/driver-api/gpio/intro.rst b/Documentation/drivers/driver-api/gpio/intro.rst
similarity index 100%
rename from Documentation/driver-api/gpio/intro.rst
rename to Documentation/drivers/driver-api/gpio/intro.rst
diff --git a/Documentation/driver-api/gpio/legacy.rst b/Documentation/drivers/driver-api/gpio/legacy.rst
similarity index 100%
rename from Documentation/driver-api/gpio/legacy.rst
rename to Documentation/drivers/driver-api/gpio/legacy.rst
diff --git a/Documentation/driver-api/hsi.rst b/Documentation/drivers/driver-api/hsi.rst
similarity index 100%
rename from Documentation/driver-api/hsi.rst
rename to Documentation/drivers/driver-api/hsi.rst
diff --git a/Documentation/driver-api/i2c.rst b/Documentation/drivers/driver-api/i2c.rst
similarity index 100%
rename from Documentation/driver-api/i2c.rst
rename to Documentation/drivers/driver-api/i2c.rst
diff --git a/Documentation/driver-api/i3c/device-driver-api.rst b/Documentation/drivers/driver-api/i3c/device-driver-api.rst
similarity index 100%
rename from Documentation/driver-api/i3c/device-driver-api.rst
rename to Documentation/drivers/driver-api/i3c/device-driver-api.rst
diff --git a/Documentation/driver-api/i3c/index.rst b/Documentation/drivers/driver-api/i3c/index.rst
similarity index 100%
rename from Documentation/driver-api/i3c/index.rst
rename to Documentation/drivers/driver-api/i3c/index.rst
diff --git a/Documentation/driver-api/i3c/master-driver-api.rst b/Documentation/drivers/driver-api/i3c/master-driver-api.rst
similarity index 100%
rename from Documentation/driver-api/i3c/master-driver-api.rst
rename to Documentation/drivers/driver-api/i3c/master-driver-api.rst
diff --git a/Documentation/driver-api/i3c/protocol.rst b/Documentation/drivers/driver-api/i3c/protocol.rst
similarity index 100%
rename from Documentation/driver-api/i3c/protocol.rst
rename to Documentation/drivers/driver-api/i3c/protocol.rst
diff --git a/Documentation/driver-api/iio/buffers.rst b/Documentation/drivers/driver-api/iio/buffers.rst
similarity index 100%
rename from Documentation/driver-api/iio/buffers.rst
rename to Documentation/drivers/driver-api/iio/buffers.rst
diff --git a/Documentation/driver-api/iio/core.rst b/Documentation/drivers/driver-api/iio/core.rst
similarity index 100%
rename from Documentation/driver-api/iio/core.rst
rename to Documentation/drivers/driver-api/iio/core.rst
diff --git a/Documentation/driver-api/iio/hw-consumer.rst b/Documentation/drivers/driver-api/iio/hw-consumer.rst
similarity index 100%
rename from Documentation/driver-api/iio/hw-consumer.rst
rename to Documentation/drivers/driver-api/iio/hw-consumer.rst
diff --git a/Documentation/driver-api/iio/index.rst b/Documentation/drivers/driver-api/iio/index.rst
similarity index 100%
rename from Documentation/driver-api/iio/index.rst
rename to Documentation/drivers/driver-api/iio/index.rst
diff --git a/Documentation/driver-api/iio/intro.rst b/Documentation/drivers/driver-api/iio/intro.rst
similarity index 100%
rename from Documentation/driver-api/iio/intro.rst
rename to Documentation/drivers/driver-api/iio/intro.rst
diff --git a/Documentation/driver-api/iio/triggered-buffers.rst b/Documentation/drivers/driver-api/iio/triggered-buffers.rst
similarity index 100%
rename from Documentation/driver-api/iio/triggered-buffers.rst
rename to Documentation/drivers/driver-api/iio/triggered-buffers.rst
diff --git a/Documentation/driver-api/iio/triggers.rst b/Documentation/drivers/driver-api/iio/triggers.rst
similarity index 100%
rename from Documentation/driver-api/iio/triggers.rst
rename to Documentation/drivers/driver-api/iio/triggers.rst
diff --git a/Documentation/driver-api/index.rst b/Documentation/drivers/driver-api/index.rst
similarity index 100%
rename from Documentation/driver-api/index.rst
rename to Documentation/drivers/driver-api/index.rst
diff --git a/Documentation/driver-api/infrastructure.rst b/Documentation/drivers/driver-api/infrastructure.rst
similarity index 100%
rename from Documentation/driver-api/infrastructure.rst
rename to Documentation/drivers/driver-api/infrastructure.rst
diff --git a/Documentation/driver-api/input.rst b/Documentation/drivers/driver-api/input.rst
similarity index 100%
rename from Documentation/driver-api/input.rst
rename to Documentation/drivers/driver-api/input.rst
diff --git a/Documentation/driver-api/libata.rst b/Documentation/drivers/driver-api/libata.rst
similarity index 100%
rename from Documentation/driver-api/libata.rst
rename to Documentation/drivers/driver-api/libata.rst
diff --git a/Documentation/driver-api/message-based.rst b/Documentation/drivers/driver-api/message-based.rst
similarity index 100%
rename from Documentation/driver-api/message-based.rst
rename to Documentation/drivers/driver-api/message-based.rst
diff --git a/Documentation/driver-api/misc_devices.rst b/Documentation/drivers/driver-api/misc_devices.rst
similarity index 100%
rename from Documentation/driver-api/misc_devices.rst
rename to Documentation/drivers/driver-api/misc_devices.rst
diff --git a/Documentation/driver-api/miscellaneous.rst b/Documentation/drivers/driver-api/miscellaneous.rst
similarity index 100%
rename from Documentation/driver-api/miscellaneous.rst
rename to Documentation/drivers/driver-api/miscellaneous.rst
diff --git a/Documentation/driver-api/mtdnand.rst b/Documentation/drivers/driver-api/mtdnand.rst
similarity index 100%
rename from Documentation/driver-api/mtdnand.rst
rename to Documentation/drivers/driver-api/mtdnand.rst
diff --git a/Documentation/driver-api/pci/index.rst b/Documentation/drivers/driver-api/pci/index.rst
similarity index 100%
rename from Documentation/driver-api/pci/index.rst
rename to Documentation/drivers/driver-api/pci/index.rst
diff --git a/Documentation/driver-api/pci/p2pdma.rst b/Documentation/drivers/driver-api/pci/p2pdma.rst
similarity index 100%
rename from Documentation/driver-api/pci/p2pdma.rst
rename to Documentation/drivers/driver-api/pci/p2pdma.rst
diff --git a/Documentation/driver-api/pci/pci.rst b/Documentation/drivers/driver-api/pci/pci.rst
similarity index 100%
rename from Documentation/driver-api/pci/pci.rst
rename to Documentation/drivers/driver-api/pci/pci.rst
diff --git a/Documentation/driver-api/pinctl.rst b/Documentation/drivers/driver-api/pinctl.rst
similarity index 100%
rename from Documentation/driver-api/pinctl.rst
rename to Documentation/drivers/driver-api/pinctl.rst
diff --git a/Documentation/driver-api/pm/conf.py b/Documentation/drivers/driver-api/pm/conf.py
similarity index 100%
rename from Documentation/driver-api/pm/conf.py
rename to Documentation/drivers/driver-api/pm/conf.py
diff --git a/Documentation/driver-api/pm/cpuidle.rst b/Documentation/drivers/driver-api/pm/cpuidle.rst
similarity index 100%
rename from Documentation/driver-api/pm/cpuidle.rst
rename to Documentation/drivers/driver-api/pm/cpuidle.rst
diff --git a/Documentation/driver-api/pm/devices.rst b/Documentation/drivers/driver-api/pm/devices.rst
similarity index 100%
rename from Documentation/driver-api/pm/devices.rst
rename to Documentation/drivers/driver-api/pm/devices.rst
diff --git a/Documentation/driver-api/pm/index.rst b/Documentation/drivers/driver-api/pm/index.rst
similarity index 100%
rename from Documentation/driver-api/pm/index.rst
rename to Documentation/drivers/driver-api/pm/index.rst
diff --git a/Documentation/driver-api/pm/notifiers.rst b/Documentation/drivers/driver-api/pm/notifiers.rst
similarity index 100%
rename from Documentation/driver-api/pm/notifiers.rst
rename to Documentation/drivers/driver-api/pm/notifiers.rst
diff --git a/Documentation/driver-api/pm/types.rst b/Documentation/drivers/driver-api/pm/types.rst
similarity index 100%
rename from Documentation/driver-api/pm/types.rst
rename to Documentation/drivers/driver-api/pm/types.rst
diff --git a/Documentation/driver-api/pps.rst b/Documentation/drivers/driver-api/pps.rst
similarity index 100%
rename from Documentation/driver-api/pps.rst
rename to Documentation/drivers/driver-api/pps.rst
diff --git a/Documentation/driver-api/ptp.rst b/Documentation/drivers/driver-api/ptp.rst
similarity index 100%
rename from Documentation/driver-api/ptp.rst
rename to Documentation/drivers/driver-api/ptp.rst
diff --git a/Documentation/driver-api/rapidio.rst b/Documentation/drivers/driver-api/rapidio.rst
similarity index 100%
rename from Documentation/driver-api/rapidio.rst
rename to Documentation/drivers/driver-api/rapidio.rst
diff --git a/Documentation/driver-api/regulator.rst b/Documentation/drivers/driver-api/regulator.rst
similarity index 100%
rename from Documentation/driver-api/regulator.rst
rename to Documentation/drivers/driver-api/regulator.rst
diff --git a/Documentation/driver-api/s390-drivers.rst b/Documentation/drivers/driver-api/s390-drivers.rst
similarity index 100%
rename from Documentation/driver-api/s390-drivers.rst
rename to Documentation/drivers/driver-api/s390-drivers.rst
diff --git a/Documentation/driver-api/scsi.rst b/Documentation/drivers/driver-api/scsi.rst
similarity index 100%
rename from Documentation/driver-api/scsi.rst
rename to Documentation/drivers/driver-api/scsi.rst
diff --git a/Documentation/driver-api/slimbus.rst b/Documentation/drivers/driver-api/slimbus.rst
similarity index 100%
rename from Documentation/driver-api/slimbus.rst
rename to Documentation/drivers/driver-api/slimbus.rst
diff --git a/Documentation/driver-api/sound.rst b/Documentation/drivers/driver-api/sound.rst
similarity index 100%
rename from Documentation/driver-api/sound.rst
rename to Documentation/drivers/driver-api/sound.rst
diff --git a/Documentation/driver-api/soundwire/error_handling.rst b/Documentation/drivers/driver-api/soundwire/error_handling.rst
similarity index 100%
rename from Documentation/driver-api/soundwire/error_handling.rst
rename to Documentation/drivers/driver-api/soundwire/error_handling.rst
diff --git a/Documentation/driver-api/soundwire/index.rst b/Documentation/drivers/driver-api/soundwire/index.rst
similarity index 100%
rename from Documentation/driver-api/soundwire/index.rst
rename to Documentation/drivers/driver-api/soundwire/index.rst
diff --git a/Documentation/driver-api/soundwire/locking.rst b/Documentation/drivers/driver-api/soundwire/locking.rst
similarity index 100%
rename from Documentation/driver-api/soundwire/locking.rst
rename to Documentation/drivers/driver-api/soundwire/locking.rst
diff --git a/Documentation/driver-api/soundwire/stream.rst b/Documentation/drivers/driver-api/soundwire/stream.rst
similarity index 100%
rename from Documentation/driver-api/soundwire/stream.rst
rename to Documentation/drivers/driver-api/soundwire/stream.rst
diff --git a/Documentation/driver-api/soundwire/summary.rst b/Documentation/drivers/driver-api/soundwire/summary.rst
similarity index 100%
rename from Documentation/driver-api/soundwire/summary.rst
rename to Documentation/drivers/driver-api/soundwire/summary.rst
diff --git a/Documentation/driver-api/spi.rst b/Documentation/drivers/driver-api/spi.rst
similarity index 100%
rename from Documentation/driver-api/spi.rst
rename to Documentation/drivers/driver-api/spi.rst
diff --git a/Documentation/driver-api/target.rst b/Documentation/drivers/driver-api/target.rst
similarity index 100%
rename from Documentation/driver-api/target.rst
rename to Documentation/drivers/driver-api/target.rst
diff --git a/Documentation/driver-api/uio-howto.rst b/Documentation/drivers/driver-api/uio-howto.rst
similarity index 100%
rename from Documentation/driver-api/uio-howto.rst
rename to Documentation/drivers/driver-api/uio-howto.rst
diff --git a/Documentation/driver-api/usb/URB.rst b/Documentation/drivers/driver-api/usb/URB.rst
similarity index 100%
rename from Documentation/driver-api/usb/URB.rst
rename to Documentation/drivers/driver-api/usb/URB.rst
diff --git a/Documentation/driver-api/usb/anchors.rst b/Documentation/drivers/driver-api/usb/anchors.rst
similarity index 100%
rename from Documentation/driver-api/usb/anchors.rst
rename to Documentation/drivers/driver-api/usb/anchors.rst
diff --git a/Documentation/driver-api/usb/bulk-streams.rst b/Documentation/drivers/driver-api/usb/bulk-streams.rst
similarity index 100%
rename from Documentation/driver-api/usb/bulk-streams.rst
rename to Documentation/drivers/driver-api/usb/bulk-streams.rst
diff --git a/Documentation/driver-api/usb/callbacks.rst b/Documentation/drivers/driver-api/usb/callbacks.rst
similarity index 100%
rename from Documentation/driver-api/usb/callbacks.rst
rename to Documentation/drivers/driver-api/usb/callbacks.rst
diff --git a/Documentation/driver-api/usb/dma.rst b/Documentation/drivers/driver-api/usb/dma.rst
similarity index 100%
rename from Documentation/driver-api/usb/dma.rst
rename to Documentation/drivers/driver-api/usb/dma.rst
diff --git a/Documentation/driver-api/usb/dwc3.rst b/Documentation/drivers/driver-api/usb/dwc3.rst
similarity index 100%
rename from Documentation/driver-api/usb/dwc3.rst
rename to Documentation/drivers/driver-api/usb/dwc3.rst
diff --git a/Documentation/driver-api/usb/error-codes.rst b/Documentation/drivers/driver-api/usb/error-codes.rst
similarity index 100%
rename from Documentation/driver-api/usb/error-codes.rst
rename to Documentation/drivers/driver-api/usb/error-codes.rst
diff --git a/Documentation/driver-api/usb/gadget.rst b/Documentation/drivers/driver-api/usb/gadget.rst
similarity index 100%
rename from Documentation/driver-api/usb/gadget.rst
rename to Documentation/drivers/driver-api/usb/gadget.rst
diff --git a/Documentation/driver-api/usb/hotplug.rst b/Documentation/drivers/driver-api/usb/hotplug.rst
similarity index 100%
rename from Documentation/driver-api/usb/hotplug.rst
rename to Documentation/drivers/driver-api/usb/hotplug.rst
diff --git a/Documentation/driver-api/usb/index.rst b/Documentation/drivers/driver-api/usb/index.rst
similarity index 100%
rename from Documentation/driver-api/usb/index.rst
rename to Documentation/drivers/driver-api/usb/index.rst
diff --git a/Documentation/driver-api/usb/persist.rst b/Documentation/drivers/driver-api/usb/persist.rst
similarity index 100%
rename from Documentation/driver-api/usb/persist.rst
rename to Documentation/drivers/driver-api/usb/persist.rst
diff --git a/Documentation/driver-api/usb/power-management.rst b/Documentation/drivers/driver-api/usb/power-management.rst
similarity index 100%
rename from Documentation/driver-api/usb/power-management.rst
rename to Documentation/drivers/driver-api/usb/power-management.rst
diff --git a/Documentation/driver-api/usb/typec.rst b/Documentation/drivers/driver-api/usb/typec.rst
similarity index 100%
rename from Documentation/driver-api/usb/typec.rst
rename to Documentation/drivers/driver-api/usb/typec.rst
diff --git a/Documentation/driver-api/usb/typec_bus.rst b/Documentation/drivers/driver-api/usb/typec_bus.rst
similarity index 100%
rename from Documentation/driver-api/usb/typec_bus.rst
rename to Documentation/drivers/driver-api/usb/typec_bus.rst
diff --git a/Documentation/driver-api/usb/usb.rst b/Documentation/drivers/driver-api/usb/usb.rst
similarity index 100%
rename from Documentation/driver-api/usb/usb.rst
rename to Documentation/drivers/driver-api/usb/usb.rst
diff --git a/Documentation/driver-api/usb/usb3-debug-port.rst b/Documentation/drivers/driver-api/usb/usb3-debug-port.rst
similarity index 100%
rename from Documentation/driver-api/usb/usb3-debug-port.rst
rename to Documentation/drivers/driver-api/usb/usb3-debug-port.rst
diff --git a/Documentation/driver-api/usb/writing_musb_glue_layer.rst b/Documentation/drivers/driver-api/usb/writing_musb_glue_layer.rst
similarity index 100%
rename from Documentation/driver-api/usb/writing_musb_glue_layer.rst
rename to Documentation/drivers/driver-api/usb/writing_musb_glue_layer.rst
diff --git a/Documentation/driver-api/usb/writing_usb_driver.rst b/Documentation/drivers/driver-api/usb/writing_usb_driver.rst
similarity index 100%
rename from Documentation/driver-api/usb/writing_usb_driver.rst
rename to Documentation/drivers/driver-api/usb/writing_usb_driver.rst
diff --git a/Documentation/driver-api/vme.rst b/Documentation/drivers/driver-api/vme.rst
similarity index 100%
rename from Documentation/driver-api/vme.rst
rename to Documentation/drivers/driver-api/vme.rst
diff --git a/Documentation/driver-api/w1.rst b/Documentation/drivers/driver-api/w1.rst
similarity index 100%
rename from Documentation/driver-api/w1.rst
rename to Documentation/drivers/driver-api/w1.rst
diff --git a/Documentation/driver-model/binding.txt b/Documentation/drivers/driver-model/binding.txt
similarity index 100%
rename from Documentation/driver-model/binding.txt
rename to Documentation/drivers/driver-model/binding.txt
diff --git a/Documentation/driver-model/bus.txt b/Documentation/drivers/driver-model/bus.txt
similarity index 100%
rename from Documentation/driver-model/bus.txt
rename to Documentation/drivers/driver-model/bus.txt
diff --git a/Documentation/driver-model/class.txt b/Documentation/drivers/driver-model/class.txt
similarity index 100%
rename from Documentation/driver-model/class.txt
rename to Documentation/drivers/driver-model/class.txt
diff --git a/Documentation/driver-model/design-patterns.txt b/Documentation/drivers/driver-model/design-patterns.txt
similarity index 100%
rename from Documentation/driver-model/design-patterns.txt
rename to Documentation/drivers/driver-model/design-patterns.txt
diff --git a/Documentation/driver-model/device.txt b/Documentation/drivers/driver-model/device.txt
similarity index 100%
rename from Documentation/driver-model/device.txt
rename to Documentation/drivers/driver-model/device.txt
diff --git a/Documentation/driver-model/devres.txt b/Documentation/drivers/driver-model/devres.txt
similarity index 100%
rename from Documentation/driver-model/devres.txt
rename to Documentation/drivers/driver-model/devres.txt
diff --git a/Documentation/driver-model/driver.txt b/Documentation/drivers/driver-model/driver.txt
similarity index 100%
rename from Documentation/driver-model/driver.txt
rename to Documentation/drivers/driver-model/driver.txt
diff --git a/Documentation/driver-model/overview.txt b/Documentation/drivers/driver-model/overview.txt
similarity index 100%
rename from Documentation/driver-model/overview.txt
rename to Documentation/drivers/driver-model/overview.txt
diff --git a/Documentation/driver-model/platform.txt b/Documentation/drivers/driver-model/platform.txt
similarity index 100%
rename from Documentation/driver-model/platform.txt
rename to Documentation/drivers/driver-model/platform.txt
diff --git a/Documentation/driver-model/porting.txt b/Documentation/drivers/driver-model/porting.txt
similarity index 100%
rename from Documentation/driver-model/porting.txt
rename to Documentation/drivers/driver-model/porting.txt
diff --git a/Documentation/fpga/dfl.rst b/Documentation/drivers/fpga/dfl.rst
similarity index 100%
rename from Documentation/fpga/dfl.rst
rename to Documentation/drivers/fpga/dfl.rst
diff --git a/Documentation/fpga/index.rst b/Documentation/drivers/fpga/index.rst
similarity index 100%
rename from Documentation/fpga/index.rst
rename to Documentation/drivers/fpga/index.rst
diff --git a/Documentation/gpio/index.rst b/Documentation/drivers/gpio/index.rst
similarity index 100%
rename from Documentation/gpio/index.rst
rename to Documentation/drivers/gpio/index.rst
diff --git a/Documentation/gpio/sysfs.rst b/Documentation/drivers/gpio/sysfs.rst
similarity index 100%
rename from Documentation/gpio/sysfs.rst
rename to Documentation/drivers/gpio/sysfs.rst
diff --git a/Documentation/gpu/afbc.rst b/Documentation/drivers/gpu/afbc.rst
similarity index 100%
rename from Documentation/gpu/afbc.rst
rename to Documentation/drivers/gpu/afbc.rst
diff --git a/Documentation/gpu/amdgpu-dc.rst b/Documentation/drivers/gpu/amdgpu-dc.rst
similarity index 100%
rename from Documentation/gpu/amdgpu-dc.rst
rename to Documentation/drivers/gpu/amdgpu-dc.rst
diff --git a/Documentation/gpu/amdgpu.rst b/Documentation/drivers/gpu/amdgpu.rst
similarity index 100%
rename from Documentation/gpu/amdgpu.rst
rename to Documentation/drivers/gpu/amdgpu.rst
diff --git a/Documentation/gpu/bridge/dw-hdmi.rst b/Documentation/drivers/gpu/bridge/dw-hdmi.rst
similarity index 100%
rename from Documentation/gpu/bridge/dw-hdmi.rst
rename to Documentation/drivers/gpu/bridge/dw-hdmi.rst
diff --git a/Documentation/gpu/conf.py b/Documentation/drivers/gpu/conf.py
similarity index 100%
rename from Documentation/gpu/conf.py
rename to Documentation/drivers/gpu/conf.py
diff --git a/Documentation/gpu/dp-mst/topology-figure-1.dot b/Documentation/drivers/gpu/dp-mst/topology-figure-1.dot
similarity index 100%
rename from Documentation/gpu/dp-mst/topology-figure-1.dot
rename to Documentation/drivers/gpu/dp-mst/topology-figure-1.dot
diff --git a/Documentation/gpu/dp-mst/topology-figure-2.dot b/Documentation/drivers/gpu/dp-mst/topology-figure-2.dot
similarity index 100%
rename from Documentation/gpu/dp-mst/topology-figure-2.dot
rename to Documentation/drivers/gpu/dp-mst/topology-figure-2.dot
diff --git a/Documentation/gpu/dp-mst/topology-figure-3.dot b/Documentation/drivers/gpu/dp-mst/topology-figure-3.dot
similarity index 100%
rename from Documentation/gpu/dp-mst/topology-figure-3.dot
rename to Documentation/drivers/gpu/dp-mst/topology-figure-3.dot
diff --git a/Documentation/gpu/drivers.rst b/Documentation/drivers/gpu/drivers.rst
similarity index 100%
rename from Documentation/gpu/drivers.rst
rename to Documentation/drivers/gpu/drivers.rst
diff --git a/Documentation/gpu/drm-client.rst b/Documentation/drivers/gpu/drm-client.rst
similarity index 100%
rename from Documentation/gpu/drm-client.rst
rename to Documentation/drivers/gpu/drm-client.rst
diff --git a/Documentation/gpu/drm-internals.rst b/Documentation/drivers/gpu/drm-internals.rst
similarity index 100%
rename from Documentation/gpu/drm-internals.rst
rename to Documentation/drivers/gpu/drm-internals.rst
diff --git a/Documentation/gpu/drm-kms-helpers.rst b/Documentation/drivers/gpu/drm-kms-helpers.rst
similarity index 100%
rename from Documentation/gpu/drm-kms-helpers.rst
rename to Documentation/drivers/gpu/drm-kms-helpers.rst
diff --git a/Documentation/gpu/drm-kms.rst b/Documentation/drivers/gpu/drm-kms.rst
similarity index 100%
rename from Documentation/gpu/drm-kms.rst
rename to Documentation/drivers/gpu/drm-kms.rst
diff --git a/Documentation/gpu/drm-mm.rst b/Documentation/drivers/gpu/drm-mm.rst
similarity index 100%
rename from Documentation/gpu/drm-mm.rst
rename to Documentation/drivers/gpu/drm-mm.rst
diff --git a/Documentation/gpu/drm-uapi.rst b/Documentation/drivers/gpu/drm-uapi.rst
similarity index 100%
rename from Documentation/gpu/drm-uapi.rst
rename to Documentation/drivers/gpu/drm-uapi.rst
diff --git a/Documentation/gpu/i915.rst b/Documentation/drivers/gpu/i915.rst
similarity index 100%
rename from Documentation/gpu/i915.rst
rename to Documentation/drivers/gpu/i915.rst
diff --git a/Documentation/gpu/index.rst b/Documentation/drivers/gpu/index.rst
similarity index 100%
rename from Documentation/gpu/index.rst
rename to Documentation/drivers/gpu/index.rst
diff --git a/Documentation/gpu/introduction.rst b/Documentation/drivers/gpu/introduction.rst
similarity index 100%
rename from Documentation/gpu/introduction.rst
rename to Documentation/drivers/gpu/introduction.rst
diff --git a/Documentation/gpu/kms-properties.csv b/Documentation/drivers/gpu/kms-properties.csv
similarity index 100%
rename from Documentation/gpu/kms-properties.csv
rename to Documentation/drivers/gpu/kms-properties.csv
diff --git a/Documentation/gpu/komeda-kms.rst b/Documentation/drivers/gpu/komeda-kms.rst
similarity index 100%
rename from Documentation/gpu/komeda-kms.rst
rename to Documentation/drivers/gpu/komeda-kms.rst
diff --git a/Documentation/gpu/meson.rst b/Documentation/drivers/gpu/meson.rst
similarity index 100%
rename from Documentation/gpu/meson.rst
rename to Documentation/drivers/gpu/meson.rst
diff --git a/Documentation/gpu/msm-crash-dump.rst b/Documentation/drivers/gpu/msm-crash-dump.rst
similarity index 100%
rename from Documentation/gpu/msm-crash-dump.rst
rename to Documentation/drivers/gpu/msm-crash-dump.rst
diff --git a/Documentation/gpu/pl111.rst b/Documentation/drivers/gpu/pl111.rst
similarity index 100%
rename from Documentation/gpu/pl111.rst
rename to Documentation/drivers/gpu/pl111.rst
diff --git a/Documentation/gpu/tegra.rst b/Documentation/drivers/gpu/tegra.rst
similarity index 100%
rename from Documentation/gpu/tegra.rst
rename to Documentation/drivers/gpu/tegra.rst
diff --git a/Documentation/gpu/tinydrm.rst b/Documentation/drivers/gpu/tinydrm.rst
similarity index 100%
rename from Documentation/gpu/tinydrm.rst
rename to Documentation/drivers/gpu/tinydrm.rst
diff --git a/Documentation/gpu/todo.rst b/Documentation/drivers/gpu/todo.rst
similarity index 100%
rename from Documentation/gpu/todo.rst
rename to Documentation/drivers/gpu/todo.rst
diff --git a/Documentation/gpu/tve200.rst b/Documentation/drivers/gpu/tve200.rst
similarity index 100%
rename from Documentation/gpu/tve200.rst
rename to Documentation/drivers/gpu/tve200.rst
diff --git a/Documentation/gpu/v3d.rst b/Documentation/drivers/gpu/v3d.rst
similarity index 100%
rename from Documentation/gpu/v3d.rst
rename to Documentation/drivers/gpu/v3d.rst
diff --git a/Documentation/gpu/vc4.rst b/Documentation/drivers/gpu/vc4.rst
similarity index 100%
rename from Documentation/gpu/vc4.rst
rename to Documentation/drivers/gpu/vc4.rst
diff --git a/Documentation/gpu/vga-switcheroo.rst b/Documentation/drivers/gpu/vga-switcheroo.rst
similarity index 100%
rename from Documentation/gpu/vga-switcheroo.rst
rename to Documentation/drivers/gpu/vga-switcheroo.rst
diff --git a/Documentation/gpu/vgaarbiter.rst b/Documentation/drivers/gpu/vgaarbiter.rst
similarity index 100%
rename from Documentation/gpu/vgaarbiter.rst
rename to Documentation/drivers/gpu/vgaarbiter.rst
diff --git a/Documentation/gpu/vkms.rst b/Documentation/drivers/gpu/vkms.rst
similarity index 100%
rename from Documentation/gpu/vkms.rst
rename to Documentation/drivers/gpu/vkms.rst
diff --git a/Documentation/gpu/xen-front.rst b/Documentation/drivers/gpu/xen-front.rst
similarity index 100%
rename from Documentation/gpu/xen-front.rst
rename to Documentation/drivers/gpu/xen-front.rst
diff --git a/Documentation/hid/hid-alps.txt b/Documentation/drivers/hid/hid-alps.txt
similarity index 100%
rename from Documentation/hid/hid-alps.txt
rename to Documentation/drivers/hid/hid-alps.txt
diff --git a/Documentation/hid/hid-sensor.txt b/Documentation/drivers/hid/hid-sensor.txt
similarity index 100%
rename from Documentation/hid/hid-sensor.txt
rename to Documentation/drivers/hid/hid-sensor.txt
diff --git a/Documentation/hid/hid-transport.txt b/Documentation/drivers/hid/hid-transport.txt
similarity index 100%
rename from Documentation/hid/hid-transport.txt
rename to Documentation/drivers/hid/hid-transport.txt
diff --git a/Documentation/hid/hiddev.txt b/Documentation/drivers/hid/hiddev.txt
similarity index 100%
rename from Documentation/hid/hiddev.txt
rename to Documentation/drivers/hid/hiddev.txt
diff --git a/Documentation/hid/hidraw.txt b/Documentation/drivers/hid/hidraw.txt
similarity index 100%
rename from Documentation/hid/hidraw.txt
rename to Documentation/drivers/hid/hidraw.txt
diff --git a/Documentation/hid/intel-ish-hid.txt b/Documentation/drivers/hid/intel-ish-hid.txt
similarity index 100%
rename from Documentation/hid/intel-ish-hid.txt
rename to Documentation/drivers/hid/intel-ish-hid.txt
diff --git a/Documentation/hid/uhid.txt b/Documentation/drivers/hid/uhid.txt
similarity index 100%
rename from Documentation/hid/uhid.txt
rename to Documentation/drivers/hid/uhid.txt
diff --git a/Documentation/i2c/DMA-considerations b/Documentation/drivers/i2c/DMA-considerations
similarity index 100%
rename from Documentation/i2c/DMA-considerations
rename to Documentation/drivers/i2c/DMA-considerations
diff --git a/Documentation/i2c/busses/i2c-ali1535 b/Documentation/drivers/i2c/busses/i2c-ali1535
similarity index 100%
rename from Documentation/i2c/busses/i2c-ali1535
rename to Documentation/drivers/i2c/busses/i2c-ali1535
diff --git a/Documentation/i2c/busses/i2c-ali1563 b/Documentation/drivers/i2c/busses/i2c-ali1563
similarity index 100%
rename from Documentation/i2c/busses/i2c-ali1563
rename to Documentation/drivers/i2c/busses/i2c-ali1563
diff --git a/Documentation/i2c/busses/i2c-ali15x3 b/Documentation/drivers/i2c/busses/i2c-ali15x3
similarity index 100%
rename from Documentation/i2c/busses/i2c-ali15x3
rename to Documentation/drivers/i2c/busses/i2c-ali15x3
diff --git a/Documentation/i2c/busses/i2c-amd-mp2 b/Documentation/drivers/i2c/busses/i2c-amd-mp2
similarity index 100%
rename from Documentation/i2c/busses/i2c-amd-mp2
rename to Documentation/drivers/i2c/busses/i2c-amd-mp2
diff --git a/Documentation/i2c/busses/i2c-amd756 b/Documentation/drivers/i2c/busses/i2c-amd756
similarity index 100%
rename from Documentation/i2c/busses/i2c-amd756
rename to Documentation/drivers/i2c/busses/i2c-amd756
diff --git a/Documentation/i2c/busses/i2c-amd8111 b/Documentation/drivers/i2c/busses/i2c-amd8111
similarity index 100%
rename from Documentation/i2c/busses/i2c-amd8111
rename to Documentation/drivers/i2c/busses/i2c-amd8111
diff --git a/Documentation/i2c/busses/i2c-diolan-u2c b/Documentation/drivers/i2c/busses/i2c-diolan-u2c
similarity index 100%
rename from Documentation/i2c/busses/i2c-diolan-u2c
rename to Documentation/drivers/i2c/busses/i2c-diolan-u2c
diff --git a/Documentation/i2c/busses/i2c-i801 b/Documentation/drivers/i2c/busses/i2c-i801
similarity index 100%
rename from Documentation/i2c/busses/i2c-i801
rename to Documentation/drivers/i2c/busses/i2c-i801
diff --git a/Documentation/i2c/busses/i2c-ismt b/Documentation/drivers/i2c/busses/i2c-ismt
similarity index 100%
rename from Documentation/i2c/busses/i2c-ismt
rename to Documentation/drivers/i2c/busses/i2c-ismt
diff --git a/Documentation/i2c/busses/i2c-mlxcpld b/Documentation/drivers/i2c/busses/i2c-mlxcpld
similarity index 100%
rename from Documentation/i2c/busses/i2c-mlxcpld
rename to Documentation/drivers/i2c/busses/i2c-mlxcpld
diff --git a/Documentation/i2c/busses/i2c-nforce2 b/Documentation/drivers/i2c/busses/i2c-nforce2
similarity index 100%
rename from Documentation/i2c/busses/i2c-nforce2
rename to Documentation/drivers/i2c/busses/i2c-nforce2
diff --git a/Documentation/i2c/busses/i2c-nvidia-gpu b/Documentation/drivers/i2c/busses/i2c-nvidia-gpu
similarity index 100%
rename from Documentation/i2c/busses/i2c-nvidia-gpu
rename to Documentation/drivers/i2c/busses/i2c-nvidia-gpu
diff --git a/Documentation/i2c/busses/i2c-ocores b/Documentation/drivers/i2c/busses/i2c-ocores
similarity index 100%
rename from Documentation/i2c/busses/i2c-ocores
rename to Documentation/drivers/i2c/busses/i2c-ocores
diff --git a/Documentation/i2c/busses/i2c-parport b/Documentation/drivers/i2c/busses/i2c-parport
similarity index 100%
rename from Documentation/i2c/busses/i2c-parport
rename to Documentation/drivers/i2c/busses/i2c-parport
diff --git a/Documentation/i2c/busses/i2c-parport-light b/Documentation/drivers/i2c/busses/i2c-parport-light
similarity index 100%
rename from Documentation/i2c/busses/i2c-parport-light
rename to Documentation/drivers/i2c/busses/i2c-parport-light
diff --git a/Documentation/i2c/busses/i2c-pca-isa b/Documentation/drivers/i2c/busses/i2c-pca-isa
similarity index 100%
rename from Documentation/i2c/busses/i2c-pca-isa
rename to Documentation/drivers/i2c/busses/i2c-pca-isa
diff --git a/Documentation/i2c/busses/i2c-piix4 b/Documentation/drivers/i2c/busses/i2c-piix4
similarity index 100%
rename from Documentation/i2c/busses/i2c-piix4
rename to Documentation/drivers/i2c/busses/i2c-piix4
diff --git a/Documentation/i2c/busses/i2c-sis5595 b/Documentation/drivers/i2c/busses/i2c-sis5595
similarity index 100%
rename from Documentation/i2c/busses/i2c-sis5595
rename to Documentation/drivers/i2c/busses/i2c-sis5595
diff --git a/Documentation/i2c/busses/i2c-sis630 b/Documentation/drivers/i2c/busses/i2c-sis630
similarity index 100%
rename from Documentation/i2c/busses/i2c-sis630
rename to Documentation/drivers/i2c/busses/i2c-sis630
diff --git a/Documentation/i2c/busses/i2c-sis96x b/Documentation/drivers/i2c/busses/i2c-sis96x
similarity index 100%
rename from Documentation/i2c/busses/i2c-sis96x
rename to Documentation/drivers/i2c/busses/i2c-sis96x
diff --git a/Documentation/i2c/busses/i2c-taos-evm b/Documentation/drivers/i2c/busses/i2c-taos-evm
similarity index 100%
rename from Documentation/i2c/busses/i2c-taos-evm
rename to Documentation/drivers/i2c/busses/i2c-taos-evm
diff --git a/Documentation/i2c/busses/i2c-via b/Documentation/drivers/i2c/busses/i2c-via
similarity index 100%
rename from Documentation/i2c/busses/i2c-via
rename to Documentation/drivers/i2c/busses/i2c-via
diff --git a/Documentation/i2c/busses/i2c-viapro b/Documentation/drivers/i2c/busses/i2c-viapro
similarity index 100%
rename from Documentation/i2c/busses/i2c-viapro
rename to Documentation/drivers/i2c/busses/i2c-viapro
diff --git a/Documentation/i2c/busses/scx200_acb b/Documentation/drivers/i2c/busses/scx200_acb
similarity index 100%
rename from Documentation/i2c/busses/scx200_acb
rename to Documentation/drivers/i2c/busses/scx200_acb
diff --git a/Documentation/i2c/dev-interface b/Documentation/drivers/i2c/dev-interface
similarity index 100%
rename from Documentation/i2c/dev-interface
rename to Documentation/drivers/i2c/dev-interface
diff --git a/Documentation/i2c/fault-codes b/Documentation/drivers/i2c/fault-codes
similarity index 100%
rename from Documentation/i2c/fault-codes
rename to Documentation/drivers/i2c/fault-codes
diff --git a/Documentation/i2c/functionality b/Documentation/drivers/i2c/functionality
similarity index 100%
rename from Documentation/i2c/functionality
rename to Documentation/drivers/i2c/functionality
diff --git a/Documentation/i2c/gpio-fault-injection b/Documentation/drivers/i2c/gpio-fault-injection
similarity index 100%
rename from Documentation/i2c/gpio-fault-injection
rename to Documentation/drivers/i2c/gpio-fault-injection
diff --git a/Documentation/i2c/i2c-protocol b/Documentation/drivers/i2c/i2c-protocol
similarity index 100%
rename from Documentation/i2c/i2c-protocol
rename to Documentation/drivers/i2c/i2c-protocol
diff --git a/Documentation/i2c/i2c-stub b/Documentation/drivers/i2c/i2c-stub
similarity index 100%
rename from Documentation/i2c/i2c-stub
rename to Documentation/drivers/i2c/i2c-stub
diff --git a/Documentation/i2c/i2c-topology b/Documentation/drivers/i2c/i2c-topology
similarity index 100%
rename from Documentation/i2c/i2c-topology
rename to Documentation/drivers/i2c/i2c-topology
diff --git a/Documentation/i2c/instantiating-devices b/Documentation/drivers/i2c/instantiating-devices
similarity index 100%
rename from Documentation/i2c/instantiating-devices
rename to Documentation/drivers/i2c/instantiating-devices
diff --git a/Documentation/i2c/muxes/i2c-mux-gpio b/Documentation/drivers/i2c/muxes/i2c-mux-gpio
similarity index 100%
rename from Documentation/i2c/muxes/i2c-mux-gpio
rename to Documentation/drivers/i2c/muxes/i2c-mux-gpio
diff --git a/Documentation/i2c/old-module-parameters b/Documentation/drivers/i2c/old-module-parameters
similarity index 100%
rename from Documentation/i2c/old-module-parameters
rename to Documentation/drivers/i2c/old-module-parameters
diff --git a/Documentation/i2c/slave-eeprom-backend b/Documentation/drivers/i2c/slave-eeprom-backend
similarity index 100%
rename from Documentation/i2c/slave-eeprom-backend
rename to Documentation/drivers/i2c/slave-eeprom-backend
diff --git a/Documentation/i2c/slave-interface b/Documentation/drivers/i2c/slave-interface
similarity index 100%
rename from Documentation/i2c/slave-interface
rename to Documentation/drivers/i2c/slave-interface
diff --git a/Documentation/i2c/smbus-protocol b/Documentation/drivers/i2c/smbus-protocol
similarity index 100%
rename from Documentation/i2c/smbus-protocol
rename to Documentation/drivers/i2c/smbus-protocol
diff --git a/Documentation/i2c/summary b/Documentation/drivers/i2c/summary
similarity index 100%
rename from Documentation/i2c/summary
rename to Documentation/drivers/i2c/summary
diff --git a/Documentation/i2c/ten-bit-addresses b/Documentation/drivers/i2c/ten-bit-addresses
similarity index 100%
rename from Documentation/i2c/ten-bit-addresses
rename to Documentation/drivers/i2c/ten-bit-addresses
diff --git a/Documentation/i2c/upgrading-clients b/Documentation/drivers/i2c/upgrading-clients
similarity index 100%
rename from Documentation/i2c/upgrading-clients
rename to Documentation/drivers/i2c/upgrading-clients
diff --git a/Documentation/i2c/writing-clients b/Documentation/drivers/i2c/writing-clients
similarity index 100%
rename from Documentation/i2c/writing-clients
rename to Documentation/drivers/i2c/writing-clients
diff --git a/Documentation/ide/ChangeLog.ide-cd.1994-2004 b/Documentation/drivers/ide/ChangeLog.ide-cd.1994-2004
similarity index 100%
rename from Documentation/ide/ChangeLog.ide-cd.1994-2004
rename to Documentation/drivers/ide/ChangeLog.ide-cd.1994-2004
diff --git a/Documentation/ide/ChangeLog.ide-floppy.1996-2002 b/Documentation/drivers/ide/ChangeLog.ide-floppy.1996-2002
similarity index 100%
rename from Documentation/ide/ChangeLog.ide-floppy.1996-2002
rename to Documentation/drivers/ide/ChangeLog.ide-floppy.1996-2002
diff --git a/Documentation/ide/ChangeLog.ide-tape.1995-2002 b/Documentation/drivers/ide/ChangeLog.ide-tape.1995-2002
similarity index 100%
rename from Documentation/ide/ChangeLog.ide-tape.1995-2002
rename to Documentation/drivers/ide/ChangeLog.ide-tape.1995-2002
diff --git a/Documentation/ide/changelogs.rst b/Documentation/drivers/ide/changelogs.rst
similarity index 100%
rename from Documentation/ide/changelogs.rst
rename to Documentation/drivers/ide/changelogs.rst
diff --git a/Documentation/ide/ide-tape.rst b/Documentation/drivers/ide/ide-tape.rst
similarity index 100%
rename from Documentation/ide/ide-tape.rst
rename to Documentation/drivers/ide/ide-tape.rst
diff --git a/Documentation/ide/ide.rst b/Documentation/drivers/ide/ide.rst
similarity index 100%
rename from Documentation/ide/ide.rst
rename to Documentation/drivers/ide/ide.rst
diff --git a/Documentation/ide/index.rst b/Documentation/drivers/ide/index.rst
similarity index 100%
rename from Documentation/ide/index.rst
rename to Documentation/drivers/ide/index.rst
diff --git a/Documentation/ide/warm-plug-howto.rst b/Documentation/drivers/ide/warm-plug-howto.rst
similarity index 100%
rename from Documentation/ide/warm-plug-howto.rst
rename to Documentation/drivers/ide/warm-plug-howto.rst
diff --git a/Documentation/infiniband/core_locking.txt b/Documentation/drivers/infiniband/core_locking.txt
similarity index 100%
rename from Documentation/infiniband/core_locking.txt
rename to Documentation/drivers/infiniband/core_locking.txt
diff --git a/Documentation/infiniband/ipoib.txt b/Documentation/drivers/infiniband/ipoib.txt
similarity index 100%
rename from Documentation/infiniband/ipoib.txt
rename to Documentation/drivers/infiniband/ipoib.txt
diff --git a/Documentation/infiniband/opa_vnic.txt b/Documentation/drivers/infiniband/opa_vnic.txt
similarity index 100%
rename from Documentation/infiniband/opa_vnic.txt
rename to Documentation/drivers/infiniband/opa_vnic.txt
diff --git a/Documentation/infiniband/sysfs.txt b/Documentation/drivers/infiniband/sysfs.txt
similarity index 100%
rename from Documentation/infiniband/sysfs.txt
rename to Documentation/drivers/infiniband/sysfs.txt
diff --git a/Documentation/infiniband/tag_matching.txt b/Documentation/drivers/infiniband/tag_matching.txt
similarity index 100%
rename from Documentation/infiniband/tag_matching.txt
rename to Documentation/drivers/infiniband/tag_matching.txt
diff --git a/Documentation/infiniband/user_mad.txt b/Documentation/drivers/infiniband/user_mad.txt
similarity index 100%
rename from Documentation/infiniband/user_mad.txt
rename to Documentation/drivers/infiniband/user_mad.txt
diff --git a/Documentation/infiniband/user_verbs.txt b/Documentation/drivers/infiniband/user_verbs.txt
similarity index 100%
rename from Documentation/infiniband/user_verbs.txt
rename to Documentation/drivers/infiniband/user_verbs.txt
diff --git a/Documentation/leds/index.rst b/Documentation/drivers/leds/index.rst
similarity index 100%
rename from Documentation/leds/index.rst
rename to Documentation/drivers/leds/index.rst
diff --git a/Documentation/leds/leds-blinkm.rst b/Documentation/drivers/leds/leds-blinkm.rst
similarity index 100%
rename from Documentation/leds/leds-blinkm.rst
rename to Documentation/drivers/leds/leds-blinkm.rst
diff --git a/Documentation/leds/leds-class-flash.rst b/Documentation/drivers/leds/leds-class-flash.rst
similarity index 100%
rename from Documentation/leds/leds-class-flash.rst
rename to Documentation/drivers/leds/leds-class-flash.rst
diff --git a/Documentation/leds/leds-class.rst b/Documentation/drivers/leds/leds-class.rst
similarity index 100%
rename from Documentation/leds/leds-class.rst
rename to Documentation/drivers/leds/leds-class.rst
diff --git a/Documentation/leds/leds-lm3556.rst b/Documentation/drivers/leds/leds-lm3556.rst
similarity index 100%
rename from Documentation/leds/leds-lm3556.rst
rename to Documentation/drivers/leds/leds-lm3556.rst
diff --git a/Documentation/leds/leds-lp3944.rst b/Documentation/drivers/leds/leds-lp3944.rst
similarity index 100%
rename from Documentation/leds/leds-lp3944.rst
rename to Documentation/drivers/leds/leds-lp3944.rst
diff --git a/Documentation/leds/leds-lp5521.rst b/Documentation/drivers/leds/leds-lp5521.rst
similarity index 100%
rename from Documentation/leds/leds-lp5521.rst
rename to Documentation/drivers/leds/leds-lp5521.rst
diff --git a/Documentation/leds/leds-lp5523.rst b/Documentation/drivers/leds/leds-lp5523.rst
similarity index 100%
rename from Documentation/leds/leds-lp5523.rst
rename to Documentation/drivers/leds/leds-lp5523.rst
diff --git a/Documentation/leds/leds-lp5562.rst b/Documentation/drivers/leds/leds-lp5562.rst
similarity index 100%
rename from Documentation/leds/leds-lp5562.rst
rename to Documentation/drivers/leds/leds-lp5562.rst
diff --git a/Documentation/leds/leds-lp55xx.rst b/Documentation/drivers/leds/leds-lp55xx.rst
similarity index 100%
rename from Documentation/leds/leds-lp55xx.rst
rename to Documentation/drivers/leds/leds-lp55xx.rst
diff --git a/Documentation/leds/leds-mlxcpld.rst b/Documentation/drivers/leds/leds-mlxcpld.rst
similarity index 100%
rename from Documentation/leds/leds-mlxcpld.rst
rename to Documentation/drivers/leds/leds-mlxcpld.rst
diff --git a/Documentation/leds/ledtrig-oneshot.rst b/Documentation/drivers/leds/ledtrig-oneshot.rst
similarity index 100%
rename from Documentation/leds/ledtrig-oneshot.rst
rename to Documentation/drivers/leds/ledtrig-oneshot.rst
diff --git a/Documentation/leds/ledtrig-transient.rst b/Documentation/drivers/leds/ledtrig-transient.rst
similarity index 100%
rename from Documentation/leds/ledtrig-transient.rst
rename to Documentation/drivers/leds/ledtrig-transient.rst
diff --git a/Documentation/leds/ledtrig-usbport.rst b/Documentation/drivers/leds/ledtrig-usbport.rst
similarity index 100%
rename from Documentation/leds/ledtrig-usbport.rst
rename to Documentation/drivers/leds/ledtrig-usbport.rst
diff --git a/Documentation/leds/uleds.rst b/Documentation/drivers/leds/uleds.rst
similarity index 100%
rename from Documentation/leds/uleds.rst
rename to Documentation/drivers/leds/uleds.rst
diff --git a/Documentation/lightnvm/pblk.txt b/Documentation/drivers/lightnvm/pblk.txt
similarity index 100%
rename from Documentation/lightnvm/pblk.txt
rename to Documentation/drivers/lightnvm/pblk.txt
diff --git a/Documentation/md/md-cluster.txt b/Documentation/drivers/md/md-cluster.txt
similarity index 100%
rename from Documentation/md/md-cluster.txt
rename to Documentation/drivers/md/md-cluster.txt
diff --git a/Documentation/md/raid5-cache.txt b/Documentation/drivers/md/raid5-cache.txt
similarity index 100%
rename from Documentation/md/raid5-cache.txt
rename to Documentation/drivers/md/raid5-cache.txt
diff --git a/Documentation/md/raid5-ppl.txt b/Documentation/drivers/md/raid5-ppl.txt
similarity index 100%
rename from Documentation/md/raid5-ppl.txt
rename to Documentation/drivers/md/raid5-ppl.txt
diff --git a/Documentation/media/.gitignore b/Documentation/drivers/media/.gitignore
similarity index 100%
rename from Documentation/media/.gitignore
rename to Documentation/drivers/media/.gitignore
diff --git a/Documentation/media/Makefile b/Documentation/drivers/media/Makefile
similarity index 100%
rename from Documentation/media/Makefile
rename to Documentation/drivers/media/Makefile
diff --git a/Documentation/media/audio.h.rst.exceptions b/Documentation/drivers/media/audio.h.rst.exceptions
similarity index 100%
rename from Documentation/media/audio.h.rst.exceptions
rename to Documentation/drivers/media/audio.h.rst.exceptions
diff --git a/Documentation/media/ca.h.rst.exceptions b/Documentation/drivers/media/ca.h.rst.exceptions
similarity index 100%
rename from Documentation/media/ca.h.rst.exceptions
rename to Documentation/drivers/media/ca.h.rst.exceptions
diff --git a/Documentation/media/cec-drivers/index.rst b/Documentation/drivers/media/cec-drivers/index.rst
similarity index 100%
rename from Documentation/media/cec-drivers/index.rst
rename to Documentation/drivers/media/cec-drivers/index.rst
diff --git a/Documentation/media/cec-drivers/pulse8-cec.rst b/Documentation/drivers/media/cec-drivers/pulse8-cec.rst
similarity index 100%
rename from Documentation/media/cec-drivers/pulse8-cec.rst
rename to Documentation/drivers/media/cec-drivers/pulse8-cec.rst
diff --git a/Documentation/media/cec.h.rst.exceptions b/Documentation/drivers/media/cec.h.rst.exceptions
similarity index 100%
rename from Documentation/media/cec.h.rst.exceptions
rename to Documentation/drivers/media/cec.h.rst.exceptions
diff --git a/Documentation/media/conf.py b/Documentation/drivers/media/conf.py
similarity index 100%
rename from Documentation/media/conf.py
rename to Documentation/drivers/media/conf.py
diff --git a/Documentation/media/conf_nitpick.py b/Documentation/drivers/media/conf_nitpick.py
similarity index 100%
rename from Documentation/media/conf_nitpick.py
rename to Documentation/drivers/media/conf_nitpick.py
diff --git a/Documentation/media/dmx.h.rst.exceptions b/Documentation/drivers/media/dmx.h.rst.exceptions
similarity index 100%
rename from Documentation/media/dmx.h.rst.exceptions
rename to Documentation/drivers/media/dmx.h.rst.exceptions
diff --git a/Documentation/media/dvb-drivers/avermedia.rst b/Documentation/drivers/media/dvb-drivers/avermedia.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/avermedia.rst
rename to Documentation/drivers/media/dvb-drivers/avermedia.rst
diff --git a/Documentation/media/dvb-drivers/bt8xx.rst b/Documentation/drivers/media/dvb-drivers/bt8xx.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/bt8xx.rst
rename to Documentation/drivers/media/dvb-drivers/bt8xx.rst
diff --git a/Documentation/media/dvb-drivers/cards.rst b/Documentation/drivers/media/dvb-drivers/cards.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/cards.rst
rename to Documentation/drivers/media/dvb-drivers/cards.rst
diff --git a/Documentation/media/dvb-drivers/ci.rst b/Documentation/drivers/media/dvb-drivers/ci.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/ci.rst
rename to Documentation/drivers/media/dvb-drivers/ci.rst
diff --git a/Documentation/media/dvb-drivers/contributors.rst b/Documentation/drivers/media/dvb-drivers/contributors.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/contributors.rst
rename to Documentation/drivers/media/dvb-drivers/contributors.rst
diff --git a/Documentation/media/dvb-drivers/dvb-usb.rst b/Documentation/drivers/media/dvb-drivers/dvb-usb.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/dvb-usb.rst
rename to Documentation/drivers/media/dvb-drivers/dvb-usb.rst
diff --git a/Documentation/media/dvb-drivers/faq.rst b/Documentation/drivers/media/dvb-drivers/faq.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/faq.rst
rename to Documentation/drivers/media/dvb-drivers/faq.rst
diff --git a/Documentation/media/dvb-drivers/frontends.rst b/Documentation/drivers/media/dvb-drivers/frontends.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/frontends.rst
rename to Documentation/drivers/media/dvb-drivers/frontends.rst
diff --git a/Documentation/media/dvb-drivers/index.rst b/Documentation/drivers/media/dvb-drivers/index.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/index.rst
rename to Documentation/drivers/media/dvb-drivers/index.rst
diff --git a/Documentation/media/dvb-drivers/intro.rst b/Documentation/drivers/media/dvb-drivers/intro.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/intro.rst
rename to Documentation/drivers/media/dvb-drivers/intro.rst
diff --git a/Documentation/media/dvb-drivers/lmedm04.rst b/Documentation/drivers/media/dvb-drivers/lmedm04.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/lmedm04.rst
rename to Documentation/drivers/media/dvb-drivers/lmedm04.rst
diff --git a/Documentation/media/dvb-drivers/opera-firmware.rst b/Documentation/drivers/media/dvb-drivers/opera-firmware.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/opera-firmware.rst
rename to Documentation/drivers/media/dvb-drivers/opera-firmware.rst
diff --git a/Documentation/media/dvb-drivers/technisat.rst b/Documentation/drivers/media/dvb-drivers/technisat.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/technisat.rst
rename to Documentation/drivers/media/dvb-drivers/technisat.rst
diff --git a/Documentation/media/dvb-drivers/ttusb-dec.rst b/Documentation/drivers/media/dvb-drivers/ttusb-dec.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/ttusb-dec.rst
rename to Documentation/drivers/media/dvb-drivers/ttusb-dec.rst
diff --git a/Documentation/media/dvb-drivers/udev.rst b/Documentation/drivers/media/dvb-drivers/udev.rst
similarity index 100%
rename from Documentation/media/dvb-drivers/udev.rst
rename to Documentation/drivers/media/dvb-drivers/udev.rst
diff --git a/Documentation/media/frontend.h.rst.exceptions b/Documentation/drivers/media/frontend.h.rst.exceptions
similarity index 100%
rename from Documentation/media/frontend.h.rst.exceptions
rename to Documentation/drivers/media/frontend.h.rst.exceptions
diff --git a/Documentation/media/index.rst b/Documentation/drivers/media/index.rst
similarity index 100%
rename from Documentation/media/index.rst
rename to Documentation/drivers/media/index.rst
diff --git a/Documentation/media/intro.rst b/Documentation/drivers/media/intro.rst
similarity index 100%
rename from Documentation/media/intro.rst
rename to Documentation/drivers/media/intro.rst
diff --git a/Documentation/media/kapi/cec-core.rst b/Documentation/drivers/media/kapi/cec-core.rst
similarity index 100%
rename from Documentation/media/kapi/cec-core.rst
rename to Documentation/drivers/media/kapi/cec-core.rst
diff --git a/Documentation/media/kapi/csi2.rst b/Documentation/drivers/media/kapi/csi2.rst
similarity index 100%
rename from Documentation/media/kapi/csi2.rst
rename to Documentation/drivers/media/kapi/csi2.rst
diff --git a/Documentation/media/kapi/dtv-ca.rst b/Documentation/drivers/media/kapi/dtv-ca.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-ca.rst
rename to Documentation/drivers/media/kapi/dtv-ca.rst
diff --git a/Documentation/media/kapi/dtv-common.rst b/Documentation/drivers/media/kapi/dtv-common.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-common.rst
rename to Documentation/drivers/media/kapi/dtv-common.rst
diff --git a/Documentation/media/kapi/dtv-core.rst b/Documentation/drivers/media/kapi/dtv-core.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-core.rst
rename to Documentation/drivers/media/kapi/dtv-core.rst
diff --git a/Documentation/media/kapi/dtv-demux.rst b/Documentation/drivers/media/kapi/dtv-demux.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-demux.rst
rename to Documentation/drivers/media/kapi/dtv-demux.rst
diff --git a/Documentation/media/kapi/dtv-frontend.rst b/Documentation/drivers/media/kapi/dtv-frontend.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-frontend.rst
rename to Documentation/drivers/media/kapi/dtv-frontend.rst
diff --git a/Documentation/media/kapi/dtv-net.rst b/Documentation/drivers/media/kapi/dtv-net.rst
similarity index 100%
rename from Documentation/media/kapi/dtv-net.rst
rename to Documentation/drivers/media/kapi/dtv-net.rst
diff --git a/Documentation/media/kapi/mc-core.rst b/Documentation/drivers/media/kapi/mc-core.rst
similarity index 100%
rename from Documentation/media/kapi/mc-core.rst
rename to Documentation/drivers/media/kapi/mc-core.rst
diff --git a/Documentation/media/kapi/rc-core.rst b/Documentation/drivers/media/kapi/rc-core.rst
similarity index 100%
rename from Documentation/media/kapi/rc-core.rst
rename to Documentation/drivers/media/kapi/rc-core.rst
diff --git a/Documentation/media/kapi/v4l2-async.rst b/Documentation/drivers/media/kapi/v4l2-async.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-async.rst
rename to Documentation/drivers/media/kapi/v4l2-async.rst
diff --git a/Documentation/media/kapi/v4l2-clocks.rst b/Documentation/drivers/media/kapi/v4l2-clocks.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-clocks.rst
rename to Documentation/drivers/media/kapi/v4l2-clocks.rst
diff --git a/Documentation/media/kapi/v4l2-common.rst b/Documentation/drivers/media/kapi/v4l2-common.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-common.rst
rename to Documentation/drivers/media/kapi/v4l2-common.rst
diff --git a/Documentation/media/kapi/v4l2-controls.rst b/Documentation/drivers/media/kapi/v4l2-controls.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-controls.rst
rename to Documentation/drivers/media/kapi/v4l2-controls.rst
diff --git a/Documentation/media/kapi/v4l2-core.rst b/Documentation/drivers/media/kapi/v4l2-core.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-core.rst
rename to Documentation/drivers/media/kapi/v4l2-core.rst
diff --git a/Documentation/media/kapi/v4l2-dev.rst b/Documentation/drivers/media/kapi/v4l2-dev.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-dev.rst
rename to Documentation/drivers/media/kapi/v4l2-dev.rst
diff --git a/Documentation/media/kapi/v4l2-device.rst b/Documentation/drivers/media/kapi/v4l2-device.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-device.rst
rename to Documentation/drivers/media/kapi/v4l2-device.rst
diff --git a/Documentation/media/kapi/v4l2-dv-timings.rst b/Documentation/drivers/media/kapi/v4l2-dv-timings.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-dv-timings.rst
rename to Documentation/drivers/media/kapi/v4l2-dv-timings.rst
diff --git a/Documentation/media/kapi/v4l2-event.rst b/Documentation/drivers/media/kapi/v4l2-event.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-event.rst
rename to Documentation/drivers/media/kapi/v4l2-event.rst
diff --git a/Documentation/media/kapi/v4l2-fh.rst b/Documentation/drivers/media/kapi/v4l2-fh.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-fh.rst
rename to Documentation/drivers/media/kapi/v4l2-fh.rst
diff --git a/Documentation/media/kapi/v4l2-flash-led-class.rst b/Documentation/drivers/media/kapi/v4l2-flash-led-class.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-flash-led-class.rst
rename to Documentation/drivers/media/kapi/v4l2-flash-led-class.rst
diff --git a/Documentation/media/kapi/v4l2-fwnode.rst b/Documentation/drivers/media/kapi/v4l2-fwnode.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-fwnode.rst
rename to Documentation/drivers/media/kapi/v4l2-fwnode.rst
diff --git a/Documentation/media/kapi/v4l2-intro.rst b/Documentation/drivers/media/kapi/v4l2-intro.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-intro.rst
rename to Documentation/drivers/media/kapi/v4l2-intro.rst
diff --git a/Documentation/media/kapi/v4l2-mc.rst b/Documentation/drivers/media/kapi/v4l2-mc.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-mc.rst
rename to Documentation/drivers/media/kapi/v4l2-mc.rst
diff --git a/Documentation/media/kapi/v4l2-mediabus.rst b/Documentation/drivers/media/kapi/v4l2-mediabus.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-mediabus.rst
rename to Documentation/drivers/media/kapi/v4l2-mediabus.rst
diff --git a/Documentation/media/kapi/v4l2-mem2mem.rst b/Documentation/drivers/media/kapi/v4l2-mem2mem.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-mem2mem.rst
rename to Documentation/drivers/media/kapi/v4l2-mem2mem.rst
diff --git a/Documentation/media/kapi/v4l2-rect.rst b/Documentation/drivers/media/kapi/v4l2-rect.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-rect.rst
rename to Documentation/drivers/media/kapi/v4l2-rect.rst
diff --git a/Documentation/media/kapi/v4l2-subdev.rst b/Documentation/drivers/media/kapi/v4l2-subdev.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-subdev.rst
rename to Documentation/drivers/media/kapi/v4l2-subdev.rst
diff --git a/Documentation/media/kapi/v4l2-tuner.rst b/Documentation/drivers/media/kapi/v4l2-tuner.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-tuner.rst
rename to Documentation/drivers/media/kapi/v4l2-tuner.rst
diff --git a/Documentation/media/kapi/v4l2-tveeprom.rst b/Documentation/drivers/media/kapi/v4l2-tveeprom.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-tveeprom.rst
rename to Documentation/drivers/media/kapi/v4l2-tveeprom.rst
diff --git a/Documentation/media/kapi/v4l2-videobuf.rst b/Documentation/drivers/media/kapi/v4l2-videobuf.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-videobuf.rst
rename to Documentation/drivers/media/kapi/v4l2-videobuf.rst
diff --git a/Documentation/media/kapi/v4l2-videobuf2.rst b/Documentation/drivers/media/kapi/v4l2-videobuf2.rst
similarity index 100%
rename from Documentation/media/kapi/v4l2-videobuf2.rst
rename to Documentation/drivers/media/kapi/v4l2-videobuf2.rst
diff --git a/Documentation/media/lirc.h.rst.exceptions b/Documentation/drivers/media/lirc.h.rst.exceptions
similarity index 100%
rename from Documentation/media/lirc.h.rst.exceptions
rename to Documentation/drivers/media/lirc.h.rst.exceptions
diff --git a/Documentation/media/media.h.rst.exceptions b/Documentation/drivers/media/media.h.rst.exceptions
similarity index 100%
rename from Documentation/media/media.h.rst.exceptions
rename to Documentation/drivers/media/media.h.rst.exceptions
diff --git a/Documentation/media/media_kapi.rst b/Documentation/drivers/media/media_kapi.rst
similarity index 100%
rename from Documentation/media/media_kapi.rst
rename to Documentation/drivers/media/media_kapi.rst
diff --git a/Documentation/media/media_uapi.rst b/Documentation/drivers/media/media_uapi.rst
similarity index 100%
rename from Documentation/media/media_uapi.rst
rename to Documentation/drivers/media/media_uapi.rst
diff --git a/Documentation/media/net.h.rst.exceptions b/Documentation/drivers/media/net.h.rst.exceptions
similarity index 100%
rename from Documentation/media/net.h.rst.exceptions
rename to Documentation/drivers/media/net.h.rst.exceptions
diff --git a/Documentation/media/typical_media_device.svg b/Documentation/drivers/media/typical_media_device.svg
similarity index 100%
rename from Documentation/media/typical_media_device.svg
rename to Documentation/drivers/media/typical_media_device.svg
diff --git a/Documentation/media/uapi/cec/cec-api.rst b/Documentation/drivers/media/uapi/cec/cec-api.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-api.rst
rename to Documentation/drivers/media/uapi/cec/cec-api.rst
diff --git a/Documentation/media/uapi/cec/cec-func-close.rst b/Documentation/drivers/media/uapi/cec/cec-func-close.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-func-close.rst
rename to Documentation/drivers/media/uapi/cec/cec-func-close.rst
diff --git a/Documentation/media/uapi/cec/cec-func-ioctl.rst b/Documentation/drivers/media/uapi/cec/cec-func-ioctl.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-func-ioctl.rst
rename to Documentation/drivers/media/uapi/cec/cec-func-ioctl.rst
diff --git a/Documentation/media/uapi/cec/cec-func-open.rst b/Documentation/drivers/media/uapi/cec/cec-func-open.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-func-open.rst
rename to Documentation/drivers/media/uapi/cec/cec-func-open.rst
diff --git a/Documentation/media/uapi/cec/cec-func-poll.rst b/Documentation/drivers/media/uapi/cec/cec-func-poll.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-func-poll.rst
rename to Documentation/drivers/media/uapi/cec/cec-func-poll.rst
diff --git a/Documentation/media/uapi/cec/cec-funcs.rst b/Documentation/drivers/media/uapi/cec/cec-funcs.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-funcs.rst
rename to Documentation/drivers/media/uapi/cec/cec-funcs.rst
diff --git a/Documentation/media/uapi/cec/cec-header.rst b/Documentation/drivers/media/uapi/cec/cec-header.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-header.rst
rename to Documentation/drivers/media/uapi/cec/cec-header.rst
diff --git a/Documentation/media/uapi/cec/cec-intro.rst b/Documentation/drivers/media/uapi/cec/cec-intro.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-intro.rst
rename to Documentation/drivers/media/uapi/cec/cec-intro.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-adap-g-caps.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-caps.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-adap-g-caps.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-caps.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-log-addrs.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-adap-g-phys-addr.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-dqevent.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-dqevent.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-dqevent.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-dqevent.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-g-mode.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-g-mode.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-g-mode.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-g-mode.rst
diff --git a/Documentation/media/uapi/cec/cec-ioc-receive.rst b/Documentation/drivers/media/uapi/cec/cec-ioc-receive.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-ioc-receive.rst
rename to Documentation/drivers/media/uapi/cec/cec-ioc-receive.rst
diff --git a/Documentation/media/uapi/cec/cec-pin-error-inj.rst b/Documentation/drivers/media/uapi/cec/cec-pin-error-inj.rst
similarity index 100%
rename from Documentation/media/uapi/cec/cec-pin-error-inj.rst
rename to Documentation/drivers/media/uapi/cec/cec-pin-error-inj.rst
diff --git a/Documentation/media/uapi/dvb/audio-bilingual-channel-select.rst b/Documentation/drivers/media/uapi/dvb/audio-bilingual-channel-select.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-bilingual-channel-select.rst
rename to Documentation/drivers/media/uapi/dvb/audio-bilingual-channel-select.rst
diff --git a/Documentation/media/uapi/dvb/audio-channel-select.rst b/Documentation/drivers/media/uapi/dvb/audio-channel-select.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-channel-select.rst
rename to Documentation/drivers/media/uapi/dvb/audio-channel-select.rst
diff --git a/Documentation/media/uapi/dvb/audio-clear-buffer.rst b/Documentation/drivers/media/uapi/dvb/audio-clear-buffer.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-clear-buffer.rst
rename to Documentation/drivers/media/uapi/dvb/audio-clear-buffer.rst
diff --git a/Documentation/media/uapi/dvb/audio-continue.rst b/Documentation/drivers/media/uapi/dvb/audio-continue.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-continue.rst
rename to Documentation/drivers/media/uapi/dvb/audio-continue.rst
diff --git a/Documentation/media/uapi/dvb/audio-fclose.rst b/Documentation/drivers/media/uapi/dvb/audio-fclose.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-fclose.rst
rename to Documentation/drivers/media/uapi/dvb/audio-fclose.rst
diff --git a/Documentation/media/uapi/dvb/audio-fopen.rst b/Documentation/drivers/media/uapi/dvb/audio-fopen.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-fopen.rst
rename to Documentation/drivers/media/uapi/dvb/audio-fopen.rst
diff --git a/Documentation/media/uapi/dvb/audio-fwrite.rst b/Documentation/drivers/media/uapi/dvb/audio-fwrite.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-fwrite.rst
rename to Documentation/drivers/media/uapi/dvb/audio-fwrite.rst
diff --git a/Documentation/media/uapi/dvb/audio-get-capabilities.rst b/Documentation/drivers/media/uapi/dvb/audio-get-capabilities.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-get-capabilities.rst
rename to Documentation/drivers/media/uapi/dvb/audio-get-capabilities.rst
diff --git a/Documentation/media/uapi/dvb/audio-get-status.rst b/Documentation/drivers/media/uapi/dvb/audio-get-status.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-get-status.rst
rename to Documentation/drivers/media/uapi/dvb/audio-get-status.rst
diff --git a/Documentation/media/uapi/dvb/audio-pause.rst b/Documentation/drivers/media/uapi/dvb/audio-pause.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-pause.rst
rename to Documentation/drivers/media/uapi/dvb/audio-pause.rst
diff --git a/Documentation/media/uapi/dvb/audio-play.rst b/Documentation/drivers/media/uapi/dvb/audio-play.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-play.rst
rename to Documentation/drivers/media/uapi/dvb/audio-play.rst
diff --git a/Documentation/media/uapi/dvb/audio-select-source.rst b/Documentation/drivers/media/uapi/dvb/audio-select-source.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-select-source.rst
rename to Documentation/drivers/media/uapi/dvb/audio-select-source.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-av-sync.rst b/Documentation/drivers/media/uapi/dvb/audio-set-av-sync.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-av-sync.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-av-sync.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-bypass-mode.rst b/Documentation/drivers/media/uapi/dvb/audio-set-bypass-mode.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-bypass-mode.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-bypass-mode.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-id.rst b/Documentation/drivers/media/uapi/dvb/audio-set-id.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-id.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-id.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-mixer.rst b/Documentation/drivers/media/uapi/dvb/audio-set-mixer.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-mixer.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-mixer.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-mute.rst b/Documentation/drivers/media/uapi/dvb/audio-set-mute.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-mute.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-mute.rst
diff --git a/Documentation/media/uapi/dvb/audio-set-streamtype.rst b/Documentation/drivers/media/uapi/dvb/audio-set-streamtype.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-set-streamtype.rst
rename to Documentation/drivers/media/uapi/dvb/audio-set-streamtype.rst
diff --git a/Documentation/media/uapi/dvb/audio-stop.rst b/Documentation/drivers/media/uapi/dvb/audio-stop.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio-stop.rst
rename to Documentation/drivers/media/uapi/dvb/audio-stop.rst
diff --git a/Documentation/media/uapi/dvb/audio.rst b/Documentation/drivers/media/uapi/dvb/audio.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio.rst
rename to Documentation/drivers/media/uapi/dvb/audio.rst
diff --git a/Documentation/media/uapi/dvb/audio_data_types.rst b/Documentation/drivers/media/uapi/dvb/audio_data_types.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio_data_types.rst
rename to Documentation/drivers/media/uapi/dvb/audio_data_types.rst
diff --git a/Documentation/media/uapi/dvb/audio_function_calls.rst b/Documentation/drivers/media/uapi/dvb/audio_function_calls.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/audio_function_calls.rst
rename to Documentation/drivers/media/uapi/dvb/audio_function_calls.rst
diff --git a/Documentation/media/uapi/dvb/ca-fclose.rst b/Documentation/drivers/media/uapi/dvb/ca-fclose.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-fclose.rst
rename to Documentation/drivers/media/uapi/dvb/ca-fclose.rst
diff --git a/Documentation/media/uapi/dvb/ca-fopen.rst b/Documentation/drivers/media/uapi/dvb/ca-fopen.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-fopen.rst
rename to Documentation/drivers/media/uapi/dvb/ca-fopen.rst
diff --git a/Documentation/media/uapi/dvb/ca-get-cap.rst b/Documentation/drivers/media/uapi/dvb/ca-get-cap.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-get-cap.rst
rename to Documentation/drivers/media/uapi/dvb/ca-get-cap.rst
diff --git a/Documentation/media/uapi/dvb/ca-get-descr-info.rst b/Documentation/drivers/media/uapi/dvb/ca-get-descr-info.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-get-descr-info.rst
rename to Documentation/drivers/media/uapi/dvb/ca-get-descr-info.rst
diff --git a/Documentation/media/uapi/dvb/ca-get-msg.rst b/Documentation/drivers/media/uapi/dvb/ca-get-msg.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-get-msg.rst
rename to Documentation/drivers/media/uapi/dvb/ca-get-msg.rst
diff --git a/Documentation/media/uapi/dvb/ca-get-slot-info.rst b/Documentation/drivers/media/uapi/dvb/ca-get-slot-info.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-get-slot-info.rst
rename to Documentation/drivers/media/uapi/dvb/ca-get-slot-info.rst
diff --git a/Documentation/media/uapi/dvb/ca-reset.rst b/Documentation/drivers/media/uapi/dvb/ca-reset.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-reset.rst
rename to Documentation/drivers/media/uapi/dvb/ca-reset.rst
diff --git a/Documentation/media/uapi/dvb/ca-send-msg.rst b/Documentation/drivers/media/uapi/dvb/ca-send-msg.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-send-msg.rst
rename to Documentation/drivers/media/uapi/dvb/ca-send-msg.rst
diff --git a/Documentation/media/uapi/dvb/ca-set-descr.rst b/Documentation/drivers/media/uapi/dvb/ca-set-descr.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca-set-descr.rst
rename to Documentation/drivers/media/uapi/dvb/ca-set-descr.rst
diff --git a/Documentation/media/uapi/dvb/ca.rst b/Documentation/drivers/media/uapi/dvb/ca.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca.rst
rename to Documentation/drivers/media/uapi/dvb/ca.rst
diff --git a/Documentation/media/uapi/dvb/ca_data_types.rst b/Documentation/drivers/media/uapi/dvb/ca_data_types.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca_data_types.rst
rename to Documentation/drivers/media/uapi/dvb/ca_data_types.rst
diff --git a/Documentation/media/uapi/dvb/ca_function_calls.rst b/Documentation/drivers/media/uapi/dvb/ca_function_calls.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/ca_function_calls.rst
rename to Documentation/drivers/media/uapi/dvb/ca_function_calls.rst
diff --git a/Documentation/media/uapi/dvb/demux.rst b/Documentation/drivers/media/uapi/dvb/demux.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/demux.rst
rename to Documentation/drivers/media/uapi/dvb/demux.rst
diff --git a/Documentation/media/uapi/dvb/dmx-add-pid.rst b/Documentation/drivers/media/uapi/dvb/dmx-add-pid.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-add-pid.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-add-pid.rst
diff --git a/Documentation/media/uapi/dvb/dmx-expbuf.rst b/Documentation/drivers/media/uapi/dvb/dmx-expbuf.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-expbuf.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-expbuf.rst
diff --git a/Documentation/media/uapi/dvb/dmx-fclose.rst b/Documentation/drivers/media/uapi/dvb/dmx-fclose.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-fclose.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-fclose.rst
diff --git a/Documentation/media/uapi/dvb/dmx-fopen.rst b/Documentation/drivers/media/uapi/dvb/dmx-fopen.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-fopen.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-fopen.rst
diff --git a/Documentation/media/uapi/dvb/dmx-fread.rst b/Documentation/drivers/media/uapi/dvb/dmx-fread.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-fread.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-fread.rst
diff --git a/Documentation/media/uapi/dvb/dmx-fwrite.rst b/Documentation/drivers/media/uapi/dvb/dmx-fwrite.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-fwrite.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-fwrite.rst
diff --git a/Documentation/media/uapi/dvb/dmx-get-pes-pids.rst b/Documentation/drivers/media/uapi/dvb/dmx-get-pes-pids.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-get-pes-pids.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-get-pes-pids.rst
diff --git a/Documentation/media/uapi/dvb/dmx-get-stc.rst b/Documentation/drivers/media/uapi/dvb/dmx-get-stc.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-get-stc.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-get-stc.rst
diff --git a/Documentation/media/uapi/dvb/dmx-mmap.rst b/Documentation/drivers/media/uapi/dvb/dmx-mmap.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-mmap.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-mmap.rst
diff --git a/Documentation/media/uapi/dvb/dmx-munmap.rst b/Documentation/drivers/media/uapi/dvb/dmx-munmap.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-munmap.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-munmap.rst
diff --git a/Documentation/media/uapi/dvb/dmx-qbuf.rst b/Documentation/drivers/media/uapi/dvb/dmx-qbuf.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-qbuf.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-qbuf.rst
diff --git a/Documentation/media/uapi/dvb/dmx-querybuf.rst b/Documentation/drivers/media/uapi/dvb/dmx-querybuf.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-querybuf.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-querybuf.rst
diff --git a/Documentation/media/uapi/dvb/dmx-remove-pid.rst b/Documentation/drivers/media/uapi/dvb/dmx-remove-pid.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-remove-pid.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-remove-pid.rst
diff --git a/Documentation/media/uapi/dvb/dmx-reqbufs.rst b/Documentation/drivers/media/uapi/dvb/dmx-reqbufs.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-reqbufs.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-reqbufs.rst
diff --git a/Documentation/media/uapi/dvb/dmx-set-buffer-size.rst b/Documentation/drivers/media/uapi/dvb/dmx-set-buffer-size.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-set-buffer-size.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-set-buffer-size.rst
diff --git a/Documentation/media/uapi/dvb/dmx-set-filter.rst b/Documentation/drivers/media/uapi/dvb/dmx-set-filter.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-set-filter.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-set-filter.rst
diff --git a/Documentation/media/uapi/dvb/dmx-set-pes-filter.rst b/Documentation/drivers/media/uapi/dvb/dmx-set-pes-filter.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-set-pes-filter.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-set-pes-filter.rst
diff --git a/Documentation/media/uapi/dvb/dmx-start.rst b/Documentation/drivers/media/uapi/dvb/dmx-start.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-start.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-start.rst
diff --git a/Documentation/media/uapi/dvb/dmx-stop.rst b/Documentation/drivers/media/uapi/dvb/dmx-stop.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx-stop.rst
rename to Documentation/drivers/media/uapi/dvb/dmx-stop.rst
diff --git a/Documentation/media/uapi/dvb/dmx_fcalls.rst b/Documentation/drivers/media/uapi/dvb/dmx_fcalls.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx_fcalls.rst
rename to Documentation/drivers/media/uapi/dvb/dmx_fcalls.rst
diff --git a/Documentation/media/uapi/dvb/dmx_types.rst b/Documentation/drivers/media/uapi/dvb/dmx_types.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dmx_types.rst
rename to Documentation/drivers/media/uapi/dvb/dmx_types.rst
diff --git a/Documentation/media/uapi/dvb/dvb-fe-read-status.rst b/Documentation/drivers/media/uapi/dvb/dvb-fe-read-status.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dvb-fe-read-status.rst
rename to Documentation/drivers/media/uapi/dvb/dvb-fe-read-status.rst
diff --git a/Documentation/media/uapi/dvb/dvb-frontend-event.rst b/Documentation/drivers/media/uapi/dvb/dvb-frontend-event.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dvb-frontend-event.rst
rename to Documentation/drivers/media/uapi/dvb/dvb-frontend-event.rst
diff --git a/Documentation/media/uapi/dvb/dvb-frontend-parameters.rst b/Documentation/drivers/media/uapi/dvb/dvb-frontend-parameters.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dvb-frontend-parameters.rst
rename to Documentation/drivers/media/uapi/dvb/dvb-frontend-parameters.rst
diff --git a/Documentation/media/uapi/dvb/dvbapi.rst b/Documentation/drivers/media/uapi/dvb/dvbapi.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dvbapi.rst
rename to Documentation/drivers/media/uapi/dvb/dvbapi.rst
diff --git a/Documentation/media/uapi/dvb/dvbproperty.rst b/Documentation/drivers/media/uapi/dvb/dvbproperty.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/dvbproperty.rst
rename to Documentation/drivers/media/uapi/dvb/dvbproperty.rst
diff --git a/Documentation/media/uapi/dvb/dvbstb.svg b/Documentation/drivers/media/uapi/dvb/dvbstb.svg
similarity index 100%
rename from Documentation/media/uapi/dvb/dvbstb.svg
rename to Documentation/drivers/media/uapi/dvb/dvbstb.svg
diff --git a/Documentation/media/uapi/dvb/examples.rst b/Documentation/drivers/media/uapi/dvb/examples.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/examples.rst
rename to Documentation/drivers/media/uapi/dvb/examples.rst
diff --git a/Documentation/media/uapi/dvb/fe-bandwidth-t.rst b/Documentation/drivers/media/uapi/dvb/fe-bandwidth-t.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-bandwidth-t.rst
rename to Documentation/drivers/media/uapi/dvb/fe-bandwidth-t.rst
diff --git a/Documentation/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst b/Documentation/drivers/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst
rename to Documentation/drivers/media/uapi/dvb/fe-diseqc-recv-slave-reply.rst
diff --git a/Documentation/media/uapi/dvb/fe-diseqc-reset-overload.rst b/Documentation/drivers/media/uapi/dvb/fe-diseqc-reset-overload.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-diseqc-reset-overload.rst
rename to Documentation/drivers/media/uapi/dvb/fe-diseqc-reset-overload.rst
diff --git a/Documentation/media/uapi/dvb/fe-diseqc-send-burst.rst b/Documentation/drivers/media/uapi/dvb/fe-diseqc-send-burst.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-diseqc-send-burst.rst
rename to Documentation/drivers/media/uapi/dvb/fe-diseqc-send-burst.rst
diff --git a/Documentation/media/uapi/dvb/fe-diseqc-send-master-cmd.rst b/Documentation/drivers/media/uapi/dvb/fe-diseqc-send-master-cmd.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-diseqc-send-master-cmd.rst
rename to Documentation/drivers/media/uapi/dvb/fe-diseqc-send-master-cmd.rst
diff --git a/Documentation/media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst b/Documentation/drivers/media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst
rename to Documentation/drivers/media/uapi/dvb/fe-dishnetwork-send-legacy-cmd.rst
diff --git a/Documentation/media/uapi/dvb/fe-enable-high-lnb-voltage.rst b/Documentation/drivers/media/uapi/dvb/fe-enable-high-lnb-voltage.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-enable-high-lnb-voltage.rst
rename to Documentation/drivers/media/uapi/dvb/fe-enable-high-lnb-voltage.rst
diff --git a/Documentation/media/uapi/dvb/fe-get-event.rst b/Documentation/drivers/media/uapi/dvb/fe-get-event.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-get-event.rst
rename to Documentation/drivers/media/uapi/dvb/fe-get-event.rst
diff --git a/Documentation/media/uapi/dvb/fe-get-frontend.rst b/Documentation/drivers/media/uapi/dvb/fe-get-frontend.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-get-frontend.rst
rename to Documentation/drivers/media/uapi/dvb/fe-get-frontend.rst
diff --git a/Documentation/media/uapi/dvb/fe-get-info.rst b/Documentation/drivers/media/uapi/dvb/fe-get-info.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-get-info.rst
rename to Documentation/drivers/media/uapi/dvb/fe-get-info.rst
diff --git a/Documentation/media/uapi/dvb/fe-get-property.rst b/Documentation/drivers/media/uapi/dvb/fe-get-property.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-get-property.rst
rename to Documentation/drivers/media/uapi/dvb/fe-get-property.rst
diff --git a/Documentation/media/uapi/dvb/fe-read-ber.rst b/Documentation/drivers/media/uapi/dvb/fe-read-ber.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-read-ber.rst
rename to Documentation/drivers/media/uapi/dvb/fe-read-ber.rst
diff --git a/Documentation/media/uapi/dvb/fe-read-signal-strength.rst b/Documentation/drivers/media/uapi/dvb/fe-read-signal-strength.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-read-signal-strength.rst
rename to Documentation/drivers/media/uapi/dvb/fe-read-signal-strength.rst
diff --git a/Documentation/media/uapi/dvb/fe-read-snr.rst b/Documentation/drivers/media/uapi/dvb/fe-read-snr.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-read-snr.rst
rename to Documentation/drivers/media/uapi/dvb/fe-read-snr.rst
diff --git a/Documentation/media/uapi/dvb/fe-read-status.rst b/Documentation/drivers/media/uapi/dvb/fe-read-status.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-read-status.rst
rename to Documentation/drivers/media/uapi/dvb/fe-read-status.rst
diff --git a/Documentation/media/uapi/dvb/fe-read-uncorrected-blocks.rst b/Documentation/drivers/media/uapi/dvb/fe-read-uncorrected-blocks.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-read-uncorrected-blocks.rst
rename to Documentation/drivers/media/uapi/dvb/fe-read-uncorrected-blocks.rst
diff --git a/Documentation/media/uapi/dvb/fe-set-frontend-tune-mode.rst b/Documentation/drivers/media/uapi/dvb/fe-set-frontend-tune-mode.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-set-frontend-tune-mode.rst
rename to Documentation/drivers/media/uapi/dvb/fe-set-frontend-tune-mode.rst
diff --git a/Documentation/media/uapi/dvb/fe-set-frontend.rst b/Documentation/drivers/media/uapi/dvb/fe-set-frontend.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-set-frontend.rst
rename to Documentation/drivers/media/uapi/dvb/fe-set-frontend.rst
diff --git a/Documentation/media/uapi/dvb/fe-set-tone.rst b/Documentation/drivers/media/uapi/dvb/fe-set-tone.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-set-tone.rst
rename to Documentation/drivers/media/uapi/dvb/fe-set-tone.rst
diff --git a/Documentation/media/uapi/dvb/fe-set-voltage.rst b/Documentation/drivers/media/uapi/dvb/fe-set-voltage.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-set-voltage.rst
rename to Documentation/drivers/media/uapi/dvb/fe-set-voltage.rst
diff --git a/Documentation/media/uapi/dvb/fe-type-t.rst b/Documentation/drivers/media/uapi/dvb/fe-type-t.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe-type-t.rst
rename to Documentation/drivers/media/uapi/dvb/fe-type-t.rst
diff --git a/Documentation/media/uapi/dvb/fe_property_parameters.rst b/Documentation/drivers/media/uapi/dvb/fe_property_parameters.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/fe_property_parameters.rst
rename to Documentation/drivers/media/uapi/dvb/fe_property_parameters.rst
diff --git a/Documentation/media/uapi/dvb/frontend-header.rst b/Documentation/drivers/media/uapi/dvb/frontend-header.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend-header.rst
rename to Documentation/drivers/media/uapi/dvb/frontend-header.rst
diff --git a/Documentation/media/uapi/dvb/frontend-property-cable-systems.rst b/Documentation/drivers/media/uapi/dvb/frontend-property-cable-systems.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend-property-cable-systems.rst
rename to Documentation/drivers/media/uapi/dvb/frontend-property-cable-systems.rst
diff --git a/Documentation/media/uapi/dvb/frontend-property-satellite-systems.rst b/Documentation/drivers/media/uapi/dvb/frontend-property-satellite-systems.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend-property-satellite-systems.rst
rename to Documentation/drivers/media/uapi/dvb/frontend-property-satellite-systems.rst
diff --git a/Documentation/media/uapi/dvb/frontend-property-terrestrial-systems.rst b/Documentation/drivers/media/uapi/dvb/frontend-property-terrestrial-systems.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend-property-terrestrial-systems.rst
rename to Documentation/drivers/media/uapi/dvb/frontend-property-terrestrial-systems.rst
diff --git a/Documentation/media/uapi/dvb/frontend-stat-properties.rst b/Documentation/drivers/media/uapi/dvb/frontend-stat-properties.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend-stat-properties.rst
rename to Documentation/drivers/media/uapi/dvb/frontend-stat-properties.rst
diff --git a/Documentation/media/uapi/dvb/frontend.rst b/Documentation/drivers/media/uapi/dvb/frontend.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend.rst
rename to Documentation/drivers/media/uapi/dvb/frontend.rst
diff --git a/Documentation/media/uapi/dvb/frontend_f_close.rst b/Documentation/drivers/media/uapi/dvb/frontend_f_close.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend_f_close.rst
rename to Documentation/drivers/media/uapi/dvb/frontend_f_close.rst
diff --git a/Documentation/media/uapi/dvb/frontend_f_open.rst b/Documentation/drivers/media/uapi/dvb/frontend_f_open.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend_f_open.rst
rename to Documentation/drivers/media/uapi/dvb/frontend_f_open.rst
diff --git a/Documentation/media/uapi/dvb/frontend_fcalls.rst b/Documentation/drivers/media/uapi/dvb/frontend_fcalls.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend_fcalls.rst
rename to Documentation/drivers/media/uapi/dvb/frontend_fcalls.rst
diff --git a/Documentation/media/uapi/dvb/frontend_legacy_api.rst b/Documentation/drivers/media/uapi/dvb/frontend_legacy_api.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend_legacy_api.rst
rename to Documentation/drivers/media/uapi/dvb/frontend_legacy_api.rst
diff --git a/Documentation/media/uapi/dvb/frontend_legacy_dvbv3_api.rst b/Documentation/drivers/media/uapi/dvb/frontend_legacy_dvbv3_api.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/frontend_legacy_dvbv3_api.rst
rename to Documentation/drivers/media/uapi/dvb/frontend_legacy_dvbv3_api.rst
diff --git a/Documentation/media/uapi/dvb/headers.rst b/Documentation/drivers/media/uapi/dvb/headers.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/headers.rst
rename to Documentation/drivers/media/uapi/dvb/headers.rst
diff --git a/Documentation/media/uapi/dvb/intro.rst b/Documentation/drivers/media/uapi/dvb/intro.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/intro.rst
rename to Documentation/drivers/media/uapi/dvb/intro.rst
diff --git a/Documentation/media/uapi/dvb/legacy_dvb_apis.rst b/Documentation/drivers/media/uapi/dvb/legacy_dvb_apis.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/legacy_dvb_apis.rst
rename to Documentation/drivers/media/uapi/dvb/legacy_dvb_apis.rst
diff --git a/Documentation/media/uapi/dvb/net-add-if.rst b/Documentation/drivers/media/uapi/dvb/net-add-if.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/net-add-if.rst
rename to Documentation/drivers/media/uapi/dvb/net-add-if.rst
diff --git a/Documentation/media/uapi/dvb/net-get-if.rst b/Documentation/drivers/media/uapi/dvb/net-get-if.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/net-get-if.rst
rename to Documentation/drivers/media/uapi/dvb/net-get-if.rst
diff --git a/Documentation/media/uapi/dvb/net-remove-if.rst b/Documentation/drivers/media/uapi/dvb/net-remove-if.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/net-remove-if.rst
rename to Documentation/drivers/media/uapi/dvb/net-remove-if.rst
diff --git a/Documentation/media/uapi/dvb/net-types.rst b/Documentation/drivers/media/uapi/dvb/net-types.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/net-types.rst
rename to Documentation/drivers/media/uapi/dvb/net-types.rst
diff --git a/Documentation/media/uapi/dvb/net.rst b/Documentation/drivers/media/uapi/dvb/net.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/net.rst
rename to Documentation/drivers/media/uapi/dvb/net.rst
diff --git a/Documentation/media/uapi/dvb/query-dvb-frontend-info.rst b/Documentation/drivers/media/uapi/dvb/query-dvb-frontend-info.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/query-dvb-frontend-info.rst
rename to Documentation/drivers/media/uapi/dvb/query-dvb-frontend-info.rst
diff --git a/Documentation/media/uapi/dvb/video-clear-buffer.rst b/Documentation/drivers/media/uapi/dvb/video-clear-buffer.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-clear-buffer.rst
rename to Documentation/drivers/media/uapi/dvb/video-clear-buffer.rst
diff --git a/Documentation/media/uapi/dvb/video-command.rst b/Documentation/drivers/media/uapi/dvb/video-command.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-command.rst
rename to Documentation/drivers/media/uapi/dvb/video-command.rst
diff --git a/Documentation/media/uapi/dvb/video-continue.rst b/Documentation/drivers/media/uapi/dvb/video-continue.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-continue.rst
rename to Documentation/drivers/media/uapi/dvb/video-continue.rst
diff --git a/Documentation/media/uapi/dvb/video-fast-forward.rst b/Documentation/drivers/media/uapi/dvb/video-fast-forward.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-fast-forward.rst
rename to Documentation/drivers/media/uapi/dvb/video-fast-forward.rst
diff --git a/Documentation/media/uapi/dvb/video-fclose.rst b/Documentation/drivers/media/uapi/dvb/video-fclose.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-fclose.rst
rename to Documentation/drivers/media/uapi/dvb/video-fclose.rst
diff --git a/Documentation/media/uapi/dvb/video-fopen.rst b/Documentation/drivers/media/uapi/dvb/video-fopen.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-fopen.rst
rename to Documentation/drivers/media/uapi/dvb/video-fopen.rst
diff --git a/Documentation/media/uapi/dvb/video-freeze.rst b/Documentation/drivers/media/uapi/dvb/video-freeze.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-freeze.rst
rename to Documentation/drivers/media/uapi/dvb/video-freeze.rst
diff --git a/Documentation/media/uapi/dvb/video-fwrite.rst b/Documentation/drivers/media/uapi/dvb/video-fwrite.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-fwrite.rst
rename to Documentation/drivers/media/uapi/dvb/video-fwrite.rst
diff --git a/Documentation/media/uapi/dvb/video-get-capabilities.rst b/Documentation/drivers/media/uapi/dvb/video-get-capabilities.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-capabilities.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-capabilities.rst
diff --git a/Documentation/media/uapi/dvb/video-get-event.rst b/Documentation/drivers/media/uapi/dvb/video-get-event.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-event.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-event.rst
diff --git a/Documentation/media/uapi/dvb/video-get-frame-count.rst b/Documentation/drivers/media/uapi/dvb/video-get-frame-count.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-frame-count.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-frame-count.rst
diff --git a/Documentation/media/uapi/dvb/video-get-pts.rst b/Documentation/drivers/media/uapi/dvb/video-get-pts.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-pts.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-pts.rst
diff --git a/Documentation/media/uapi/dvb/video-get-size.rst b/Documentation/drivers/media/uapi/dvb/video-get-size.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-size.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-size.rst
diff --git a/Documentation/media/uapi/dvb/video-get-status.rst b/Documentation/drivers/media/uapi/dvb/video-get-status.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-get-status.rst
rename to Documentation/drivers/media/uapi/dvb/video-get-status.rst
diff --git a/Documentation/media/uapi/dvb/video-play.rst b/Documentation/drivers/media/uapi/dvb/video-play.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-play.rst
rename to Documentation/drivers/media/uapi/dvb/video-play.rst
diff --git a/Documentation/media/uapi/dvb/video-select-source.rst b/Documentation/drivers/media/uapi/dvb/video-select-source.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-select-source.rst
rename to Documentation/drivers/media/uapi/dvb/video-select-source.rst
diff --git a/Documentation/media/uapi/dvb/video-set-blank.rst b/Documentation/drivers/media/uapi/dvb/video-set-blank.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-set-blank.rst
rename to Documentation/drivers/media/uapi/dvb/video-set-blank.rst
diff --git a/Documentation/media/uapi/dvb/video-set-display-format.rst b/Documentation/drivers/media/uapi/dvb/video-set-display-format.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-set-display-format.rst
rename to Documentation/drivers/media/uapi/dvb/video-set-display-format.rst
diff --git a/Documentation/media/uapi/dvb/video-set-format.rst b/Documentation/drivers/media/uapi/dvb/video-set-format.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-set-format.rst
rename to Documentation/drivers/media/uapi/dvb/video-set-format.rst
diff --git a/Documentation/media/uapi/dvb/video-set-streamtype.rst b/Documentation/drivers/media/uapi/dvb/video-set-streamtype.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-set-streamtype.rst
rename to Documentation/drivers/media/uapi/dvb/video-set-streamtype.rst
diff --git a/Documentation/media/uapi/dvb/video-slowmotion.rst b/Documentation/drivers/media/uapi/dvb/video-slowmotion.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-slowmotion.rst
rename to Documentation/drivers/media/uapi/dvb/video-slowmotion.rst
diff --git a/Documentation/media/uapi/dvb/video-stillpicture.rst b/Documentation/drivers/media/uapi/dvb/video-stillpicture.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-stillpicture.rst
rename to Documentation/drivers/media/uapi/dvb/video-stillpicture.rst
diff --git a/Documentation/media/uapi/dvb/video-stop.rst b/Documentation/drivers/media/uapi/dvb/video-stop.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-stop.rst
rename to Documentation/drivers/media/uapi/dvb/video-stop.rst
diff --git a/Documentation/media/uapi/dvb/video-try-command.rst b/Documentation/drivers/media/uapi/dvb/video-try-command.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video-try-command.rst
rename to Documentation/drivers/media/uapi/dvb/video-try-command.rst
diff --git a/Documentation/media/uapi/dvb/video.rst b/Documentation/drivers/media/uapi/dvb/video.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video.rst
rename to Documentation/drivers/media/uapi/dvb/video.rst
diff --git a/Documentation/media/uapi/dvb/video_function_calls.rst b/Documentation/drivers/media/uapi/dvb/video_function_calls.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video_function_calls.rst
rename to Documentation/drivers/media/uapi/dvb/video_function_calls.rst
diff --git a/Documentation/media/uapi/dvb/video_types.rst b/Documentation/drivers/media/uapi/dvb/video_types.rst
similarity index 100%
rename from Documentation/media/uapi/dvb/video_types.rst
rename to Documentation/drivers/media/uapi/dvb/video_types.rst
diff --git a/Documentation/media/uapi/fdl-appendix.rst b/Documentation/drivers/media/uapi/fdl-appendix.rst
similarity index 100%
rename from Documentation/media/uapi/fdl-appendix.rst
rename to Documentation/drivers/media/uapi/fdl-appendix.rst
diff --git a/Documentation/media/uapi/gen-errors.rst b/Documentation/drivers/media/uapi/gen-errors.rst
similarity index 100%
rename from Documentation/media/uapi/gen-errors.rst
rename to Documentation/drivers/media/uapi/gen-errors.rst
diff --git a/Documentation/media/uapi/mediactl/media-controller-intro.rst b/Documentation/drivers/media/uapi/mediactl/media-controller-intro.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-controller-intro.rst
rename to Documentation/drivers/media/uapi/mediactl/media-controller-intro.rst
diff --git a/Documentation/media/uapi/mediactl/media-controller-model.rst b/Documentation/drivers/media/uapi/mediactl/media-controller-model.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-controller-model.rst
rename to Documentation/drivers/media/uapi/mediactl/media-controller-model.rst
diff --git a/Documentation/media/uapi/mediactl/media-controller.rst b/Documentation/drivers/media/uapi/mediactl/media-controller.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-controller.rst
rename to Documentation/drivers/media/uapi/mediactl/media-controller.rst
diff --git a/Documentation/media/uapi/mediactl/media-func-close.rst b/Documentation/drivers/media/uapi/mediactl/media-func-close.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-func-close.rst
rename to Documentation/drivers/media/uapi/mediactl/media-func-close.rst
diff --git a/Documentation/media/uapi/mediactl/media-func-ioctl.rst b/Documentation/drivers/media/uapi/mediactl/media-func-ioctl.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-func-ioctl.rst
rename to Documentation/drivers/media/uapi/mediactl/media-func-ioctl.rst
diff --git a/Documentation/media/uapi/mediactl/media-func-open.rst b/Documentation/drivers/media/uapi/mediactl/media-func-open.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-func-open.rst
rename to Documentation/drivers/media/uapi/mediactl/media-func-open.rst
diff --git a/Documentation/media/uapi/mediactl/media-funcs.rst b/Documentation/drivers/media/uapi/mediactl/media-funcs.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-funcs.rst
rename to Documentation/drivers/media/uapi/mediactl/media-funcs.rst
diff --git a/Documentation/media/uapi/mediactl/media-header.rst b/Documentation/drivers/media/uapi/mediactl/media-header.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-header.rst
rename to Documentation/drivers/media/uapi/mediactl/media-header.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-device-info.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-device-info.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-device-info.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-device-info.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-enum-entities.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-enum-entities.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-enum-entities.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-enum-entities.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-enum-links.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-enum-links.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-enum-links.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-enum-links.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-g-topology.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-g-topology.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-g-topology.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-g-topology.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-request-alloc.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-request-alloc.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-request-alloc.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-request-alloc.rst
diff --git a/Documentation/media/uapi/mediactl/media-ioc-setup-link.rst b/Documentation/drivers/media/uapi/mediactl/media-ioc-setup-link.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-ioc-setup-link.rst
rename to Documentation/drivers/media/uapi/mediactl/media-ioc-setup-link.rst
diff --git a/Documentation/media/uapi/mediactl/media-request-ioc-queue.rst b/Documentation/drivers/media/uapi/mediactl/media-request-ioc-queue.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-request-ioc-queue.rst
rename to Documentation/drivers/media/uapi/mediactl/media-request-ioc-queue.rst
diff --git a/Documentation/media/uapi/mediactl/media-request-ioc-reinit.rst b/Documentation/drivers/media/uapi/mediactl/media-request-ioc-reinit.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-request-ioc-reinit.rst
rename to Documentation/drivers/media/uapi/mediactl/media-request-ioc-reinit.rst
diff --git a/Documentation/media/uapi/mediactl/media-types.rst b/Documentation/drivers/media/uapi/mediactl/media-types.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/media-types.rst
rename to Documentation/drivers/media/uapi/mediactl/media-types.rst
diff --git a/Documentation/media/uapi/mediactl/request-api.rst b/Documentation/drivers/media/uapi/mediactl/request-api.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/request-api.rst
rename to Documentation/drivers/media/uapi/mediactl/request-api.rst
diff --git a/Documentation/media/uapi/mediactl/request-func-close.rst b/Documentation/drivers/media/uapi/mediactl/request-func-close.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/request-func-close.rst
rename to Documentation/drivers/media/uapi/mediactl/request-func-close.rst
diff --git a/Documentation/media/uapi/mediactl/request-func-ioctl.rst b/Documentation/drivers/media/uapi/mediactl/request-func-ioctl.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/request-func-ioctl.rst
rename to Documentation/drivers/media/uapi/mediactl/request-func-ioctl.rst
diff --git a/Documentation/media/uapi/mediactl/request-func-poll.rst b/Documentation/drivers/media/uapi/mediactl/request-func-poll.rst
similarity index 100%
rename from Documentation/media/uapi/mediactl/request-func-poll.rst
rename to Documentation/drivers/media/uapi/mediactl/request-func-poll.rst
diff --git a/Documentation/media/uapi/rc/keytable.c.rst b/Documentation/drivers/media/uapi/rc/keytable.c.rst
similarity index 100%
rename from Documentation/media/uapi/rc/keytable.c.rst
rename to Documentation/drivers/media/uapi/rc/keytable.c.rst
diff --git a/Documentation/media/uapi/rc/lirc-dev-intro.rst b/Documentation/drivers/media/uapi/rc/lirc-dev-intro.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-dev-intro.rst
rename to Documentation/drivers/media/uapi/rc/lirc-dev-intro.rst
diff --git a/Documentation/media/uapi/rc/lirc-dev.rst b/Documentation/drivers/media/uapi/rc/lirc-dev.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-dev.rst
rename to Documentation/drivers/media/uapi/rc/lirc-dev.rst
diff --git a/Documentation/media/uapi/rc/lirc-func.rst b/Documentation/drivers/media/uapi/rc/lirc-func.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-func.rst
rename to Documentation/drivers/media/uapi/rc/lirc-func.rst
diff --git a/Documentation/media/uapi/rc/lirc-get-features.rst b/Documentation/drivers/media/uapi/rc/lirc-get-features.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-get-features.rst
rename to Documentation/drivers/media/uapi/rc/lirc-get-features.rst
diff --git a/Documentation/media/uapi/rc/lirc-get-rec-mode.rst b/Documentation/drivers/media/uapi/rc/lirc-get-rec-mode.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-get-rec-mode.rst
rename to Documentation/drivers/media/uapi/rc/lirc-get-rec-mode.rst
diff --git a/Documentation/media/uapi/rc/lirc-get-rec-resolution.rst b/Documentation/drivers/media/uapi/rc/lirc-get-rec-resolution.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-get-rec-resolution.rst
rename to Documentation/drivers/media/uapi/rc/lirc-get-rec-resolution.rst
diff --git a/Documentation/media/uapi/rc/lirc-get-send-mode.rst b/Documentation/drivers/media/uapi/rc/lirc-get-send-mode.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-get-send-mode.rst
rename to Documentation/drivers/media/uapi/rc/lirc-get-send-mode.rst
diff --git a/Documentation/media/uapi/rc/lirc-get-timeout.rst b/Documentation/drivers/media/uapi/rc/lirc-get-timeout.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-get-timeout.rst
rename to Documentation/drivers/media/uapi/rc/lirc-get-timeout.rst
diff --git a/Documentation/media/uapi/rc/lirc-header.rst b/Documentation/drivers/media/uapi/rc/lirc-header.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-header.rst
rename to Documentation/drivers/media/uapi/rc/lirc-header.rst
diff --git a/Documentation/media/uapi/rc/lirc-read.rst b/Documentation/drivers/media/uapi/rc/lirc-read.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-read.rst
rename to Documentation/drivers/media/uapi/rc/lirc-read.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-measure-carrier-mode.rst b/Documentation/drivers/media/uapi/rc/lirc-set-measure-carrier-mode.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-measure-carrier-mode.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-measure-carrier-mode.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-rec-carrier-range.rst b/Documentation/drivers/media/uapi/rc/lirc-set-rec-carrier-range.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-rec-carrier-range.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-rec-carrier-range.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-rec-carrier.rst b/Documentation/drivers/media/uapi/rc/lirc-set-rec-carrier.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-rec-carrier.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-rec-carrier.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-rec-timeout-reports.rst b/Documentation/drivers/media/uapi/rc/lirc-set-rec-timeout-reports.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-rec-timeout-reports.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-rec-timeout-reports.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-rec-timeout.rst b/Documentation/drivers/media/uapi/rc/lirc-set-rec-timeout.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-rec-timeout.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-rec-timeout.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-send-carrier.rst b/Documentation/drivers/media/uapi/rc/lirc-set-send-carrier.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-send-carrier.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-send-carrier.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-send-duty-cycle.rst b/Documentation/drivers/media/uapi/rc/lirc-set-send-duty-cycle.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-send-duty-cycle.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-send-duty-cycle.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-transmitter-mask.rst b/Documentation/drivers/media/uapi/rc/lirc-set-transmitter-mask.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-transmitter-mask.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-transmitter-mask.rst
diff --git a/Documentation/media/uapi/rc/lirc-set-wideband-receiver.rst b/Documentation/drivers/media/uapi/rc/lirc-set-wideband-receiver.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-set-wideband-receiver.rst
rename to Documentation/drivers/media/uapi/rc/lirc-set-wideband-receiver.rst
diff --git a/Documentation/media/uapi/rc/lirc-write.rst b/Documentation/drivers/media/uapi/rc/lirc-write.rst
similarity index 100%
rename from Documentation/media/uapi/rc/lirc-write.rst
rename to Documentation/drivers/media/uapi/rc/lirc-write.rst
diff --git a/Documentation/media/uapi/rc/rc-intro.rst b/Documentation/drivers/media/uapi/rc/rc-intro.rst
similarity index 100%
rename from Documentation/media/uapi/rc/rc-intro.rst
rename to Documentation/drivers/media/uapi/rc/rc-intro.rst
diff --git a/Documentation/media/uapi/rc/rc-sysfs-nodes.rst b/Documentation/drivers/media/uapi/rc/rc-sysfs-nodes.rst
similarity index 100%
rename from Documentation/media/uapi/rc/rc-sysfs-nodes.rst
rename to Documentation/drivers/media/uapi/rc/rc-sysfs-nodes.rst
diff --git a/Documentation/media/uapi/rc/rc-table-change.rst b/Documentation/drivers/media/uapi/rc/rc-table-change.rst
similarity index 100%
rename from Documentation/media/uapi/rc/rc-table-change.rst
rename to Documentation/drivers/media/uapi/rc/rc-table-change.rst
diff --git a/Documentation/media/uapi/rc/rc-tables.rst b/Documentation/drivers/media/uapi/rc/rc-tables.rst
similarity index 100%
rename from Documentation/media/uapi/rc/rc-tables.rst
rename to Documentation/drivers/media/uapi/rc/rc-tables.rst
diff --git a/Documentation/media/uapi/rc/remote_controllers.rst b/Documentation/drivers/media/uapi/rc/remote_controllers.rst
similarity index 100%
rename from Documentation/media/uapi/rc/remote_controllers.rst
rename to Documentation/drivers/media/uapi/rc/remote_controllers.rst
diff --git a/Documentation/media/uapi/v4l/app-pri.rst b/Documentation/drivers/media/uapi/v4l/app-pri.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/app-pri.rst
rename to Documentation/drivers/media/uapi/v4l/app-pri.rst
diff --git a/Documentation/media/uapi/v4l/async.rst b/Documentation/drivers/media/uapi/v4l/async.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/async.rst
rename to Documentation/drivers/media/uapi/v4l/async.rst
diff --git a/Documentation/media/uapi/v4l/audio.rst b/Documentation/drivers/media/uapi/v4l/audio.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/audio.rst
rename to Documentation/drivers/media/uapi/v4l/audio.rst
diff --git a/Documentation/media/uapi/v4l/bayer.svg b/Documentation/drivers/media/uapi/v4l/bayer.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/bayer.svg
rename to Documentation/drivers/media/uapi/v4l/bayer.svg
diff --git a/Documentation/media/uapi/v4l/biblio.rst b/Documentation/drivers/media/uapi/v4l/biblio.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/biblio.rst
rename to Documentation/drivers/media/uapi/v4l/biblio.rst
diff --git a/Documentation/media/uapi/v4l/buffer.rst b/Documentation/drivers/media/uapi/v4l/buffer.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/buffer.rst
rename to Documentation/drivers/media/uapi/v4l/buffer.rst
diff --git a/Documentation/media/uapi/v4l/capture-example.rst b/Documentation/drivers/media/uapi/v4l/capture-example.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/capture-example.rst
rename to Documentation/drivers/media/uapi/v4l/capture-example.rst
diff --git a/Documentation/media/uapi/v4l/capture.c.rst b/Documentation/drivers/media/uapi/v4l/capture.c.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/capture.c.rst
rename to Documentation/drivers/media/uapi/v4l/capture.c.rst
diff --git a/Documentation/media/uapi/v4l/colorspaces-defs.rst b/Documentation/drivers/media/uapi/v4l/colorspaces-defs.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/colorspaces-defs.rst
rename to Documentation/drivers/media/uapi/v4l/colorspaces-defs.rst
diff --git a/Documentation/media/uapi/v4l/colorspaces-details.rst b/Documentation/drivers/media/uapi/v4l/colorspaces-details.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/colorspaces-details.rst
rename to Documentation/drivers/media/uapi/v4l/colorspaces-details.rst
diff --git a/Documentation/media/uapi/v4l/colorspaces.rst b/Documentation/drivers/media/uapi/v4l/colorspaces.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/colorspaces.rst
rename to Documentation/drivers/media/uapi/v4l/colorspaces.rst
diff --git a/Documentation/media/uapi/v4l/common-defs.rst b/Documentation/drivers/media/uapi/v4l/common-defs.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/common-defs.rst
rename to Documentation/drivers/media/uapi/v4l/common-defs.rst
diff --git a/Documentation/media/uapi/v4l/common.rst b/Documentation/drivers/media/uapi/v4l/common.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/common.rst
rename to Documentation/drivers/media/uapi/v4l/common.rst
diff --git a/Documentation/media/uapi/v4l/compat.rst b/Documentation/drivers/media/uapi/v4l/compat.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/compat.rst
rename to Documentation/drivers/media/uapi/v4l/compat.rst
diff --git a/Documentation/media/uapi/v4l/constraints.svg b/Documentation/drivers/media/uapi/v4l/constraints.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/constraints.svg
rename to Documentation/drivers/media/uapi/v4l/constraints.svg
diff --git a/Documentation/media/uapi/v4l/control.rst b/Documentation/drivers/media/uapi/v4l/control.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/control.rst
rename to Documentation/drivers/media/uapi/v4l/control.rst
diff --git a/Documentation/media/uapi/v4l/crop.rst b/Documentation/drivers/media/uapi/v4l/crop.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/crop.rst
rename to Documentation/drivers/media/uapi/v4l/crop.rst
diff --git a/Documentation/media/uapi/v4l/crop.svg b/Documentation/drivers/media/uapi/v4l/crop.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/crop.svg
rename to Documentation/drivers/media/uapi/v4l/crop.svg
diff --git a/Documentation/media/uapi/v4l/depth-formats.rst b/Documentation/drivers/media/uapi/v4l/depth-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/depth-formats.rst
rename to Documentation/drivers/media/uapi/v4l/depth-formats.rst
diff --git a/Documentation/media/uapi/v4l/dev-capture.rst b/Documentation/drivers/media/uapi/v4l/dev-capture.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-capture.rst
rename to Documentation/drivers/media/uapi/v4l/dev-capture.rst
diff --git a/Documentation/media/uapi/v4l/dev-event.rst b/Documentation/drivers/media/uapi/v4l/dev-event.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-event.rst
rename to Documentation/drivers/media/uapi/v4l/dev-event.rst
diff --git a/Documentation/media/uapi/v4l/dev-mem2mem.rst b/Documentation/drivers/media/uapi/v4l/dev-mem2mem.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-mem2mem.rst
rename to Documentation/drivers/media/uapi/v4l/dev-mem2mem.rst
diff --git a/Documentation/media/uapi/v4l/dev-meta.rst b/Documentation/drivers/media/uapi/v4l/dev-meta.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-meta.rst
rename to Documentation/drivers/media/uapi/v4l/dev-meta.rst
diff --git a/Documentation/media/uapi/v4l/dev-osd.rst b/Documentation/drivers/media/uapi/v4l/dev-osd.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-osd.rst
rename to Documentation/drivers/media/uapi/v4l/dev-osd.rst
diff --git a/Documentation/media/uapi/v4l/dev-output.rst b/Documentation/drivers/media/uapi/v4l/dev-output.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-output.rst
rename to Documentation/drivers/media/uapi/v4l/dev-output.rst
diff --git a/Documentation/media/uapi/v4l/dev-overlay.rst b/Documentation/drivers/media/uapi/v4l/dev-overlay.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-overlay.rst
rename to Documentation/drivers/media/uapi/v4l/dev-overlay.rst
diff --git a/Documentation/media/uapi/v4l/dev-radio.rst b/Documentation/drivers/media/uapi/v4l/dev-radio.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-radio.rst
rename to Documentation/drivers/media/uapi/v4l/dev-radio.rst
diff --git a/Documentation/media/uapi/v4l/dev-raw-vbi.rst b/Documentation/drivers/media/uapi/v4l/dev-raw-vbi.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-raw-vbi.rst
rename to Documentation/drivers/media/uapi/v4l/dev-raw-vbi.rst
diff --git a/Documentation/media/uapi/v4l/dev-rds.rst b/Documentation/drivers/media/uapi/v4l/dev-rds.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-rds.rst
rename to Documentation/drivers/media/uapi/v4l/dev-rds.rst
diff --git a/Documentation/media/uapi/v4l/dev-sdr.rst b/Documentation/drivers/media/uapi/v4l/dev-sdr.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-sdr.rst
rename to Documentation/drivers/media/uapi/v4l/dev-sdr.rst
diff --git a/Documentation/media/uapi/v4l/dev-sliced-vbi.rst b/Documentation/drivers/media/uapi/v4l/dev-sliced-vbi.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-sliced-vbi.rst
rename to Documentation/drivers/media/uapi/v4l/dev-sliced-vbi.rst
diff --git a/Documentation/media/uapi/v4l/dev-subdev.rst b/Documentation/drivers/media/uapi/v4l/dev-subdev.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-subdev.rst
rename to Documentation/drivers/media/uapi/v4l/dev-subdev.rst
diff --git a/Documentation/media/uapi/v4l/dev-touch.rst b/Documentation/drivers/media/uapi/v4l/dev-touch.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dev-touch.rst
rename to Documentation/drivers/media/uapi/v4l/dev-touch.rst
diff --git a/Documentation/media/uapi/v4l/devices.rst b/Documentation/drivers/media/uapi/v4l/devices.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/devices.rst
rename to Documentation/drivers/media/uapi/v4l/devices.rst
diff --git a/Documentation/media/uapi/v4l/diff-v4l.rst b/Documentation/drivers/media/uapi/v4l/diff-v4l.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/diff-v4l.rst
rename to Documentation/drivers/media/uapi/v4l/diff-v4l.rst
diff --git a/Documentation/media/uapi/v4l/dmabuf.rst b/Documentation/drivers/media/uapi/v4l/dmabuf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dmabuf.rst
rename to Documentation/drivers/media/uapi/v4l/dmabuf.rst
diff --git a/Documentation/media/uapi/v4l/dv-timings.rst b/Documentation/drivers/media/uapi/v4l/dv-timings.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/dv-timings.rst
rename to Documentation/drivers/media/uapi/v4l/dv-timings.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-camera.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-camera.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-camera.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-camera.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-codec.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-codec.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-codec.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-codec.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-detect.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-detect.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-detect.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-detect.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-dv.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-dv.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-dv.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-dv.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-flash.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-flash.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-flash.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-flash.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-fm-rx.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-fm-rx.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-fm-rx.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-fm-rx.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-fm-tx.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-fm-tx.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-fm-tx.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-fm-tx.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-image-process.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-image-process.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-image-process.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-image-process.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-image-source.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-image-source.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-image-source.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-image-source.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-jpeg.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-jpeg.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-jpeg.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-jpeg.rst
diff --git a/Documentation/media/uapi/v4l/ext-ctrls-rf-tuner.rst b/Documentation/drivers/media/uapi/v4l/ext-ctrls-rf-tuner.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/ext-ctrls-rf-tuner.rst
rename to Documentation/drivers/media/uapi/v4l/ext-ctrls-rf-tuner.rst
diff --git a/Documentation/media/uapi/v4l/extended-controls.rst b/Documentation/drivers/media/uapi/v4l/extended-controls.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/extended-controls.rst
rename to Documentation/drivers/media/uapi/v4l/extended-controls.rst
diff --git a/Documentation/media/uapi/v4l/field-order.rst b/Documentation/drivers/media/uapi/v4l/field-order.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/field-order.rst
rename to Documentation/drivers/media/uapi/v4l/field-order.rst
diff --git a/Documentation/media/uapi/v4l/fieldseq_bt.svg b/Documentation/drivers/media/uapi/v4l/fieldseq_bt.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/fieldseq_bt.svg
rename to Documentation/drivers/media/uapi/v4l/fieldseq_bt.svg
diff --git a/Documentation/media/uapi/v4l/fieldseq_tb.svg b/Documentation/drivers/media/uapi/v4l/fieldseq_tb.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/fieldseq_tb.svg
rename to Documentation/drivers/media/uapi/v4l/fieldseq_tb.svg
diff --git a/Documentation/media/uapi/v4l/format.rst b/Documentation/drivers/media/uapi/v4l/format.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/format.rst
rename to Documentation/drivers/media/uapi/v4l/format.rst
diff --git a/Documentation/media/uapi/v4l/func-close.rst b/Documentation/drivers/media/uapi/v4l/func-close.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-close.rst
rename to Documentation/drivers/media/uapi/v4l/func-close.rst
diff --git a/Documentation/media/uapi/v4l/func-ioctl.rst b/Documentation/drivers/media/uapi/v4l/func-ioctl.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-ioctl.rst
rename to Documentation/drivers/media/uapi/v4l/func-ioctl.rst
diff --git a/Documentation/media/uapi/v4l/func-mmap.rst b/Documentation/drivers/media/uapi/v4l/func-mmap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-mmap.rst
rename to Documentation/drivers/media/uapi/v4l/func-mmap.rst
diff --git a/Documentation/media/uapi/v4l/func-munmap.rst b/Documentation/drivers/media/uapi/v4l/func-munmap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-munmap.rst
rename to Documentation/drivers/media/uapi/v4l/func-munmap.rst
diff --git a/Documentation/media/uapi/v4l/func-open.rst b/Documentation/drivers/media/uapi/v4l/func-open.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-open.rst
rename to Documentation/drivers/media/uapi/v4l/func-open.rst
diff --git a/Documentation/media/uapi/v4l/func-poll.rst b/Documentation/drivers/media/uapi/v4l/func-poll.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-poll.rst
rename to Documentation/drivers/media/uapi/v4l/func-poll.rst
diff --git a/Documentation/media/uapi/v4l/func-read.rst b/Documentation/drivers/media/uapi/v4l/func-read.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-read.rst
rename to Documentation/drivers/media/uapi/v4l/func-read.rst
diff --git a/Documentation/media/uapi/v4l/func-select.rst b/Documentation/drivers/media/uapi/v4l/func-select.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-select.rst
rename to Documentation/drivers/media/uapi/v4l/func-select.rst
diff --git a/Documentation/media/uapi/v4l/func-write.rst b/Documentation/drivers/media/uapi/v4l/func-write.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/func-write.rst
rename to Documentation/drivers/media/uapi/v4l/func-write.rst
diff --git a/Documentation/media/uapi/v4l/hist-v4l2.rst b/Documentation/drivers/media/uapi/v4l/hist-v4l2.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/hist-v4l2.rst
rename to Documentation/drivers/media/uapi/v4l/hist-v4l2.rst
diff --git a/Documentation/media/uapi/v4l/hsv-formats.rst b/Documentation/drivers/media/uapi/v4l/hsv-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/hsv-formats.rst
rename to Documentation/drivers/media/uapi/v4l/hsv-formats.rst
diff --git a/Documentation/media/uapi/v4l/io.rst b/Documentation/drivers/media/uapi/v4l/io.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/io.rst
rename to Documentation/drivers/media/uapi/v4l/io.rst
diff --git a/Documentation/media/uapi/v4l/libv4l-introduction.rst b/Documentation/drivers/media/uapi/v4l/libv4l-introduction.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/libv4l-introduction.rst
rename to Documentation/drivers/media/uapi/v4l/libv4l-introduction.rst
diff --git a/Documentation/media/uapi/v4l/libv4l.rst b/Documentation/drivers/media/uapi/v4l/libv4l.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/libv4l.rst
rename to Documentation/drivers/media/uapi/v4l/libv4l.rst
diff --git a/Documentation/media/uapi/v4l/meta-formats.rst b/Documentation/drivers/media/uapi/v4l/meta-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/meta-formats.rst
rename to Documentation/drivers/media/uapi/v4l/meta-formats.rst
diff --git a/Documentation/media/uapi/v4l/mmap.rst b/Documentation/drivers/media/uapi/v4l/mmap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/mmap.rst
rename to Documentation/drivers/media/uapi/v4l/mmap.rst
diff --git a/Documentation/media/uapi/v4l/nv12mt.svg b/Documentation/drivers/media/uapi/v4l/nv12mt.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/nv12mt.svg
rename to Documentation/drivers/media/uapi/v4l/nv12mt.svg
diff --git a/Documentation/media/uapi/v4l/nv12mt_example.svg b/Documentation/drivers/media/uapi/v4l/nv12mt_example.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/nv12mt_example.svg
rename to Documentation/drivers/media/uapi/v4l/nv12mt_example.svg
diff --git a/Documentation/media/uapi/v4l/open.rst b/Documentation/drivers/media/uapi/v4l/open.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/open.rst
rename to Documentation/drivers/media/uapi/v4l/open.rst
diff --git a/Documentation/media/uapi/v4l/pipeline.dot b/Documentation/drivers/media/uapi/v4l/pipeline.dot
similarity index 100%
rename from Documentation/media/uapi/v4l/pipeline.dot
rename to Documentation/drivers/media/uapi/v4l/pipeline.dot
diff --git a/Documentation/media/uapi/v4l/pixfmt-cnf4.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-cnf4.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-cnf4.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-cnf4.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-compressed.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-compressed.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-compressed.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-compressed.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-grey.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-grey.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-grey.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-grey.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-indexed.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-indexed.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-indexed.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-indexed.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-intro.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-intro.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-intro.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-intro.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-inzi.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-inzi.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-inzi.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-inzi.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-m420.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-m420.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-m420.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-m420.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-meta-d4xx.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-meta-d4xx.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-meta-d4xx.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-meta-d4xx.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-meta-intel-ipu3.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-meta-uvc.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-meta-uvc.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-meta-uvc.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-meta-uvc.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-meta-vsp1-hgo.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-meta-vsp1-hgt.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv12.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv12.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv12.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv12.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv12m.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv12m.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv12m.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv12m.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv12mt.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv12mt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv12mt.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv12mt.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv16m.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv16m.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv16m.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv16m.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-nv24.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-nv24.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-nv24.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-nv24.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-packed-hsv.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-packed-hsv.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-packed-hsv.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-packed-hsv.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-packed-rgb.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-packed-rgb.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-packed-rgb.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-packed-rgb.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-packed-yuv.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-packed-yuv.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-packed-yuv.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-packed-yuv.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-reserved.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-reserved.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-reserved.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-reserved.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-rgb.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-rgb.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-rgb.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-rgb.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-cs08.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cs08.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-cs08.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cs08.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-cs14le.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cs14le.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-cs14le.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cs14le.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-cu08.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cu08.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-cu08.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cu08.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-cu16le.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cu16le.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-cu16le.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-cu16le.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu16be.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu18be.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-pcu20be.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-sdr-ru12le.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-sdr-ru12le.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-sdr-ru12le.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-sdr-ru12le.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb10-ipu3.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb10-ipu3.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb10-ipu3.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb10-ipu3.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb10.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb10.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb10.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb10.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb10alaw8.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb10alaw8.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb10alaw8.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb10alaw8.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb10dpcm8.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb10dpcm8.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb10dpcm8.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb10dpcm8.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb10p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb10p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb10p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb10p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb12.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb12.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb12.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb12.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb12p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb12p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb12p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb12p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb14p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb14p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb14p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb14p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-srggb8.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-srggb8.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-srggb8.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-srggb8.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-tch-td08.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-tch-td08.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-tch-td08.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-tch-td08.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-tch-td16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-tch-td16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-tch-td16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-tch-td16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-tch-tu08.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-tch-tu08.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-tch-tu08.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-tch-tu08.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-tch-tu16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-tch-tu16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-tch-tu16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-tch-tu16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-uv8.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-uv8.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-uv8.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-uv8.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-uyvy.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-uyvy.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-uyvy.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-uyvy.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-v4l2-mplane.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-v4l2-mplane.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-v4l2-mplane.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-v4l2-mplane.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-v4l2.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-v4l2.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-v4l2.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-v4l2.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-vyuy.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-vyuy.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-vyuy.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-vyuy.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y10.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y10.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y10.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y10.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y10b.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y10b.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y10b.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y10b.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y10p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y10p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y10p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y10p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y12.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y12.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y12.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y12.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y12i.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y12i.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y12i.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y12i.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y16-be.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y16-be.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y16-be.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y16-be.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y41p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y41p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y41p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y41p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-y8i.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-y8i.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-y8i.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-y8i.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv410.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv410.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv410.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv410.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv411p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv411p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv411p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv411p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv420.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv420.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv420.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv420.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv420m.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv420m.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv420m.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv420m.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv422m.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv422m.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv422m.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv422m.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv422p.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv422p.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv422p.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv422p.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuv444m.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuv444m.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuv444m.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuv444m.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yuyv.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yuyv.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yuyv.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yuyv.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-yvyu.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-yvyu.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-yvyu.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-yvyu.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt-z16.rst b/Documentation/drivers/media/uapi/v4l/pixfmt-z16.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt-z16.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt-z16.rst
diff --git a/Documentation/media/uapi/v4l/pixfmt.rst b/Documentation/drivers/media/uapi/v4l/pixfmt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/pixfmt.rst
rename to Documentation/drivers/media/uapi/v4l/pixfmt.rst
diff --git a/Documentation/media/uapi/v4l/planar-apis.rst b/Documentation/drivers/media/uapi/v4l/planar-apis.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/planar-apis.rst
rename to Documentation/drivers/media/uapi/v4l/planar-apis.rst
diff --git a/Documentation/media/uapi/v4l/querycap.rst b/Documentation/drivers/media/uapi/v4l/querycap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/querycap.rst
rename to Documentation/drivers/media/uapi/v4l/querycap.rst
diff --git a/Documentation/media/uapi/v4l/rw.rst b/Documentation/drivers/media/uapi/v4l/rw.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/rw.rst
rename to Documentation/drivers/media/uapi/v4l/rw.rst
diff --git a/Documentation/media/uapi/v4l/sdr-formats.rst b/Documentation/drivers/media/uapi/v4l/sdr-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/sdr-formats.rst
rename to Documentation/drivers/media/uapi/v4l/sdr-formats.rst
diff --git a/Documentation/media/uapi/v4l/selection-api-configuration.rst b/Documentation/drivers/media/uapi/v4l/selection-api-configuration.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api-configuration.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api-configuration.rst
diff --git a/Documentation/media/uapi/v4l/selection-api-examples.rst b/Documentation/drivers/media/uapi/v4l/selection-api-examples.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api-examples.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api-examples.rst
diff --git a/Documentation/media/uapi/v4l/selection-api-intro.rst b/Documentation/drivers/media/uapi/v4l/selection-api-intro.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api-intro.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api-intro.rst
diff --git a/Documentation/media/uapi/v4l/selection-api-targets.rst b/Documentation/drivers/media/uapi/v4l/selection-api-targets.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api-targets.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api-targets.rst
diff --git a/Documentation/media/uapi/v4l/selection-api-vs-crop-api.rst b/Documentation/drivers/media/uapi/v4l/selection-api-vs-crop-api.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api-vs-crop-api.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api-vs-crop-api.rst
diff --git a/Documentation/media/uapi/v4l/selection-api.rst b/Documentation/drivers/media/uapi/v4l/selection-api.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selection-api.rst
rename to Documentation/drivers/media/uapi/v4l/selection-api.rst
diff --git a/Documentation/media/uapi/v4l/selection.svg b/Documentation/drivers/media/uapi/v4l/selection.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/selection.svg
rename to Documentation/drivers/media/uapi/v4l/selection.svg
diff --git a/Documentation/media/uapi/v4l/selections-common.rst b/Documentation/drivers/media/uapi/v4l/selections-common.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/selections-common.rst
rename to Documentation/drivers/media/uapi/v4l/selections-common.rst
diff --git a/Documentation/media/uapi/v4l/standard.rst b/Documentation/drivers/media/uapi/v4l/standard.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/standard.rst
rename to Documentation/drivers/media/uapi/v4l/standard.rst
diff --git a/Documentation/media/uapi/v4l/streaming-par.rst b/Documentation/drivers/media/uapi/v4l/streaming-par.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/streaming-par.rst
rename to Documentation/drivers/media/uapi/v4l/streaming-par.rst
diff --git a/Documentation/media/uapi/v4l/subdev-formats.rst b/Documentation/drivers/media/uapi/v4l/subdev-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/subdev-formats.rst
rename to Documentation/drivers/media/uapi/v4l/subdev-formats.rst
diff --git a/Documentation/media/uapi/v4l/subdev-image-processing-crop.svg b/Documentation/drivers/media/uapi/v4l/subdev-image-processing-crop.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/subdev-image-processing-crop.svg
rename to Documentation/drivers/media/uapi/v4l/subdev-image-processing-crop.svg
diff --git a/Documentation/media/uapi/v4l/subdev-image-processing-full.svg b/Documentation/drivers/media/uapi/v4l/subdev-image-processing-full.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/subdev-image-processing-full.svg
rename to Documentation/drivers/media/uapi/v4l/subdev-image-processing-full.svg
diff --git a/Documentation/media/uapi/v4l/subdev-image-processing-scaling-multi-source.svg b/Documentation/drivers/media/uapi/v4l/subdev-image-processing-scaling-multi-source.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/subdev-image-processing-scaling-multi-source.svg
rename to Documentation/drivers/media/uapi/v4l/subdev-image-processing-scaling-multi-source.svg
diff --git a/Documentation/media/uapi/v4l/tch-formats.rst b/Documentation/drivers/media/uapi/v4l/tch-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/tch-formats.rst
rename to Documentation/drivers/media/uapi/v4l/tch-formats.rst
diff --git a/Documentation/media/uapi/v4l/tuner.rst b/Documentation/drivers/media/uapi/v4l/tuner.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/tuner.rst
rename to Documentation/drivers/media/uapi/v4l/tuner.rst
diff --git a/Documentation/media/uapi/v4l/user-func.rst b/Documentation/drivers/media/uapi/v4l/user-func.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/user-func.rst
rename to Documentation/drivers/media/uapi/v4l/user-func.rst
diff --git a/Documentation/media/uapi/v4l/userp.rst b/Documentation/drivers/media/uapi/v4l/userp.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/userp.rst
rename to Documentation/drivers/media/uapi/v4l/userp.rst
diff --git a/Documentation/media/uapi/v4l/v4l2-selection-flags.rst b/Documentation/drivers/media/uapi/v4l/v4l2-selection-flags.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/v4l2-selection-flags.rst
rename to Documentation/drivers/media/uapi/v4l/v4l2-selection-flags.rst
diff --git a/Documentation/media/uapi/v4l/v4l2-selection-targets.rst b/Documentation/drivers/media/uapi/v4l/v4l2-selection-targets.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/v4l2-selection-targets.rst
rename to Documentation/drivers/media/uapi/v4l/v4l2-selection-targets.rst
diff --git a/Documentation/media/uapi/v4l/v4l2.rst b/Documentation/drivers/media/uapi/v4l/v4l2.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/v4l2.rst
rename to Documentation/drivers/media/uapi/v4l/v4l2.rst
diff --git a/Documentation/media/uapi/v4l/v4l2grab-example.rst b/Documentation/drivers/media/uapi/v4l/v4l2grab-example.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/v4l2grab-example.rst
rename to Documentation/drivers/media/uapi/v4l/v4l2grab-example.rst
diff --git a/Documentation/media/uapi/v4l/v4l2grab.c.rst b/Documentation/drivers/media/uapi/v4l/v4l2grab.c.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/v4l2grab.c.rst
rename to Documentation/drivers/media/uapi/v4l/v4l2grab.c.rst
diff --git a/Documentation/media/uapi/v4l/vbi_525.svg b/Documentation/drivers/media/uapi/v4l/vbi_525.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/vbi_525.svg
rename to Documentation/drivers/media/uapi/v4l/vbi_525.svg
diff --git a/Documentation/media/uapi/v4l/vbi_625.svg b/Documentation/drivers/media/uapi/v4l/vbi_625.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/vbi_625.svg
rename to Documentation/drivers/media/uapi/v4l/vbi_625.svg
diff --git a/Documentation/media/uapi/v4l/vbi_hsync.svg b/Documentation/drivers/media/uapi/v4l/vbi_hsync.svg
similarity index 100%
rename from Documentation/media/uapi/v4l/vbi_hsync.svg
rename to Documentation/drivers/media/uapi/v4l/vbi_hsync.svg
diff --git a/Documentation/media/uapi/v4l/video.rst b/Documentation/drivers/media/uapi/v4l/video.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/video.rst
rename to Documentation/drivers/media/uapi/v4l/video.rst
diff --git a/Documentation/media/uapi/v4l/videodev.rst b/Documentation/drivers/media/uapi/v4l/videodev.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/videodev.rst
rename to Documentation/drivers/media/uapi/v4l/videodev.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-create-bufs.rst b/Documentation/drivers/media/uapi/v4l/vidioc-create-bufs.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-create-bufs.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-create-bufs.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-cropcap.rst b/Documentation/drivers/media/uapi/v4l/vidioc-cropcap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-cropcap.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-cropcap.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-dbg-g-chip-info.rst b/Documentation/drivers/media/uapi/v4l/vidioc-dbg-g-chip-info.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-dbg-g-chip-info.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-dbg-g-chip-info.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-dbg-g-register.rst b/Documentation/drivers/media/uapi/v4l/vidioc-dbg-g-register.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-dbg-g-register.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-dbg-g-register.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-decoder-cmd.rst b/Documentation/drivers/media/uapi/v4l/vidioc-decoder-cmd.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-decoder-cmd.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-decoder-cmd.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-dqevent.rst b/Documentation/drivers/media/uapi/v4l/vidioc-dqevent.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-dqevent.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-dqevent.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-dv-timings-cap.rst b/Documentation/drivers/media/uapi/v4l/vidioc-dv-timings-cap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-dv-timings-cap.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-dv-timings-cap.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-encoder-cmd.rst b/Documentation/drivers/media/uapi/v4l/vidioc-encoder-cmd.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-encoder-cmd.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-encoder-cmd.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-dv-timings.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enum-dv-timings.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enum-dv-timings.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enum-dv-timings.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-fmt.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enum-fmt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enum-fmt.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enum-fmt.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-frameintervals.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enum-frameintervals.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enum-frameintervals.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enum-frameintervals.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-framesizes.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enum-framesizes.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enum-framesizes.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enum-framesizes.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enum-freq-bands.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enum-freq-bands.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enum-freq-bands.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enumaudio.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enumaudio.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enumaudio.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enumaudio.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enumaudioout.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enumaudioout.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enumaudioout.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enumaudioout.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enuminput.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enuminput.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enuminput.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enuminput.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enumoutput.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enumoutput.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enumoutput.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enumoutput.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-enumstd.rst b/Documentation/drivers/media/uapi/v4l/vidioc-enumstd.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-enumstd.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-enumstd.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-expbuf.rst b/Documentation/drivers/media/uapi/v4l/vidioc-expbuf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-expbuf.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-expbuf.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-audio.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-audio.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-audio.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-audio.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-audioout.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-audioout.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-audioout.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-audioout.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-crop.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-crop.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-crop.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-crop.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-ctrl.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-ctrl.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-ctrl.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-ctrl.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-dv-timings.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-dv-timings.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-dv-timings.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-dv-timings.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-edid.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-edid.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-edid.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-edid.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-enc-index.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-enc-index.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-enc-index.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-enc-index.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-ext-ctrls.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-ext-ctrls.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-ext-ctrls.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-ext-ctrls.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-fbuf.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-fbuf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-fbuf.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-fbuf.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-fmt.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-fmt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-fmt.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-fmt.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-frequency.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-frequency.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-frequency.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-frequency.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-input.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-input.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-input.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-input.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-jpegcomp.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-jpegcomp.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-jpegcomp.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-jpegcomp.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-modulator.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-modulator.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-modulator.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-modulator.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-output.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-output.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-output.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-output.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-parm.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-parm.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-parm.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-parm.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-priority.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-priority.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-priority.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-priority.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-selection.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-selection.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-selection.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-selection.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-sliced-vbi-cap.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-std.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-std.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-std.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-std.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-g-tuner.rst b/Documentation/drivers/media/uapi/v4l/vidioc-g-tuner.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-g-tuner.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-g-tuner.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-log-status.rst b/Documentation/drivers/media/uapi/v4l/vidioc-log-status.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-log-status.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-log-status.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-overlay.rst b/Documentation/drivers/media/uapi/v4l/vidioc-overlay.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-overlay.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-overlay.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-prepare-buf.rst b/Documentation/drivers/media/uapi/v4l/vidioc-prepare-buf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-prepare-buf.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-prepare-buf.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-qbuf.rst b/Documentation/drivers/media/uapi/v4l/vidioc-qbuf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-qbuf.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-qbuf.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-query-dv-timings.rst b/Documentation/drivers/media/uapi/v4l/vidioc-query-dv-timings.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-query-dv-timings.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-query-dv-timings.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-querybuf.rst b/Documentation/drivers/media/uapi/v4l/vidioc-querybuf.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-querybuf.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-querybuf.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-querycap.rst b/Documentation/drivers/media/uapi/v4l/vidioc-querycap.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-querycap.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-querycap.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-queryctrl.rst b/Documentation/drivers/media/uapi/v4l/vidioc-queryctrl.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-queryctrl.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-queryctrl.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-querystd.rst b/Documentation/drivers/media/uapi/v4l/vidioc-querystd.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-querystd.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-querystd.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-reqbufs.rst b/Documentation/drivers/media/uapi/v4l/vidioc-reqbufs.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-reqbufs.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-reqbufs.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-s-hw-freq-seek.rst b/Documentation/drivers/media/uapi/v4l/vidioc-s-hw-freq-seek.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-s-hw-freq-seek.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-s-hw-freq-seek.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-streamon.rst b/Documentation/drivers/media/uapi/v4l/vidioc-streamon.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-streamon.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-streamon.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-frame-interval.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-frame-size.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-enum-mbus-code.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-g-crop.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-crop.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-g-crop.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-crop.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-g-fmt.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-fmt.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-g-fmt.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-fmt.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-frame-interval.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subdev-g-selection.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-selection.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subdev-g-selection.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subdev-g-selection.rst
diff --git a/Documentation/media/uapi/v4l/vidioc-subscribe-event.rst b/Documentation/drivers/media/uapi/v4l/vidioc-subscribe-event.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/vidioc-subscribe-event.rst
rename to Documentation/drivers/media/uapi/v4l/vidioc-subscribe-event.rst
diff --git a/Documentation/media/uapi/v4l/yuv-formats.rst b/Documentation/drivers/media/uapi/v4l/yuv-formats.rst
similarity index 100%
rename from Documentation/media/uapi/v4l/yuv-formats.rst
rename to Documentation/drivers/media/uapi/v4l/yuv-formats.rst
diff --git a/Documentation/media/v4l-drivers/au0828-cardlist.rst b/Documentation/drivers/media/v4l-drivers/au0828-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/au0828-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/au0828-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/bttv-cardlist.rst b/Documentation/drivers/media/v4l-drivers/bttv-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/bttv-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/bttv-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/bttv.rst b/Documentation/drivers/media/v4l-drivers/bttv.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/bttv.rst
rename to Documentation/drivers/media/v4l-drivers/bttv.rst
diff --git a/Documentation/media/v4l-drivers/cafe_ccic.rst b/Documentation/drivers/media/v4l-drivers/cafe_ccic.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cafe_ccic.rst
rename to Documentation/drivers/media/v4l-drivers/cafe_ccic.rst
diff --git a/Documentation/media/v4l-drivers/cardlist.rst b/Documentation/drivers/media/v4l-drivers/cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/cardlist.rst
diff --git a/Documentation/media/v4l-drivers/cpia2.rst b/Documentation/drivers/media/v4l-drivers/cpia2.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cpia2.rst
rename to Documentation/drivers/media/v4l-drivers/cpia2.rst
diff --git a/Documentation/media/v4l-drivers/cx18.rst b/Documentation/drivers/media/v4l-drivers/cx18.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cx18.rst
rename to Documentation/drivers/media/v4l-drivers/cx18.rst
diff --git a/Documentation/media/v4l-drivers/cx2341x.rst b/Documentation/drivers/media/v4l-drivers/cx2341x.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cx2341x.rst
rename to Documentation/drivers/media/v4l-drivers/cx2341x.rst
diff --git a/Documentation/media/v4l-drivers/cx23885-cardlist.rst b/Documentation/drivers/media/v4l-drivers/cx23885-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cx23885-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/cx23885-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/cx88-cardlist.rst b/Documentation/drivers/media/v4l-drivers/cx88-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cx88-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/cx88-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/cx88.rst b/Documentation/drivers/media/v4l-drivers/cx88.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/cx88.rst
rename to Documentation/drivers/media/v4l-drivers/cx88.rst
diff --git a/Documentation/media/v4l-drivers/davinci-vpbe.rst b/Documentation/drivers/media/v4l-drivers/davinci-vpbe.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/davinci-vpbe.rst
rename to Documentation/drivers/media/v4l-drivers/davinci-vpbe.rst
diff --git a/Documentation/media/v4l-drivers/em28xx-cardlist.rst b/Documentation/drivers/media/v4l-drivers/em28xx-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/em28xx-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/em28xx-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/fimc.rst b/Documentation/drivers/media/v4l-drivers/fimc.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/fimc.rst
rename to Documentation/drivers/media/v4l-drivers/fimc.rst
diff --git a/Documentation/media/v4l-drivers/fourcc.rst b/Documentation/drivers/media/v4l-drivers/fourcc.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/fourcc.rst
rename to Documentation/drivers/media/v4l-drivers/fourcc.rst
diff --git a/Documentation/media/v4l-drivers/gspca-cardlist.rst b/Documentation/drivers/media/v4l-drivers/gspca-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/gspca-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/gspca-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/imx.rst b/Documentation/drivers/media/v4l-drivers/imx.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/imx.rst
rename to Documentation/drivers/media/v4l-drivers/imx.rst
diff --git a/Documentation/media/v4l-drivers/imx7.rst b/Documentation/drivers/media/v4l-drivers/imx7.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/imx7.rst
rename to Documentation/drivers/media/v4l-drivers/imx7.rst
diff --git a/Documentation/media/v4l-drivers/index.rst b/Documentation/drivers/media/v4l-drivers/index.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/index.rst
rename to Documentation/drivers/media/v4l-drivers/index.rst
diff --git a/Documentation/media/v4l-drivers/ipu3.rst b/Documentation/drivers/media/v4l-drivers/ipu3.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/ipu3.rst
rename to Documentation/drivers/media/v4l-drivers/ipu3.rst
diff --git a/Documentation/media/v4l-drivers/ivtv-cardlist.rst b/Documentation/drivers/media/v4l-drivers/ivtv-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/ivtv-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/ivtv-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/ivtv.rst b/Documentation/drivers/media/v4l-drivers/ivtv.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/ivtv.rst
rename to Documentation/drivers/media/v4l-drivers/ivtv.rst
diff --git a/Documentation/media/v4l-drivers/max2175.rst b/Documentation/drivers/media/v4l-drivers/max2175.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/max2175.rst
rename to Documentation/drivers/media/v4l-drivers/max2175.rst
diff --git a/Documentation/media/v4l-drivers/meye.rst b/Documentation/drivers/media/v4l-drivers/meye.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/meye.rst
rename to Documentation/drivers/media/v4l-drivers/meye.rst
diff --git a/Documentation/media/v4l-drivers/omap3isp.rst b/Documentation/drivers/media/v4l-drivers/omap3isp.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/omap3isp.rst
rename to Documentation/drivers/media/v4l-drivers/omap3isp.rst
diff --git a/Documentation/media/v4l-drivers/omap4_camera.rst b/Documentation/drivers/media/v4l-drivers/omap4_camera.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/omap4_camera.rst
rename to Documentation/drivers/media/v4l-drivers/omap4_camera.rst
diff --git a/Documentation/media/v4l-drivers/philips.rst b/Documentation/drivers/media/v4l-drivers/philips.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/philips.rst
rename to Documentation/drivers/media/v4l-drivers/philips.rst
diff --git a/Documentation/media/v4l-drivers/pvrusb2.rst b/Documentation/drivers/media/v4l-drivers/pvrusb2.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/pvrusb2.rst
rename to Documentation/drivers/media/v4l-drivers/pvrusb2.rst
diff --git a/Documentation/media/v4l-drivers/pxa_camera.rst b/Documentation/drivers/media/v4l-drivers/pxa_camera.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/pxa_camera.rst
rename to Documentation/drivers/media/v4l-drivers/pxa_camera.rst
diff --git a/Documentation/media/v4l-drivers/qcom_camss.rst b/Documentation/drivers/media/v4l-drivers/qcom_camss.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/qcom_camss.rst
rename to Documentation/drivers/media/v4l-drivers/qcom_camss.rst
diff --git a/Documentation/media/v4l-drivers/qcom_camss_8x96_graph.dot b/Documentation/drivers/media/v4l-drivers/qcom_camss_8x96_graph.dot
similarity index 100%
rename from Documentation/media/v4l-drivers/qcom_camss_8x96_graph.dot
rename to Documentation/drivers/media/v4l-drivers/qcom_camss_8x96_graph.dot
diff --git a/Documentation/media/v4l-drivers/qcom_camss_graph.dot b/Documentation/drivers/media/v4l-drivers/qcom_camss_graph.dot
similarity index 100%
rename from Documentation/media/v4l-drivers/qcom_camss_graph.dot
rename to Documentation/drivers/media/v4l-drivers/qcom_camss_graph.dot
diff --git a/Documentation/media/v4l-drivers/radiotrack.rst b/Documentation/drivers/media/v4l-drivers/radiotrack.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/radiotrack.rst
rename to Documentation/drivers/media/v4l-drivers/radiotrack.rst
diff --git a/Documentation/media/v4l-drivers/rcar-fdp1.rst b/Documentation/drivers/media/v4l-drivers/rcar-fdp1.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/rcar-fdp1.rst
rename to Documentation/drivers/media/v4l-drivers/rcar-fdp1.rst
diff --git a/Documentation/media/v4l-drivers/saa7134-cardlist.rst b/Documentation/drivers/media/v4l-drivers/saa7134-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/saa7134-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/saa7134-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/saa7134.rst b/Documentation/drivers/media/v4l-drivers/saa7134.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/saa7134.rst
rename to Documentation/drivers/media/v4l-drivers/saa7134.rst
diff --git a/Documentation/media/v4l-drivers/saa7164-cardlist.rst b/Documentation/drivers/media/v4l-drivers/saa7164-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/saa7164-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/saa7164-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/sh_mobile_ceu_camera.rst b/Documentation/drivers/media/v4l-drivers/sh_mobile_ceu_camera.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/sh_mobile_ceu_camera.rst
rename to Documentation/drivers/media/v4l-drivers/sh_mobile_ceu_camera.rst
diff --git a/Documentation/media/v4l-drivers/si470x.rst b/Documentation/drivers/media/v4l-drivers/si470x.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/si470x.rst
rename to Documentation/drivers/media/v4l-drivers/si470x.rst
diff --git a/Documentation/media/v4l-drivers/si4713.rst b/Documentation/drivers/media/v4l-drivers/si4713.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/si4713.rst
rename to Documentation/drivers/media/v4l-drivers/si4713.rst
diff --git a/Documentation/media/v4l-drivers/si476x.rst b/Documentation/drivers/media/v4l-drivers/si476x.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/si476x.rst
rename to Documentation/drivers/media/v4l-drivers/si476x.rst
diff --git a/Documentation/media/v4l-drivers/soc-camera.rst b/Documentation/drivers/media/v4l-drivers/soc-camera.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/soc-camera.rst
rename to Documentation/drivers/media/v4l-drivers/soc-camera.rst
diff --git a/Documentation/media/v4l-drivers/tm6000-cardlist.rst b/Documentation/drivers/media/v4l-drivers/tm6000-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/tm6000-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/tm6000-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/tuner-cardlist.rst b/Documentation/drivers/media/v4l-drivers/tuner-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/tuner-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/tuner-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/tuners.rst b/Documentation/drivers/media/v4l-drivers/tuners.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/tuners.rst
rename to Documentation/drivers/media/v4l-drivers/tuners.rst
diff --git a/Documentation/media/v4l-drivers/usbvision-cardlist.rst b/Documentation/drivers/media/v4l-drivers/usbvision-cardlist.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/usbvision-cardlist.rst
rename to Documentation/drivers/media/v4l-drivers/usbvision-cardlist.rst
diff --git a/Documentation/media/v4l-drivers/uvcvideo.rst b/Documentation/drivers/media/v4l-drivers/uvcvideo.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/uvcvideo.rst
rename to Documentation/drivers/media/v4l-drivers/uvcvideo.rst
diff --git a/Documentation/media/v4l-drivers/v4l-with-ir.rst b/Documentation/drivers/media/v4l-drivers/v4l-with-ir.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/v4l-with-ir.rst
rename to Documentation/drivers/media/v4l-drivers/v4l-with-ir.rst
diff --git a/Documentation/media/v4l-drivers/vimc.dot b/Documentation/drivers/media/v4l-drivers/vimc.dot
similarity index 100%
rename from Documentation/media/v4l-drivers/vimc.dot
rename to Documentation/drivers/media/v4l-drivers/vimc.dot
diff --git a/Documentation/media/v4l-drivers/vimc.rst b/Documentation/drivers/media/v4l-drivers/vimc.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/vimc.rst
rename to Documentation/drivers/media/v4l-drivers/vimc.rst
diff --git a/Documentation/media/v4l-drivers/vivid.rst b/Documentation/drivers/media/v4l-drivers/vivid.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/vivid.rst
rename to Documentation/drivers/media/v4l-drivers/vivid.rst
diff --git a/Documentation/media/v4l-drivers/zr364xx.rst b/Documentation/drivers/media/v4l-drivers/zr364xx.rst
similarity index 100%
rename from Documentation/media/v4l-drivers/zr364xx.rst
rename to Documentation/drivers/media/v4l-drivers/zr364xx.rst
diff --git a/Documentation/media/video.h.rst.exceptions b/Documentation/drivers/media/video.h.rst.exceptions
similarity index 100%
rename from Documentation/media/video.h.rst.exceptions
rename to Documentation/drivers/media/video.h.rst.exceptions
diff --git a/Documentation/media/videodev2.h.rst.exceptions b/Documentation/drivers/media/videodev2.h.rst.exceptions
similarity index 100%
rename from Documentation/media/videodev2.h.rst.exceptions
rename to Documentation/drivers/media/videodev2.h.rst.exceptions
diff --git a/Documentation/memory-devices/ti-emif.txt b/Documentation/drivers/memory/ti-emif.txt
similarity index 100%
rename from Documentation/memory-devices/ti-emif.txt
rename to Documentation/drivers/memory/ti-emif.txt
diff --git a/Documentation/misc-devices/ad525x_dpot.txt b/Documentation/drivers/misc/ad525x_dpot.txt
similarity index 100%
rename from Documentation/misc-devices/ad525x_dpot.txt
rename to Documentation/drivers/misc/ad525x_dpot.txt
diff --git a/Documentation/misc-devices/apds990x.txt b/Documentation/drivers/misc/apds990x.txt
similarity index 100%
rename from Documentation/misc-devices/apds990x.txt
rename to Documentation/drivers/misc/apds990x.txt
diff --git a/Documentation/misc-devices/bh1770glc.txt b/Documentation/drivers/misc/bh1770glc.txt
similarity index 100%
rename from Documentation/misc-devices/bh1770glc.txt
rename to Documentation/drivers/misc/bh1770glc.txt
diff --git a/Documentation/misc-devices/c2port.txt b/Documentation/drivers/misc/c2port.txt
similarity index 100%
rename from Documentation/misc-devices/c2port.txt
rename to Documentation/drivers/misc/c2port.txt
diff --git a/Documentation/misc-devices/eeprom b/Documentation/drivers/misc/eeprom
similarity index 100%
rename from Documentation/misc-devices/eeprom
rename to Documentation/drivers/misc/eeprom
diff --git a/Documentation/misc-devices/ibmvmc.rst b/Documentation/drivers/misc/ibmvmc.rst
similarity index 100%
rename from Documentation/misc-devices/ibmvmc.rst
rename to Documentation/drivers/misc/ibmvmc.rst
diff --git a/Documentation/misc-devices/ics932s401 b/Documentation/drivers/misc/ics932s401
similarity index 100%
rename from Documentation/misc-devices/ics932s401
rename to Documentation/drivers/misc/ics932s401
diff --git a/Documentation/misc-devices/index.rst b/Documentation/drivers/misc/index.rst
similarity index 100%
rename from Documentation/misc-devices/index.rst
rename to Documentation/drivers/misc/index.rst
diff --git a/Documentation/misc-devices/isl29003 b/Documentation/drivers/misc/isl29003
similarity index 100%
rename from Documentation/misc-devices/isl29003
rename to Documentation/drivers/misc/isl29003
diff --git a/Documentation/misc-devices/lis3lv02d b/Documentation/drivers/misc/lis3lv02d
similarity index 100%
rename from Documentation/misc-devices/lis3lv02d
rename to Documentation/drivers/misc/lis3lv02d
diff --git a/Documentation/misc-devices/max6875 b/Documentation/drivers/misc/max6875
similarity index 100%
rename from Documentation/misc-devices/max6875
rename to Documentation/drivers/misc/max6875
diff --git a/Documentation/misc-devices/mei/mei-client-bus.txt b/Documentation/drivers/misc/mei/mei-client-bus.txt
similarity index 100%
rename from Documentation/misc-devices/mei/mei-client-bus.txt
rename to Documentation/drivers/misc/mei/mei-client-bus.txt
diff --git a/Documentation/misc-devices/mei/mei.txt b/Documentation/drivers/misc/mei/mei.txt
similarity index 100%
rename from Documentation/misc-devices/mei/mei.txt
rename to Documentation/drivers/misc/mei/mei.txt
diff --git a/Documentation/misc-devices/pci-endpoint-test.txt b/Documentation/drivers/misc/pci-endpoint-test.txt
similarity index 100%
rename from Documentation/misc-devices/pci-endpoint-test.txt
rename to Documentation/drivers/misc/pci-endpoint-test.txt
diff --git a/Documentation/misc-devices/spear-pcie-gadget.txt b/Documentation/drivers/misc/spear-pcie-gadget.txt
similarity index 100%
rename from Documentation/misc-devices/spear-pcie-gadget.txt
rename to Documentation/drivers/misc/spear-pcie-gadget.txt
diff --git a/Documentation/mmc/mmc-async-req.txt b/Documentation/drivers/mmc/mmc-async-req.txt
similarity index 100%
rename from Documentation/mmc/mmc-async-req.txt
rename to Documentation/drivers/mmc/mmc-async-req.txt
diff --git a/Documentation/mmc/mmc-dev-attrs.txt b/Documentation/drivers/mmc/mmc-dev-attrs.txt
similarity index 100%
rename from Documentation/mmc/mmc-dev-attrs.txt
rename to Documentation/drivers/mmc/mmc-dev-attrs.txt
diff --git a/Documentation/mmc/mmc-dev-parts.txt b/Documentation/drivers/mmc/mmc-dev-parts.txt
similarity index 100%
rename from Documentation/mmc/mmc-dev-parts.txt
rename to Documentation/drivers/mmc/mmc-dev-parts.txt
diff --git a/Documentation/mmc/mmc-tools.txt b/Documentation/drivers/mmc/mmc-tools.txt
similarity index 100%
rename from Documentation/mmc/mmc-tools.txt
rename to Documentation/drivers/mmc/mmc-tools.txt
diff --git a/Documentation/mtd/intel-spi.txt b/Documentation/drivers/mtd/intel-spi.txt
similarity index 100%
rename from Documentation/mtd/intel-spi.txt
rename to Documentation/drivers/mtd/intel-spi.txt
diff --git a/Documentation/mtd/nand_ecc.txt b/Documentation/drivers/mtd/nand_ecc.txt
similarity index 100%
rename from Documentation/mtd/nand_ecc.txt
rename to Documentation/drivers/mtd/nand_ecc.txt
diff --git a/Documentation/mtd/spi-nor.txt b/Documentation/drivers/mtd/spi-nor.txt
similarity index 100%
rename from Documentation/mtd/spi-nor.txt
rename to Documentation/drivers/mtd/spi-nor.txt
diff --git a/Documentation/nfc/nfc-hci.txt b/Documentation/drivers/nfc/nfc-hci.txt
similarity index 100%
rename from Documentation/nfc/nfc-hci.txt
rename to Documentation/drivers/nfc/nfc-hci.txt
diff --git a/Documentation/nfc/nfc-pn544.txt b/Documentation/drivers/nfc/nfc-pn544.txt
similarity index 100%
rename from Documentation/nfc/nfc-pn544.txt
rename to Documentation/drivers/nfc/nfc-pn544.txt
diff --git a/Documentation/nvdimm/btt.txt b/Documentation/drivers/nvdimm/btt.txt
similarity index 100%
rename from Documentation/nvdimm/btt.txt
rename to Documentation/drivers/nvdimm/btt.txt
diff --git a/Documentation/nvdimm/nvdimm.txt b/Documentation/drivers/nvdimm/nvdimm.txt
similarity index 100%
rename from Documentation/nvdimm/nvdimm.txt
rename to Documentation/drivers/nvdimm/nvdimm.txt
diff --git a/Documentation/nvdimm/security.txt b/Documentation/drivers/nvdimm/security.txt
similarity index 100%
rename from Documentation/nvdimm/security.txt
rename to Documentation/drivers/nvdimm/security.txt
diff --git a/Documentation/nvmem/nvmem.txt b/Documentation/drivers/nvmem/nvmem.txt
similarity index 100%
rename from Documentation/nvmem/nvmem.txt
rename to Documentation/drivers/nvmem/nvmem.txt
diff --git a/Documentation/pcmcia/devicetable.rst b/Documentation/drivers/pcmcia/devicetable.rst
similarity index 100%
rename from Documentation/pcmcia/devicetable.rst
rename to Documentation/drivers/pcmcia/devicetable.rst
diff --git a/Documentation/pcmcia/driver-changes.rst b/Documentation/drivers/pcmcia/driver-changes.rst
similarity index 100%
rename from Documentation/pcmcia/driver-changes.rst
rename to Documentation/drivers/pcmcia/driver-changes.rst
diff --git a/Documentation/pcmcia/driver.rst b/Documentation/drivers/pcmcia/driver.rst
similarity index 100%
rename from Documentation/pcmcia/driver.rst
rename to Documentation/drivers/pcmcia/driver.rst
diff --git a/Documentation/pcmcia/index.rst b/Documentation/drivers/pcmcia/index.rst
similarity index 100%
rename from Documentation/pcmcia/index.rst
rename to Documentation/drivers/pcmcia/index.rst
diff --git a/Documentation/pcmcia/locking.rst b/Documentation/drivers/pcmcia/locking.rst
similarity index 100%
rename from Documentation/pcmcia/locking.rst
rename to Documentation/drivers/pcmcia/locking.rst
diff --git a/Documentation/rapidio/mport_cdev.txt b/Documentation/drivers/rapidio/mport_cdev.txt
similarity index 100%
rename from Documentation/rapidio/mport_cdev.txt
rename to Documentation/drivers/rapidio/mport_cdev.txt
diff --git a/Documentation/rapidio/rapidio.txt b/Documentation/drivers/rapidio/rapidio.txt
similarity index 100%
rename from Documentation/rapidio/rapidio.txt
rename to Documentation/drivers/rapidio/rapidio.txt
diff --git a/Documentation/rapidio/rio_cm.txt b/Documentation/drivers/rapidio/rio_cm.txt
similarity index 100%
rename from Documentation/rapidio/rio_cm.txt
rename to Documentation/drivers/rapidio/rio_cm.txt
diff --git a/Documentation/rapidio/sysfs.txt b/Documentation/drivers/rapidio/sysfs.txt
similarity index 100%
rename from Documentation/rapidio/sysfs.txt
rename to Documentation/drivers/rapidio/sysfs.txt
diff --git a/Documentation/rapidio/tsi721.txt b/Documentation/drivers/rapidio/tsi721.txt
similarity index 100%
rename from Documentation/rapidio/tsi721.txt
rename to Documentation/drivers/rapidio/tsi721.txt
diff --git a/Documentation/scsi/53c700.txt b/Documentation/drivers/scsi/53c700.txt
similarity index 100%
rename from Documentation/scsi/53c700.txt
rename to Documentation/drivers/scsi/53c700.txt
diff --git a/Documentation/scsi/BusLogic.txt b/Documentation/drivers/scsi/BusLogic.txt
similarity index 100%
rename from Documentation/scsi/BusLogic.txt
rename to Documentation/drivers/scsi/BusLogic.txt
diff --git a/Documentation/scsi/ChangeLog.arcmsr b/Documentation/drivers/scsi/ChangeLog.arcmsr
similarity index 100%
rename from Documentation/scsi/ChangeLog.arcmsr
rename to Documentation/drivers/scsi/ChangeLog.arcmsr
diff --git a/Documentation/scsi/ChangeLog.ips b/Documentation/drivers/scsi/ChangeLog.ips
similarity index 100%
rename from Documentation/scsi/ChangeLog.ips
rename to Documentation/drivers/scsi/ChangeLog.ips
diff --git a/Documentation/scsi/ChangeLog.lpfc b/Documentation/drivers/scsi/ChangeLog.lpfc
similarity index 100%
rename from Documentation/scsi/ChangeLog.lpfc
rename to Documentation/drivers/scsi/ChangeLog.lpfc
diff --git a/Documentation/scsi/ChangeLog.megaraid b/Documentation/drivers/scsi/ChangeLog.megaraid
similarity index 100%
rename from Documentation/scsi/ChangeLog.megaraid
rename to Documentation/drivers/scsi/ChangeLog.megaraid
diff --git a/Documentation/scsi/ChangeLog.megaraid_sas b/Documentation/drivers/scsi/ChangeLog.megaraid_sas
similarity index 100%
rename from Documentation/scsi/ChangeLog.megaraid_sas
rename to Documentation/drivers/scsi/ChangeLog.megaraid_sas
diff --git a/Documentation/scsi/ChangeLog.ncr53c8xx b/Documentation/drivers/scsi/ChangeLog.ncr53c8xx
similarity index 100%
rename from Documentation/scsi/ChangeLog.ncr53c8xx
rename to Documentation/drivers/scsi/ChangeLog.ncr53c8xx
diff --git a/Documentation/scsi/ChangeLog.sym53c8xx b/Documentation/drivers/scsi/ChangeLog.sym53c8xx
similarity index 100%
rename from Documentation/scsi/ChangeLog.sym53c8xx
rename to Documentation/drivers/scsi/ChangeLog.sym53c8xx
diff --git a/Documentation/scsi/ChangeLog.sym53c8xx_2 b/Documentation/drivers/scsi/ChangeLog.sym53c8xx_2
similarity index 100%
rename from Documentation/scsi/ChangeLog.sym53c8xx_2
rename to Documentation/drivers/scsi/ChangeLog.sym53c8xx_2
diff --git a/Documentation/scsi/FlashPoint.txt b/Documentation/drivers/scsi/FlashPoint.txt
similarity index 100%
rename from Documentation/scsi/FlashPoint.txt
rename to Documentation/drivers/scsi/FlashPoint.txt
diff --git a/Documentation/scsi/LICENSE.FlashPoint b/Documentation/drivers/scsi/LICENSE.FlashPoint
similarity index 100%
rename from Documentation/scsi/LICENSE.FlashPoint
rename to Documentation/drivers/scsi/LICENSE.FlashPoint
diff --git a/Documentation/scsi/LICENSE.qla2xxx b/Documentation/drivers/scsi/LICENSE.qla2xxx
similarity index 100%
rename from Documentation/scsi/LICENSE.qla2xxx
rename to Documentation/drivers/scsi/LICENSE.qla2xxx
diff --git a/Documentation/scsi/LICENSE.qla4xxx b/Documentation/drivers/scsi/LICENSE.qla4xxx
similarity index 100%
rename from Documentation/scsi/LICENSE.qla4xxx
rename to Documentation/drivers/scsi/LICENSE.qla4xxx
diff --git a/Documentation/scsi/NinjaSCSI.txt b/Documentation/drivers/scsi/NinjaSCSI.txt
similarity index 100%
rename from Documentation/scsi/NinjaSCSI.txt
rename to Documentation/drivers/scsi/NinjaSCSI.txt
diff --git a/Documentation/scsi/aacraid.txt b/Documentation/drivers/scsi/aacraid.txt
similarity index 100%
rename from Documentation/scsi/aacraid.txt
rename to Documentation/drivers/scsi/aacraid.txt
diff --git a/Documentation/scsi/advansys.txt b/Documentation/drivers/scsi/advansys.txt
similarity index 100%
rename from Documentation/scsi/advansys.txt
rename to Documentation/drivers/scsi/advansys.txt
diff --git a/Documentation/scsi/aha152x.txt b/Documentation/drivers/scsi/aha152x.txt
similarity index 100%
rename from Documentation/scsi/aha152x.txt
rename to Documentation/drivers/scsi/aha152x.txt
diff --git a/Documentation/scsi/aic79xx.txt b/Documentation/drivers/scsi/aic79xx.txt
similarity index 100%
rename from Documentation/scsi/aic79xx.txt
rename to Documentation/drivers/scsi/aic79xx.txt
diff --git a/Documentation/scsi/aic7xxx.txt b/Documentation/drivers/scsi/aic7xxx.txt
similarity index 100%
rename from Documentation/scsi/aic7xxx.txt
rename to Documentation/drivers/scsi/aic7xxx.txt
diff --git a/Documentation/scsi/arcmsr_spec.txt b/Documentation/drivers/scsi/arcmsr_spec.txt
similarity index 100%
rename from Documentation/scsi/arcmsr_spec.txt
rename to Documentation/drivers/scsi/arcmsr_spec.txt
diff --git a/Documentation/scsi/bfa.txt b/Documentation/drivers/scsi/bfa.txt
similarity index 100%
rename from Documentation/scsi/bfa.txt
rename to Documentation/drivers/scsi/bfa.txt
diff --git a/Documentation/scsi/bnx2fc.txt b/Documentation/drivers/scsi/bnx2fc.txt
similarity index 100%
rename from Documentation/scsi/bnx2fc.txt
rename to Documentation/drivers/scsi/bnx2fc.txt
diff --git a/Documentation/scsi/cxgb3i.txt b/Documentation/drivers/scsi/cxgb3i.txt
similarity index 100%
rename from Documentation/scsi/cxgb3i.txt
rename to Documentation/drivers/scsi/cxgb3i.txt
diff --git a/Documentation/scsi/dc395x.txt b/Documentation/drivers/scsi/dc395x.txt
similarity index 100%
rename from Documentation/scsi/dc395x.txt
rename to Documentation/drivers/scsi/dc395x.txt
diff --git a/Documentation/scsi/dpti.txt b/Documentation/drivers/scsi/dpti.txt
similarity index 100%
rename from Documentation/scsi/dpti.txt
rename to Documentation/drivers/scsi/dpti.txt
diff --git a/Documentation/scsi/g_NCR5380.txt b/Documentation/drivers/scsi/g_NCR5380.txt
similarity index 100%
rename from Documentation/scsi/g_NCR5380.txt
rename to Documentation/drivers/scsi/g_NCR5380.txt
diff --git a/Documentation/scsi/hpsa.txt b/Documentation/drivers/scsi/hpsa.txt
similarity index 100%
rename from Documentation/scsi/hpsa.txt
rename to Documentation/drivers/scsi/hpsa.txt
diff --git a/Documentation/scsi/hptiop.txt b/Documentation/drivers/scsi/hptiop.txt
similarity index 100%
rename from Documentation/scsi/hptiop.txt
rename to Documentation/drivers/scsi/hptiop.txt
diff --git a/Documentation/scsi/libsas.txt b/Documentation/drivers/scsi/libsas.txt
similarity index 100%
rename from Documentation/scsi/libsas.txt
rename to Documentation/drivers/scsi/libsas.txt
diff --git a/Documentation/scsi/link_power_management_policy.txt b/Documentation/drivers/scsi/link_power_management_policy.txt
similarity index 100%
rename from Documentation/scsi/link_power_management_policy.txt
rename to Documentation/drivers/scsi/link_power_management_policy.txt
diff --git a/Documentation/scsi/lpfc.txt b/Documentation/drivers/scsi/lpfc.txt
similarity index 100%
rename from Documentation/scsi/lpfc.txt
rename to Documentation/drivers/scsi/lpfc.txt
diff --git a/Documentation/scsi/megaraid.txt b/Documentation/drivers/scsi/megaraid.txt
similarity index 100%
rename from Documentation/scsi/megaraid.txt
rename to Documentation/drivers/scsi/megaraid.txt
diff --git a/Documentation/scsi/ncr53c8xx.txt b/Documentation/drivers/scsi/ncr53c8xx.txt
similarity index 100%
rename from Documentation/scsi/ncr53c8xx.txt
rename to Documentation/drivers/scsi/ncr53c8xx.txt
diff --git a/Documentation/scsi/osst.txt b/Documentation/drivers/scsi/osst.txt
similarity index 100%
rename from Documentation/scsi/osst.txt
rename to Documentation/drivers/scsi/osst.txt
diff --git a/Documentation/scsi/ppa.txt b/Documentation/drivers/scsi/ppa.txt
similarity index 100%
rename from Documentation/scsi/ppa.txt
rename to Documentation/drivers/scsi/ppa.txt
diff --git a/Documentation/scsi/qlogicfas.txt b/Documentation/drivers/scsi/qlogicfas.txt
similarity index 100%
rename from Documentation/scsi/qlogicfas.txt
rename to Documentation/drivers/scsi/qlogicfas.txt
diff --git a/Documentation/scsi/scsi-changer.txt b/Documentation/drivers/scsi/scsi-changer.txt
similarity index 100%
rename from Documentation/scsi/scsi-changer.txt
rename to Documentation/drivers/scsi/scsi-changer.txt
diff --git a/Documentation/scsi/scsi-generic.txt b/Documentation/drivers/scsi/scsi-generic.txt
similarity index 100%
rename from Documentation/scsi/scsi-generic.txt
rename to Documentation/drivers/scsi/scsi-generic.txt
diff --git a/Documentation/scsi/scsi-parameters.txt b/Documentation/drivers/scsi/scsi-parameters.txt
similarity index 100%
rename from Documentation/scsi/scsi-parameters.txt
rename to Documentation/drivers/scsi/scsi-parameters.txt
diff --git a/Documentation/scsi/scsi.txt b/Documentation/drivers/scsi/scsi.txt
similarity index 100%
rename from Documentation/scsi/scsi.txt
rename to Documentation/drivers/scsi/scsi.txt
diff --git a/Documentation/scsi/scsi_eh.txt b/Documentation/drivers/scsi/scsi_eh.txt
similarity index 100%
rename from Documentation/scsi/scsi_eh.txt
rename to Documentation/drivers/scsi/scsi_eh.txt
diff --git a/Documentation/scsi/scsi_fc_transport.txt b/Documentation/drivers/scsi/scsi_fc_transport.txt
similarity index 100%
rename from Documentation/scsi/scsi_fc_transport.txt
rename to Documentation/drivers/scsi/scsi_fc_transport.txt
diff --git a/Documentation/scsi/scsi_mid_low_api.txt b/Documentation/drivers/scsi/scsi_mid_low_api.txt
similarity index 100%
rename from Documentation/scsi/scsi_mid_low_api.txt
rename to Documentation/drivers/scsi/scsi_mid_low_api.txt
diff --git a/Documentation/scsi/scsi_transport_srp/Makefile b/Documentation/drivers/scsi/scsi_transport_srp/Makefile
similarity index 100%
rename from Documentation/scsi/scsi_transport_srp/Makefile
rename to Documentation/drivers/scsi/scsi_transport_srp/Makefile
diff --git a/Documentation/scsi/scsi_transport_srp/rport_state_diagram.dot b/Documentation/drivers/scsi/scsi_transport_srp/rport_state_diagram.dot
similarity index 100%
rename from Documentation/scsi/scsi_transport_srp/rport_state_diagram.dot
rename to Documentation/drivers/scsi/scsi_transport_srp/rport_state_diagram.dot
diff --git a/Documentation/scsi/sd-parameters.txt b/Documentation/drivers/scsi/sd-parameters.txt
similarity index 100%
rename from Documentation/scsi/sd-parameters.txt
rename to Documentation/drivers/scsi/sd-parameters.txt
diff --git a/Documentation/scsi/smartpqi.txt b/Documentation/drivers/scsi/smartpqi.txt
similarity index 100%
rename from Documentation/scsi/smartpqi.txt
rename to Documentation/drivers/scsi/smartpqi.txt
diff --git a/Documentation/scsi/st.txt b/Documentation/drivers/scsi/st.txt
similarity index 100%
rename from Documentation/scsi/st.txt
rename to Documentation/drivers/scsi/st.txt
diff --git a/Documentation/scsi/sym53c500_cs.txt b/Documentation/drivers/scsi/sym53c500_cs.txt
similarity index 100%
rename from Documentation/scsi/sym53c500_cs.txt
rename to Documentation/drivers/scsi/sym53c500_cs.txt
diff --git a/Documentation/scsi/sym53c8xx_2.txt b/Documentation/drivers/scsi/sym53c8xx_2.txt
similarity index 100%
rename from Documentation/scsi/sym53c8xx_2.txt
rename to Documentation/drivers/scsi/sym53c8xx_2.txt
diff --git a/Documentation/scsi/tcm_qla2xxx.txt b/Documentation/drivers/scsi/tcm_qla2xxx.txt
similarity index 100%
rename from Documentation/scsi/tcm_qla2xxx.txt
rename to Documentation/drivers/scsi/tcm_qla2xxx.txt
diff --git a/Documentation/scsi/ufs.txt b/Documentation/drivers/scsi/ufs.txt
similarity index 100%
rename from Documentation/scsi/ufs.txt
rename to Documentation/drivers/scsi/ufs.txt
diff --git a/Documentation/scsi/wd719x.txt b/Documentation/drivers/scsi/wd719x.txt
similarity index 100%
rename from Documentation/scsi/wd719x.txt
rename to Documentation/drivers/scsi/wd719x.txt
diff --git a/Documentation/serial/cyclades_z.rst b/Documentation/drivers/serial/cyclades_z.rst
similarity index 100%
rename from Documentation/serial/cyclades_z.rst
rename to Documentation/drivers/serial/cyclades_z.rst
diff --git a/Documentation/serial/driver.rst b/Documentation/drivers/serial/driver.rst
similarity index 100%
rename from Documentation/serial/driver.rst
rename to Documentation/drivers/serial/driver.rst
diff --git a/Documentation/serial/index.rst b/Documentation/drivers/serial/index.rst
similarity index 100%
rename from Documentation/serial/index.rst
rename to Documentation/drivers/serial/index.rst
diff --git a/Documentation/serial/moxa-smartio.rst b/Documentation/drivers/serial/moxa-smartio.rst
similarity index 100%
rename from Documentation/serial/moxa-smartio.rst
rename to Documentation/drivers/serial/moxa-smartio.rst
diff --git a/Documentation/serial/n_gsm.rst b/Documentation/drivers/serial/n_gsm.rst
similarity index 100%
rename from Documentation/serial/n_gsm.rst
rename to Documentation/drivers/serial/n_gsm.rst
diff --git a/Documentation/serial/rocket.rst b/Documentation/drivers/serial/rocket.rst
similarity index 100%
rename from Documentation/serial/rocket.rst
rename to Documentation/drivers/serial/rocket.rst
diff --git a/Documentation/serial/serial-iso7816.rst b/Documentation/drivers/serial/serial-iso7816.rst
similarity index 100%
rename from Documentation/serial/serial-iso7816.rst
rename to Documentation/drivers/serial/serial-iso7816.rst
diff --git a/Documentation/serial/serial-rs485.rst b/Documentation/drivers/serial/serial-rs485.rst
similarity index 100%
rename from Documentation/serial/serial-rs485.rst
rename to Documentation/drivers/serial/serial-rs485.rst
diff --git a/Documentation/serial/tty.rst b/Documentation/drivers/serial/tty.rst
similarity index 100%
rename from Documentation/serial/tty.rst
rename to Documentation/drivers/serial/tty.rst
diff --git a/Documentation/sound/alsa-configuration.rst b/Documentation/drivers/sound/alsa-configuration.rst
similarity index 100%
rename from Documentation/sound/alsa-configuration.rst
rename to Documentation/drivers/sound/alsa-configuration.rst
diff --git a/Documentation/sound/cards/audigy-mixer.rst b/Documentation/drivers/sound/cards/audigy-mixer.rst
similarity index 100%
rename from Documentation/sound/cards/audigy-mixer.rst
rename to Documentation/drivers/sound/cards/audigy-mixer.rst
diff --git a/Documentation/sound/cards/audiophile-usb.rst b/Documentation/drivers/sound/cards/audiophile-usb.rst
similarity index 100%
rename from Documentation/sound/cards/audiophile-usb.rst
rename to Documentation/drivers/sound/cards/audiophile-usb.rst
diff --git a/Documentation/sound/cards/bt87x.rst b/Documentation/drivers/sound/cards/bt87x.rst
similarity index 100%
rename from Documentation/sound/cards/bt87x.rst
rename to Documentation/drivers/sound/cards/bt87x.rst
diff --git a/Documentation/sound/cards/cmipci.rst b/Documentation/drivers/sound/cards/cmipci.rst
similarity index 100%
rename from Documentation/sound/cards/cmipci.rst
rename to Documentation/drivers/sound/cards/cmipci.rst
diff --git a/Documentation/sound/cards/emu10k1-jack.rst b/Documentation/drivers/sound/cards/emu10k1-jack.rst
similarity index 100%
rename from Documentation/sound/cards/emu10k1-jack.rst
rename to Documentation/drivers/sound/cards/emu10k1-jack.rst
diff --git a/Documentation/sound/cards/hdspm.rst b/Documentation/drivers/sound/cards/hdspm.rst
similarity index 100%
rename from Documentation/sound/cards/hdspm.rst
rename to Documentation/drivers/sound/cards/hdspm.rst
diff --git a/Documentation/sound/cards/img-spdif-in.rst b/Documentation/drivers/sound/cards/img-spdif-in.rst
similarity index 100%
rename from Documentation/sound/cards/img-spdif-in.rst
rename to Documentation/drivers/sound/cards/img-spdif-in.rst
diff --git a/Documentation/sound/cards/index.rst b/Documentation/drivers/sound/cards/index.rst
similarity index 100%
rename from Documentation/sound/cards/index.rst
rename to Documentation/drivers/sound/cards/index.rst
diff --git a/Documentation/sound/cards/joystick.rst b/Documentation/drivers/sound/cards/joystick.rst
similarity index 100%
rename from Documentation/sound/cards/joystick.rst
rename to Documentation/drivers/sound/cards/joystick.rst
diff --git a/Documentation/sound/cards/maya44.rst b/Documentation/drivers/sound/cards/maya44.rst
similarity index 100%
rename from Documentation/sound/cards/maya44.rst
rename to Documentation/drivers/sound/cards/maya44.rst
diff --git a/Documentation/sound/cards/mixart.rst b/Documentation/drivers/sound/cards/mixart.rst
similarity index 100%
rename from Documentation/sound/cards/mixart.rst
rename to Documentation/drivers/sound/cards/mixart.rst
diff --git a/Documentation/sound/cards/multisound.sh b/Documentation/drivers/sound/cards/multisound.sh
similarity index 100%
rename from Documentation/sound/cards/multisound.sh
rename to Documentation/drivers/sound/cards/multisound.sh
diff --git a/Documentation/sound/cards/sb-live-mixer.rst b/Documentation/drivers/sound/cards/sb-live-mixer.rst
similarity index 100%
rename from Documentation/sound/cards/sb-live-mixer.rst
rename to Documentation/drivers/sound/cards/sb-live-mixer.rst
diff --git a/Documentation/sound/cards/serial-u16550.rst b/Documentation/drivers/sound/cards/serial-u16550.rst
similarity index 100%
rename from Documentation/sound/cards/serial-u16550.rst
rename to Documentation/drivers/sound/cards/serial-u16550.rst
diff --git a/Documentation/sound/cards/via82xx-mixer.rst b/Documentation/drivers/sound/cards/via82xx-mixer.rst
similarity index 100%
rename from Documentation/sound/cards/via82xx-mixer.rst
rename to Documentation/drivers/sound/cards/via82xx-mixer.rst
diff --git a/Documentation/sound/conf.py b/Documentation/drivers/sound/conf.py
similarity index 100%
rename from Documentation/sound/conf.py
rename to Documentation/drivers/sound/conf.py
diff --git a/Documentation/sound/designs/channel-mapping-api.rst b/Documentation/drivers/sound/designs/channel-mapping-api.rst
similarity index 100%
rename from Documentation/sound/designs/channel-mapping-api.rst
rename to Documentation/drivers/sound/designs/channel-mapping-api.rst
diff --git a/Documentation/sound/designs/compress-offload.rst b/Documentation/drivers/sound/designs/compress-offload.rst
similarity index 100%
rename from Documentation/sound/designs/compress-offload.rst
rename to Documentation/drivers/sound/designs/compress-offload.rst
diff --git a/Documentation/sound/designs/control-names.rst b/Documentation/drivers/sound/designs/control-names.rst
similarity index 100%
rename from Documentation/sound/designs/control-names.rst
rename to Documentation/drivers/sound/designs/control-names.rst
diff --git a/Documentation/sound/designs/index.rst b/Documentation/drivers/sound/designs/index.rst
similarity index 100%
rename from Documentation/sound/designs/index.rst
rename to Documentation/drivers/sound/designs/index.rst
diff --git a/Documentation/sound/designs/jack-controls.rst b/Documentation/drivers/sound/designs/jack-controls.rst
similarity index 100%
rename from Documentation/sound/designs/jack-controls.rst
rename to Documentation/drivers/sound/designs/jack-controls.rst
diff --git a/Documentation/sound/designs/oss-emulation.rst b/Documentation/drivers/sound/designs/oss-emulation.rst
similarity index 100%
rename from Documentation/sound/designs/oss-emulation.rst
rename to Documentation/drivers/sound/designs/oss-emulation.rst
diff --git a/Documentation/sound/designs/powersave.rst b/Documentation/drivers/sound/designs/powersave.rst
similarity index 100%
rename from Documentation/sound/designs/powersave.rst
rename to Documentation/drivers/sound/designs/powersave.rst
diff --git a/Documentation/sound/designs/procfile.rst b/Documentation/drivers/sound/designs/procfile.rst
similarity index 100%
rename from Documentation/sound/designs/procfile.rst
rename to Documentation/drivers/sound/designs/procfile.rst
diff --git a/Documentation/sound/designs/seq-oss.rst b/Documentation/drivers/sound/designs/seq-oss.rst
similarity index 100%
rename from Documentation/sound/designs/seq-oss.rst
rename to Documentation/drivers/sound/designs/seq-oss.rst
diff --git a/Documentation/sound/designs/timestamping.rst b/Documentation/drivers/sound/designs/timestamping.rst
similarity index 100%
rename from Documentation/sound/designs/timestamping.rst
rename to Documentation/drivers/sound/designs/timestamping.rst
diff --git a/Documentation/sound/designs/tracepoints.rst b/Documentation/drivers/sound/designs/tracepoints.rst
similarity index 100%
rename from Documentation/sound/designs/tracepoints.rst
rename to Documentation/drivers/sound/designs/tracepoints.rst
diff --git a/Documentation/sound/hd-audio/controls.rst b/Documentation/drivers/sound/hd-audio/controls.rst
similarity index 100%
rename from Documentation/sound/hd-audio/controls.rst
rename to Documentation/drivers/sound/hd-audio/controls.rst
diff --git a/Documentation/sound/hd-audio/dp-mst.rst b/Documentation/drivers/sound/hd-audio/dp-mst.rst
similarity index 100%
rename from Documentation/sound/hd-audio/dp-mst.rst
rename to Documentation/drivers/sound/hd-audio/dp-mst.rst
diff --git a/Documentation/sound/hd-audio/index.rst b/Documentation/drivers/sound/hd-audio/index.rst
similarity index 100%
rename from Documentation/sound/hd-audio/index.rst
rename to Documentation/drivers/sound/hd-audio/index.rst
diff --git a/Documentation/sound/hd-audio/models.rst b/Documentation/drivers/sound/hd-audio/models.rst
similarity index 100%
rename from Documentation/sound/hd-audio/models.rst
rename to Documentation/drivers/sound/hd-audio/models.rst
diff --git a/Documentation/sound/hd-audio/notes.rst b/Documentation/drivers/sound/hd-audio/notes.rst
similarity index 100%
rename from Documentation/sound/hd-audio/notes.rst
rename to Documentation/drivers/sound/hd-audio/notes.rst
diff --git a/Documentation/sound/index.rst b/Documentation/drivers/sound/index.rst
similarity index 100%
rename from Documentation/sound/index.rst
rename to Documentation/drivers/sound/index.rst
diff --git a/Documentation/sound/kernel-api/alsa-driver-api.rst b/Documentation/drivers/sound/kernel-api/alsa-driver-api.rst
similarity index 100%
rename from Documentation/sound/kernel-api/alsa-driver-api.rst
rename to Documentation/drivers/sound/kernel-api/alsa-driver-api.rst
diff --git a/Documentation/sound/kernel-api/index.rst b/Documentation/drivers/sound/kernel-api/index.rst
similarity index 100%
rename from Documentation/sound/kernel-api/index.rst
rename to Documentation/drivers/sound/kernel-api/index.rst
diff --git a/Documentation/sound/kernel-api/writing-an-alsa-driver.rst b/Documentation/drivers/sound/kernel-api/writing-an-alsa-driver.rst
similarity index 100%
rename from Documentation/sound/kernel-api/writing-an-alsa-driver.rst
rename to Documentation/drivers/sound/kernel-api/writing-an-alsa-driver.rst
diff --git a/Documentation/sound/soc/clocking.rst b/Documentation/drivers/sound/soc/clocking.rst
similarity index 100%
rename from Documentation/sound/soc/clocking.rst
rename to Documentation/drivers/sound/soc/clocking.rst
diff --git a/Documentation/sound/soc/codec-to-codec.rst b/Documentation/drivers/sound/soc/codec-to-codec.rst
similarity index 100%
rename from Documentation/sound/soc/codec-to-codec.rst
rename to Documentation/drivers/sound/soc/codec-to-codec.rst
diff --git a/Documentation/sound/soc/codec.rst b/Documentation/drivers/sound/soc/codec.rst
similarity index 100%
rename from Documentation/sound/soc/codec.rst
rename to Documentation/drivers/sound/soc/codec.rst
diff --git a/Documentation/sound/soc/dai.rst b/Documentation/drivers/sound/soc/dai.rst
similarity index 100%
rename from Documentation/sound/soc/dai.rst
rename to Documentation/drivers/sound/soc/dai.rst
diff --git a/Documentation/sound/soc/dapm.rst b/Documentation/drivers/sound/soc/dapm.rst
similarity index 100%
rename from Documentation/sound/soc/dapm.rst
rename to Documentation/drivers/sound/soc/dapm.rst
diff --git a/Documentation/sound/soc/dpcm.rst b/Documentation/drivers/sound/soc/dpcm.rst
similarity index 100%
rename from Documentation/sound/soc/dpcm.rst
rename to Documentation/drivers/sound/soc/dpcm.rst
diff --git a/Documentation/sound/soc/index.rst b/Documentation/drivers/sound/soc/index.rst
similarity index 100%
rename from Documentation/sound/soc/index.rst
rename to Documentation/drivers/sound/soc/index.rst
diff --git a/Documentation/sound/soc/jack.rst b/Documentation/drivers/sound/soc/jack.rst
similarity index 100%
rename from Documentation/sound/soc/jack.rst
rename to Documentation/drivers/sound/soc/jack.rst
diff --git a/Documentation/sound/soc/machine.rst b/Documentation/drivers/sound/soc/machine.rst
similarity index 100%
rename from Documentation/sound/soc/machine.rst
rename to Documentation/drivers/sound/soc/machine.rst
diff --git a/Documentation/sound/soc/overview.rst b/Documentation/drivers/sound/soc/overview.rst
similarity index 100%
rename from Documentation/sound/soc/overview.rst
rename to Documentation/drivers/sound/soc/overview.rst
diff --git a/Documentation/sound/soc/platform.rst b/Documentation/drivers/sound/soc/platform.rst
similarity index 100%
rename from Documentation/sound/soc/platform.rst
rename to Documentation/drivers/sound/soc/platform.rst
diff --git a/Documentation/sound/soc/pops-clicks.rst b/Documentation/drivers/sound/soc/pops-clicks.rst
similarity index 100%
rename from Documentation/sound/soc/pops-clicks.rst
rename to Documentation/drivers/sound/soc/pops-clicks.rst
diff --git a/Documentation/usb/CREDITS b/Documentation/drivers/usb/CREDITS
similarity index 100%
rename from Documentation/usb/CREDITS
rename to Documentation/drivers/usb/CREDITS
diff --git a/Documentation/usb/WUSB-Design-overview.txt b/Documentation/drivers/usb/WUSB-Design-overview.txt
similarity index 100%
rename from Documentation/usb/WUSB-Design-overview.txt
rename to Documentation/drivers/usb/WUSB-Design-overview.txt
diff --git a/Documentation/usb/acm.txt b/Documentation/drivers/usb/acm.txt
similarity index 100%
rename from Documentation/usb/acm.txt
rename to Documentation/drivers/usb/acm.txt
diff --git a/Documentation/usb/authorization.txt b/Documentation/drivers/usb/authorization.txt
similarity index 100%
rename from Documentation/usb/authorization.txt
rename to Documentation/drivers/usb/authorization.txt
diff --git a/Documentation/usb/chipidea.txt b/Documentation/drivers/usb/chipidea.txt
similarity index 100%
rename from Documentation/usb/chipidea.txt
rename to Documentation/drivers/usb/chipidea.txt
diff --git a/Documentation/usb/dwc3.txt b/Documentation/drivers/usb/dwc3.txt
similarity index 100%
rename from Documentation/usb/dwc3.txt
rename to Documentation/drivers/usb/dwc3.txt
diff --git a/Documentation/usb/ehci.txt b/Documentation/drivers/usb/ehci.txt
similarity index 100%
rename from Documentation/usb/ehci.txt
rename to Documentation/drivers/usb/ehci.txt
diff --git a/Documentation/usb/functionfs.txt b/Documentation/drivers/usb/functionfs.txt
similarity index 100%
rename from Documentation/usb/functionfs.txt
rename to Documentation/drivers/usb/functionfs.txt
diff --git a/Documentation/usb/gadget-testing.txt b/Documentation/drivers/usb/gadget-testing.txt
similarity index 100%
rename from Documentation/usb/gadget-testing.txt
rename to Documentation/drivers/usb/gadget-testing.txt
diff --git a/Documentation/usb/gadget_configfs.txt b/Documentation/drivers/usb/gadget_configfs.txt
similarity index 100%
rename from Documentation/usb/gadget_configfs.txt
rename to Documentation/drivers/usb/gadget_configfs.txt
diff --git a/Documentation/usb/gadget_hid.txt b/Documentation/drivers/usb/gadget_hid.txt
similarity index 100%
rename from Documentation/usb/gadget_hid.txt
rename to Documentation/drivers/usb/gadget_hid.txt
diff --git a/Documentation/usb/gadget_multi.txt b/Documentation/drivers/usb/gadget_multi.txt
similarity index 100%
rename from Documentation/usb/gadget_multi.txt
rename to Documentation/drivers/usb/gadget_multi.txt
diff --git a/Documentation/usb/gadget_printer.txt b/Documentation/drivers/usb/gadget_printer.txt
similarity index 100%
rename from Documentation/usb/gadget_printer.txt
rename to Documentation/drivers/usb/gadget_printer.txt
diff --git a/Documentation/usb/gadget_serial.txt b/Documentation/drivers/usb/gadget_serial.txt
similarity index 100%
rename from Documentation/usb/gadget_serial.txt
rename to Documentation/drivers/usb/gadget_serial.txt
diff --git a/Documentation/usb/iuu_phoenix.txt b/Documentation/drivers/usb/iuu_phoenix.txt
similarity index 100%
rename from Documentation/usb/iuu_phoenix.txt
rename to Documentation/drivers/usb/iuu_phoenix.txt
diff --git a/Documentation/usb/linux-cdc-acm.inf b/Documentation/drivers/usb/linux-cdc-acm.inf
similarity index 100%
rename from Documentation/usb/linux-cdc-acm.inf
rename to Documentation/drivers/usb/linux-cdc-acm.inf
diff --git a/Documentation/usb/linux.inf b/Documentation/drivers/usb/linux.inf
similarity index 100%
rename from Documentation/usb/linux.inf
rename to Documentation/drivers/usb/linux.inf
diff --git a/Documentation/usb/mass-storage.txt b/Documentation/drivers/usb/mass-storage.txt
similarity index 100%
rename from Documentation/usb/mass-storage.txt
rename to Documentation/drivers/usb/mass-storage.txt
diff --git a/Documentation/usb/misc_usbsevseg.txt b/Documentation/drivers/usb/misc_usbsevseg.txt
similarity index 100%
rename from Documentation/usb/misc_usbsevseg.txt
rename to Documentation/drivers/usb/misc_usbsevseg.txt
diff --git a/Documentation/usb/mtouchusb.txt b/Documentation/drivers/usb/mtouchusb.txt
similarity index 100%
rename from Documentation/usb/mtouchusb.txt
rename to Documentation/drivers/usb/mtouchusb.txt
diff --git a/Documentation/usb/ohci.txt b/Documentation/drivers/usb/ohci.txt
similarity index 100%
rename from Documentation/usb/ohci.txt
rename to Documentation/drivers/usb/ohci.txt
diff --git a/Documentation/usb/rio.txt b/Documentation/drivers/usb/rio.txt
similarity index 100%
rename from Documentation/usb/rio.txt
rename to Documentation/drivers/usb/rio.txt
diff --git a/Documentation/usb/usb-help.txt b/Documentation/drivers/usb/usb-help.txt
similarity index 100%
rename from Documentation/usb/usb-help.txt
rename to Documentation/drivers/usb/usb-help.txt
diff --git a/Documentation/usb/usb-serial.txt b/Documentation/drivers/usb/usb-serial.txt
similarity index 100%
rename from Documentation/usb/usb-serial.txt
rename to Documentation/drivers/usb/usb-serial.txt
diff --git a/Documentation/usb/usbdevfs-drop-permissions.c b/Documentation/drivers/usb/usbdevfs-drop-permissions.c
similarity index 100%
rename from Documentation/usb/usbdevfs-drop-permissions.c
rename to Documentation/drivers/usb/usbdevfs-drop-permissions.c
diff --git a/Documentation/usb/usbip_protocol.txt b/Documentation/drivers/usb/usbip_protocol.txt
similarity index 100%
rename from Documentation/usb/usbip_protocol.txt
rename to Documentation/drivers/usb/usbip_protocol.txt
diff --git a/Documentation/usb/usbmon.txt b/Documentation/drivers/usb/usbmon.txt
similarity index 100%
rename from Documentation/usb/usbmon.txt
rename to Documentation/drivers/usb/usbmon.txt
diff --git a/Documentation/usb/wusb-cbaf b/Documentation/drivers/usb/wusb-cbaf
similarity index 100%
rename from Documentation/usb/wusb-cbaf
rename to Documentation/drivers/usb/wusb-cbaf
diff --git a/Documentation/watchdog/convert_drivers_to_kernel_api.rst b/Documentation/drivers/watchdog/convert_drivers_to_kernel_api.rst
similarity index 100%
rename from Documentation/watchdog/convert_drivers_to_kernel_api.rst
rename to Documentation/drivers/watchdog/convert_drivers_to_kernel_api.rst
diff --git a/Documentation/watchdog/hpwdt.rst b/Documentation/drivers/watchdog/hpwdt.rst
similarity index 100%
rename from Documentation/watchdog/hpwdt.rst
rename to Documentation/drivers/watchdog/hpwdt.rst
diff --git a/Documentation/watchdog/index.rst b/Documentation/drivers/watchdog/index.rst
similarity index 100%
rename from Documentation/watchdog/index.rst
rename to Documentation/drivers/watchdog/index.rst
diff --git a/Documentation/watchdog/mlx-wdt.rst b/Documentation/drivers/watchdog/mlx-wdt.rst
similarity index 100%
rename from Documentation/watchdog/mlx-wdt.rst
rename to Documentation/drivers/watchdog/mlx-wdt.rst
diff --git a/Documentation/watchdog/pcwd-watchdog.rst b/Documentation/drivers/watchdog/pcwd-watchdog.rst
similarity index 100%
rename from Documentation/watchdog/pcwd-watchdog.rst
rename to Documentation/drivers/watchdog/pcwd-watchdog.rst
diff --git a/Documentation/watchdog/watchdog-api.rst b/Documentation/drivers/watchdog/watchdog-api.rst
similarity index 100%
rename from Documentation/watchdog/watchdog-api.rst
rename to Documentation/drivers/watchdog/watchdog-api.rst
diff --git a/Documentation/watchdog/watchdog-kernel-api.rst b/Documentation/drivers/watchdog/watchdog-kernel-api.rst
similarity index 100%
rename from Documentation/watchdog/watchdog-kernel-api.rst
rename to Documentation/drivers/watchdog/watchdog-kernel-api.rst
diff --git a/Documentation/watchdog/watchdog-parameters.rst b/Documentation/drivers/watchdog/watchdog-parameters.rst
similarity index 100%
rename from Documentation/watchdog/watchdog-parameters.rst
rename to Documentation/drivers/watchdog/watchdog-parameters.rst
diff --git a/Documentation/watchdog/watchdog-pm.rst b/Documentation/drivers/watchdog/watchdog-pm.rst
similarity index 100%
rename from Documentation/watchdog/watchdog-pm.rst
rename to Documentation/drivers/watchdog/watchdog-pm.rst
diff --git a/Documentation/watchdog/wdt.rst b/Documentation/drivers/watchdog/wdt.rst
similarity index 100%
rename from Documentation/watchdog/wdt.rst
rename to Documentation/drivers/watchdog/wdt.rst
-- 
2.19.1.856.g8858448bb

^ permalink raw reply

* [git pull] Input updates for v5.3-rc0
From: Dmitry Torokhov @ 2019-07-12  5:41 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel, linux-input

Hi Linus,

Please pull from:

	git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input.git for-linus

to receive updates for the input subsystem. You will get:

- an update to Elan touchpad SMBus driver to fetch device parameters
  (size, resolution) while it is still in PS/2 mode, before switching
  over to SMBus, as in that mode some devices return garbage dimensions
- update to iforce joystick driver
- miscellaneous driver fixes

Note that there will be a conflict in drivers/input/misc/da9063_onkey.c
regarding SPDX header, please keep SPDX annotation that is already in
your tree.

Also, I am still hoping to merge applespi keyboard and trackpad driver
in the 2nd pass for this merge window.

Changelog:
---------

Alexander Tsoy (1):
      Input: joydev - extend absolute mouse detection

Anson Huang (2):
      Input: imx_keypad - use devm_platform_ioremap_resource() to simplify code
      Input: imx6ul_tsc - use devm_platform_ioremap_resource() to simplify code

Axel Lin (1):
      Input: iqs5xx - remove redundant dev_set_drvdata call

Bartosz Golaszewski (1):
      Input: max77650-onkey - add MODULE_ALIAS()

Benjamin Tissoires (8):
      Input: elantech - query the min/max information beforehand too
      Input: elantech - add helper function elantech_is_buttonpad()
      Input: elantech - detect middle button based on firmware version
      dt-bindings: add more optional properties for elan_i2c touchpads
      Input: elan_i2c - do not query the info if they are provided
      Input: elantech/SMBus - export all capabilities from the PS/2 node
      Input: elan_i2c - handle physical middle button
      Input: elantech - remove P52 and P72 from SMBus blacklist

Cole Rogers (1):
      Input: synaptics - enable SMBUS on T480 thinkpad trackpad

Daniel Mack (1):
      Input: eeti_ts -  read hardware state once after wakeup

Dmitry Torokhov (21):
      Input: iforce - remove "being used" silliness
      Input: iforce - introduce transport ops
      Input: iforce - move get_id to the transport operations
      Input: iforce - move command completion handling to serio code
      Input: iforce - introduce start and stop io transport ops
      Input: iforce - add bus type and parent arguments to iforce_init_device()
      Input: iforce - move transport data into transport modules
      Input: iforce - split into core and transport modules
      Input: iforce - use DMA-safe buffer when getting IDs from USB
      Input: iforce - update formatting of switch statements
      Input: iforce - factor out hat handling when parsing packets
      Input: iforce - do not combine arguments for iforce_process_packet()
      Input: iforce - signal command completion from transport code
      Input: iforce - only call iforce_process_packet() if initialized
      Input: iforce - allow callers supply data buffer when fetching device IDs
      Input: iforce - use DMA-safe buffores for USB transfers
      Input: iforce - drop bus type from iforce structure
      Input: iforce - drop couple of temps from transport code
      Input: iforce - use unaligned accessors, where appropriate
      Input: edt-ft5x06 - use get_unaligned_be16()
      Input: edt-ft5x06 - simplify event reporting code

Enrico Weigelt, metux IT consult (1):
      Input: gpio_keys_polled - allow specifying name of input device

Gustavo A. R. Silva (2):
      Input: gpio_keys_polled - use struct_size() in devm_kzalloc()
      Input: gpio_keys - use struct_size() in devm_kzalloc()

Ian Ray (1):
      Input: atmel_mxt_ts - fix leak in mxt_update_cfg()

Jeffrey Hugo (2):
      Input: elan_i2c - export the device id whitelist
      HID: quirks: Refactor ELAN 400 and 401 handling

Nathan Huckleberry (1):
      Input: atmel_mxt_ts - fix -Wunused-const-variable

Tim Schumacher (1):
      Input: iforce - add the Saitek R440 Force Wheel

Wolfram Sang (2):
      Input: da9063_onkey - remove platform_data support
      Input: da9063_onkey - convert header to SPDX

YueHaibing (2):
      Input: synaptics-rmi4 - remove set but not used variable 'sensor_flags'
      Input: tca8418 - remove set but not used variable 'max_keys'

Diffstat:
--------

 .../devicetree/bindings/input/elan_i2c.txt         |  11 +
 drivers/hid/hid-quirks.c                           |  22 +-
 drivers/input/joydev.c                             |  24 +-
 drivers/input/joystick/iforce/Kconfig              |   8 +-
 drivers/input/joystick/iforce/Makefile             |   7 +-
 drivers/input/joystick/iforce/iforce-ff.c          |  18 +-
 drivers/input/joystick/iforce/iforce-main.c        | 178 ++++--------
 drivers/input/joystick/iforce/iforce-packets.c     | 215 +++++---------
 drivers/input/joystick/iforce/iforce-serio.c       | 161 ++++++++---
 drivers/input/joystick/iforce/iforce-usb.c         | 192 ++++++++----
 drivers/input/joystick/iforce/iforce.h             |  55 ++--
 drivers/input/keyboard/gpio_keys.c                 |   6 +-
 drivers/input/keyboard/gpio_keys_polled.c          |  10 +-
 drivers/input/keyboard/imx_keypad.c                |   4 +-
 drivers/input/keyboard/tca8418_keypad.c            |   3 +-
 drivers/input/misc/da9063_onkey.c                  |  11 +-
 drivers/input/misc/max77650-onkey.c                |   1 +
 drivers/input/mouse/elan_i2c_core.c                | 122 ++++----
 drivers/input/mouse/elantech.c                     | 322 +++++++++++----------
 drivers/input/mouse/elantech.h                     |   8 +
 drivers/input/mouse/synaptics.c                    |   1 +
 drivers/input/rmi4/rmi_f12.c                       |   6 +-
 drivers/input/touchscreen/atmel_mxt_ts.c           |  23 +-
 drivers/input/touchscreen/edt-ft5x06.c             |  18 +-
 drivers/input/touchscreen/eeti_ts.c                |  71 ++++-
 drivers/input/touchscreen/imx6ul_tsc.c             |   8 +-
 drivers/input/touchscreen/iqs5xx.c                 |   2 -
 include/linux/input/elan-i2c-ids.h                 |  76 +++++
 28 files changed, 872 insertions(+), 711 deletions(-)
 create mode 100644 include/linux/input/elan-i2c-ids.h

Thanks.


-- 
Dmitry

^ permalink raw reply

* [PATCH 02/12] Documentation/arm: repointer docs to Documentation/arch/arm
From: Alex Shi @ 2019-07-12  2:20 UTC (permalink / raw)
  To: linux-doc, Jonathan Corbet
  Cc: Alex Shi, linux-kernel, linux-stm32, linux-arm-kernel,
	linuxppc-dev, linux-riscv, linux-omap, linux-fbdev,
	linux-samsung-soc, linux-ia64, linux-mips, linux-parisc,
	linux-scsi, linux-s390, kvm, linux-sh, Kukjin Kim,
	Krzysztof Kozlowski, linux-crypto, linux-input, linux-serial
In-Reply-To: <20190712022018.27989-1-alex.shi@linux.alibaba.com>

Since we move 'arm/arm64' docs to Documentation/arch/{arm,arm64} dir,
redirect the doc pointer to them.

Signed-off-by: Alex Shi <alex.shi@linux.alibaba.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kukjin Kim <kgene@kernel.org>
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Cc: linux-doc@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-samsung-soc@vger.kernel.org
Cc: linux-crypto@vger.kernel.org
Cc: linux-input@vger.kernel.org
Cc: linux-serial@vger.kernel.org
---
 Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt    |  2 +-
 .../arch/arm/Samsung-S3C24XX/Overview.txt          |  6 +++---
 Documentation/arch/arm/Samsung/GPIO.txt            |  2 +-
 Documentation/arch/arm/Samsung/Overview.txt        |  4 ++--
 Documentation/devicetree/bindings/arm/xen.txt      |  2 +-
 Documentation/devicetree/booting-without-of.txt    |  4 ++--
 Documentation/translations/zh_CN/arm/Booting       |  4 ++--
 .../translations/zh_CN/arm/kernel_user_helpers.txt |  4 ++--
 MAINTAINERS                                        |  6 +++---
 arch/arm/Kconfig                                   |  2 +-
 arch/arm/common/mcpm_entry.c                       |  2 +-
 arch/arm/common/mcpm_head.S                        |  2 +-
 arch/arm/common/vlock.S                            |  2 +-
 arch/arm/include/asm/setup.h                       |  2 +-
 arch/arm/include/uapi/asm/setup.h                  |  2 +-
 arch/arm/kernel/entry-armv.S                       |  2 +-
 arch/arm/mach-exynos/common.h                      |  2 +-
 arch/arm/mach-ixp4xx/Kconfig                       | 14 +++++++-------
 arch/arm/mach-s3c24xx/pm.c                         |  2 +-
 arch/arm/mach-sti/Kconfig                          |  2 +-
 arch/arm/mm/Kconfig                                |  4 ++--
 arch/arm/plat-samsung/Kconfig                      |  6 +++---
 arch/arm/tools/mach-types                          |  2 +-
 arch/arm64/Kconfig                                 |  2 +-
 arch/arm64/kernel/kuser32.S                        |  2 +-
 arch/mips/bmips/setup.c                            |  2 +-
 drivers/crypto/sunxi-ss/sun4i-ss-cipher.c          |  2 +-
 drivers/crypto/sunxi-ss/sun4i-ss-core.c            |  2 +-
 drivers/crypto/sunxi-ss/sun4i-ss-hash.c            |  2 +-
 drivers/crypto/sunxi-ss/sun4i-ss.h                 |  2 +-
 drivers/input/touchscreen/sun4i-ts.c               |  2 +-
 drivers/tty/serial/Kconfig                         |  2 +-
 32 files changed, 49 insertions(+), 49 deletions(-)

diff --git a/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt b/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
index e8f918b96123..542a95cd82e7 100644
--- a/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
+++ b/Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt
@@ -12,7 +12,7 @@ Introduction
   of the s3c2410 GPIO system, please read the Samsung provided
   data-sheet/users manual to find out the complete list.
 
-  See Documentation/arm/Samsung/GPIO.txt for the core implementation.
+  See Documentation/arch/arm/Samsung/GPIO.txt for the core implementation.
 
 
 GPIOLIB
diff --git a/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt b/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
index 00d3c3141e21..8d84a1c6216d 100644
--- a/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
+++ b/Documentation/arch/arm/Samsung-S3C24XX/Overview.txt
@@ -182,7 +182,7 @@ NAND
   controller. If there are any problems the latest linux-mtd
   code can be found from http://www.linux-mtd.infradead.org/
 
-  For more information see Documentation/arm/Samsung-S3C24XX/NAND.txt
+  For more information see Documentation/arch/arm/Samsung-S3C24XX/NAND.txt
 
 
 SD/MMC
@@ -221,8 +221,8 @@ GPIO
   As of v2.6.34, the move towards using gpiolib support is almost
   complete, and very little of the old calls are left.
 
-  See Documentation/arm/Samsung-S3C24XX/GPIO.txt for the S3C24XX specific
-  support and Documentation/arm/Samsung/GPIO.txt for the core Samsung
+  See Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt for the S3C24XX specific
+  support and Documentation/arch/arm/Samsung/GPIO.txt for the core Samsung
   implementation.
 
 
diff --git a/Documentation/arch/arm/Samsung/GPIO.txt b/Documentation/arch/arm/Samsung/GPIO.txt
index 795adfd88081..e693603f38af 100644
--- a/Documentation/arch/arm/Samsung/GPIO.txt
+++ b/Documentation/arch/arm/Samsung/GPIO.txt
@@ -11,7 +11,7 @@ specific calls provided alongside the drivers/gpio core.
 S3C24XX (Legacy)
 ----------------
 
-See Documentation/arm/Samsung-S3C24XX/GPIO.txt for more information
+See Documentation/arch/arm/Samsung-S3C24XX/GPIO.txt for more information
 about these devices. Their implementation has been brought into line
 with the core samsung implementation described in this document.
 
diff --git a/Documentation/arch/arm/Samsung/Overview.txt b/Documentation/arch/arm/Samsung/Overview.txt
index 8f7309bad460..93091054a215 100644
--- a/Documentation/arch/arm/Samsung/Overview.txt
+++ b/Documentation/arch/arm/Samsung/Overview.txt
@@ -11,7 +11,7 @@ Introduction
 
   The currently supported SoCs are:
 
-  - S3C24XX: See Documentation/arm/Samsung-S3C24XX/Overview.txt for full list
+  - S3C24XX: See Documentation/arch/arm/Samsung-S3C24XX/Overview.txt for full list
   - S3C64XX: S3C6400 and S3C6410
   - S5PC110 / S5PV210
 
@@ -22,7 +22,7 @@ S3C24XX Systems
   There is still documentation in Documnetation/arm/Samsung-S3C24XX/ which
   deals with the architecture and drivers specific to these devices.
 
-  See Documentation/arm/Samsung-S3C24XX/Overview.txt for more information
+  See Documentation/arch/arm/Samsung-S3C24XX/Overview.txt for more information
   on the implementation details and specific support.
 
 
diff --git a/Documentation/devicetree/bindings/arm/xen.txt b/Documentation/devicetree/bindings/arm/xen.txt
index c9b9321434ea..2533cd4f5d79 100644
--- a/Documentation/devicetree/bindings/arm/xen.txt
+++ b/Documentation/devicetree/bindings/arm/xen.txt
@@ -54,7 +54,7 @@ hypervisor {
 };
 
 The format and meaning of the "xen,uefi-*" parameters are similar to those in
-Documentation/arm/uefi.txt, which are provided by the regular UEFI stub. However
+Documentation/arch/arm/uefi.txt, which are provided by the regular UEFI stub. However
 they differ because they are provided by the Xen hypervisor, together with a set
 of UEFI runtime services implemented via hypercalls, see
 http://xenbits.xen.org/docs/unstable/hypercall/x86_64/include,public,platform.h.html.
diff --git a/Documentation/devicetree/booting-without-of.txt b/Documentation/devicetree/booting-without-of.txt
index 60f8640f2b2f..58d606fca7eb 100644
--- a/Documentation/devicetree/booting-without-of.txt
+++ b/Documentation/devicetree/booting-without-of.txt
@@ -160,7 +160,7 @@ it with special cases.
    of the kernel image. That entry point supports two calling
    conventions.  A summary of the interface is described here.  A full
    description of the boot requirements is documented in
-   Documentation/arm/Booting
+   Documentation/arch/arm/Booting
 
         a) ATAGS interface.  Minimal information is passed from firmware
         to the kernel with a tagged list of predefined parameters.
@@ -174,7 +174,7 @@ it with special cases.
         b) Entry with a flattened device-tree block.  Firmware loads the
         physical address of the flattened device tree block (dtb) into r2,
         r1 is not used, but it is considered good practice to use a valid
-        machine number as described in Documentation/arm/Booting.
+	machine number as described in Documentation/arch/arm/Booting.
 
                 r0 : 0
 
diff --git a/Documentation/translations/zh_CN/arm/Booting b/Documentation/translations/zh_CN/arm/Booting
index 1fe866f8218f..8bcad25099b3 100644
--- a/Documentation/translations/zh_CN/arm/Booting
+++ b/Documentation/translations/zh_CN/arm/Booting
@@ -1,4 +1,4 @@
-Chinese translated version of Documentation/arm/Booting
+Chinese translated version of Documentation/arch/arm/Booting
 
 If you have any comment or update to the content, please contact the
 original document maintainer directly.  However, if you have a problem
@@ -9,7 +9,7 @@ or if there is a problem with the translation.
 Maintainer: Russell King <linux@arm.linux.org.uk>
 Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
 ---------------------------------------------------------------------
-Documentation/arm/Booting 的中文翻译
+Documentation/arch/arm/Booting 的中文翻译
 
 如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
 交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
diff --git a/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt b/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
index cd7fc8f34cf9..ed7083e7e43d 100644
--- a/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
+++ b/Documentation/translations/zh_CN/arm/kernel_user_helpers.txt
@@ -1,4 +1,4 @@
-Chinese translated version of Documentation/arm/kernel_user_helpers.txt
+Chinese translated version of Documentation/arch/arm/kernel_user_helpers.txt
 
 If you have any comment or update to the content, please contact the
 original document maintainer directly.  However, if you have a problem
@@ -10,7 +10,7 @@ Maintainer: Nicolas Pitre <nicolas.pitre@linaro.org>
 		Dave Martin <dave.martin@linaro.org>
 Chinese maintainer: Fu Wei <tekkamanninja@gmail.com>
 ---------------------------------------------------------------------
-Documentation/arm/kernel_user_helpers.txt 的中文翻译
+Documentation/arch/arm/kernel_user_helpers.txt 的中文翻译
 
 如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
 交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
diff --git a/MAINTAINERS b/MAINTAINERS
index 43ca94856944..c21d5464c86f 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2192,7 +2192,7 @@ F:	drivers/*/*s3c64xx*
 F:	drivers/*/*s5pv210*
 F:	drivers/memory/samsung/*
 F:	drivers/soc/samsung/*
-F:	Documentation/arm/Samsung/
+F:	Documentation/arch/arm/Samsung/
 F:	Documentation/devicetree/bindings/arm/samsung/
 F:	Documentation/devicetree/bindings/sram/samsung-sram.txt
 F:	Documentation/devicetree/bindings/power/pd-samsung.txt
@@ -2569,7 +2569,7 @@ T:	git git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git
 S:	Maintained
 F:	arch/arm64/
 X:	arch/arm64/boot/dts/
-F:	Documentation/arm64/
+F:	Documentation/arch/arm64/
 
 AS3645A LED FLASH CONTROLLER DRIVER
 M:	Sakari Ailus <sakari.ailus@iki.fi>
@@ -11470,7 +11470,7 @@ L:	linux-omap@vger.kernel.org
 L:	linux-fbdev@vger.kernel.org
 S:	Orphan
 F:	drivers/video/fbdev/omap2/
-F:	Documentation/arm/OMAP/DSS
+F:	Documentation/arch/arm/OMAP/DSS
 
 OMAP FRAMEBUFFER SUPPORT
 L:	linux-fbdev@vger.kernel.org
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index ad00e17d6988..1b276dda837d 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -2146,7 +2146,7 @@ config VFP
 	  Say Y to include VFP support code in the kernel. This is needed
 	  if your hardware includes a VFP unit.
 
-	  Please see <file:Documentation/arm/VFP/release-notes.txt> for
+	  Please see <file:Documentation/arch/arm/VFP/release-notes.txt> for
 	  release notes and additional status information.
 
 	  Say N if your target does not have VFP hardware.
diff --git a/arch/arm/common/mcpm_entry.c b/arch/arm/common/mcpm_entry.c
index e24ad60891b2..0ed7d19e0fbe 100644
--- a/arch/arm/common/mcpm_entry.c
+++ b/arch/arm/common/mcpm_entry.c
@@ -21,7 +21,7 @@
 /*
  * The public API for this code is documented in arch/arm/include/asm/mcpm.h.
  * For a comprehensive description of the main algorithm used here, please
- * see Documentation/arm/cluster-pm-race-avoidance.txt.
+ * see Documentation/arch/arm/cluster-pm-race-avoidance.txt.
  */
 
 struct sync_struct mcpm_sync;
diff --git a/arch/arm/common/mcpm_head.S b/arch/arm/common/mcpm_head.S
index d5bd75dd576d..c7071314ad76 100644
--- a/arch/arm/common/mcpm_head.S
+++ b/arch/arm/common/mcpm_head.S
@@ -5,7 +5,7 @@
  * Created by:  Nicolas Pitre, March 2012
  * Copyright:   (C) 2012-2013  Linaro Limited
  *
- * Refer to Documentation/arm/cluster-pm-race-avoidance.txt
+ * Refer to Documentation/arch/arm/cluster-pm-race-avoidance.txt
  * for details of the synchronisation algorithms used here.
  */
 
diff --git a/arch/arm/common/vlock.S b/arch/arm/common/vlock.S
index 9675cc15d0c4..cfb6db2053f7 100644
--- a/arch/arm/common/vlock.S
+++ b/arch/arm/common/vlock.S
@@ -6,7 +6,7 @@
  * Copyright:	(C) 2012-2013  Linaro Limited
  *
  * This algorithm is described in more detail in
- * Documentation/arm/vlocks.txt.
+ * Documentation/arch/arm/vlocks.txt.
  */
 
 #include <linux/linkage.h>
diff --git a/arch/arm/include/asm/setup.h b/arch/arm/include/asm/setup.h
index 77e5582c2259..483f9f29170a 100644
--- a/arch/arm/include/asm/setup.h
+++ b/arch/arm/include/asm/setup.h
@@ -5,7 +5,7 @@
  *  Copyright (C) 1997-1999 Russell King
  *
  *  Structure passed to kernel to tell it about the
- *  hardware it's running on.  See Documentation/arm/Setup
+ *  hardware it's running on.  See Documentation/arch/arm/Setup
  *  for more info.
  */
 #ifndef __ASMARM_SETUP_H
diff --git a/arch/arm/include/uapi/asm/setup.h b/arch/arm/include/uapi/asm/setup.h
index 6b335a9ff8c8..3691ac2a00b9 100644
--- a/arch/arm/include/uapi/asm/setup.h
+++ b/arch/arm/include/uapi/asm/setup.h
@@ -9,7 +9,7 @@
  * published by the Free Software Foundation.
  *
  *  Structure passed to kernel to tell it about the
- *  hardware it's running on.  See Documentation/arm/Setup
+ *  hardware it's running on.  See Documentation/arch/arm/Setup
  *  for more info.
  */
 #ifndef _UAPI__ASMARM_SETUP_H
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S
index 0b8cfdd60b90..929f6332438e 100644
--- a/arch/arm/kernel/entry-armv.S
+++ b/arch/arm/kernel/entry-armv.S
@@ -826,7 +826,7 @@ ENDPROC(__switch_to)
  * existing ones.  This mechanism should be used only for things that are
  * really small and justified, and not be abused freely.
  *
- * See Documentation/arm/kernel_user_helpers.txt for formal definitions.
+ * See Documentation/arch/arm/kernel_user_helpers.txt for formal definitions.
  */
  THUMB(	.arm	)
 
diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h
index c93356a8d662..cd0878c5614f 100644
--- a/arch/arm/mach-exynos/common.h
+++ b/arch/arm/mach-exynos/common.h
@@ -106,7 +106,7 @@ void exynos_firmware_init(void);
 #define C2_STATE	(1 << 3)
 /*
  * Magic values for bootloader indicating chosen low power mode.
- * See also Documentation/arm/Samsung/Bootloader-interface.txt
+ * See also Documentation/arch/arm/Samsung/Bootloader-interface.txt
  */
 #define EXYNOS_SLEEP_MAGIC	0x00000bad
 #define EXYNOS_AFTR_MAGIC	0xfcba0d10
diff --git a/arch/arm/mach-ixp4xx/Kconfig b/arch/arm/mach-ixp4xx/Kconfig
index fc5378b00f3d..dd9c8009dffd 100644
--- a/arch/arm/mach-ixp4xx/Kconfig
+++ b/arch/arm/mach-ixp4xx/Kconfig
@@ -33,7 +33,7 @@ config MACH_AVILA
 	help
 	  Say 'Y' here if you want your kernel to support the Gateworks
 	  Avila Network Platform. For more information on this platform,
-	  see <file:Documentation/arm/IXP4xx>.
+	  see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_LOFT
     bool "Loft"
@@ -49,7 +49,7 @@ config ARCH_ADI_COYOTE
 	help
 	  Say 'Y' here if you want your kernel to support the ADI 
 	  Engineering Coyote Gateway Reference Platform. For more
-	  information on this platform, see <file:Documentation/arm/IXP4xx>.
+	  information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_GATEWAY7001
 	bool "Gateway 7001"
@@ -72,21 +72,21 @@ config ARCH_IXDP425
 	help
 	  Say 'Y' here if you want your kernel to support Intel's 
 	  IXDP425 Development Platform (Also known as Richfield).  
-	  For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+	  For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_IXDPG425
 	bool "IXDPG425"
 	help
 	  Say 'Y' here if you want your kernel to support Intel's
 	  IXDPG425 Development Platform (Also known as Montajade).
-	  For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+	  For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_IXDP465
 	bool "IXDP465"
 	help
 	  Say 'Y' here if you want your kernel to support Intel's
 	  IXDP465 Development Platform (Also known as BMP).
-	  For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+	  For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_GORAMO_MLR
 	bool "GORAMO Multi Link Router"
@@ -99,7 +99,7 @@ config MACH_KIXRP435
 	help
 	  Say 'Y' here if you want your kernel to support Intel's
 	  KIXRP435 Reference Platform.
-	  For more information on this platform, see <file:Documentation/arm/IXP4xx>.
+	  For more information on this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 #
 # IXCDP1100 is the exact same HW as IXDP425, but with a different machine 
@@ -116,7 +116,7 @@ config ARCH_PRPMC1100
 	help
 	  Say 'Y' here if you want your kernel to support the Motorola
 	  PrPCM1100 Processor Mezanine Module. For more information on
-	  this platform, see <file:Documentation/arm/IXP4xx>.
+	  this platform, see <file:Documentation/arch/arm/IXP4xx>.
 
 config MACH_NAS100D
 	bool
diff --git a/arch/arm/mach-s3c24xx/pm.c b/arch/arm/mach-s3c24xx/pm.c
index adcb90645460..ff605c777976 100644
--- a/arch/arm/mach-s3c24xx/pm.c
+++ b/arch/arm/mach-s3c24xx/pm.c
@@ -5,7 +5,7 @@
 //
 // S3C24XX Power Manager (Suspend-To-RAM) support
 //
-// See Documentation/arm/Samsung-S3C24XX/Suspend.txt for more information
+// See Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt for more information
 //
 // Parts based on arch/arm/mach-pxa/pm.c
 //
diff --git a/arch/arm/mach-sti/Kconfig b/arch/arm/mach-sti/Kconfig
index b2d45cf10a3c..b3842c971d31 100644
--- a/arch/arm/mach-sti/Kconfig
+++ b/arch/arm/mach-sti/Kconfig
@@ -21,7 +21,7 @@ menuconfig ARCH_STI
 	help
 	  Include support for STMicroelectronics' STiH415/416, STiH407/10 and
 	  STiH418 family SoCs using the Device Tree for discovery.  More
-	  information can be found in Documentation/arm/sti/ and
+	  information can be found in Documentation/arch/arm/sti/ and
 	  Documentation/devicetree.
 
 if ARCH_STI
diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig
index cc798115aa9b..3ef82f228947 100644
--- a/arch/arm/mm/Kconfig
+++ b/arch/arm/mm/Kconfig
@@ -709,7 +709,7 @@ config ARM_VIRT_EXT
 	  assistance.
 
 	  A compliant bootloader is required in order to make maximum
-	  use of this feature.  Refer to Documentation/arm/Booting for
+	  use of this feature.  Refer to Documentation/arch/arm/Booting for
 	  details.
 
 config SWP_EMULATE
@@ -875,7 +875,7 @@ config KUSER_HELPERS
 	  the CPU type fitted to the system.  This permits binaries to be
 	  run on ARMv4 through to ARMv7 without modification.
 
-	  See Documentation/arm/kernel_user_helpers.txt for details.
+	  See Documentation/arch/arm/kernel_user_helpers.txt for details.
 
 	  However, the fixed address nature of these helpers can be used
 	  by ROP (return orientated programming) authors when creating
diff --git a/arch/arm/plat-samsung/Kconfig b/arch/arm/plat-samsung/Kconfig
index 53da57fba39c..17b18f2e4b80 100644
--- a/arch/arm/plat-samsung/Kconfig
+++ b/arch/arm/plat-samsung/Kconfig
@@ -243,7 +243,7 @@ config SAMSUNG_PM_DEBUG
 	depends on DEBUG_EXYNOS_UART || DEBUG_S3C24XX_UART || DEBUG_S3C2410_UART
 	help
 	  Say Y here if you want verbose debugging from the PM Suspend and
-	  Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+	  Resume code. See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
 	  for more information.
 
 config S3C_PM_DEBUG_LED_SMDK
@@ -268,7 +268,7 @@ config SAMSUNG_PM_CHECK
 	  Note, this can take several seconds depending on memory size
 	  and CPU speed.
 
-	  See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+	  See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
 
 config SAMSUNG_PM_CHECK_CHUNKSIZE
 	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
@@ -280,7 +280,7 @@ config SAMSUNG_PM_CHECK_CHUNKSIZE
 	  the CRC data block will take more memory, but will identify any
 	  faults with better precision.
 
-	  See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
+	  See <file:Documentation/arch/arm/Samsung-S3C24XX/Suspend.txt>
 
 config SAMSUNG_WAKEMASK
 	bool
diff --git a/arch/arm/tools/mach-types b/arch/arm/tools/mach-types
index 4eac94c1eb6f..84f19e0b134b 100644
--- a/arch/arm/tools/mach-types
+++ b/arch/arm/tools/mach-types
@@ -7,7 +7,7 @@
 #   http://www.arm.linux.org.uk/developer/machines/download.php
 #
 # Please do not send patches to this file; it is automatically generated!
-# To add an entry into this database, please see Documentation/arm/README,
+# To add an entry into this database, please see Documentation/arch/arm/README,
 # or visit:
 #
 #   http://www.arm.linux.org.uk/developer/machines/?action=new
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
index c085aec9459b..68d3a3af112f 100644
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1144,7 +1144,7 @@ config KUSER_HELPERS
 	  the system. This permits binaries to be run on ARMv4 through
 	  to ARMv8 without modification.
 
-	  See Documentation/arm/kernel_user_helpers.txt for details.
+	  See Documentation/arch/arm/kernel_user_helpers.txt for details.
 
 	  However, the fixed address nature of these helpers can be used
 	  by ROP (return orientated programming) authors when creating
diff --git a/arch/arm64/kernel/kuser32.S b/arch/arm64/kernel/kuser32.S
index 49825e9e421e..e828a1577166 100644
--- a/arch/arm64/kernel/kuser32.S
+++ b/arch/arm64/kernel/kuser32.S
@@ -10,7 +10,7 @@
  * aarch32_setup_additional_pages() and are provided for compatibility
  * reasons with 32 bit (aarch32) applications that need them.
  *
- * See Documentation/arm/kernel_user_helpers.txt for formal definitions.
+ * See Documentation/arch/arm/kernel_user_helpers.txt for formal definitions.
  */
 
 #include <asm/unistd.h>
diff --git a/arch/mips/bmips/setup.c b/arch/mips/bmips/setup.c
index 1738a06396f9..cf6a5d50cf36 100644
--- a/arch/mips/bmips/setup.c
+++ b/arch/mips/bmips/setup.c
@@ -162,7 +162,7 @@ void __init plat_mem_setup(void)
 	ioport_resource.start = 0;
 	ioport_resource.end = ~0;
 
-	/* intended to somewhat resemble ARM; see Documentation/arm/Booting */
+	/* intended to somewhat resemble ARM; see Documentation/arch/arm/Booting */
 	if (fw_arg0 == 0 && fw_arg1 == 0xffffffff)
 		dtb = phys_to_virt(fw_arg2);
 	else if (fw_passed_dtb) /* UHI interface or appended dtb */
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
index 4ab14d58e85b..333c2c83d52b 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-cipher.c
@@ -8,7 +8,7 @@
  * keysize in CBC and ECB mode.
  * Add support also for DES and 3DES in CBC and ECB mode.
  *
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
  */
 #include "sun4i-ss.h"
 
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-core.c b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
index cdcda7f059c8..f0af1847b632 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-core.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-core.c
@@ -6,7 +6,7 @@
  *
  * Core file which registers crypto algorithms supported by the SS.
  *
- * You could find a link for the datasheet in Documentation/arm/sunxi/README
+ * You could find a link for the datasheet in Documentation/arch/arm/sunxi/README
  */
 #include <linux/clk.h>
 #include <linux/crypto.h>
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss-hash.c b/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
index d2b6d89aad28..93c243aaf66e 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
+++ b/drivers/crypto/sunxi-ss/sun4i-ss-hash.c
@@ -6,7 +6,7 @@
  *
  * This file add support for MD5 and SHA1.
  *
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
  */
 #include "sun4i-ss.h"
 #include <linux/scatterlist.h>
diff --git a/drivers/crypto/sunxi-ss/sun4i-ss.h b/drivers/crypto/sunxi-ss/sun4i-ss.h
index 68b82d1a6303..0fc0f9580d0c 100644
--- a/drivers/crypto/sunxi-ss/sun4i-ss.h
+++ b/drivers/crypto/sunxi-ss/sun4i-ss.h
@@ -8,7 +8,7 @@
  * Support MD5 and SHA1 hash algorithms.
  * Support DES and 3DES
  *
- * You could find the datasheet in Documentation/arm/sunxi/README
+ * You could find the datasheet in Documentation/arch/arm/sunxi/README
  */
 
 #include <linux/clk.h>
diff --git a/drivers/input/touchscreen/sun4i-ts.c b/drivers/input/touchscreen/sun4i-ts.c
index 92f6e1ae23a2..3a01766a259b 100644
--- a/drivers/input/touchscreen/sun4i-ts.c
+++ b/drivers/input/touchscreen/sun4i-ts.c
@@ -22,7 +22,7 @@
  * in the kernel). So this driver offers straight forward, reliable single
  * touch functionality only.
  *
- * s.a. A20 User Manual "1.15 TP" (Documentation/arm/sunxi/README)
+ * s.a. A20 User Manual "1.15 TP" (Documentation/arch/arm/sunxi/README)
  * (looks like the description in the A20 User Manual v1.3 is better
  * than the one in the A10 User Manual v.1.5)
  */
diff --git a/drivers/tty/serial/Kconfig b/drivers/tty/serial/Kconfig
index 0d31251e04cc..d6376d38079f 100644
--- a/drivers/tty/serial/Kconfig
+++ b/drivers/tty/serial/Kconfig
@@ -514,7 +514,7 @@ config SERIAL_SA1100
 	help
 	  If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
 	  can enable its onboard serial port by enabling this option.
-	  Please read <file:Documentation/arm/SA1100/serial_UART> for further
+	  Please read <file:Documentation/arch/arm/SA1100/serial_UART> for further
 	  info.
 
 config SERIAL_SA1100_CONSOLE
-- 
2.19.1.856.g8858448bb

^ permalink raw reply related

* [PATCH v2 3/3] input: touchscreen mc13xxx: Add mc34708 support
From: Lukasz Majewski @ 2019-07-11 22:23 UTC (permalink / raw)
  To: Lee Jones
  Cc: linux-kernel, Dmitry Torokhov, Sascha Hauer, Enrico Weigelt,
	Thomas Gleixner, Kate Stewart, linux-input, Lukasz Majewski
In-Reply-To: <20190711222346.5245-1-lukma@denx.de>

From: Sascha Hauer <s.hauer@pengutronix.de>

The mc34708 has a different bit to enable pen detection. This
adds the driver data and devtype necessary to probe the device
and to distinguish between the mc13783 and the mc34708.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Lukasz Majewski <lukma@denx.de>

---
Changes for v2:
- Change nested if statements to a single one (with cr0 > ...)
- Replace hardcoded max resistance value (4080) with a generic driver data
  value.
- Introduce new include/linux/mfd/mc34708.h header file for mc34708 specific
  defines
- Define as driver data mask and value for accessing mc13xxx registers

Changes from the original patch:
- Simplify the mcXXXXX_set_pen_detection functions
- Fix checkpatch warnings
---
 drivers/input/touchscreen/mc13783_ts.c | 59 +++++++++++++++++++++++++++++++---
 1 file changed, 55 insertions(+), 4 deletions(-)

diff --git a/drivers/input/touchscreen/mc13783_ts.c b/drivers/input/touchscreen/mc13783_ts.c
index edd49e44e0c9..8fd3d0e47f57 100644
--- a/drivers/input/touchscreen/mc13783_ts.c
+++ b/drivers/input/touchscreen/mc13783_ts.c
@@ -10,6 +10,7 @@
  */
 #include <linux/platform_device.h>
 #include <linux/mfd/mc13783.h>
+#include <linux/mfd/mc34708.h>
 #include <linux/kernel.h>
 #include <linux/module.h>
 #include <linux/input.h>
@@ -30,6 +31,8 @@ MODULE_PARM_DESC(sample_tolerance,
 		"is supposed to be wrong and is discarded.  Set to 0 to "
 		"disable this check.");
 
+struct mc13xxx_driver_data;
+
 struct mc13783_ts_priv {
 	struct input_dev *idev;
 	struct mc13xxx *mc13xxx;
@@ -37,6 +40,33 @@ struct mc13783_ts_priv {
 	unsigned int sample[4];
 	u8 ato;
 	bool atox;
+	struct mc13xxx_driver_data *drvdata;
+};
+
+enum mc13xxx_type {
+	MC13XXX_TYPE_MC13783,
+	MC13XXX_TYPE_MC34708,
+};
+
+struct mc13xxx_driver_data {
+	enum mc13xxx_type type;
+	int max_resistance;
+	u32 reg_mask;
+	u32 reg_value;
+};
+
+static struct mc13xxx_driver_data mc13783_driver_data = {
+	.type = MC13XXX_TYPE_MC13783,
+	.max_resistance = 4096,
+	.reg_mask = MC13XXX_ADC0_TSMOD_MASK,
+	.reg_value = MC13XXX_ADC0_TSMOD0,
+};
+
+static struct mc13xxx_driver_data mc34708_driver_data = {
+	.type = MC13XXX_TYPE_MC34708,
+	.max_resistance = 4080,
+	.reg_mask = MC34708_ADC0_TSMASK,
+	.reg_value = MC34708_ADC0_TSPENDETEN,
 };
 
 static irqreturn_t mc13783_ts_handler(int irq, void *data)
@@ -93,6 +123,10 @@ static void mc13783_ts_report_sample(struct mc13783_ts_priv *priv)
 
 	cr0 = (cr0 + cr1) / 2;
 
+	if (priv->drvdata->type == MC13XXX_TYPE_MC34708 &&
+	    cr0 > priv->drvdata->max_resistance)
+		cr0 = 0;
+
 	if (!cr0 || !sample_tolerance ||
 			(x2 - x0 < sample_tolerance &&
 			 y2 - y0 < sample_tolerance)) {
@@ -102,14 +136,14 @@ static void mc13783_ts_report_sample(struct mc13783_ts_priv *priv)
 			input_report_abs(idev, ABS_Y, y1);
 
 			dev_dbg(&idev->dev, "report (%d, %d, %d)\n",
-					x1, y1, 0x1000 - cr0);
+				x1, y1, priv->drvdata->max_resistance - cr0);
 			schedule_delayed_work(&priv->work, HZ / 50);
 		} else {
 			dev_dbg(&idev->dev, "report release\n");
 		}
 
 		input_report_abs(idev, ABS_PRESSURE,
-				cr0 ? 0x1000 - cr0 : cr0);
+				 cr0 ? priv->drvdata->max_resistance - cr0 : 0);
 		input_report_key(idev, BTN_TOUCH, cr0);
 		input_sync(idev);
 	} else {
@@ -146,7 +180,8 @@ static int mc13783_ts_open(struct input_dev *dev)
 		goto out;
 
 	ret = mc13xxx_reg_rmw(priv->mc13xxx, MC13XXX_ADC0,
-			MC13XXX_ADC0_TSMOD_MASK, MC13XXX_ADC0_TSMOD0);
+			      priv->drvdata->reg_mask,
+			      priv->drvdata->reg_value);
 	if (ret)
 		mc13xxx_irq_free(priv->mc13xxx, MC13XXX_IRQ_TS, priv);
 out:
@@ -160,7 +195,7 @@ static void mc13783_ts_close(struct input_dev *dev)
 
 	mc13xxx_lock(priv->mc13xxx);
 	mc13xxx_reg_rmw(priv->mc13xxx, MC13XXX_ADC0,
-			MC13XXX_ADC0_TSMOD_MASK, 0);
+			priv->drvdata->reg_mask, 0);
 	mc13xxx_irq_free(priv->mc13xxx, MC13XXX_IRQ_TS, priv);
 	mc13xxx_unlock(priv->mc13xxx);
 
@@ -172,6 +207,7 @@ static int __init mc13783_ts_probe(struct platform_device *pdev)
 	struct mc13783_ts_priv *priv;
 	struct mc13xxx_ts_platform_data *pdata = dev_get_platdata(&pdev->dev);
 	struct input_dev *idev;
+	const struct platform_device_id *id = platform_get_device_id(pdev);
 	int ret = -ENOMEM;
 
 	priv = kzalloc(sizeof(*priv), GFP_KERNEL);
@@ -182,6 +218,7 @@ static int __init mc13783_ts_probe(struct platform_device *pdev)
 	INIT_DELAYED_WORK(&priv->work, mc13783_ts_work);
 	priv->mc13xxx = dev_get_drvdata(pdev->dev.parent);
 	priv->idev = idev;
+	priv->drvdata = (void *)id->driver_data;
 
 	if (pdata) {
 		priv->atox = pdata->atox;
@@ -228,7 +265,21 @@ static int mc13783_ts_remove(struct platform_device *pdev)
 	return 0;
 }
 
+static const struct platform_device_id mc13xxx_ts_idtable[] = {
+	{
+		.name = "mc13783-ts",
+		.driver_data = (kernel_ulong_t)&mc13783_driver_data,
+	}, {
+		.name = "mc34708-ts",
+		.driver_data = (kernel_ulong_t)&mc34708_driver_data,
+	}, {
+		/* sentinel */
+	}
+};
+MODULE_DEVICE_TABLE(platform, mc13xxx_ts_idtable);
+
 static struct platform_driver mc13783_ts_driver = {
+	.id_table	= mc13xxx_ts_idtable,
 	.remove		= mc13783_ts_remove,
 	.driver		= {
 		.name	= MC13783_TS_NAME,
-- 
2.11.0

^ permalink raw reply related


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox