Netdev List
 help / color / mirror / Atom feed
* [PATCH AUTOSEL 5.2 155/171] net/mlx5: E-Switch, Fix default encap mode
From: Sasha Levin @ 2019-07-19  3:56 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Maor Gottlieb, Roi Dayan, Saeed Mahameed, Sasha Levin, netdev,
	linux-rdma
In-Reply-To: <20190719035643.14300-1-sashal@kernel.org>

From: Maor Gottlieb <maorg@mellanox.com>

[ Upstream commit 9a64144d683a4395f57562d90247c61a0bf5105f ]

Encap mode is related to switchdev mode only. Move the init of
the encap mode to eswitch_offloads. Before this change, we reported
that eswitch supports encap, even tough the device was in non
SRIOV mode.

Fixes: 7768d1971de67 ('net/mlx5: E-Switch, Add control for encapsulation')
Signed-off-by: Maor Gottlieb <maorg@mellanox.com>
Reviewed-by: Roi Dayan <roid@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c          | 5 -----
 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c | 7 +++++++
 2 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
index 6a921e24cd5e..e9339e7d6a18 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
@@ -1882,11 +1882,6 @@ int mlx5_eswitch_init(struct mlx5_core_dev *dev)
 	esw->enabled_vports = 0;
 	esw->mode = SRIOV_NONE;
 	esw->offloads.inline_mode = MLX5_INLINE_MODE_NONE;
