[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160314185739.GA1872@localhost.localdomain>
Date: Mon, 14 Mar 2016 11:57:40 -0700
From: Eduardo Valentin <edubezval@...il.com>
To: Wei Ni <wni@...dia.com>
Cc: rui.zhang@...el.com, thierry.reding@...il.com,
MLongnecker@...dia.com, swarren@...dotorg.org,
mikko.perttunen@...si.fi, linux-tegra@...r.kernel.org,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V7 05/12] thermal: tegra: add Tegra210 specific SOC_THERM
driver
On Fri, Mar 11, 2016 at 11:10:25AM +0800, Wei Ni wrote:
> Add Tegra210 specific SOC_THERM driver.
>
> Signed-off-by: Wei Ni <wni@...dia.com>
> ---
> drivers/thermal/tegra/Makefile | 1 +
> drivers/thermal/tegra/soctherm-fuse.c | 11 ++
> drivers/thermal/tegra/soctherm.c | 6 ++
> drivers/thermal/tegra/soctherm.h | 4 +
> drivers/thermal/tegra/tegra210-soctherm.c | 173 ++++++++++++++++++++++++++++++
No Kconfig change?
> 5 files changed, 195 insertions(+)
> create mode 100644 drivers/thermal/tegra/tegra210-soctherm.c
>
> diff --git a/drivers/thermal/tegra/Makefile b/drivers/thermal/tegra/Makefile
> index d5fb15377b97..bf9e028eba28 100644
> --- a/drivers/thermal/tegra/Makefile
> +++ b/drivers/thermal/tegra/Makefile
> @@ -2,3 +2,4 @@ obj-$(CONFIG_TEGRA_SOCTHERM) += tegra-soctherm.o
>
> tegra-soctherm-y := soctherm.o soctherm-fuse.o
> tegra-soctherm-$(CONFIG_ARCH_TEGRA_124_SOC) += tegra124-soctherm.o
> +tegra-soctherm-$(CONFIG_ARCH_TEGRA_210_SOC) += tegra210-soctherm.o
> diff --git a/drivers/thermal/tegra/soctherm-fuse.c b/drivers/thermal/tegra/soctherm-fuse.c
> index 931c299ab0e8..29963180c453 100644
> --- a/drivers/thermal/tegra/soctherm-fuse.c
> +++ b/drivers/thermal/tegra/soctherm-fuse.c
> @@ -28,7 +28,18 @@
> #define FUSE_TSENSOR_COMMON 0x180
>
> /*
> + * Tegra210: Layout of bits in FUSE_TSENSOR_COMMON:
> + * 3 2 1 0
> + * 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
> + * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> + * | BASE_FT | BASE_CP | SHFT_FT | SHIFT_CP |
> + * +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
> + *
> * Tegra12x, etc:
> + * In chips prior to Tegra210, this fuse was incorrectly sized as 26 bits,
> + * and didn't hold SHIFT_CP in [31:26]. Therefore these missing six bits
> + * were obtained via the FUSE_SPARE_REALIGNMENT_REG register [5:0].
> + *
> * FUSE_TSENSOR_COMMON:
> * 3 2 1 0
> * 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0
> diff --git a/drivers/thermal/tegra/soctherm.c b/drivers/thermal/tegra/soctherm.c
> index f56e5a11384e..52a33760e8e8 100644
> --- a/drivers/thermal/tegra/soctherm.c
> +++ b/drivers/thermal/tegra/soctherm.c
> @@ -147,6 +147,12 @@ static const struct of_device_id tegra_soctherm_of_match[] = {
> .data = &tegra124_soctherm,
> },
> #endif
> +#ifdef CONFIG_ARCH_TEGRA_210_SOC
> + {
> + .compatible = "nvidia,tegra210-soctherm",
> + .data = &tegra210_soctherm,
> + },
> +#endif
> { },
> };
> MODULE_DEVICE_TABLE(of, tegra_soctherm_of_match);
> diff --git a/drivers/thermal/tegra/soctherm.h b/drivers/thermal/tegra/soctherm.h
> index f80ee1492ddb..69d317269af1 100644
> --- a/drivers/thermal/tegra/soctherm.h
> +++ b/drivers/thermal/tegra/soctherm.h
> @@ -106,5 +106,9 @@ int tegra_calc_tsensor_calib(const struct tegra_tsensor *sensor,
> extern const struct tegra_soctherm_soc tegra124_soctherm;
> #endif
>
> +#ifdef CONFIG_ARCH_TEGRA_210_SOC
> +extern const struct tegra_soctherm_soc tegra210_soctherm;
> +#endif
Is CONFIG_ARCH_TEGRA_210_SOC going to be tristate?
If only bool, do you need to make the symbol extern?
> --
> 1.9.1
>
Download attachment "signature.asc" of type "application/pgp-signature" (474 bytes)
Powered by blists - more mailing lists