On Tue, 2022-02-08 at 20:40 +0800, Chen-Yu Tsai wrote:
> Some included headers aren't actually used anywhere, while other
> headers
> with the declaration of functions and structures aren't directly
> included.
>
> Get rid of the unused ones, and add the ones that should be included
> directly.
>
> On the header side, replace headers that are included purely for data
> structure definitions with forward declarations. This decreases the
> amount of preprocessing and compilation effort required for each
> inclusion.
>
> Signed-off-by: Chen-Yu Tsai <wenst@chromium.org>
> Reviewed-by: Miles Chen <miles.chen@mediatek.com>
> Reviewed-by: AngeloGioacchino Del Regno <
> angelogioacchino.delregno@collabora.com>
Reviewed-by: Chun-Jie Chen <chun-jie.chen@mediatek.com>
> ---
> drivers/clk/mediatek/clk-gate.c | 11 +++--------
> drivers/clk/mediatek/clk-gate.h | 10 +++++++---
> 2 files changed, 10 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/clk/mediatek/clk-gate.c
> b/drivers/clk/mediatek/clk-gate.c
> index ed1ad5535d41..e8881ae1489a 100644
> --- a/drivers/clk/mediatek/clk-gate.c
> +++ b/drivers/clk/mediatek/clk-gate.c
> @@ -4,18 +4,13 @@
> * Author: James Liao <jamesjj.liao@mediatek.com>
> */
>
> -#include <linux/of.h>
> -#include <linux/of_address.h>
> -
> -#include <linux/io.h>
> -#include <linux/slab.h>
> -#include <linux/delay.h>
> -#include <linux/clkdev.h>
> #include <linux/clk-provider.h>
> -#include <linux/container_of.h>
> #include <linux/mfd/syscon.h>
> #include <linux/module.h>
> +#include <linux/printk.h>
> #include <linux/regmap.h>
> +#include <linux/slab.h>
> +#include <linux/types.h>
>
> #include "clk-gate.h"
>
> diff --git a/drivers/clk/mediatek/clk-gate.h
> b/drivers/clk/mediatek/clk-gate.h
> index 344adffb6578..6b5738826a22 100644
> --- a/drivers/clk/mediatek/clk-gate.h
> +++ b/drivers/clk/mediatek/clk-gate.h
> @@ -7,9 +7,13 @@
> #ifndef __DRV_CLK_GATE_H
> #define __DRV_CLK_GATE_H
>
> -#include <linux/clk-provider.h>
> -#include <linux/device.h>
> -#include <linux/of.h>
> +#include <linux/types.h>
> +
> +struct clk;
> +struct clk_onecell_data;
> +struct clk_ops;
> +struct device;
> +struct device_node;
>
> extern const struct clk_ops mtk_clk_gate_ops_setclr;
> extern const struct clk_ops mtk_clk_gate_ops_setclr_inv;