-	if (MLX5_CAP_ESW_FLOWTABLE_FDB(dev, reformat) &&
-	    MLX5_CAP_ESW_FLOWTABLE_FDB(dev, decap))
-		esw->offloads.encap = DEVLINK_ESWITCH_ENCAP_MODE_BASIC;
-	else
-		esw->offloads.encap = DEVLINK_ESWITCH_ENCAP_MODE_NONE;
 
 	dev->priv.eswitch = esw;
 	return 0;
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
index 47b446d30f71..c2beadc41c40 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c
@@ -1840,6 +1840,12 @@ int esw_offloads_init(struct mlx5_eswitch *esw, int vf_nvports,
 {
 	int err;
 
+	if (MLX5_CAP_ESW_FLOWTABLE_FDB(esw->dev, reformat) &&
+	    MLX5_CAP_ESW_FLOWTABLE_FDB(esw->dev, decap))
+		esw->offloads.encap = DEVLINK_ESWITCH_ENCAP_MODE_BASIC;
+	else
+		esw->offloads.encap = DEVLINK_ESWITCH_ENCAP_MODE_NONE;
+
 	err = esw_offloads_steering_init(esw, vf_nvports, total_nvports);
 	if (err)
 		return err;
@@ -1901,6 +1907,7 @@ void esw_offloads_cleanup(struct mlx5_eswitch *esw)
 	esw_offloads_devcom_cleanup(esw);
 	esw_offloads_unload_all_reps(esw, num_vfs);
 	esw_offloads_steering_cleanup(esw);
+	esw->offloads.encap = DEVLINK_ESWITCH_ENCAP_MODE_NONE;
 }
 
 static int esw_mode_from_devlink(u16 mode, u16 *mlx5_mode)
-- 
2.20.1


^ permalink raw reply related

* [PATCH AUTOSEL 5.1 121/141] net/mlx5e: IPoIB, Add error path in mlx5_rdma_setup_rn
From: Sasha Levin @ 2019-07-19  4:02 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Aya Levin, Feras Daoud, Saeed Mahameed, Sasha Levin, netdev,
	linux-rdma
In-Reply-To: <20190719040246.15945-1-sashal@kernel.org>

From: Aya Levin <ayal@mellanox.com>

[ Upstream commit ef1ce7d7b67b46661091c7ccc0396186b7a247ef ]

Check return value from mlx5e_attach_netdev, add error path on failure.

Fixes: 48935bbb7ae8 ("net/mlx5e: IPoIB, Add netdevice profile skeleton")
Signed-off-by: Aya Levin <ayal@mellanox.com>
Reviewed-by: Feras Daoud <ferasda@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c b/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c
index 4eac42555c7d..5d0783e55f42 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/ipoib/ipoib.c
@@ -698,7 +698,9 @@ static int mlx5_rdma_setup_rn(struct ib_device *ibdev, u8 port_num,
 
 	prof->init(mdev, netdev, prof, ipriv);
 
-	mlx5e_attach_netdev(epriv);
+	err = mlx5e_attach_netdev(epriv);
+	if (err)
+		goto detach;
 	netif_carrier_off(netdev);
 
 	/* set rdma_netdev func pointers */
@@ -714,6 +716,11 @@ static int mlx5_rdma_setup_rn(struct ib_device *ibdev, u8 port_num,
 
 	return 0;
 
+detach:
+	prof->cleanup(epriv);
+	if (ipriv->sub_interface)
+		return err;
+	mlx5e_destroy_mdev_resources(mdev);
 destroy_ht:
 	mlx5i_pkey_qpn_ht_cleanup(netdev);
 	return err;
-- 
2.20.1


^ permalink raw reply related

* Re: [PATCH] net: ethernet: mediatek: Add MT7628/88 SoC support
From: Stefan Roese @ 2019-07-19  4:06 UTC (permalink / raw)
  To: Daniel Golle
  Cc: netdev, René van Dorst, Felix Fietkau, Sean Wang,
	linux-mediatek, John Crispin
In-Reply-To: <20190717121506.GD18996@makrotopia.org>

On 17.07.19 14:15, Daniel Golle wrote:
> On Wed, Jul 17, 2019 at 01:02:43PM +0200, Stefan Roese wrote:
>> This patch adds support for the MediaTek MT7628/88 SoCs to the common
>> MediaTek ethernet driver. Some minor changes are needed for this and
>> a bigger change, as the MT7628 does not support QDMA (only PDMA).
> 
> The Ethernet core found in MT7628/88 is identical to that found in
> Ralink Rt5350F SoC. Wouldn't it hence make sense to indicate that
> in the compatible string of this driver as well? In OpenWrt we are
> using "ralink,rt5350-eth".

Yes sure, I can switch back to the original compatible string.

I'm on vacation for a bit over 2 weeks now and will try to address
all review comments after that.

Thanks,
Stefan
  
> 
>>
>> Signed-off-by: Stefan Roese <sr@denx.de>
>> Cc: René van Dorst <opensource@vdorst.com>
>> Cc: Sean Wang <sean.wang@mediatek.com>
>> Cc: Felix Fietkau <nbd@openwrt.org>
>> Cc: John Crispin <john@phrozen.org>
>> ---
>>   .../devicetree/bindings/net/mediatek-net.txt  |   1 +
>>   drivers/net/ethernet/mediatek/mtk_eth_path.c  |   4 +
>>   drivers/net/ethernet/mediatek/mtk_eth_soc.c   | 490 ++++++++++++++----
>>   drivers/net/ethernet/mediatek/mtk_eth_soc.h   |  39 +-
>>   4 files changed, 424 insertions(+), 110 deletions(-)
>>
>> diff --git a/Documentation/devicetree/bindings/net/mediatek-net.txt b/Documentation/devicetree/bindings/net/mediatek-net.txt
>> index 770ff98d4524..ec6793562148 100644
>> --- a/Documentation/devicetree/bindings/net/mediatek-net.txt
>> +++ b/Documentation/devicetree/bindings/net/mediatek-net.txt
>> @@ -11,6 +11,7 @@ Required properties:
>>   		"mediatek,mt2701-eth": for MT2701 SoC
>>   		"mediatek,mt7623-eth", "mediatek,mt2701-eth": for MT7623 SoC
>>   		"mediatek,mt7622-eth": for MT7622 SoC
>> +		"mediatek,mt7628-eth": for MT7628/88 SoC
>>   		"mediatek,mt7629-eth": for MT7629 SoC
>>   - reg: Address and length of the register set for the device
>>   - interrupts: Should contain the three frame engines interrupts in numeric
>> diff --git a/drivers/net/ethernet/mediatek/mtk_eth_path.c b/drivers/net/ethernet/mediatek/mtk_eth_path.c
>> index 7f05880cf9ef..28960e4c4e43 100644
>> --- a/drivers/net/ethernet/mediatek/mtk_eth_path.c
>> +++ b/drivers/net/ethernet/mediatek/mtk_eth_path.c
>> @@ -315,6 +315,10 @@ int mtk_setup_hw_path(struct mtk_eth *eth, int mac_id, int phymode)
>>   {
>>   	int err;
>>   
>> +	/* No mux'ing for MT7628/88 */
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +		return 0;
>> +
>>   	switch (phymode) {
>>   	case PHY_INTERFACE_MODE_TRGMII:
>>   	case PHY_INTERFACE_MODE_RGMII_TXID:
>> diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
>> index b20b3a5a1ebb..1f248ef6ef88 100644
>> --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
>> +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
>> @@ -323,11 +323,14 @@ static int mtk_phy_connect(struct net_device *dev)
>>   		goto err_phy;
>>   	}
>>   
>> -	/* put the gmac into the right mode */
>> -	regmap_read(eth->ethsys, ETHSYS_SYSCFG0, &val);
>> -	val &= ~SYSCFG0_GE_MODE(SYSCFG0_GE_MASK, mac->id);
>> -	val |= SYSCFG0_GE_MODE(mac->ge_mode, mac->id);
>> -	regmap_write(eth->ethsys, ETHSYS_SYSCFG0, val);
>> +	/* No MT7628/88 support for now */
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		/* put the gmac into the right mode */
>> +		regmap_read(eth->ethsys, ETHSYS_SYSCFG0, &val);
>> +		val &= ~SYSCFG0_GE_MODE(SYSCFG0_GE_MASK, mac->id);
>> +		val |= SYSCFG0_GE_MODE(mac->ge_mode, mac->id);
>> +		regmap_write(eth->ethsys, ETHSYS_SYSCFG0, val);
>> +	}
>>   
>>   	/* couple phydev to net_device */
>>   	if (mtk_phy_connect_node(eth, mac, np))
>> @@ -395,8 +398,8 @@ static inline void mtk_tx_irq_disable(struct mtk_eth *eth, u32 mask)
>>   	u32 val;
>>   
>>   	spin_lock_irqsave(&eth->tx_irq_lock, flags);
>> -	val = mtk_r32(eth, MTK_QDMA_INT_MASK);
>> -	mtk_w32(eth, val & ~mask, MTK_QDMA_INT_MASK);
>> +	val = mtk_r32(eth, eth->tx_int_mask_reg);
>> +	mtk_w32(eth, val & ~mask, eth->tx_int_mask_reg);
>>   	spin_unlock_irqrestore(&eth->tx_irq_lock, flags);
>>   }
>>   
>> @@ -406,8 +409,8 @@ static inline void mtk_tx_irq_enable(struct mtk_eth *eth, u32 mask)
>>   	u32 val;
>>   
>>   	spin_lock_irqsave(&eth->tx_irq_lock, flags);
>> -	val = mtk_r32(eth, MTK_QDMA_INT_MASK);
>> -	mtk_w32(eth, val | mask, MTK_QDMA_INT_MASK);
>> +	val = mtk_r32(eth, eth->tx_int_mask_reg);
>> +	mtk_w32(eth, val | mask, eth->tx_int_mask_reg);
>>   	spin_unlock_irqrestore(&eth->tx_irq_lock, flags);
>>   }
>>   
>> @@ -437,6 +440,7 @@ static int mtk_set_mac_address(struct net_device *dev, void *p)
>>   {
>>   	int ret = eth_mac_addr(dev, p);
>>   	struct mtk_mac *mac = netdev_priv(dev);
>> +	struct mtk_eth *eth = mac->hw;
>>   	const char *macaddr = dev->dev_addr;
>>   
>>   	if (ret)
>> @@ -446,11 +450,19 @@ static int mtk_set_mac_address(struct net_device *dev, void *p)
>>   		return -EBUSY;
>>   
>>   	spin_lock_bh(&mac->hw->page_lock);
>> -	mtk_w32(mac->hw, (macaddr[0] << 8) | macaddr[1],
>> -		MTK_GDMA_MAC_ADRH(mac->id));
>> -	mtk_w32(mac->hw, (macaddr[2] << 24) | (macaddr[3] << 16) |
>> -		(macaddr[4] << 8) | macaddr[5],
>> -		MTK_GDMA_MAC_ADRL(mac->id));
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		mtk_w32(mac->hw, (macaddr[0] << 8) | macaddr[1],
>> +			MT7628_SDM_MAC_ADRH);
>> +		mtk_w32(mac->hw, (macaddr[2] << 24) | (macaddr[3] << 16) |
>> +			(macaddr[4] << 8) | macaddr[5],
>> +			MT7628_SDM_MAC_ADRL);
>> +	} else {
>> +		mtk_w32(mac->hw, (macaddr[0] << 8) | macaddr[1],
>> +			MTK_GDMA_MAC_ADRH(mac->id));
>> +		mtk_w32(mac->hw, (macaddr[2] << 24) | (macaddr[3] << 16) |
>> +			(macaddr[4] << 8) | macaddr[5],
>> +			MTK_GDMA_MAC_ADRL(mac->id));
>> +	}
>>   	spin_unlock_bh(&mac->hw->page_lock);
>>   
>>   	return 0;
>> @@ -626,19 +638,47 @@ static inline struct mtk_tx_buf *mtk_desc_to_tx_buf(struct mtk_tx_ring *ring,
>>   	return &ring->buf[idx];
>>   }
>>   
>> +static struct mtk_tx_dma *qdma_to_pdma(struct mtk_tx_ring *ring,
>> +				       struct mtk_tx_dma *dma)
>> +{
>> +	return ring->dma_pdma - ring->dma + dma;
>> +}
>> +
>> +static int txd_to_idx(struct mtk_tx_ring *ring, struct mtk_tx_dma *dma)
>> +{
>> +	return ((u32)dma - (u32)ring->dma) / sizeof(*dma);
>> +}
>> +
>>   static void mtk_tx_unmap(struct mtk_eth *eth, struct mtk_tx_buf *tx_buf)
>>   {
>> -	if (tx_buf->flags & MTK_TX_FLAGS_SINGLE0) {
>> -		dma_unmap_single(eth->dev,
>> -				 dma_unmap_addr(tx_buf, dma_addr0),
>> -				 dma_unmap_len(tx_buf, dma_len0),
>> -				 DMA_TO_DEVICE);
>> -	} else if (tx_buf->flags & MTK_TX_FLAGS_PAGE0) {
>> -		dma_unmap_page(eth->dev,
>> -			       dma_unmap_addr(tx_buf, dma_addr0),
>> -			       dma_unmap_len(tx_buf, dma_len0),
>> -			       DMA_TO_DEVICE);
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		if (dma_unmap_len(tx_buf, dma_len0)) {
>> +			dma_unmap_page(eth->dev,
>> +				       dma_unmap_addr(tx_buf, dma_addr0),
>> +				       dma_unmap_len(tx_buf, dma_len0),
>> +				       DMA_TO_DEVICE);
>> +		}
>> +
>> +		if (dma_unmap_len(tx_buf, dma_len1)) {
>> +			dma_unmap_page(eth->dev,
>> +				       dma_unmap_addr(tx_buf, dma_addr1),
>> +				       dma_unmap_len(tx_buf, dma_len1),
>> +				       DMA_TO_DEVICE);
>> +		}
>> +	} else {
>> +		if (tx_buf->flags & MTK_TX_FLAGS_SINGLE0) {
>> +			dma_unmap_single(eth->dev,
>> +					 dma_unmap_addr(tx_buf, dma_addr0),
>> +					 dma_unmap_len(tx_buf, dma_len0),
>> +					 DMA_TO_DEVICE);
>> +		} else if (tx_buf->flags & MTK_TX_FLAGS_PAGE0) {
>> +			dma_unmap_page(eth->dev,
>> +				       dma_unmap_addr(tx_buf, dma_addr0),
>> +				       dma_unmap_len(tx_buf, dma_len0),
>> +				       DMA_TO_DEVICE);
>> +		}
>>   	}
>> +
>>   	tx_buf->flags = 0;
>>   	if (tx_buf->skb &&
>>   	    (tx_buf->skb != (struct sk_buff *)MTK_DMA_DUMMY_DESC))
>> @@ -646,19 +686,45 @@ static void mtk_tx_unmap(struct mtk_eth *eth, struct mtk_tx_buf *tx_buf)
>>   	tx_buf->skb = NULL;
>>   }
>>   
>> +static void setup_tx_buf(struct mtk_eth *eth, struct mtk_tx_buf *tx_buf,
>> +			 struct mtk_tx_dma *txd, dma_addr_t mapped_addr,
>> +			 size_t size, int idx)
>> +{
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		if (idx & 1) {
>> +			txd->txd3 = mapped_addr;
>> +			txd->txd2 |= TX_DMA_PLEN1(size);
>> +			dma_unmap_addr_set(tx_buf, dma_addr1, mapped_addr);
>> +			dma_unmap_len_set(tx_buf, dma_len1, size);
>> +		} else {
>> +			tx_buf->skb = (struct sk_buff *)MTK_DMA_DUMMY_DESC;
>> +			txd->txd1 = mapped_addr;
>> +			txd->txd2 = TX_DMA_PLEN0(size);
>> +			dma_unmap_addr_set(tx_buf, dma_addr0, mapped_addr);
>> +			dma_unmap_len_set(tx_buf, dma_len0, size);
>> +		}
>> +	} else {
>> +		dma_unmap_addr_set(tx_buf, dma_addr0, mapped_addr);
>> +		dma_unmap_len_set(tx_buf, dma_len0, size);
>> +	}
>> +}
>> +
>>   static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   		      int tx_num, struct mtk_tx_ring *ring, bool gso)
>>   {
>>   	struct mtk_mac *mac = netdev_priv(dev);
>>   	struct mtk_eth *eth = mac->hw;
>>   	struct mtk_tx_dma *itxd, *txd;
>> +	struct mtk_tx_dma *itxd_pdma, *txd_pdma;
>>   	struct mtk_tx_buf *itx_buf, *tx_buf;
>>   	dma_addr_t mapped_addr;
>>   	unsigned int nr_frags;
>>   	int i, n_desc = 1;
>>   	u32 txd4 = 0, fport;
>> +	int k = 0;
>>   
>>   	itxd = ring->next_free;
>> +	itxd_pdma = qdma_to_pdma(ring, itxd);
>>   	if (itxd == ring->last_free)
>>   		return -ENOMEM;
>>   
>> @@ -689,12 +755,14 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   	itx_buf->flags |= MTK_TX_FLAGS_SINGLE0;
>>   	itx_buf->flags |= (!mac->id) ? MTK_TX_FLAGS_FPORT0 :
>>   			  MTK_TX_FLAGS_FPORT1;
>> -	dma_unmap_addr_set(itx_buf, dma_addr0, mapped_addr);
>> -	dma_unmap_len_set(itx_buf, dma_len0, skb_headlen(skb));
>> +	setup_tx_buf(eth, itx_buf, itxd_pdma, mapped_addr, skb_headlen(skb),
>> +		     k++);
>>   
>>   	/* TX SG offload */
>>   	txd = itxd;
>> +	txd_pdma = qdma_to_pdma(ring, txd);
>>   	nr_frags = skb_shinfo(skb)->nr_frags;
>> +
>>   	for (i = 0; i < nr_frags; i++) {
>>   		struct skb_frag_struct *frag = &skb_shinfo(skb)->frags[i];
>>   		unsigned int offset = 0;
>> @@ -703,12 +771,20 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   		while (frag_size) {
>>   			bool last_frag = false;
>>   			unsigned int frag_map_size;
>> +			bool new_desc = true;
>> +
>> +			if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628) &&
>> +			    !(i & 0x1)) {
>> +				new_desc = false;
>> +			} else {
>> +				txd = mtk_qdma_phys_to_virt(ring, txd->txd2);
>> +				txd_pdma = qdma_to_pdma(ring, txd);
>> +				if (txd == ring->last_free)
>> +					goto err_dma;
>> +
>> +				n_desc++;
>> +			}
>>   
>> -			txd = mtk_qdma_phys_to_virt(ring, txd->txd2);
>> -			if (txd == ring->last_free)
>> -				goto err_dma;
>> -
>> -			n_desc++;
>>   			frag_map_size = min(frag_size, MTK_TX_DMA_BUF_LEN);
>>   			mapped_addr = skb_frag_dma_map(eth->dev, frag, offset,
>>   						       frag_map_size,
>> @@ -727,14 +803,16 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   			WRITE_ONCE(txd->txd4, fport);
>>   
>>   			tx_buf = mtk_desc_to_tx_buf(ring, txd);
>> -			memset(tx_buf, 0, sizeof(*tx_buf));
>> +			if (new_desc)
>> +				memset(tx_buf, 0, sizeof(*tx_buf));
>>   			tx_buf->skb = (struct sk_buff *)MTK_DMA_DUMMY_DESC;
>>   			tx_buf->flags |= MTK_TX_FLAGS_PAGE0;
>>   			tx_buf->flags |= (!mac->id) ? MTK_TX_FLAGS_FPORT0 :
>>   					 MTK_TX_FLAGS_FPORT1;
>>   
>> -			dma_unmap_addr_set(tx_buf, dma_addr0, mapped_addr);
>> -			dma_unmap_len_set(tx_buf, dma_len0, frag_map_size);
>> +			setup_tx_buf(eth, tx_buf, txd_pdma, mapped_addr,
>> +				     frag_map_size, k++);
>> +
>>   			frag_size -= frag_map_size;
>>   			offset += frag_map_size;
>>   		}
>> @@ -746,6 +824,12 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   	WRITE_ONCE(itxd->txd4, txd4);
>>   	WRITE_ONCE(itxd->txd3, (TX_DMA_SWC | TX_DMA_PLEN0(skb_headlen(skb)) |
>>   				(!nr_frags * TX_DMA_LS0)));
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		if (k & 0x1)
>> +			txd_pdma->txd2 |= TX_DMA_LS0;
>> +		else
>> +			txd_pdma->txd2 |= TX_DMA_LS1;
>> +	}
>>   
>>   	netdev_sent_queue(dev, skb->len);
>>   	skb_tx_timestamp(skb);
>> @@ -758,9 +842,15 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   	 */
>>   	wmb();
>>   
>> -	if (netif_xmit_stopped(netdev_get_tx_queue(dev, 0)) ||
>> -	    !netdev_xmit_more())
>> -		mtk_w32(eth, txd->txd2, MTK_QTX_CTX_PTR);
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		int next_idx = NEXT_DESP_IDX(txd_to_idx(ring, txd),
>> +					     ring->dma_size);
>> +		mtk_w32(eth, next_idx, MT7628_TX_CTX_IDX0);
>> +	} else {
>> +		if (netif_xmit_stopped(netdev_get_tx_queue(dev, 0)) ||
>> +		    !netdev_xmit_more())
>> +			mtk_w32(eth, txd->txd2, MTK_QTX_CTX_PTR);
>> +	}
>>   
>>   	return 0;
>>   
>> @@ -772,7 +862,11 @@ static int mtk_tx_map(struct sk_buff *skb, struct net_device *dev,
>>   		mtk_tx_unmap(eth, tx_buf);
>>   
>>   		itxd->txd3 = TX_DMA_LS0 | TX_DMA_OWNER_CPU;
>> +		if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +			itxd_pdma->txd2 = TX_DMA_DESP2_DEF;
>> +
>>   		itxd = mtk_qdma_phys_to_virt(ring, itxd->txd2);
>> +		itxd_pdma = qdma_to_pdma(ring, itxd);
>>   	} while (itxd != txd);
>>   
>>   	return -ENOMEM;
>> @@ -902,7 +996,7 @@ static struct mtk_rx_ring *mtk_get_rx_ring(struct mtk_eth *eth)
>>   
>>   	for (i = 0; i < MTK_MAX_RX_RING_NUM; i++) {
>>   		ring = &eth->rx_ring[i];
>> -		idx = NEXT_RX_DESP_IDX(ring->calc_idx, ring->dma_size);
>> +		idx = NEXT_DESP_IDX(ring->calc_idx, ring->dma_size);
>>   		if (ring->dma[idx].rxd2 & RX_DMA_DONE) {
>>   			ring->calc_idx_update = true;
>>   			return ring;
>> @@ -945,13 +1039,13 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   		struct net_device *netdev;
>>   		unsigned int pktlen;
>>   		dma_addr_t dma_addr;
>> -		int mac = 0;
>> +		int mac;
>>   
>>   		ring = mtk_get_rx_ring(eth);
>>   		if (unlikely(!ring))
>>   			goto rx_done;
>>   
>> -		idx = NEXT_RX_DESP_IDX(ring->calc_idx, ring->dma_size);
>> +		idx = NEXT_DESP_IDX(ring->calc_idx, ring->dma_size);
>>   		rxd = &ring->dma[idx];
>>   		data = ring->data[idx];
>>   
>> @@ -960,9 +1054,13 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   			break;
>>   
>>   		/* find out which mac the packet come from. values start at 1 */
>> -		mac = (trxd.rxd4 >> RX_DMA_FPORT_SHIFT) &
>> -		      RX_DMA_FPORT_MASK;
>> -		mac--;
>> +		if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +			mac = 0;
>> +		} else {
>> +			mac = (trxd.rxd4 >> RX_DMA_FPORT_SHIFT) &
>> +				RX_DMA_FPORT_MASK;
>> +			mac--;
>> +		}
>>   
>>   		if (unlikely(mac < 0 || mac >= MTK_MAC_COUNT ||
>>   			     !eth->netdev[mac]))
>> @@ -980,7 +1078,8 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   			goto release_desc;
>>   		}
>>   		dma_addr = dma_map_single(eth->dev,
>> -					  new_data + NET_SKB_PAD,
>> +					  new_data + NET_SKB_PAD +
>> +					  eth->ip_align,
>>   					  ring->buf_size,
>>   					  DMA_FROM_DEVICE);
>>   		if (unlikely(dma_mapping_error(eth->dev, dma_addr))) {
>> @@ -1003,7 +1102,7 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   		pktlen = RX_DMA_GET_PLEN0(trxd.rxd2);
>>   		skb->dev = netdev;
>>   		skb_put(skb, pktlen);
>> -		if (trxd.rxd4 & RX_DMA_L4_VALID)
>> +		if (trxd.rxd4 & eth->rx_dma_l4_valid)
>>   			skb->ip_summed = CHECKSUM_UNNECESSARY;
>>   		else
>>   			skb_checksum_none_assert(skb);
>> @@ -1020,7 +1119,10 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   		rxd->rxd1 = (unsigned int)dma_addr;
>>   
>>   release_desc:
>> -		rxd->rxd2 = RX_DMA_PLEN0(ring->buf_size);
>> +		if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +			rxd->rxd2 = RX_DMA_LSO;
>> +		else
>> +			rxd->rxd2 = RX_DMA_PLEN0(ring->buf_size);
>>   
>>   		ring->calc_idx = idx;
>>   
>> @@ -1039,19 +1141,14 @@ static int mtk_poll_rx(struct napi_struct *napi, int budget,
>>   	return done;
>>   }
>>   
>> -static int mtk_poll_tx(struct mtk_eth *eth, int budget)
>> +static int mtk_poll_tx_qdma(struct mtk_eth *eth, int budget,
>> +			    unsigned int *done, unsigned int *bytes)
>>   {
>>   	struct mtk_tx_ring *ring = &eth->tx_ring;
>>   	struct mtk_tx_dma *desc;
>>   	struct sk_buff *skb;
>>   	struct mtk_tx_buf *tx_buf;
>> -	unsigned int done[MTK_MAX_DEVS];
>> -	unsigned int bytes[MTK_MAX_DEVS];
>>   	u32 cpu, dma;
>> -	int total = 0, i;
>> -
>> -	memset(done, 0, sizeof(done));
>> -	memset(bytes, 0, sizeof(bytes));
>>   
>>   	cpu = mtk_r32(eth, MTK_QTX_CRX_PTR);
>>   	dma = mtk_r32(eth, MTK_QTX_DRX_PTR);
>> @@ -1089,6 +1186,62 @@ static int mtk_poll_tx(struct mtk_eth *eth, int budget)
>>   
>>   	mtk_w32(eth, cpu, MTK_QTX_CRX_PTR);
>>   
>> +	return budget;
>> +}
>> +
>> +static int mtk_poll_tx_pdma(struct mtk_eth *eth, int budget,
>> +			    unsigned int *done, unsigned int *bytes)
>> +{
>> +	struct mtk_tx_ring *ring = &eth->tx_ring;
>> +	struct mtk_tx_dma *desc;
>> +	struct sk_buff *skb;
>> +	struct mtk_tx_buf *tx_buf;
>> +	u32 cpu, dma;
>> +
>> +	cpu = ring->cpu_idx;
>> +	dma = mtk_r32(eth, MT7628_TX_DTX_IDX0);
>> +
>> +	while ((cpu != dma) && budget) {
>> +		tx_buf = &ring->buf[cpu];
>> +		skb = tx_buf->skb;
>> +		if (!skb)
>> +			break;
>> +
>> +		if (skb != (struct sk_buff *)MTK_DMA_DUMMY_DESC) {
>> +			bytes[0] += skb->len;
>> +			done[0]++;
>> +			budget--;
>> +		}
>> +
>> +		mtk_tx_unmap(eth, tx_buf);
>> +
>> +		desc = &ring->dma[cpu];
>> +		ring->last_free = desc;
>> +		atomic_inc(&ring->free_count);
>> +
>> +		cpu = NEXT_DESP_IDX(cpu, ring->dma_size);
>> +	}
>> +
>> +	ring->cpu_idx = cpu;
>> +
>> +	return budget;
>> +}
>> +
>> +static int mtk_poll_tx(struct mtk_eth *eth, int budget)
>> +{
>> +	struct mtk_tx_ring *ring = &eth->tx_ring;
>> +	unsigned int done[MTK_MAX_DEVS];
>> +	unsigned int bytes[MTK_MAX_DEVS];
>> +	int total = 0, i;
>> +
>> +	memset(done, 0, sizeof(done));
>> +	memset(bytes, 0, sizeof(bytes));
>> +
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +		budget = mtk_poll_tx_pdma(eth, budget, done, bytes);
>> +	else
>> +		budget = mtk_poll_tx_qdma(eth, budget, done, bytes);
>> +
>>   	for (i = 0; i < MTK_MAC_COUNT; i++) {
>>   		if (!eth->netdev[i] || !done[i])
>>   			continue;
>> @@ -1120,8 +1273,12 @@ static int mtk_napi_tx(struct napi_struct *napi, int budget)
>>   	u32 status, mask;
>>   	int tx_done = 0;
>>   
>> -	mtk_handle_status_irq(eth);
>> -	mtk_w32(eth, MTK_TX_DONE_INT, MTK_QMTK_INT_STATUS);
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		mtk_w32(eth, MTK_TX_DONE_INT, MTK_PDMA_INT_STATUS);
>> +	} else {
>> +		mtk_handle_status_irq(eth);
>> +		mtk_w32(eth, MTK_TX_DONE_INT, MTK_QMTK_INT_STATUS);
>> +	}
>>   	tx_done = mtk_poll_tx(eth, budget);
>>   
>>   	if (unlikely(netif_msg_intr(eth))) {
>> @@ -1135,7 +1292,10 @@ static int mtk_napi_tx(struct napi_struct *napi, int budget)
>>   	if (tx_done == budget)
>>   		return budget;
>>   
>> -	status = mtk_r32(eth, MTK_QMTK_INT_STATUS);
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +		status = mtk_r32(eth, MTK_PDMA_INT_STATUS);
>> +	else
>> +		status = mtk_r32(eth, MTK_QMTK_INT_STATUS);
>>   	if (status & MTK_TX_DONE_INT)
>>   		return budget;
>>   
>> @@ -1202,6 +1362,24 @@ static int mtk_tx_alloc(struct mtk_eth *eth)
>>   		ring->dma[i].txd3 = TX_DMA_LS0 | TX_DMA_OWNER_CPU;
>>   	}
>>   
>> +	/* On MT7688 (PDMA only) this driver uses the ring->dma structs
>> +	 * only as the framework. The real HW descriptors are the PDMA
>> +	 * descriptors in ring->dma_pdma.
>> +	 */
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		ring->dma_pdma = dma_alloc_coherent(eth->dev, MTK_DMA_SIZE * sz,
>> +						    &ring->phys_pdma,
>> +						    GFP_ATOMIC);
>> +		if (!ring->dma_pdma)
>> +			goto no_tx_mem;
>> +
>> +		for (i = 0; i < MTK_DMA_SIZE; i++) {
>> +			ring->dma_pdma[i].txd2 = TX_DMA_DESP2_DEF;
>> +			ring->dma_pdma[i].txd4 = 0;
>> +		}
>> +	}
>> +
>> +	ring->dma_size = MTK_DMA_SIZE;
>>   	atomic_set(&ring->free_count, MTK_DMA_SIZE - 2);
>>   	ring->next_free = &ring->dma[0];
>>   	ring->last_free = &ring->dma[MTK_DMA_SIZE - 1];
>> @@ -1212,15 +1390,23 @@ static int mtk_tx_alloc(struct mtk_eth *eth)
>>   	 */
>>   	wmb();
>>   
>> -	mtk_w32(eth, ring->phys, MTK_QTX_CTX_PTR);
>> -	mtk_w32(eth, ring->phys, MTK_QTX_DTX_PTR);
>> -	mtk_w32(eth,
>> -		ring->phys + ((MTK_DMA_SIZE - 1) * sz),
>> -		MTK_QTX_CRX_PTR);
>> -	mtk_w32(eth,
>> -		ring->phys + ((MTK_DMA_SIZE - 1) * sz),
>> -		MTK_QTX_DRX_PTR);
>> -	mtk_w32(eth, (QDMA_RES_THRES << 8) | QDMA_RES_THRES, MTK_QTX_CFG(0));
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		mtk_w32(eth, ring->phys_pdma, MT7628_TX_BASE_PTR0);
>> +		mtk_w32(eth, MTK_DMA_SIZE, MT7628_TX_MAX_CNT0);
>> +		mtk_w32(eth, 0, MT7628_TX_CTX_IDX0);
>> +		mtk_w32(eth, MT7628_PST_DTX_IDX0, MTK_PDMA_RST_IDX);
>> +	} else {
>> +		mtk_w32(eth, ring->phys, MTK_QTX_CTX_PTR);
>> +		mtk_w32(eth, ring->phys, MTK_QTX_DTX_PTR);
>> +		mtk_w32(eth,
>> +			ring->phys + ((MTK_DMA_SIZE - 1) * sz),
>> +			MTK_QTX_CRX_PTR);
>> +		mtk_w32(eth,
>> +			ring->phys + ((MTK_DMA_SIZE - 1) * sz),
>> +			MTK_QTX_DRX_PTR);
>> +		mtk_w32(eth, (QDMA_RES_THRES << 8) | QDMA_RES_THRES,
>> +			MTK_QTX_CFG(0));
>> +	}
>>   
>>   	return 0;
>>   
>> @@ -1247,6 +1433,14 @@ static void mtk_tx_clean(struct mtk_eth *eth)
>>   				  ring->phys);
>>   		ring->dma = NULL;
>>   	}
>> +
>> +	if (ring->dma_pdma) {
>> +		dma_free_coherent(eth->dev,
>> +				  MTK_DMA_SIZE * sizeof(*ring->dma_pdma),
>> +				  ring->dma_pdma,
>> +				  ring->phys_pdma);
>> +		ring->dma_pdma = NULL;
>> +	}
>>   }
>>   
>>   static int mtk_rx_alloc(struct mtk_eth *eth, int ring_no, int rx_flag)
>> @@ -1294,14 +1488,17 @@ static int mtk_rx_alloc(struct mtk_eth *eth, int ring_no, int rx_flag)
>>   
>>   	for (i = 0; i < rx_dma_size; i++) {
>>   		dma_addr_t dma_addr = dma_map_single(eth->dev,
>> -				ring->data[i] + NET_SKB_PAD,
>> +				ring->data[i] + NET_SKB_PAD + eth->ip_align,
>>   				ring->buf_size,
>>   				DMA_FROM_DEVICE);
>>   		if (unlikely(dma_mapping_error(eth->dev, dma_addr)))
>>   			return -ENOMEM;
>>   		ring->dma[i].rxd1 = (unsigned int)dma_addr;
>>   
>> -		ring->dma[i].rxd2 = RX_DMA_PLEN0(ring->buf_size);
>> +		if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +			ring->dma[i].rxd2 = RX_DMA_LSO;
>> +		else
>> +			ring->dma[i].rxd2 = RX_DMA_PLEN0(ring->buf_size);
>>   	}
>>   	ring->dma_size = rx_dma_size;
>>   	ring->calc_idx_update = false;
>> @@ -1617,9 +1814,16 @@ static int mtk_dma_busy_wait(struct mtk_eth *eth)
>>   	unsigned long t_start = jiffies;
>>   
>>   	while (1) {
>> -		if (!(mtk_r32(eth, MTK_QDMA_GLO_CFG) &
>> -		      (MTK_RX_DMA_BUSY | MTK_TX_DMA_BUSY)))
>> -			return 0;
>> +		if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +			if (!(mtk_r32(eth, MTK_PDMA_GLO_CFG) &
>> +			      (MTK_RX_DMA_BUSY | MTK_TX_DMA_BUSY)))
>> +				return 0;
>> +		} else {
>> +			if (!(mtk_r32(eth, MTK_QDMA_GLO_CFG) &
>> +			      (MTK_RX_DMA_BUSY | MTK_TX_DMA_BUSY)))
>> +				return 0;
>> +		}
>> +
>>   		if (time_after(jiffies, t_start + MTK_DMA_BUSY_TIMEOUT))
>>   			break;
>>   	}
>> @@ -1636,20 +1840,24 @@ static int mtk_dma_init(struct mtk_eth *eth)
>>   	if (mtk_dma_busy_wait(eth))
>>   		return -EBUSY;
>>   
>> -	/* QDMA needs scratch memory for internal reordering of the
>> -	 * descriptors
>> -	 */
>> -	err = mtk_init_fq_dma(eth);
>> -	if (err)
>> -		return err;
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		/* QDMA needs scratch memory for internal reordering of the
>> +		 * descriptors
>> +		 */
>> +		err = mtk_init_fq_dma(eth);
>> +		if (err)
>> +			return err;
>> +	}
>>   
>>   	err = mtk_tx_alloc(eth);
>>   	if (err)
>>   		return err;
>>   
>> -	err = mtk_rx_alloc(eth, 0, MTK_RX_FLAGS_QDMA);
>> -	if (err)
>> -		return err;
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		err = mtk_rx_alloc(eth, 0, MTK_RX_FLAGS_QDMA);
>> +		if (err)
>> +			return err;
>> +	}
>>   
>>   	err = mtk_rx_alloc(eth, 0, MTK_RX_FLAGS_NORMAL);
>>   	if (err)
>> @@ -1666,10 +1874,14 @@ static int mtk_dma_init(struct mtk_eth *eth)
>>   			return err;
>>   	}
>>   
>> -	/* Enable random early drop and set drop threshold automatically */
>> -	mtk_w32(eth, FC_THRES_DROP_MODE | FC_THRES_DROP_EN | FC_THRES_MIN,
>> -		MTK_QDMA_FC_THRES);
>> -	mtk_w32(eth, 0x0, MTK_QDMA_HRED2);
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		/* Enable random early drop and set drop threshold
>> +		 * automatically
>> +		 */
>> +		mtk_w32(eth, FC_THRES_DROP_MODE | FC_THRES_DROP_EN |
>> +			FC_THRES_MIN, MTK_QDMA_FC_THRES);
>> +		mtk_w32(eth, 0x0, MTK_QDMA_HRED2);
>> +	}
>>   
>>   	return 0;
>>   }
>> @@ -1740,14 +1952,23 @@ static irqreturn_t mtk_handle_irq_tx(int irq, void *_eth)
>>   static irqreturn_t mtk_handle_irq(int irq, void *_eth)
>>   {
>>   	struct mtk_eth *eth = _eth;
>> +	u32 status;
>>   
>> +	status = mtk_r32(eth, MTK_PDMA_INT_STATUS);
>>   	if (mtk_r32(eth, MTK_PDMA_INT_MASK) & MTK_RX_DONE_INT) {
>>   		if (mtk_r32(eth, MTK_PDMA_INT_STATUS) & MTK_RX_DONE_INT)
>>   			mtk_handle_irq_rx(irq, _eth);
>>   	}
>> -	if (mtk_r32(eth, MTK_QDMA_INT_MASK) & MTK_TX_DONE_INT) {
>> -		if (mtk_r32(eth, MTK_QMTK_INT_STATUS) & MTK_TX_DONE_INT)
>> -			mtk_handle_irq_tx(irq, _eth);
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		if (mtk_r32(eth, MTK_PDMA_INT_MASK) & MTK_TX_DONE_INT) {
>> +			if (mtk_r32(eth, MTK_PDMA_INT_STATUS) & MTK_TX_DONE_INT)
>> +				mtk_handle_irq_tx(irq, _eth);
>> +		}
>> +	} else {
>> +		if (mtk_r32(eth, MTK_QDMA_INT_MASK) & MTK_TX_DONE_INT) {
>> +			if (mtk_r32(eth, MTK_QMTK_INT_STATUS) & MTK_TX_DONE_INT)
>> +				mtk_handle_irq_tx(irq, _eth);
>> +		}
>>   	}
>>   
>>   	return IRQ_HANDLED;
>> @@ -1778,17 +1999,23 @@ static int mtk_start_dma(struct mtk_eth *eth)
>>   		return err;
>>   	}
>>   
>> -	mtk_w32(eth,
>> -		MTK_TX_WB_DDONE | MTK_TX_DMA_EN |
>> -		MTK_DMA_SIZE_16DWORDS | MTK_NDP_CO_PRO |
>> -		MTK_RX_DMA_EN | MTK_RX_2B_OFFSET |
>> -		MTK_RX_BT_32DWORDS,
>> -		MTK_QDMA_GLO_CFG);
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		mtk_w32(eth,
>> +			MTK_TX_WB_DDONE | MTK_TX_DMA_EN |
>> +			MTK_DMA_SIZE_16DWORDS | MTK_NDP_CO_PRO |
>> +			MTK_RX_DMA_EN | MTK_RX_2B_OFFSET |
>> +			MTK_RX_BT_32DWORDS,
>> +			MTK_QDMA_GLO_CFG);
>>   
>> -	mtk_w32(eth,
>> -		MTK_RX_DMA_EN | rx_2b_offset |
>> -		MTK_RX_BT_32DWORDS | MTK_MULTI_EN,
>> -		MTK_PDMA_GLO_CFG);
>> +		mtk_w32(eth,
>> +			MTK_RX_DMA_EN | rx_2b_offset |
>> +			MTK_RX_BT_32DWORDS | MTK_MULTI_EN,
>> +			MTK_PDMA_GLO_CFG);
>> +	} else {
>> +		mtk_w32(eth, MTK_TX_WB_DDONE | MTK_TX_DMA_EN | MTK_RX_DMA_EN |
>> +			MTK_MULTI_EN | MTK_PDMA_SIZE_8DWORDS,
>> +			MTK_PDMA_GLO_CFG);
>> +	}
>>   
>>   	return 0;
>>   }
>> @@ -1816,7 +2043,6 @@ static int mtk_open(struct net_device *dev)
>>   
>>   	phy_start(dev->phydev);
>>   	netif_start_queue(dev);
>> -
>>   	return 0;
>>   }
>>   
>> @@ -1860,7 +2086,8 @@ static int mtk_stop(struct net_device *dev)
>>   	napi_disable(&eth->tx_napi);
>>   	napi_disable(&eth->rx_napi);
>>   
>> -	mtk_stop_dma(eth, MTK_QDMA_GLO_CFG);
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628))
>> +		mtk_stop_dma(eth, MTK_QDMA_GLO_CFG);
>>   	mtk_stop_dma(eth, MTK_PDMA_GLO_CFG);
>>   
>>   	mtk_dma_free(eth);
>> @@ -1922,6 +2149,24 @@ static int mtk_hw_init(struct mtk_eth *eth)
>>   	if (ret)
>>   		goto err_disable_pm;
>>   
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		ret = device_reset(eth->dev);
>> +		if (ret) {
>> +			dev_err(eth->dev, "MAC reset failed!\n");
>> +			goto err_disable_pm;
>> +		}
>> +
>> +		/* enable interrupt delay for RX */
>> +		mtk_w32(eth, MTK_PDMA_DELAY_RX_DELAY, MTK_PDMA_DELAY_INT);
>> +
>> +		/* disable delay and normal interrupt */
>> +		mtk_tx_irq_disable(eth, ~0);
>> +		mtk_rx_irq_disable(eth, ~0);
>> +
>> +		return 0;
>> +	}
>> +
>> +	/* Non-MT7628 handling... */
>>   	ethsys_reset(eth, RSTCTRL_FE);
>>   	ethsys_reset(eth, RSTCTRL_PPE);
>>   
>> @@ -2425,13 +2670,13 @@ static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
>>   	eth->netdev[id]->netdev_ops = &mtk_netdev_ops;
>>   	eth->netdev[id]->base_addr = (unsigned long)eth->base;
>>   
>> -	eth->netdev[id]->hw_features = MTK_HW_FEATURES;
>> +	eth->netdev[id]->hw_features = eth->soc->hw_features;
>>   	if (eth->hwlro)
>>   		eth->netdev[id]->hw_features |= NETIF_F_LRO;
>>   
>> -	eth->netdev[id]->vlan_features = MTK_HW_FEATURES &
>> +	eth->netdev[id]->vlan_features = eth->soc->hw_features &
>>   		~(NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX);
>> -	eth->netdev[id]->features |= MTK_HW_FEATURES;
>> +	eth->netdev[id]->features |= eth->soc->hw_features;
>>   	eth->netdev[id]->ethtool_ops = &mtk_ethtool_ops;
>>   
>>   	eth->netdev[id]->irq = eth->irq[0];
>> @@ -2463,15 +2708,26 @@ static int mtk_probe(struct platform_device *pdev)
>>   	if (IS_ERR(eth->base))
>>   		return PTR_ERR(eth->base);
>>   
>> +	if (MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		eth->tx_int_mask_reg = MTK_PDMA_INT_MASK;
>> +		eth->rx_dma_l4_valid = RX_DMA_L4_VALID_PDMA;
>> +		eth->ip_align = NET_IP_ALIGN;
>> +	} else {
>> +		eth->tx_int_mask_reg = MTK_QDMA_INT_MASK;
>> +		eth->rx_dma_l4_valid = RX_DMA_L4_VALID;
>> +	}
>> +
>>   	spin_lock_init(&eth->page_lock);
>>   	spin_lock_init(&eth->tx_irq_lock);
>>   	spin_lock_init(&eth->rx_irq_lock);
>>   
>> -	eth->ethsys = syscon_regmap_lookup_by_phandle(pdev->dev.of_node,
>> -						      "mediatek,ethsys");
>> -	if (IS_ERR(eth->ethsys)) {
>> -		dev_err(&pdev->dev, "no ethsys regmap found\n");
>> -		return PTR_ERR(eth->ethsys);
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		eth->ethsys = syscon_regmap_lookup_by_phandle(pdev->dev.of_node,
>> +							      "mediatek,ethsys");
>> +		if (IS_ERR(eth->ethsys)) {
>> +			dev_err(&pdev->dev, "no ethsys regmap found\n");
>> +			return PTR_ERR(eth->ethsys);
>> +		}
>>   	}
>>   
>>   	if (MTK_HAS_CAPS(eth->soc->caps, MTK_INFRA)) {
>> @@ -2570,9 +2826,12 @@ static int mtk_probe(struct platform_device *pdev)
>>   	if (err)
>>   		goto err_free_dev;
>>   
>> -	err = mtk_mdio_init(eth);
>> -	if (err)
>> -		goto err_free_dev;
>> +	/* No MT7628/88 support yet */
>> +	if (!MTK_HAS_CAPS(eth->soc->caps, MTK_SOC_MT7628)) {
>> +		err = mtk_mdio_init(eth);
>> +		if (err)
>> +			goto err_free_dev;
>> +	}
>>   
>>   	for (i = 0; i < MTK_MAX_DEVS; i++) {
>>   		if (!eth->netdev[i])
>> @@ -2635,12 +2894,14 @@ static int mtk_remove(struct platform_device *pdev)
>>   
>>   static const struct mtk_soc_data mt2701_data = {
>>   	.caps = MT7623_CAPS | MTK_HWLRO,
>> +	.hw_features = MTK_HW_FEATURES,
>>   	.required_clks = MT7623_CLKS_BITMAP,
>>   	.required_pctl = true,
>>   };
>>   
>>   static const struct mtk_soc_data mt7621_data = {
>>   	.caps = MT7621_CAPS,
>> +	.hw_features = MTK_HW_FEATURES,
>>   	.required_clks = MT7621_CLKS_BITMAP,
>>   	.required_pctl = false,
>>   };
>> @@ -2648,19 +2909,29 @@ static const struct mtk_soc_data mt7621_data = {
>>   static const struct mtk_soc_data mt7622_data = {
>>   	.ana_rgc3 = 0x2028,
>>   	.caps = MT7622_CAPS | MTK_HWLRO,
>> +	.hw_features = MTK_HW_FEATURES,
>>   	.required_clks = MT7622_CLKS_BITMAP,
>>   	.required_pctl = false,
>>   };
>>   
>>   static const struct mtk_soc_data mt7623_data = {
>>   	.caps = MT7623_CAPS | MTK_HWLRO,
>> +	.hw_features = MTK_HW_FEATURES,
>>   	.required_clks = MT7623_CLKS_BITMAP,
>>   	.required_pctl = true,
>>   };
>>   
>> +static const struct mtk_soc_data mt7628_data = {
>> +	.caps = MT7628_CAPS,
>> +	.hw_features = MTK_HW_FEATURES_MT7628,
>> +	.required_clks = MT7628_CLKS_BITMAP,
>> +	.required_pctl = false,
>> +};
>> +
>>   static const struct mtk_soc_data mt7629_data = {
>>   	.ana_rgc3 = 0x128,
>>   	.caps = MT7629_CAPS | MTK_HWLRO,
>> +	.hw_features = MTK_HW_FEATURES,
>>   	.required_clks = MT7629_CLKS_BITMAP,
>>   	.required_pctl = false,
>>   };
>> @@ -2670,6 +2941,7 @@ const struct of_device_id of_mtk_match[] = {
>>   	{ .compatible = "mediatek,mt7621-eth", .data = &mt7621_data},
>>   	{ .compatible = "mediatek,mt7622-eth", .data = &mt7622_data},
>>   	{ .compatible = "mediatek,mt7623-eth", .data = &mt7623_data},
>> +	{ .compatible = "mediatek,mt7628-eth", .data = &mt7628_data},
>>   	{ .compatible = "mediatek,mt7629-eth", .data = &mt7629_data},
>>   	{},
>>   };
>> diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.h b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
>> index bab94f763e2c..c3866d6451e2 100644
>> --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
>> +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
>> @@ -39,7 +39,8 @@
>>   				 NETIF_F_SG | NETIF_F_TSO | \
>>   				 NETIF_F_TSO6 | \
>>   				 NETIF_F_IPV6_CSUM)
>> -#define NEXT_RX_DESP_IDX(X, Y)	(((X) + 1) & ((Y) - 1))
>> +#define MTK_HW_FEATURES_MT7628	(NETIF_F_SG | NETIF_F_RXCSUM)
>> +#define NEXT_DESP_IDX(X, Y)	(((X) + 1) & ((Y) - 1))
>>   
>>   #define MTK_MAX_RX_RING_NUM	4
>>   #define MTK_HW_LRO_DMA_SIZE	8
>> @@ -118,6 +119,7 @@
>>   /* PDMA Global Configuration Register */
>>   #define MTK_PDMA_GLO_CFG	0xa04
>>   #define MTK_MULTI_EN		BIT(10)
>> +#define MTK_PDMA_SIZE_8DWORDS	(1 << 4)
>>   
>>   /* PDMA Reset Index Register */
>>   #define MTK_PDMA_RST_IDX	0xa08
>> @@ -276,11 +278,18 @@
>>   #define TX_DMA_OWNER_CPU	BIT(31)
>>   #define TX_DMA_LS0		BIT(30)
>>   #define TX_DMA_PLEN0(_x)	(((_x) & MTK_TX_DMA_BUF_LEN) << 16)
>> +#define TX_DMA_PLEN1(_x)	((_x) & MTK_TX_DMA_BUF_LEN)
>>   #define TX_DMA_SWC		BIT(14)
>>   #define TX_DMA_SDL(_x)		(((_x) & 0x3fff) << 16)
>>   
>> +/* PDMA on MT7628 */
>> +#define TX_DMA_DONE		BIT(31)
>> +#define TX_DMA_LS1		BIT(14)
>> +#define TX_DMA_DESP2_DEF	(TX_DMA_LS0 | TX_DMA_DONE)
>> +
>>   /* QDMA descriptor rxd2 */
>>   #define RX_DMA_DONE		BIT(31)
>> +#define RX_DMA_LSO		BIT(30)
>>   #define RX_DMA_PLEN0(_x)	(((_x) & 0x3fff) << 16)
>>   #define RX_DMA_GET_PLEN0(_x)	(((_x) >> 16) & 0x3fff)
>>   
>> @@ -289,6 +298,7 @@
>>   
>>   /* QDMA descriptor rxd4 */
>>   #define RX_DMA_L4_VALID		BIT(24)
>> +#define RX_DMA_L4_VALID_PDMA	BIT(30)		/* when PDMA is used */
>>   #define RX_DMA_FPORT_SHIFT	19
>>   #define RX_DMA_FPORT_MASK	0x7
>>   
>> @@ -412,6 +422,19 @@
>>   #define CO_QPHY_SEL            BIT(0)
>>   #define GEPHY_MAC_SEL          BIT(1)
>>   
>> +/* MT7628/88 specific stuff */
>> +#define MT7628_PDMA_OFFSET	0x0800
>> +#define MT7628_SDM_OFFSET	0x0c00
>> +
>> +#define MT7628_TX_BASE_PTR0	(MT7628_PDMA_OFFSET + 0x00)
>> +#define MT7628_TX_MAX_CNT0	(MT7628_PDMA_OFFSET + 0x04)
>> +#define MT7628_TX_CTX_IDX0	(MT7628_PDMA_OFFSET + 0x08)
>> +#define MT7628_TX_DTX_IDX0	(MT7628_PDMA_OFFSET + 0x0c)
>> +#define MT7628_PST_DTX_IDX0	BIT(0)
>> +
>> +#define MT7628_SDM_MAC_ADRL	(MT7628_SDM_OFFSET + 0x0c)
>> +#define MT7628_SDM_MAC_ADRH	(MT7628_SDM_OFFSET + 0x10)
>> +
>>   struct mtk_rx_dma {
>>   	unsigned int rxd1;
>>   	unsigned int rxd2;
>> @@ -509,6 +532,7 @@ enum mtk_clks_map {
>>   				 BIT(MTK_CLK_SGMII_CK) | \
>>   				 BIT(MTK_CLK_ETH2PLL))
>>   #define MT7621_CLKS_BITMAP	(0)
>> +#define MT7628_CLKS_BITMAP	(0)
>>   #define MT7629_CLKS_BITMAP	(BIT(MTK_CLK_ETHIF) | BIT(MTK_CLK_ESW) |  \
>>   				 BIT(MTK_CLK_GP0) | BIT(MTK_CLK_GP1) | \
>>   				 BIT(MTK_CLK_GP2) | BIT(MTK_CLK_FE) | \
>> @@ -563,6 +587,10 @@ struct mtk_tx_ring {
>>   	struct mtk_tx_dma *last_free;
>>   	u16 thresh;
>>   	atomic_t free_count;
>> +	int dma_size;
>> +	struct mtk_tx_dma *dma_pdma;	/* For MT7628/88 PDMA handling */
>> +	dma_addr_t phys_pdma;
>> +	int cpu_idx;
>>   };
>>   
>>   /* PDMA rx ring mode */
>> @@ -604,6 +632,7 @@ enum mkt_eth_capabilities {
>>   	MTK_HWLRO_BIT,
>>   	MTK_SHARED_INT_BIT,
>>   	MTK_TRGMII_MT7621_CLK_BIT,
>> +	MTK_SOC_MT7628,
>>   
>>   	/* MUX BITS*/
>>   	MTK_ETH_MUX_GDM1_TO_GMAC1_ESW_BIT,
>> @@ -696,6 +725,8 @@ enum mkt_eth_capabilities {
>>   
>>   #define MT7623_CAPS  (MTK_GMAC1_RGMII | MTK_GMAC1_TRGMII | MTK_GMAC2_RGMII)
>>   
>> +#define MT7628_CAPS  (MTK_SHARED_INT | MTK_SOC_MT7628)
>> +
>>   #define MT7629_CAPS  (MTK_GMAC1_SGMII | MTK_GMAC2_SGMII | MTK_GMAC2_GEPHY | \
>>   		      MTK_GDM1_ESW | MTK_MUX_GDM1_TO_GMAC1_ESW | \
>>   		      MTK_MUX_GMAC2_GMAC0_TO_GEPHY | \
>> @@ -707,6 +738,7 @@ enum mkt_eth_capabilities {
>>    * @ana_rgc3:                   The offset for register ANA_RGC3 related to
>>    *				sgmiisys syscon
>>    * @caps			Flags shown the extra capability for the SoC
>> + * @hw_features			Flags shown HW features
>>    * @required_clks		Flags shown the bitmap for required clocks on
>>    *				the target SoC
>>    * @required_pctl		A bool value to show whether the SoC requires
>> @@ -717,6 +749,7 @@ struct mtk_soc_data {
>>   	u32		caps;
>>   	u32		required_clks;
>>   	bool		required_pctl;
>> +	netdev_features_t hw_features;
>>   };
>>   
>>   /* currently no SoC has more than 2 macs */
>> @@ -810,6 +843,10 @@ struct mtk_eth {
>>   	unsigned long			state;
>>   
>>   	const struct mtk_soc_data	*soc;
>> +
>> +	u32				tx_int_mask_reg;
>> +	u32				rx_dma_l4_valid;
>> +	int				ip_align;
>>   };
>>   
>>   /* struct mtk_mac -	the structure that holds the info about the MACs of the
>> -- 
>> 2.22.0
>>
>>
>> _______________________________________________
>> Linux-mediatek mailing list
>> Linux-mediatek@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-mediatek

Viele Grüße,
Stefan

-- 
DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr@denx.de

^ permalink raw reply

* [PATCH AUTOSEL 5.1 137/141] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region()
From: Sasha Levin @ 2019-07-19  4:02 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Arnd Bergmann, David S . Miller, Sasha Levin, netdev,
	clang-built-linux
In-Reply-To: <20190719040246.15945-1-sashal@kernel.org>

From: Arnd Bergmann <arnd@arndb.de>

[ Upstream commit 752c2ea2d8e7c23b0f64e2e7d4337f3604d44c9f ]

The cudbg_collect_mem_region() and cudbg_read_fw_mem() both use several
hundred kilobytes of kernel stack space. One gets inlined into the other,
which causes the stack usage to be combined beyond the warning limit
when building with clang:

drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c:1057:12: error: stack frame size of 1244 bytes in function 'cudbg_collect_mem_region' [-Werror,-Wframe-larger-than=]

Restructuring cudbg_collect_mem_region() lets clang do the same
optimization that gcc does and reuse the stack slots as it can
see that the large variables are never used together.

A better fix might be to avoid using cudbg_meminfo on the stack
altogether, but that requires a larger rewrite.

Fixes: a1c69520f785 ("cxgb4: collect MC memory dump")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../net/ethernet/chelsio/cxgb4/cudbg_lib.c    | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
index 7c5bfc931128..f46202288837 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
@@ -1066,14 +1066,12 @@ static void cudbg_t4_fwcache(struct cudbg_init *pdbg_init,
 	}
 }
 
-static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
-				    struct cudbg_buffer *dbg_buff,
-				    struct cudbg_error *cudbg_err,
-				    u8 mem_type)
+static unsigned long cudbg_mem_region_size(struct cudbg_init *pdbg_init,
+					   struct cudbg_error *cudbg_err,
+					   u8 mem_type)
 {
 	struct adapter *padap = pdbg_init->adap;
 	struct cudbg_meminfo mem_info;
-	unsigned long size;
 	u8 mc_idx;
 	int rc;
 
@@ -1087,7 +1085,16 @@ static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
 	if (rc)
 		return rc;
 
-	size = mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+	return mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+}
+
+static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
+				    struct cudbg_buffer *dbg_buff,
+				    struct cudbg_error *cudbg_err,
+				    u8 mem_type)
+{
+	unsigned long size = cudbg_mem_region_size(pdbg_init, cudbg_err, mem_type);
+
 	return cudbg_read_fw_mem(pdbg_init, dbg_buff, mem_type, size,
 				 cudbg_err);
 }
-- 
2.20.1


^ permalink raw reply related

* Re: [PATCH] qca8k: enable port flow control
From: Vinod Koul @ 2019-07-19  4:18 UTC (permalink / raw)
  To: xiaofeis
  Cc: davem, netdev, andrew, linux-arm-msm, bjorn.andersson,
	vivien.didelot, f.fainelli, niklas.cassel, xiazha
In-Reply-To: <1563504791-43398-1-git-send-email-xiaofeis@codeaurora.org>

On 19-07-19, 10:53, xiaofeis wrote:
> Set phy device advertising to enable MAC flow control.

How about:

to Pause for enabling MAC flow control 
> 
> Change-Id: Ibf0f554b072fc73136ec9f7ffb90c20b25a4faae

Please remove this

> Signed-off-by: Xiaofei Shen <xiaofeis@codeaurora.org>
> ---
>  drivers/net/dsa/qca8k.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c
> index d93be14..95ac081 100644
> --- a/drivers/net/dsa/qca8k.c
> +++ b/drivers/net/dsa/qca8k.c
> @@ -1,7 +1,7 @@
>  /*
>   * Copyright (C) 2009 Felix Fietkau <nbd@nbd.name>
>   * Copyright (C) 2011-2012 Gabor Juhos <juhosg@openwrt.org>
> - * Copyright (c) 2015, The Linux Foundation. All rights reserved.
> + * Copyright (c) 2015, 2019, The Linux Foundation. All rights reserved.
>   * Copyright (c) 2016 John Crispin <john@phrozen.org>
>   *
>   * This program is free software; you can redistribute it and/or modify
> @@ -800,6 +800,8 @@
>  	qca8k_port_set_status(priv, port, 1);
>  	priv->port_sts[port].enabled = 1;
>  
> +	phy->advertising |= (ADVERTISED_Pause | ADVERTISED_Asym_Pause);
> +
>  	return 0;
>  }
>  
> -- 
> 1.9.1

-- 
~Vinod

^ permalink raw reply

* Re: [PATCH v2 net-next 03/11] net/ipv4: Plumb support for filtering route dumps
From: Hangbin Liu @ 2019-07-19  4:17 UTC (permalink / raw)
  To: David Ahern; +Cc: netdev, David Ahern, Jianlin Shi
In-Reply-To: <20181016015651.22696-4-dsahern@kernel.org>

Hi David,

Before commit 18a8021a7be3 ("net/ipv4: Plumb support for filtering route
dumps"), when we dump a non-exist table, ip cmd exits silently.

# ip -4 route list table 1
# echo $?
0

After commit 18a8021a7be3 ("net/ipv4: Plumb support for filtering route
dumps"). When we dump a non-exist table, as we returned -ENOENT, ip route
shows:

# ip -4 route show table 1
Error: ipv4: FIB table does not exist.
Dump terminated
# echo $?
2

For me it looks make sense to return -ENOENT if we do not have the route
table. But this changes the userspace behavior. Do you think if we need to
keep backward compatible or just let it do as it is right now?

Thanks
Hangbin

^ permalink raw reply

* [PATCH AUTOSEL 4.19 098/101] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region()
From: Sasha Levin @ 2019-07-19  4:07 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Arnd Bergmann, David S . Miller, Sasha Levin, netdev,
	clang-built-linux
In-Reply-To: <20190719040732.17285-1-sashal@kernel.org>

From: Arnd Bergmann <arnd@arndb.de>

[ Upstream commit 752c2ea2d8e7c23b0f64e2e7d4337f3604d44c9f ]

The cudbg_collect_mem_region() and cudbg_read_fw_mem() both use several
hundred kilobytes of kernel stack space. One gets inlined into the other,
which causes the stack usage to be combined beyond the warning limit
when building with clang:

drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c:1057:12: error: stack frame size of 1244 bytes in function 'cudbg_collect_mem_region' [-Werror,-Wframe-larger-than=]

Restructuring cudbg_collect_mem_region() lets clang do the same
optimization that gcc does and reuse the stack slots as it can
see that the large variables are never used together.

A better fix might be to avoid using cudbg_meminfo on the stack
altogether, but that requires a larger rewrite.

Fixes: a1c69520f785 ("cxgb4: collect MC memory dump")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../net/ethernet/chelsio/cxgb4/cudbg_lib.c    | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
index d97e0d7e541a..b766362031c3 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
@@ -1065,14 +1065,12 @@ static void cudbg_t4_fwcache(struct cudbg_init *pdbg_init,
 	}
 }
 
-static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
-				    struct cudbg_buffer *dbg_buff,
-				    struct cudbg_error *cudbg_err,
-				    u8 mem_type)
+static unsigned long cudbg_mem_region_size(struct cudbg_init *pdbg_init,
+					   struct cudbg_error *cudbg_err,
+					   u8 mem_type)
 {
 	struct adapter *padap = pdbg_init->adap;
 	struct cudbg_meminfo mem_info;
-	unsigned long size;
 	u8 mc_idx;
 	int rc;
 
@@ -1086,7 +1084,16 @@ static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
 	if (rc)
 		return rc;
 
-	size = mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+	return mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+}
+
+static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
+				    struct cudbg_buffer *dbg_buff,
+				    struct cudbg_error *cudbg_err,
+				    u8 mem_type)
+{
+	unsigned long size = cudbg_mem_region_size(pdbg_init, cudbg_err, mem_type);
+
 	return cudbg_read_fw_mem(pdbg_init, dbg_buff, mem_type, size,
 				 cudbg_err);
 }
-- 
2.20.1


^ permalink raw reply related

* [PATCH AUTOSEL 5.1 114/141] rds: Accept peer connection reject messages due to incompatible version
From: Sasha Levin @ 2019-07-19  4:02 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Gerd Rausch, Zhu Yanjun, Santosh Shilimkar, Sasha Levin, netdev,
	linux-rdma
In-Reply-To: <20190719040246.15945-1-sashal@kernel.org>

From: Gerd Rausch <gerd.rausch@oracle.com>

[ Upstream commit 8c6166cfc9cd48e93d9176561e50b63cef4330d5 ]

Prior to
commit d021fabf525ff ("rds: rdma: add consumer reject")

function "rds_rdma_cm_event_handler_cmn" would always honor a rejected
connection attempt by issuing a "rds_conn_drop".

The commit mentioned above added a "break", eliminating
the "fallthrough" case and made the "rds_conn_drop" rather conditional:

Now it only happens if a "consumer defined" reject (i.e. "rdma_reject")
carries an integer-value of "1" inside "private_data":

  if (!conn)
    break;
    err = (int *)rdma_consumer_reject_data(cm_id, event, &len);
    if (!err || (err && ((*err) == RDS_RDMA_REJ_INCOMPAT))) {
      pr_warn("RDS/RDMA: conn <%pI6c, %pI6c> rejected, dropping connection\n",
              &conn->c_laddr, &conn->c_faddr);
              conn->c_proposed_version = RDS_PROTOCOL_COMPAT_VERSION;
              rds_conn_drop(conn);
    }
    rdsdebug("Connection rejected: %s\n",
             rdma_reject_msg(cm_id, event->status));
    break;
    /* FALLTHROUGH */
A number of issues are worth mentioning here:
   #1) Previous versions of the RDS code simply rejected a connection
       by calling "rdma_reject(cm_id, NULL, 0);"
       So the value of the payload in "private_data" will not be "1",
       but "0".

   #2) Now the code has become dependent on host byte order and sizing.
       If one peer is big-endian, the other is little-endian,
       or there's a difference in sizeof(int) (e.g. ILP64 vs LP64),
       the *err check does not work as intended.

   #3) There is no check for "len" to see if the data behind *err is even valid.
       Luckily, it appears that the "rdma_reject(cm_id, NULL, 0)" will always
       carry 148 bytes of zeroized payload.
       But that should probably not be relied upon here.

   #4) With the added "break;",
       we might as well drop the misleading "/* FALLTHROUGH */" comment.

This commit does _not_ address issue #2, as the sender would have to
agree on a byte order as well.

Here is the sequence of messages in this observed error-scenario:
   Host-A is pre-QoS changes (excluding the commit mentioned above)
   Host-B is post-QoS changes (including the commit mentioned above)

   #1 Host-B
      issues a connection request via function "rds_conn_path_transition"
      connection state transitions to "RDS_CONN_CONNECTING"

   #2 Host-A
      rejects the incompatible connection request (from #1)
      It does so by calling "rdma_reject(cm_id, NULL, 0);"

   #3 Host-B
      receives an "RDMA_CM_EVENT_REJECTED" event (from #2)
      But since the code is changed in the way described above,
      it won't drop the connection here, simply because "*err == 0".

   #4 Host-A
      issues a connection request

   #5 Host-B
      receives an "RDMA_CM_EVENT_CONNECT_REQUEST" event
      and ends up calling "rds_ib_cm_handle_connect".
      But since the state is already in "RDS_CONN_CONNECTING"
      (as of #1) it will end up issuing a "rdma_reject" without
      dropping the connection:
         if (rds_conn_state(conn) == RDS_CONN_CONNECTING) {
             /* Wait and see - our connect may still be succeeding */
             rds_ib_stats_inc(s_ib_connect_raced);
         }
         goto out;

   #6 Host-A
      receives an "RDMA_CM_EVENT_REJECTED" event (from #5),
      drops the connection and tries again (goto #4) until it gives up.

Tested-by: Zhu Yanjun <yanjun.zhu@oracle.com>
Signed-off-by: Gerd Rausch <gerd.rausch@oracle.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 net/rds/rdma_transport.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/net/rds/rdma_transport.c b/net/rds/rdma_transport.c
index 46bce8389066..9db455d02255 100644
--- a/net/rds/rdma_transport.c
+++ b/net/rds/rdma_transport.c
@@ -112,7 +112,9 @@ static int rds_rdma_cm_event_handler_cmn(struct rdma_cm_id *cm_id,
 		if (!conn)
 			break;
 		err = (int *)rdma_consumer_reject_data(cm_id, event, &len);
-		if (!err || (err && ((*err) == RDS_RDMA_REJ_INCOMPAT))) {
+		if (!err ||
+		    (err && len >= sizeof(*err) &&
+		     ((*err) <= RDS_RDMA_REJ_INCOMPAT))) {
 			pr_warn("RDS/RDMA: conn <%pI6c, %pI6c> rejected, dropping connection\n",
 				&conn->c_laddr, &conn->c_faddr);
 			conn->c_proposed_version = RDS_PROTOCOL_COMPAT_VERSION;
@@ -122,7 +124,6 @@ static int rds_rdma_cm_event_handler_cmn(struct rdma_cm_id *cm_id,
 		rdsdebug("Connection rejected: %s\n",
 			 rdma_reject_msg(cm_id, event->status));
 		break;
-		/* FALLTHROUGH */
 	case RDMA_CM_EVENT_ADDR_ERROR:
 	case RDMA_CM_EVENT_ROUTE_ERROR:
 	case RDMA_CM_EVENT_CONNECT_ERROR:
-- 
2.20.1


^ permalink raw reply related

* [PATCH AUTOSEL 5.2 167/171] cxgb4: reduce kernel stack usage in cudbg_collect_mem_region()
From: Sasha Levin @ 2019-07-19  3:56 UTC (permalink / raw)
  To: linux-kernel, stable
  Cc: Arnd Bergmann, David S . Miller, Sasha Levin, netdev,
	clang-built-linux
In-Reply-To: <20190719035643.14300-1-sashal@kernel.org>

From: Arnd Bergmann <arnd@arndb.de>

[ Upstream commit 752c2ea2d8e7c23b0f64e2e7d4337f3604d44c9f ]

The cudbg_collect_mem_region() and cudbg_read_fw_mem() both use several
hundred kilobytes of kernel stack space. One gets inlined into the other,
which causes the stack usage to be combined beyond the warning limit
when building with clang:

drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c:1057:12: error: stack frame size of 1244 bytes in function 'cudbg_collect_mem_region' [-Werror,-Wframe-larger-than=]

Restructuring cudbg_collect_mem_region() lets clang do the same
optimization that gcc does and reuse the stack slots as it can
see that the large variables are never used together.

A better fix might be to avoid using cudbg_meminfo on the stack
altogether, but that requires a larger rewrite.

Fixes: a1c69520f785 ("cxgb4: collect MC memory dump")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 .../net/ethernet/chelsio/cxgb4/cudbg_lib.c    | 19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
index a76529a7662d..c2e92786608b 100644
--- a/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
+++ b/drivers/net/ethernet/chelsio/cxgb4/cudbg_lib.c
@@ -1054,14 +1054,12 @@ static void cudbg_t4_fwcache(struct cudbg_init *pdbg_init,
 	}
 }
 
-static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
-				    struct cudbg_buffer *dbg_buff,
-				    struct cudbg_error *cudbg_err,
-				    u8 mem_type)
+static unsigned long cudbg_mem_region_size(struct cudbg_init *pdbg_init,
+					   struct cudbg_error *cudbg_err,
+					   u8 mem_type)
 {
 	struct adapter *padap = pdbg_init->adap;
 	struct cudbg_meminfo mem_info;
-	unsigned long size;
 	u8 mc_idx;
 	int rc;
 
@@ -1075,7 +1073,16 @@ static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
 	if (rc)
 		return rc;
 
-	size = mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+	return mem_info.avail[mc_idx].limit - mem_info.avail[mc_idx].base;
+}
+
+static int cudbg_collect_mem_region(struct cudbg_init *pdbg_init,
+				    struct cudbg_buffer *dbg_buff,
+				    struct cudbg_error *cudbg_err,
+				    u8 mem_type)
+{
+	unsigned long size = cudbg_mem_region_size(pdbg_init, cudbg_err, mem_type);
+
 	return cudbg_read_fw_mem(pdbg_init, dbg_buff, mem_type, size,
 				 cudbg_err);
 }
-- 
2.20.1


^ permalink raw reply related

* [GIT] Networking
From: David Miller @ 2019-07-19  3:44 UTC (permalink / raw)
  To: torvalds; +Cc: akpm, netdev, linux-kernel


1) Fix AF_XDP cq entry leak, from Ilya Maximets.

2) Fix handling of PHY power-down on RTL8411B, from Heiner Kallweit.

3) Add some new PCI IDs to iwlwifi, from Ihab Zhaika.

4) Fix handling of neigh timers wrt. entries added by userspace,
   from Lorenzo Bianconi.

5) Various cases of missing of_node_put(), from Nishka Dasgupta.

6) The new NET_ACT_CT needs to depend upon NF_NAT, from Yue Haibing.

7) Various RDS layer fixes, from Gerd Rausch.

8) Fix some more fallout from TCQ_F_CAN_BYPASS generalization, from
   Cong Wang.

9) Fix FIB source validation checks over loopback, also from Cong
   Wang.

10) Use promisc for unsupported number of filters, from Justin Chen.

11) Missing sibling route unlink on failure in ipv6, from Ido
    Schimmel.

Please pull, thanks a lot!

The following changes since commit 192f0f8e9db7efe4ac98d47f5fa4334e43c1204d:

  Merge tag 'powerpc-5.3-1' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux (2019-07-13 16:08:36 -0700)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git 

for you to fetch changes up to 8d650cdedaabb33e85e9b7c517c0c71fcecc1de9:

  tcp: fix tcp_set_congestion_control() use from bpf hook (2019-07-18 20:33:48 -0700)

----------------------------------------------------------------
Andrii Nakryiko (9):
      bpf: fix precision bit propagation for BPF_ST instructions
      libbpf: fix ptr to u64 conversion warning on 32-bit platforms
      bpf: fix BTF verifier size resolution logic
      selftests/bpf: add trickier size resolution tests
      selftests/bpf: use typedef'ed arrays as map values
      selftests/bpf: remove logic duplication in test_verifier
      libbpf: fix another GCC8 warning for strncpy
      selftests/bpf: fix test_verifier/test_maps make dependencies
      selftests/bpf: structure test_{progs, maps, verifier} test runners uniformly

Arnd Bergmann (1):
      ath10k: work around uninitialized vht_pfr variable

Benjamin Poirier (1):
      be2net: Signal that the device cannot transmit during reconfiguration

Chuhong Yuan (3):
      liquidio: Replace vmalloc + memset with vzalloc
      net/mlx5: Replace kfree with kvfree
      gve: replace kfree with kvfree

Cong Wang (3):
      net_sched: unset TCQ_F_CAN_BYPASS when adding filters
      fib: relax source validation check for loopback packets
      selftests: add a test case for rp_filter

Daniel Borkmann (2):
      Merge branch 'bpf-btf-size-verification-fix'
      Merge branch 'bpf-fix-wide-loads-sockaddr'

Daniel T. Lee (1):
      tools: bpftool: add raw_tracepoint_writable prog type to header

David Ahern (1):
      ipv6: rt6_check should return NULL if 'from' is NULL

David S. Miller (6):
      Merge tag 'mlx5-fixes-2019-07-15' of git://git.kernel.org/.../saeed/linux
      Merge branch 'net-rds-RDMA-fixes'
      Merge branch 'mlxsw-Two-fixes'
      Merge branch 'ipv4-relax-source-validation-check-for-loopback-packets'
      Merge tag 'wireless-drivers-for-davem-2019-07-18' of git://git.kernel.org/.../kvalo/wireless-drivers
      Merge git://git.kernel.org/.../bpf/bpf

Denis Efremov (1):
      gve: Remove the exporting of gve_probe

Eli Cohen (1):
      net/mlx5e: Verify encapsulation is supported

Eric Dumazet (1):
      tcp: fix tcp_set_congestion_control() use from bpf hook

Fuqian Huang (4):
      atm: idt77252: Remove call to memset after dma_alloc_coherent
      ethernet: remove redundant memset
      hippi: Remove call to memset after pci_alloc_consistent
      vmxnet3: Remove call to memset after dma_alloc_coherent

Gerd Rausch (7):
      net/rds: Give fr_state a chance to transition to FRMR_IS_FREE
      net/rds: Get rid of "wait_clean_list_grace" and add locking
      net/rds: Wait for the FRMR_IS_FREE (or FRMR_IS_STALE) transition after posting IB_WR_LOCAL_INV
      net/rds: Fix NULL/ERR_PTR inconsistency
      net/rds: Set fr_state only to FRMR_IS_FREE if IB_WR_LOCAL_INV had been successful
      net/rds: Keep track of and wait for FRWR segments in use upon shutdown
      net/rds: Initialize ic->i_fastreg_wrs upon allocation

Gustavo A. R. Silva (1):
      bpf: verifier: avoid fall-through warnings

Haishuang Yan (1):
      sit: use dst_cache in ipip6_tunnel_xmit

Hariprasad Kelam (1):
      net: sctp: fix warning "NULL check before some freeing functions is not needed"

Heiner Kallweit (1):
      r8169: fix issue with confused RX unit after PHY power-down on RTL8411b

Ido Schimmel (2):
      mlxsw: spectrum: Do not process learned records with a dummy FID
      ipv6: Unlink sibling route in case of failure

Ihab Zhaika (1):
      iwlwifi: add new cards for 9000 and 20000 series

Ilias Apalodimas (1):
      MAINTAINERS: update netsec driver

Ilya Leoshkevich (15):
      selftests/bpf: fix bpf_target_sparc check
      selftests/bpf: do not ignore clang failures
      selftests/bpf: compile progs with -D__TARGET_ARCH_$(SRCARCH)
      selftests/bpf: fix s930 -> s390 typo
      selftests/bpf: make PT_REGS_* work in userspace
      selftests/bpf: fix compiling loop{1, 2, 3}.c on s390
      selftests/bpf: fix attach_probe on s390
      selftests/bpf: make directory prerequisites order-only
      selftests/bpf: put test_stub.o into $(OUTPUT)
      samples/bpf: build with -D__TARGET_ARCH_$(SRCARCH)
      selftests/bpf: fix "alu with different scalars 1" on s390
      selftests/bpf: skip nmi test when perf hw events are disabled
      selftests/bpf: fix perf_buffer on s390
      selftests/bpf: fix "valid read map access into a read-only array 1" on s390
      selftests/bpf: fix test_xdp_noinline on s390

Ilya Maximets (2):
      xdp: fix possible cq entry leak
      xdp: fix potential deadlock on socket mutex

Jon Maloy (1):
      tipc: initialize 'validated' field of received packets

Justin Chen (1):
      net: bcmgenet: use promisc for unsupported filters

Lorenzo Bianconi (1):
      net: neigh: fix multiple neigh timer scheduling

Luca Coelho (1):
      iwlwifi: pcie: add support for qu c-step devices

Michael Chan (1):
      bnxt_en: Fix VNIC accounting when enabling aRFS on 57500 chips.

Nishka Dasgupta (3):
      net: ethernet: ti: cpsw: Add of_node_put() before return and break
      net: ethernet: mscc: ocelot_board: Add of_node_put() before return
      net: ethernet: mediatek: mtk_eth_soc: Add of_node_put() before goto

Petr Machata (1):
      mlxsw: spectrum_dcb: Configure DSCP map as the last rule is removed

Phong Tran (1):
      ISDN: hfcsusb: checking idx of ep configuration

Qian Cai (1):
      skbuff: fix compilation warnings in skb_dump()

Rogan Dawes (1):
      usb: qmi_wwan: add D-Link DWM-222 A2 device ID

Rosen Penev (1):
      net: ag71xx: Add missing header

Sergej Benilov (1):
      sis900: correct a few typos

Soeren Moch (1):
      rt2x00usb: fix rx queue hang

Stanislav Fomichev (5):
      bpf: rename bpf_ctx_wide_store_ok to bpf_ctx_wide_access_ok
      bpf: allow wide aligned loads for bpf_sock_addr user_ip6 and msg_src_ip6
      selftests/bpf: rename verifier/wide_store.c to verifier/wide_access.c
      selftests/bpf: add selftests for wide loads
      bpf: sync bpf.h to tools/

Su Yanjun (1):
      udp: Fix typo in net/ipv4/udp.c

Taehee Yoo (1):
      caif-hsi: fix possible deadlock in cfhsi_exit_module()

Tasos Sahanidis (1):
      sky2: Disable MSI on P5W DH Deluxe

Vasily Gorbik (1):
      MAINTAINERS: update BPF JIT S390 maintainers

Vedang Patel (1):
      fix: taprio: Change type of txtime-delay parameter to u32

Vincent Bernat (1):
      bonding: add documentation for peer_notif_delay

Vlad Buslov (2):
      net/mlx5e: Rely on filter_dev instead of dissector keys for tunnels
      net/mlx5e: Allow dissector meta key in tc flower

Wei Yongjun (3):
      net: dsa: sja1105: Fix missing unlock on error in sk_buff()
      ag71xx: fix error return code in ag71xx_probe()
      ag71xx: fix return value check in ag71xx_probe()

YueHaibing (1):
      net/sched: Make NET_ACT_CT depends on NF_NAT

 Documentation/networking/bonding.txt                         |  16 ++++++++--
 MAINTAINERS                                                  |   3 +-
 drivers/atm/idt77252.c                                       |   1 -
 drivers/isdn/hardware/mISDN/hfcsusb.c                        |   3 ++
 drivers/net/caif/caif_hsi.c                                  |   2 +-
 drivers/net/ethernet/atheros/ag71xx.c                        |   9 ++++--
 drivers/net/ethernet/atheros/atlx/atl1.c                     |   2 --
 drivers/net/ethernet/atheros/atlx/atl2.c                     |   1 -
 drivers/net/ethernet/broadcom/bnxt/bnxt.c                    |   9 +++---
 drivers/net/ethernet/broadcom/genet/bcmgenet.c               |  57 ++++++++++++++++------------------
 drivers/net/ethernet/cavium/liquidio/request_manager.c       |   6 ++--
 drivers/net/ethernet/chelsio/cxgb4/sched.c                   |   1 -
 drivers/net/ethernet/emulex/benet/be_main.c                  |   6 +++-
 drivers/net/ethernet/freescale/fec_main.c                    |   2 --
 drivers/net/ethernet/google/gve/gve_main.c                   |  23 +++++++-------
 drivers/net/ethernet/google/gve/gve_rx.c                     |   4 +--
 drivers/net/ethernet/jme.c                                   |   5 ---
 drivers/net/ethernet/marvell/skge.c                          |   2 --
 drivers/net/ethernet/marvell/sky2.c                          |   7 +++++
 drivers/net/ethernet/mediatek/mtk_eth_soc.c                  |   4 ++-
 drivers/net/ethernet/mellanox/mlx4/eq.c                      |   2 --
 drivers/net/ethernet/mellanox/mlx5/core/en_tc.c              |  13 ++++----
 drivers/net/ethernet/mellanox/mlx5/core/eswitch.c            |   1 -
 drivers/net/ethernet/mellanox/mlx5/core/eswitch_offloads.c   |   3 --
 drivers/net/ethernet/mellanox/mlx5/core/health.c             |   2 +-
 drivers/net/ethernet/mellanox/mlxsw/pci.c                    |   1 -
 drivers/net/ethernet/mellanox/mlxsw/spectrum.h               |   1 +
 drivers/net/ethernet/mellanox/mlxsw/spectrum_dcb.c           |  16 +++++-----
 drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c           |  10 ++++++
 drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c     |   6 ++++
 drivers/net/ethernet/mscc/ocelot_board.c                     |   5 ++-
 drivers/net/ethernet/neterion/s2io.c                         |   1 -
 drivers/net/ethernet/qlogic/netxen/netxen_nic_ctx.c          |   3 --
 drivers/net/ethernet/realtek/r8169_main.c                    | 137 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 drivers/net/ethernet/sis/sis900.c                            |   6 ++--
 drivers/net/ethernet/ti/cpsw.c                               |  26 +++++++++++-----
 drivers/net/ethernet/ti/tlan.c                               |   1 -
 drivers/net/hippi/rrunner.c                                  |   2 --
 drivers/net/usb/qmi_wwan.c                                   |   1 +
 drivers/net/vmxnet3/vmxnet3_drv.c                            |   1 -
 drivers/net/wireless/ath/ath10k/mac.c                        |   2 ++
 drivers/net/wireless/intel/iwlwifi/cfg/22000.c               |  53 +++++++++++++++++++++++++++++++
 drivers/net/wireless/intel/iwlwifi/iwl-config.h              |   7 +++++
 drivers/net/wireless/intel/iwlwifi/iwl-csr.h                 |   2 ++
 drivers/net/wireless/intel/iwlwifi/pcie/drv.c                |  23 ++++++++++++++
 drivers/net/wireless/ralink/rt2x00/rt2x00usb.c               |  12 ++++----
 include/linux/filter.h                                       |   2 +-
 include/net/tcp.h                                            |   3 +-
 include/uapi/linux/bpf.h                                     |   4 +--
 include/uapi/linux/pkt_sched.h                               |   2 +-
 kernel/bpf/btf.c                                             |  19 +++++++-----
 kernel/bpf/verifier.c                                        |  13 ++++----
 net/core/filter.c                                            |  26 +++++++++++-----
 net/core/neighbour.c                                         |   2 ++
 net/core/skbuff.c                                            |   2 +-
 net/dsa/tag_sja1105.c                                        |   1 +
 net/ipv4/fib_frontend.c                                      |   5 +++
 net/ipv4/tcp.c                                               |   4 ++-
 net/ipv4/tcp_cong.c                                          |   6 ++--
 net/ipv4/udp.c                                               |   2 +-
 net/ipv6/ip6_fib.c                                           |  18 ++++++++++-
 net/ipv6/route.c                                             |   2 +-
 net/ipv6/sit.c                                               |  13 +++++---
 net/rds/ib.h                                                 |   1 +
 net/rds/ib_cm.c                                              |   9 +++++-
 net/rds/ib_frmr.c                                            |  84 +++++++++++++++++++++++++++++++++++++++++++++-----
 net/rds/ib_mr.h                                              |   4 +++
 net/rds/ib_rdma.c                                            |  60 ++++++++++++------------------------
 net/sched/Kconfig                                            |   2 +-
 net/sched/cls_api.c                                          |   1 +
 net/sched/sch_fq_codel.c                                     |   2 --
 net/sched/sch_sfq.c                                          |   2 --
 net/sched/sch_taprio.c                                       |   6 ++--
 net/sctp/sm_make_chunk.c                                     |  12 +++-----
 net/tipc/node.c                                              |   1 +
 net/xdp/xdp_umem.c                                           |  16 ++++------
 net/xdp/xsk.c                                                |  13 ++++----
 samples/bpf/Makefile                                         |   2 +-
 tools/bpf/bpftool/main.h                                     |   1 +
 tools/include/uapi/linux/bpf.h                               |   4 +--
 tools/lib/bpf/libbpf.c                                       |   4 +--
 tools/lib/bpf/xsk.c                                          |   3 +-
 tools/testing/selftests/bpf/Makefile                         |  64 +++++++++++++++++++-------------------
 tools/testing/selftests/bpf/bpf_helpers.h                    |  89 ++++++++++++++++++++++++++++++++++++----------------
 tools/testing/selftests/bpf/prog_tests/attach_probe.c        |  10 ++----
 tools/testing/selftests/bpf/prog_tests/perf_buffer.c         |   8 +----
 tools/testing/selftests/bpf/prog_tests/send_signal.c         |  33 +++++++++++++++++++-
 tools/testing/selftests/bpf/progs/loop1.c                    |   2 +-
 tools/testing/selftests/bpf/progs/loop2.c                    |   2 +-
 tools/testing/selftests/bpf/progs/loop3.c                    |   2 +-
 tools/testing/selftests/bpf/progs/test_get_stack_rawtp.c     |   3 +-
 tools/testing/selftests/bpf/progs/test_stacktrace_build_id.c |   3 +-
 tools/testing/selftests/bpf/progs/test_stacktrace_map.c      |   2 +-
 tools/testing/selftests/bpf/progs/test_xdp_noinline.c        |  17 +++++-----
 tools/testing/selftests/bpf/test_btf.c                       |  88 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 tools/testing/selftests/bpf/test_progs.h                     |   8 +++++
 tools/testing/selftests/bpf/test_verifier.c                  |  35 +++++++++------------
 tools/testing/selftests/bpf/verifier/array_access.c          |   2 +-
 tools/testing/selftests/bpf/verifier/value_ptr_arith.c       |   2 +-
 tools/testing/selftests/bpf/verifier/wide_access.c           |  73 +++++++++++++++++++++++++++++++++++++++++++
 tools/testing/selftests/bpf/verifier/wide_store.c            |  36 ----------------------
 tools/testing/selftests/net/fib_tests.sh                     |  35 ++++++++++++++++++++-
 102 files changed, 965 insertions(+), 400 deletions(-)
 create mode 100644 tools/testing/selftests/bpf/verifier/wide_access.c
 delete mode 100644 tools/testing/selftests/bpf/verifier/wide_store.c

^ permalink raw reply

* Re: [PATCH net] tcp: fix tcp_set_congestion_control() use from bpf hook
From: David Miller @ 2019-07-19  3:34 UTC (permalink / raw)
  To: edumazet; +Cc: netdev, eric.dumazet, brakmo, ncardwell
In-Reply-To: <20190719022814.233056-1-edumazet@google.com>

From: Eric Dumazet <edumazet@google.com>
Date: Thu, 18 Jul 2019 19:28:14 -0700

> Neal reported incorrect use of ns_capable() from bpf hook.
> 
> bpf_setsockopt(...TCP_CONGESTION...)
>   -> tcp_set_congestion_control()
>    -> ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)
>     -> ns_capable_common()
>      -> current_cred()
>       -> rcu_dereference_protected(current->cred, 1)
> 
> Accessing 'current' in bpf context makes no sense, since packets
> are processed from softirq context.
> 
> As Neal stated : The capability check in tcp_set_congestion_control()
> was written assuming a system call context, and then was reused from
> a BPF call site.
> 
> The fix is to add a new parameter to tcp_set_congestion_control(),
> so that the ns_capable() call is only performed under the right
> context.
> 
> Fixes: 91b5b21c7c16 ("bpf: Add support for changing congestion control")
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> Cc: Lawrence Brakmo <brakmo@fb.com>
> Reported-by: Neal Cardwell <ncardwell@google.com>

Applied and queued up for -stable.

^ permalink raw reply

* Re: [PATCH v2] ag71xx: fix return value check in ag71xx_probe()
From: David Miller @ 2019-07-19  3:34 UTC (permalink / raw)
  To: weiyongjun1; +Cc: jcliburn, chris.snook, o.rempel, netdev, kernel-janitors
In-Reply-To: <20190719012206.100478-1-weiyongjun1@huawei.com>

From: Wei Yongjun <weiyongjun1@huawei.com>
Date: Fri, 19 Jul 2019 01:22:06 +0000

> In case of error, the function of_get_mac_address() returns ERR_PTR()
> and never returns NULL. The NULL test in the return value check should
> be replaced with IS_ERR().
> 
> Fixes: d51b6ce441d3 ("net: ethernet: add ag71xx driver")
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
> Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>

Applied.

^ permalink raw reply

* Re: [PATCH v2] ag71xx: fix error return code in ag71xx_probe()
From: David Miller @ 2019-07-19  3:34 UTC (permalink / raw)
  To: weiyongjun1; +Cc: jcliburn, chris.snook, o.rempel, netdev, kernel-janitors
In-Reply-To: <20190719012157.100396-1-weiyongjun1@huawei.com>

From: Wei Yongjun <weiyongjun1@huawei.com>
Date: Fri, 19 Jul 2019 01:21:57 +0000

> Fix to return error code -ENOMEM from the dmam_alloc_coherent() error
> handling case instead of 0, as done elsewhere in this function.
> 
> Fixes: d51b6ce441d3 ("net: ethernet: add ag71xx driver")
> Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
> Reviewed-by: Oleksij Rempel <o.rempel@pengutronix.de>

Applied.

^ permalink raw reply

* [PATCH] qca8k: enable port flow control
From: xiaofeis @ 2019-07-19  2:53 UTC (permalink / raw)
  To: davem
  Cc: vkoul, netdev, andrew, linux-arm-msm, bjorn.andersson,
	vivien.didelot, f.fainelli, niklas.cassel, xiazha, xiaofeis

Set phy device advertising to enable MAC flow control.

Change-Id: Ibf0f554b072fc73136ec9f7ffb90c20b25a4faae
Signed-off-by: Xiaofei Shen <xiaofeis@codeaurora.org>
---
 drivers/net/dsa/qca8k.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/dsa/qca8k.c b/drivers/net/dsa/qca8k.c
index d93be14..95ac081 100644
--- a/drivers/net/dsa/qca8k.c
+++ b/drivers/net/dsa/qca8k.c
@@ -1,7 +1,7 @@
 /*
  * Copyright (C) 2009 Felix Fietkau <nbd@nbd.name>
  * Copyright (C) 2011-2012 Gabor Juhos <juhosg@openwrt.org>
- * Copyright (c) 2015, The Linux Foundation. All rights reserved.
+ * Copyright (c) 2015, 2019, The Linux Foundation. All rights reserved.
  * Copyright (c) 2016 John Crispin <john@phrozen.org>
  *
  * This program is free software; you can redistribute it and/or modify
@@ -800,6 +800,8 @@
 	qca8k_port_set_status(priv, port, 1);
 	priv->port_sts[port].enabled = 1;
 
+	phy->advertising |= (ADVERTISED_Pause | ADVERTISED_Asym_Pause);
+
 	return 0;
 }
 
-- 
1.9.1


^ permalink raw reply related

* Re: [PATCH net] tcp: fix tcp_set_congestion_control() use from bpf hook
From: Lawrence Brakmo @ 2019-07-19  2:55 UTC (permalink / raw)
  To: Eric Dumazet, David S . Miller; +Cc: netdev, Eric Dumazet, Neal Cardwell
In-Reply-To: <20190719022814.233056-1-edumazet@google.com>

On 7/18/19, 7:28 PM, "Eric Dumazet" <edumazet@google.com> wrote:

    Neal reported incorrect use of ns_capable() from bpf hook.
    
    bpf_setsockopt(...TCP_CONGESTION...)
      -> tcp_set_congestion_control()
       -> ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)
        -> ns_capable_common()
         -> current_cred()
          -> rcu_dereference_protected(current->cred, 1)
    
    Accessing 'current' in bpf context makes no sense, since packets
    are processed from softirq context.
    
    As Neal stated : The capability check in tcp_set_congestion_control()
    was written assuming a system call context, and then was reused from
    a BPF call site.
    
    The fix is to add a new parameter to tcp_set_congestion_control(),
    so that the ns_capable() call is only performed under the right
    context.
    
    Fixes: 91b5b21c7c16 ("bpf: Add support for changing congestion control")
    Signed-off-by: Eric Dumazet <edumazet@google.com>
    Cc: Lawrence Brakmo <brakmo@fb.com>
    Reported-by: Neal Cardwell <ncardwell@google.com>
    ---

Acked-by: Lawrence Brakmo <brakmo@fb.com>
Thanks, Eric!
 


^ permalink raw reply

* Re: [PATCH net] tcp: fix tcp_set_congestion_control() use from bpf hook
From: Neal Cardwell @ 2019-07-19  2:50 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: David S . Miller, netdev, Eric Dumazet, Lawrence Brakmo
In-Reply-To: <20190719022814.233056-1-edumazet@google.com>

On Thu, Jul 18, 2019 at 10:28 PM Eric Dumazet <edumazet@google.com> wrote:
>
> Neal reported incorrect use of ns_capable() from bpf hook.
>
> bpf_setsockopt(...TCP_CONGESTION...)
>   -> tcp_set_congestion_control()
>    -> ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)
>     -> ns_capable_common()
>      -> current_cred()
>       -> rcu_dereference_protected(current->cred, 1)
>
> Accessing 'current' in bpf context makes no sense, since packets
> are processed from softirq context.
>
> As Neal stated : The capability check in tcp_set_congestion_control()
> was written assuming a system call context, and then was reused from
> a BPF call site.
>
> The fix is to add a new parameter to tcp_set_congestion_control(),
> so that the ns_capable() call is only performed under the right
> context.
>
> Fixes: 91b5b21c7c16 ("bpf: Add support for changing congestion control")
> Signed-off-by: Eric Dumazet <edumazet@google.com>
> Cc: Lawrence Brakmo <brakmo@fb.com>
> Reported-by: Neal Cardwell <ncardwell@google.com>
> ---

Acked-by: Neal Cardwell <ncardwell@google.com>

Thanks, Eric!

neal

^ permalink raw reply

* Re: [PATCH v3 net-next 13/19] ionic: Add initial ethtool support
From: Andrew Lunn @ 2019-07-19  2:40 UTC (permalink / raw)
  To: Shannon Nelson; +Cc: netdev
In-Reply-To: <00a22345-4904-57b4-f40b-9ddd2e7398ec@pensando.io>

On Thu, Jul 18, 2019 at 05:12:07PM -0700, Shannon Nelson wrote:
> On 7/17/19 8:28 PM, Andrew Lunn wrote:
> >On Fri, Jul 12, 2019 at 10:16:31PM -0700, Shannon Nelson wrote:
> >>On 7/8/19 7:14 PM, Andrew Lunn wrote:
> >>>>+static int ionic_set_pauseparam(struct net_device *netdev,
> >>>>+				struct ethtool_pauseparam *pause)
> >>>>+{
> >>>>+	struct lif *lif = netdev_priv(netdev);
> >>>>+	struct ionic *ionic = lif->ionic;
> >>>>+	struct ionic_dev *idev = &lif->ionic->idev;
> >>>>+
> >>>>+	u32 requested_pause;
> >>>>+	u32 cur_autoneg;
> >>>>+	int err;
> >>>>+
> >>>>+	cur_autoneg = idev->port_info->config.an_enable ? AUTONEG_ENABLE :
> >>>>+								AUTONEG_DISABLE;
> >>>>+	if (pause->autoneg != cur_autoneg) {
> >>>>+		netdev_info(netdev, "Please use 'ethtool -s ...' to change autoneg\n");
> >>>>+		return -EOPNOTSUPP;
> >>>>+	}
> >>>>+
> >>>>+	/* change both at the same time */
> >>>>+	requested_pause = PORT_PAUSE_TYPE_LINK;
> >>>>+	if (pause->rx_pause)
> >>>>+		requested_pause |= IONIC_PAUSE_F_RX;
> >>>>+	if (pause->tx_pause)
> >>>>+		requested_pause |= IONIC_PAUSE_F_TX;
> >>>>+
> >>>>+	if (requested_pause == idev->port_info->config.pause_type)
> >>>>+		return 0;
> >>>>+
> >>>>+	idev->port_info->config.pause_type = requested_pause;
> >>>>+
> >>>>+	mutex_lock(&ionic->dev_cmd_lock);
> >>>>+	ionic_dev_cmd_port_pause(idev, requested_pause);
> >>>>+	err = ionic_dev_cmd_wait(ionic, devcmd_timeout);
> >>>>+	mutex_unlock(&ionic->dev_cmd_lock);
> >>>>+	if (err)
> >>>>+		return err;
> >>>Hi Shannon
> >>>
> >>>I've no idea what the firmware black box is doing, but this looks
> >>>wrong.
> >>>
> >>>pause->autoneg is about if the results of auto-neg should be used or
> >>>not. If false, just configure the MAC with the pause settings and you
> >>>are done. If the interface is being forced, so autoneg in general is
> >>>disabled, just configure the MAC and you are done.
> >>>
> >>>If pause->autoneg is true and the interface is using auto-neg as a
> >>>whole, you pass the pause values to the PHY for it to advertise and
> >>>trigger an auto-neg. Once autoneg has completed, and the resolved
> >>>settings are available, the MAC is configured with the resolved
> >>>values.
> >>>
> >>>Looking at this code, i don't see any difference between configuring
> >>>the MAC or configuring the PHY. I would expect pause->autoneg to be
> >>>part of requested_pause somehow, so the firmware knows what is should
> >>>do.
> >>>
> >>>	Andrew
> >>In this device there's actually very little the driver can do to directly
> >>configure the mac or phy besides passing through to the firmware what the
> >>user has requested - that happens here for the pause values, and in
> >>ionic_set_link_ksettings() for autoneg.  The firmware is managing the port
> >>based on these requests with the help of internally configured rules defined
> >>in a customer setting.
> >I get that. But the firmware needs to conform to what Linux
> >expects. And what i see here does not conform. That is why i gave a
> >bit of detail in my reply.
> >
> >What exactly does the firmware do? Once we know that, we can figure
> >out when the driver should return -EOPNOTSUPP because of firmware
> >limitations, and what it can configure and should return 0.
> 
> Because this is fairly smart FW, it handles this as expected.  I can add
> this as another comment in the code.

Hi Shannon

Looking at the code, i don't see how it can handle this
correctly. Please look at my comments, particularly the meaning of
pause->autoneg and describe how the firmware does the right thing,
given what information it is passed.

       Andrew

^ permalink raw reply

* Re: [PATCH] virtio-net: parameterize min ring num_free for virtio receive
From: Jason Wang @ 2019-07-19  2:36 UTC (permalink / raw)
  To: Michael S. Tsirkin, ? jiang
  Cc: davem@davemloft.net, ast@kernel.org, daniel@iogearbox.net,
	jakub.kicinski@netronome.com, hawk@kernel.org,
	john.fastabend@gmail.com, kafai@fb.com, songliubraving@fb.com,
	yhs@fb.com, virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	xdp-newbies@vger.kernel.org, bpf@vger.kernel.org,
	jiangran.jr@alibaba-inc.com
In-Reply-To: <20190718104307-mutt-send-email-mst@kernel.org>


On 2019/7/18 下午10:43, Michael S. Tsirkin wrote:
> On Thu, Jul 18, 2019 at 10:42:47AM -0400, Michael S. Tsirkin wrote:
>> On Thu, Jul 18, 2019 at 10:01:05PM +0800, Jason Wang wrote:
>>> On 2019/7/18 下午9:04, Michael S. Tsirkin wrote:
>>>> On Thu, Jul 18, 2019 at 12:55:50PM +0000, ? jiang wrote:
>>>>> This change makes ring buffer reclaim threshold num_free configurable
>>>>> for better performance, while it's hard coded as 1/2 * queue now.
>>>>> According to our test with qemu + dpdk, packet dropping happens when
>>>>> the guest is not able to provide free buffer in avail ring timely.
>>>>> Smaller value of num_free does decrease the number of packet dropping
>>>>> during our test as it makes virtio_net reclaim buffer earlier.
>>>>>
>>>>> At least, we should leave the value changeable to user while the
>>>>> default value as 1/2 * queue is kept.
>>>>>
>>>>> Signed-off-by: jiangkidd<jiangkidd@hotmail.com>
>>>> That would be one reason, but I suspect it's not the
>>>> true one. If you need more buffer due to jitter
>>>> then just increase the queue size. Would be cleaner.
>>>>
>>>>
>>>> However are you sure this is the reason for
>>>> packet drops? Do you see them dropped by dpdk
>>>> due to lack of space in the ring? As opposed to
>>>> by guest?
>>>>
>>>>
>>> Besides those, this patch depends on the user to choose a suitable threshold
>>> which is not good. You need either a good value with demonstrated numbers or
>>> something smarter.
>>>
>>> Thanks
>> I do however think that we have a problem right now: try_fill_recv can
>> take up a long time during which net stack does not run at all. Imagine
>> a 1K queue - we are talking 512 packets. That's exceessive.


Yes, we will starve a fast host in this case.


>>    napi poll
>> weight solves a similar problem, so it might make sense to cap this at
>> napi_poll_weight.
>>
>> Which will allow tweaking it through a module parameter as a
>> side effect :) Maybe just do NAPI_POLL_WEIGHT.
> Or maybe NAPI_POLL_WEIGHT/2 like we do at half the queue ;). Please
> experiment, measure performance and let the list know
>
>> Need to be careful though: queues can also be small and I don't think we
>> want to exceed queue size / 2, or maybe queue size - napi_poll_weight.
>> Definitely must not exceed the full queue size.


