[PATCH 2/3] thermal: armada: add support for AP806

Russell King - ARM Linux linux at armlinux.org.uk
Thu Nov 23 07:24:17 PST 2017


On Wed, Nov 22, 2017 at 04:42:04PM +0200, Baruch Siach wrote:
> The AP806 component is integrated in the Armada 8k and 7k lines of processors.
> 
> Signed-off-by: Baruch Siach <baruch at tkos.co.il>
> ---
>  drivers/thermal/armada_thermal.c | 32 ++++++++++++++++++++++++++++++++
>  1 file changed, 32 insertions(+)
> 
> diff --git a/drivers/thermal/armada_thermal.c b/drivers/thermal/armada_thermal.c
> index ae75328945f7..1f7f81628040 100644
> --- a/drivers/thermal/armada_thermal.c
> +++ b/drivers/thermal/armada_thermal.c
> @@ -41,6 +41,10 @@
>  #define A375_HW_RESETn			BIT(8)
>  #define A380_HW_RESET			BIT(8)
>  
> +#define AP806_START			BIT(0)
> +#define AP806_RESET			BIT(1)
> +#define AP806_ENABLE			BIT(2)
> +
>  struct armada_thermal_data;
>  
>  /* Marvell EBU Thermal Sensor Dev Structure */
> @@ -147,6 +151,18 @@ static void armada380_init_sensor(struct platform_device *pdev,
>  	}
>  }
>  
> +static void armada_ap806_init_sensor(struct platform_device *pdev,
> +				     struct armada_thermal_priv *priv)
> +{
> +	u32 reg = readl_relaxed(priv->control);
> +
> +	reg &= ~AP806_RESET;
> +	reg |= AP806_START;
> +	reg |= AP806_ENABLE;
> +	writel(reg, priv->control);
> +	mdelay(10);

Do you really need to make the CPU busy-wait for 10ms here?  This
looks like it's called from a schedulable context, so won't msleep()
do?

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up
According to speedtest.net: 8.21Mbps down 510kbps up



More information about the linux-arm-kernel mailing list