Looking at intel, it uses 16 and i40e uses 32.  It looks to me 
NAPI_POLL_WEIGHT/2 is better.

Jiang, want to try that and post a new patch?

Thanks


>>
>> -- 
>> MST

^ permalink raw reply

* [PATCH net] tcp: fix tcp_set_congestion_control() use from bpf hook
From: Eric Dumazet @ 2019-07-19  2:28 UTC (permalink / raw)
  To: David S . Miller
  Cc: netdev, Eric Dumazet, Eric Dumazet, Lawrence Brakmo,
	Neal Cardwell

Neal reported incorrect use of ns_capable() from bpf hook.

bpf_setsockopt(...TCP_CONGESTION...)
  -> tcp_set_congestion_control()
   -> ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)
    -> ns_capable_common()
     -> current_cred()
      -> rcu_dereference_protected(current->cred, 1)

Accessing 'current' in bpf context makes no sense, since packets
are processed from softirq context.

As Neal stated : The capability check in tcp_set_congestion_control()
was written assuming a system call context, and then was reused from
a BPF call site.

The fix is to add a new parameter to tcp_set_congestion_control(),
so that the ns_capable() call is only performed under the right
context.

Fixes: 91b5b21c7c16 ("bpf: Add support for changing congestion control")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Lawrence Brakmo <brakmo@fb.com>
Reported-by: Neal Cardwell <ncardwell@google.com>
---
 include/net/tcp.h   | 3 ++-
 net/core/filter.c   | 2 +-
 net/ipv4/tcp.c      | 4 +++-
 net/ipv4/tcp_cong.c | 6 +++---
 4 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/include/net/tcp.h b/include/net/tcp.h
index cca3c59b98bf85c2bdd7adf79157159df163b1ae..f42d300f0cfaa87520320dd287a7b4750adf7d8a 100644
--- a/include/net/tcp.h
+++ b/include/net/tcp.h
@@ -1064,7 +1064,8 @@ void tcp_get_default_congestion_control(struct net *net, char *name);
 void tcp_get_available_congestion_control(char *buf, size_t len);
 void tcp_get_allowed_congestion_control(char *buf, size_t len);
 int tcp_set_allowed_congestion_control(char *allowed);
-int tcp_set_congestion_control(struct sock *sk, const char *name, bool load, bool reinit);
+int tcp_set_congestion_control(struct sock *sk, const char *name, bool load,
+			       bool reinit, bool cap_net_admin);
 u32 tcp_slow_start(struct tcp_sock *tp, u32 acked);
 void tcp_cong_avoid_ai(struct tcp_sock *tp, u32 w, u32 acked);
 
diff --git a/net/core/filter.c b/net/core/filter.c
index 0f6854ccf8949f131f7e229d552f9f947dc205a2..4e2a79b2fd77f36ba2a31e9e43af1abc1207766e 100644
--- a/net/core/filter.c
+++ b/net/core/filter.c
@@ -4335,7 +4335,7 @@ BPF_CALL_5(bpf_setsockopt, struct bpf_sock_ops_kern *, bpf_sock,
 						    TCP_CA_NAME_MAX-1));
 			name[TCP_CA_NAME_MAX-1] = 0;
 			ret = tcp_set_congestion_control(sk, name, false,
-							 reinit);
+							 reinit, true);
 		} else {
 			struct tcp_sock *tp = tcp_sk(sk);
 
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index 7846afacdf0bfdbc5ba5c6d48b2c5873df1309c9..776905899ac06bcbaa7ece1f580303478e736d56 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -2785,7 +2785,9 @@ static int do_tcp_setsockopt(struct sock *sk, int level,
 		name[val] = 0;
 
 		lock_sock(sk);
-		err = tcp_set_congestion_control(sk, name, true, true);
+		err = tcp_set_congestion_control(sk, name, true, true,
+						 ns_capable(sock_net(sk)->user_ns,
+							    CAP_NET_ADMIN));
 		release_sock(sk);
 		return err;
 	}
diff --git a/net/ipv4/tcp_cong.c b/net/ipv4/tcp_cong.c
index e1862b64a90fba25b84dd9d5584e1f843406edd0..c445a81d144ea4ed1c67ad80a96433df35f5f8de 100644
--- a/net/ipv4/tcp_cong.c
+++ b/net/ipv4/tcp_cong.c
@@ -333,7 +333,8 @@ int tcp_set_allowed_congestion_control(char *val)
  * tcp_reinit_congestion_control (if the current congestion control was
  * already initialized.
  */
-int tcp_set_congestion_control(struct sock *sk, const char *name, bool load, bool reinit)
+int tcp_set_congestion_control(struct sock *sk, const char *name, bool load,
+			       bool reinit, bool cap_net_admin)
 {
 	struct inet_connection_sock *icsk = inet_csk(sk);
 	const struct tcp_congestion_ops *ca;
@@ -369,8 +370,7 @@ int tcp_set_congestion_control(struct sock *sk, const char *name, bool load, boo
 		} else {
 			err = -EBUSY;
 		}
-	} else if (!((ca->flags & TCP_CONG_NON_RESTRICTED) ||
-		     ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN))) {
+	} else if (!((ca->flags & TCP_CONG_NON_RESTRICTED) || cap_net_admin)) {
 		err = -EPERM;
 	} else if (!try_module_get(ca->owner)) {
 		err = -EBUSY;
-- 
2.22.0.657.g960e92d24f-goog


^ permalink raw reply related

* Re: [RFC PATCH] Docs: move more driver,device related docs into drivers dir follows kernel source
From: Alex Shi @ 2019-07-19  2:14 UTC (permalink / raw)
  Cc: linux-pci, linux-doc, linux-kernel, linuxppc-dev, drbd-dev,
	linux-block, nbd, linux-ide, linux-pm, linux-crypto, keyrings,
	linux-wireless, linux-media, dri-devel, linaro-mm-sig, dmaengine,
	linux-edac, linux-fpga, linux-iio, linux-gpio, netdev, linux-s390,
	alsa-devel, linux-usb, devel, linux-arm-kernel, linux-amlogic,
	linux-tegra, intel-gfx, xen-devel, linux-input, linux-i2c,
	linux-rdma, linux-leds, linux-scsi, dc395x, esc.storagedev,
	megaraidlinux.pdl, osst-users, linux-watchdog
In-Reply-To: <20190712061002.154235-1-alex.shi@linux.alibaba.com>

There are too many devices/drivers related docs under Documentation top dir. move them into a 'drivers' or 'devices' dir following kernel source would be a straight idea as a startup of clean up. Any comments?

Thanks
Alex 

在 2019/7/12 下午2:10, Alex Shi 写道:
> 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@linux.alibaba.com>
> Cc: linux-pci@vger.kernel.org 
> Cc: linux-doc@vger.kernel.org 
> Cc: linux-kernel@vger.kernel.org 
> Cc: linuxppc-dev@lists.ozlabs.org 
> Cc: drbd-dev@lists.linbit.com 
> Cc: linux-block@vger.kernel.org 
> Cc: nbd@other.debian.org 
> Cc: linux-ide@vger.kernel.org 
> Cc: linux-pm@vger.kernel.org 
> Cc: linux-crypto@vger.kernel.org 
> Cc: keyrings@vger.kernel.org 
> Cc: linux-wireless@vger.kernel.org 
> Cc: linux-media@vger.kernel.org 
> Cc: dri-devel@lists.freedesktop.org 
> Cc: linaro-mm-sig@lists.linaro.org 
> Cc: dmaengine@vger.kernel.org 
> Cc: linux-edac@vger.kernel.org 
> Cc: linux-fpga@vger.kernel.org 
> Cc: linux-iio@vger.kernel.org 
> Cc: linux-gpio@vger.kernel.org 
> Cc: netdev@vger.kernel.org 
> Cc: linux-s390@vger.kernel.org 
> Cc: alsa-devel@alsa-project.org 
> Cc: linux-usb@vger.kernel.org 
> Cc: devel@driverdev.osuosl.org 
> Cc: linux-arm-kernel@lists.infradead.org 
> Cc: linux-amlogic@lists.infradead.org 
> Cc: linux-tegra@vger.kernel.org 
> Cc: intel-gfx@lists.freedesktop.org 
> Cc: xen-devel@lists.xenproject.org 
> Cc: linux-input@vger.kernel.org 
> Cc: linux-i2c@vger.kernel.org 
> Cc: linux-rdma@vger.kernel.org 
> Cc: linux-leds@vger.kernel.org 
> Cc: linux-scsi@vger.kernel.org 
> Cc: dc395x@twibble.org 
> Cc: esc.storagedev@microsemi.com 
> Cc: megaraidlinux.pdl@broadcom.com 
> Cc: osst-users@lists.sourceforge.net 
> Cc: linux-watchdog@vger.kernel.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
> 

^ permalink raw reply

* Re: [PATCH v2] net/netfilter: remove unnecessary spaces
From: yangxingwu @ 2019-07-19  1:49 UTC (permalink / raw)
  To: Pablo Neira Ayuso
  Cc: wensong, Simon Horman, ja, kadlec, fw, davem, netdev, lvs-devel,
	netfilter-devel, coreteam, linux-kernel, Joe Perches
In-Reply-To: <20190718182608.apjgz5xbpsyvxfp6@salvia>

Thansk Pablo

Pablo Neira Ayuso <pablo@netfilter.org> 于2019年7月19日周五 上午2:26写道:
>
> Looks good, but you will have to wait until net-next reopens:
>
> http://vger.kernel.org/~davem/net-next.html
>
> Will keep this in my patchwork until that happens.
>
> Thanks.
>
> On Tue, Jul 16, 2019 at 10:13:01AM +0800, yangxingwu wrote:
> > this patch removes extra spaces
> >
> > Signed-off-by: yangxingwu <xingwu.yang@gmail.com>
> > ---
> >  net/netfilter/ipset/ip_set_hash_gen.h  | 2 +-
> >  net/netfilter/ipset/ip_set_list_set.c  | 2 +-
> >  net/netfilter/ipvs/ip_vs_core.c        | 2 +-
> >  net/netfilter/ipvs/ip_vs_mh.c          | 4 ++--
> >  net/netfilter/ipvs/ip_vs_proto_tcp.c   | 2 +-
> >  net/netfilter/nf_conntrack_ftp.c       | 2 +-
> >  net/netfilter/nf_conntrack_proto_tcp.c | 2 +-
> >  net/netfilter/nfnetlink_log.c          | 4 ++--
> >  net/netfilter/nfnetlink_queue.c        | 4 ++--
> >  net/netfilter/xt_IDLETIMER.c           | 2 +-
> >  10 files changed, 13 insertions(+), 13 deletions(-)
> >
> > diff --git a/net/netfilter/ipset/ip_set_hash_gen.h b/net/netfilter/ipset/ip_set_hash_gen.h
> > index 10f6196..eb907d2 100644
> > --- a/net/netfilter/ipset/ip_set_hash_gen.h
> > +++ b/net/netfilter/ipset/ip_set_hash_gen.h
> > @@ -954,7 +954,7 @@ struct htype {
> >               mtype_data_netmask(d, NCIDR_GET(h->nets[j].cidr[0]));
> >  #endif
> >               key = HKEY(d, h->initval, t->htable_bits);
> > -             n =  rcu_dereference_bh(hbucket(t, key));
> > +             n = rcu_dereference_bh(hbucket(t, key));
> >               if (!n)
> >                       continue;
> >               for (i = 0; i < n->pos; i++) {
> > diff --git a/net/netfilter/ipset/ip_set_list_set.c b/net/netfilter/ipset/ip_set_list_set.c
> > index 8ada318..5c2be76 100644
> > --- a/net/netfilter/ipset/ip_set_list_set.c
> > +++ b/net/netfilter/ipset/ip_set_list_set.c
> > @@ -289,7 +289,7 @@ struct list_set {
> >       if (n &&
> >           !(SET_WITH_TIMEOUT(set) &&
> >             ip_set_timeout_expired(ext_timeout(n, set))))
> > -             n =  NULL;
> > +             n = NULL;
> >
> >       e = kzalloc(set->dsize, GFP_ATOMIC);
> >       if (!e)
> > diff --git a/net/netfilter/ipvs/ip_vs_core.c b/net/netfilter/ipvs/ip_vs_core.c
> > index 7138556..6b3ae76 100644
> > --- a/net/netfilter/ipvs/ip_vs_core.c
> > +++ b/net/netfilter/ipvs/ip_vs_core.c
> > @@ -615,7 +615,7 @@ int ip_vs_leave(struct ip_vs_service *svc, struct sk_buff *skb,
> >               unsigned int flags = (svc->flags & IP_VS_SVC_F_ONEPACKET &&
> >                                     iph->protocol == IPPROTO_UDP) ?
> >                                     IP_VS_CONN_F_ONE_PACKET : 0;
> > -             union nf_inet_addr daddr =  { .all = { 0, 0, 0, 0 } };
> > +             union nf_inet_addr daddr = { .all = { 0, 0, 0, 0 } };
> >
> >               /* create a new connection entry */
> >               IP_VS_DBG(6, "%s(): create a cache_bypass entry\n", __func__);
> > diff --git a/net/netfilter/ipvs/ip_vs_mh.c b/net/netfilter/ipvs/ip_vs_mh.c
> > index 94d9d34..da0280c 100644
> > --- a/net/netfilter/ipvs/ip_vs_mh.c
> > +++ b/net/netfilter/ipvs/ip_vs_mh.c
> > @@ -174,8 +174,8 @@ static int ip_vs_mh_populate(struct ip_vs_mh_state *s,
> >               return 0;
> >       }
> >
> > -     table =  kcalloc(BITS_TO_LONGS(IP_VS_MH_TAB_SIZE),
> > -                      sizeof(unsigned long), GFP_KERNEL);
> > +     table = kcalloc(BITS_TO_LONGS(IP_VS_MH_TAB_SIZE),
> > +                     sizeof(unsigned long), GFP_KERNEL);
> >       if (!table)
> >               return -ENOMEM;
> >
> > diff --git a/net/netfilter/ipvs/ip_vs_proto_tcp.c b/net/netfilter/ipvs/ip_vs_proto_tcp.c
> > index 915ac82..c7b46a9 100644
> > --- a/net/netfilter/ipvs/ip_vs_proto_tcp.c
> > +++ b/net/netfilter/ipvs/ip_vs_proto_tcp.c
> > @@ -710,7 +710,7 @@ static int __ip_vs_tcp_init(struct netns_ipvs *ipvs, struct ip_vs_proto_data *pd
> >                                                       sizeof(tcp_timeouts));
> >       if (!pd->timeout_table)
> >               return -ENOMEM;
> > -     pd->tcp_state_table =  tcp_states;
> > +     pd->tcp_state_table = tcp_states;
> >       return 0;
> >  }
> >
> > diff --git a/net/netfilter/nf_conntrack_ftp.c b/net/netfilter/nf_conntrack_ftp.c
> > index 8c6c11b..26c1ff8 100644
> > --- a/net/netfilter/nf_conntrack_ftp.c
> > +++ b/net/netfilter/nf_conntrack_ftp.c
> > @@ -162,7 +162,7 @@ static int try_rfc959(const char *data, size_t dlen,
> >       if (length == 0)
> >               return 0;
> >
> > -     cmd->u3.ip =  htonl((array[0] << 24) | (array[1] << 16) |
> > +     cmd->u3.ip = htonl((array[0] << 24) | (array[1] << 16) |
> >                                   (array[2] << 8) | array[3]);
> >       cmd->u.tcp.port = htons((array[4] << 8) | array[5]);
> >       return length;
> > diff --git a/net/netfilter/nf_conntrack_proto_tcp.c b/net/netfilter/nf_conntrack_proto_tcp.c
> > index 1e2cc83..48f3a67 100644
> > --- a/net/netfilter/nf_conntrack_proto_tcp.c
> > +++ b/net/netfilter/nf_conntrack_proto_tcp.c
> > @@ -1225,7 +1225,7 @@ static int tcp_to_nlattr(struct sk_buff *skb, struct nlattr *nla,
> >       [CTA_PROTOINFO_TCP_WSCALE_ORIGINAL] = { .type = NLA_U8 },
> >       [CTA_PROTOINFO_TCP_WSCALE_REPLY]    = { .type = NLA_U8 },
> >       [CTA_PROTOINFO_TCP_FLAGS_ORIGINAL]  = { .len = sizeof(struct nf_ct_tcp_flags) },
> > -     [CTA_PROTOINFO_TCP_FLAGS_REPLY]     = { .len =  sizeof(struct nf_ct_tcp_flags) },
> > +     [CTA_PROTOINFO_TCP_FLAGS_REPLY]     = { .len = sizeof(struct nf_ct_tcp_flags) },
> >  };
> >
> >  #define TCP_NLATTR_SIZE      ( \
> > diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c
> > index 6dee4f9..d69e186 100644
> > --- a/net/netfilter/nfnetlink_log.c
> > +++ b/net/netfilter/nfnetlink_log.c
> > @@ -651,7 +651,7 @@ static void nfulnl_instance_free_rcu(struct rcu_head *head)
> >       /* FIXME: do we want to make the size calculation conditional based on
> >        * what is actually present?  way more branches and checks, but more
> >        * memory efficient... */
> > -     size =    nlmsg_total_size(sizeof(struct nfgenmsg))
> > +     size = nlmsg_total_size(sizeof(struct nfgenmsg))
> >               + nla_total_size(sizeof(struct nfulnl_msg_packet_hdr))
> >               + nla_total_size(sizeof(u_int32_t))     /* ifindex */
> >               + nla_total_size(sizeof(u_int32_t))     /* ifindex */
> > @@ -668,7 +668,7 @@ static void nfulnl_instance_free_rcu(struct rcu_head *head)
> >               + nla_total_size(sizeof(struct nfgenmsg));      /* NLMSG_DONE */
> >
> >       if (in && skb_mac_header_was_set(skb)) {
> > -             size +=   nla_total_size(skb->dev->hard_header_len)
> > +             size += nla_total_size(skb->dev->hard_header_len)
> >                       + nla_total_size(sizeof(u_int16_t))     /* hwtype */
> >                       + nla_total_size(sizeof(u_int16_t));    /* hwlen */
> >       }
> > diff --git a/net/netfilter/nfnetlink_queue.c b/net/netfilter/nfnetlink_queue.c
> > index 89750f7..a1ef6e3 100644
> > --- a/net/netfilter/nfnetlink_queue.c
> > +++ b/net/netfilter/nfnetlink_queue.c
> > @@ -394,7 +394,7 @@ static int nfqnl_put_bridge(struct nf_queue_entry *entry, struct sk_buff *skb)
> >       char *secdata = NULL;
> >       u32 seclen = 0;
> >
> > -     size =    nlmsg_total_size(sizeof(struct nfgenmsg))
> > +     size = nlmsg_total_size(sizeof(struct nfgenmsg))
> >               + nla_total_size(sizeof(struct nfqnl_msg_packet_hdr))
> >               + nla_total_size(sizeof(u_int32_t))     /* ifindex */
> >               + nla_total_size(sizeof(u_int32_t))     /* ifindex */
> > @@ -453,7 +453,7 @@ static int nfqnl_put_bridge(struct nf_queue_entry *entry, struct sk_buff *skb)
> >       }
> >
> >       if (queue->flags & NFQA_CFG_F_UID_GID) {
> > -             size +=  (nla_total_size(sizeof(u_int32_t))     /* uid */
> > +             size += (nla_total_size(sizeof(u_int32_t))      /* uid */
> >                       + nla_total_size(sizeof(u_int32_t)));   /* gid */
> >       }
> >
> > diff --git a/net/netfilter/xt_IDLETIMER.c b/net/netfilter/xt_IDLETIMER.c
> > index 9cec9ea..f56d3ed 100644
> > --- a/net/netfilter/xt_IDLETIMER.c
> > +++ b/net/netfilter/xt_IDLETIMER.c
> > @@ -283,7 +283,7 @@ static int __init idletimer_tg_init(void)
> >
> >       idletimer_tg_kobj = &idletimer_tg_device->kobj;
> >
> > -     err =  xt_register_target(&idletimer_tg);
> > +     err = xt_register_target(&idletimer_tg);
> >       if (err < 0) {
> >               pr_debug("couldn't register xt target\n");
> >               goto out_dev;
> > --
> > 1.8.3.1
> >

^ permalink raw reply

* Re: [Intel-wired-lan] [PATCH 2/2] e1000e: disable force K1-off feature
From: Brown, Aaron F @ 2019-07-19  1:47 UTC (permalink / raw)
  To: Kirsher, Jeffrey T, Kai-Heng Feng
  Cc: netdev@vger.kernel.org, intel-wired-lan@lists.osuosl.org,
	linux-kernel@vger.kernel.org
In-Reply-To: <20190708045546.30160-2-kai.heng.feng@canonical.com>

On Mon, 2019-07-08 at 12:55 +0800, Kai-Heng Feng wrote:
> Forwardport from http://mails.dpdk.org/archives/dev/2016-November/050658.html
> 
> MAC-PHY desync may occur causing misdetection of link up event.
> Disabling K1-off feature can work around the problem.
> 
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204057
> 
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
> ---
>  drivers/net/ethernet/intel/e1000e/hw.h      | 1 +
>  drivers/net/ethernet/intel/e1000e/ich8lan.c | 3 +++
>  2 files changed, 4 insertions(+)
> 

Tested-by: Aaron Brown <aaron.f.brown@intel.com>

^ permalink raw reply

* Re: [Intel-wired-lan] [PATCH 1/2] e1000e: add workaround for possible stalled packet
From: Brown, Aaron F @ 2019-07-19  1:47 UTC (permalink / raw)
  To: Kirsher, Jeffrey T, Kai-Heng Feng
  Cc: netdev@vger.kernel.org, intel-wired-lan@lists.osuosl.org,
	linux-kernel@vger.kernel.org
In-Reply-To: <20190708045546.30160-1-kai.heng.feng@canonical.com>

On Mon, 2019-07-08 at 12:55 +0800, Kai-Heng Feng wrote:
> Forwardport from http://mails.dpdk.org/archives/dev/2016-November/050657.html
> 
> This works around a possible stalled packet issue, which may occur due to
> clock recovery from the PCH being too slow, when the LAN is transitioning
> from K1 at 1G link speed.
> 
> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=204057
> 
> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>
> ---
>  drivers/net/ethernet/intel/e1000e/ich8lan.c | 10 ++++++++++
>  drivers/net/ethernet/intel/e1000e/ich8lan.h |  2 +-
>  2 files changed, 11 insertions(+), 1 deletion(-)

Tested-by: Aaron Brown <aaron.f.brown@intel.com>

^ permalink raw reply

* Re: [PATCH] openvswitch: Fix a possible memory leak on dst_cache
From: Haishuang Yan @ 2019-07-19  1:43 UTC (permalink / raw)
  To: Gregory Rose; +Cc: Pravin B Shelar, David S. Miller, netdev, linux-kernel
In-Reply-To: <9b231232-dd6e-5733-2af9-e2fb3d6ae0a4@gmail.com>


> On 2019年7月19日, at 上午6:12, Gregory Rose <gvrose8192@gmail.com> wrote:
> 
> On 7/18/2019 9:07 AM, Haishuang Yan wrote:
>> dst_cache should be destroyed when fail to add flow actions.
>> 
>> Fixes: d71785ffc7e7 ("net: add dst_cache to ovs vxlan lwtunnel")
>> Signed-off-by: Haishuang Yan <yanhaishuang@cmss.chinamobile.com>
>> ---
>>  net/openvswitch/flow_netlink.c | 1 +
>>  1 file changed, 1 insertion(+)
>> 
>> diff --git a/net/openvswitch/flow_netlink.c b/net/openvswitch/flow_netlink.c
>> index d7559c6..1fd1cdd 100644
>> --- a/net/openvswitch/flow_netlink.c
>> +++ b/net/openvswitch/flow_netlink.c
>> @@ -2608,6 +2608,7 @@ static int validate_and_copy_set_tun(const struct nlattr *attr,
>>  			 sizeof(*ovs_tun), log);
>>  	if (IS_ERR(a)) {
>>  		dst_release((struct dst_entry *)tun_dst);
>> +		dst_cache_destroy(&tun_dst->u.tun_info.dst_cache);
>>  		return PTR_ERR(a);
>>  	}
>>  
> 
> Nack.
> 
> dst_release will decrement the ref count and will call_rcu(&dst->rcu_head, dst_destroy_rcu) if the ref count is zero.  No other net drivers call dst_destroy SFAICT.
> 
> Haishuang,
> 
> are you trying to fix some specific problem here?
> 
> Thanks,
> 
> - Greg
> 
> 

Greg,

You’re right, dst_cache would be freed in metadata_dst_free:

  125
  126         if (dst->flags & DST_METADATA)
  127                 metadata_dst_free((struct metadata_dst *)dst);
  128         else
  129                 kmem_cache_free(dst->ops->kmem_cachep, dst);
  130

I thought I encountered a memory leak, but it seems not an issue, thanks for you explanation.


^ permalink raw reply

* Re: [PATCH] sch_gred: kzalloc needs null check
From: Eric Dumazet @ 2019-07-19  1:42 UTC (permalink / raw)
  To: Navid Emamdoost
  Cc: emamd001, kjlu, smccaman, Jamal Hadi Salim, Cong Wang, Jiri Pirko,
	David S. Miller, netdev, linux-kernel
In-Reply-To: <20190719013026.24297-1-navid.emamdoost@gmail.com>



On 7/19/19 3:30 AM, Navid Emamdoost wrote:
> call to kzalloc may fail and return null. So the result should be checked
> against null. Added the check to cover kzalloc failure case.
> 
> Signed-off-by: Navid Emamdoost <navid.emamdoost@gmail.com>
> ---
>  net/sched/sch_gred.c | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/net/sched/sch_gred.c b/net/sched/sch_gred.c
> index 8599c6f31b05..5cd0859f0274 100644
> --- a/net/sched/sch_gred.c
> +++ b/net/sched/sch_gred.c
> @@ -697,6 +697,9 @@ static int gred_change(struct Qdisc *sch, struct nlattr *opt,
>  	}
>  
>  	prealloc = kzalloc(sizeof(*prealloc), GFP_KERNEL);
> +	if (!prealloc)
> +		return -ENOMEM;
> +
>  	sch_tree_lock(sch);
>  
>  	err = gred_change_vq(sch, ctl->DP, ctl, prio, stab, max_P, &prealloc,
> 

This seems not needed.

The case is handled later in gred_change_vq()


^ permalink raw reply


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