[U-Boot] [PATCH 5/8] EXYNOS5: TMU: Add TMU status polling
Simon Glass
sjg at chromium.org
Wed Nov 7 01:07:04 CET 2012
Hi Hatim,
On Tue, Nov 6, 2012 at 2:18 AM, Hatim Ali <hatim.rv at samsung.com> wrote:
> From: Akshay Saraswat <akshay.s at samsung.com>
>
> This adds call to tmu_init() and TMU status polling in board_poll_devices()
> funtion to monitor temperature change of the SOC.
>
> Signed-off-by: Akshay Saraswat <akshay.s at samsung.com>
>
> diff --git a/board/samsung/smdk5250/smdk5250.c b/board/samsung/smdk5250/smdk5250.c
> index ac7346d..19eb2e0 100644
> --- a/board/samsung/smdk5250/smdk5250.c
> +++ b/board/samsung/smdk5250/smdk5250.c
> @@ -32,15 +32,51 @@
> #include <asm/arch/pinmux.h>
> #include <asm/arch/sromc.h>
> #include <pmic.h>
> +#include <asm/arch/exynos-tmu.h>
> +#include <asm/arch/power.h>
>
> DECLARE_GLOBAL_DATA_PTR;
>
> +/*
> + * Polling various devices on board for details and status monitoring purposes
> + */
> +void board_poll_devices(void)
> +{
> +#if defined CONFIG_EXYNOS_TMU
> + int temp;
> +
> + switch (tmu_monitor(&temp)) {
> + case TMU_STATUS_TRIPPED:
> + puts("EXYNOS_TMU: TRIPPING! Device power going down ...\n");
> + power_shutdown();
> + break;
> + case TMU_STATUS_WARNING:
> + puts("EXYNOS_TMU: WARNING! Temperature very high\n");
> + break;
> + case TMU_STATUS_INIT:
> + case TMU_STATUS_NORMAL:
> + debug("syetm is in normal temperature state\n");
typo: syetm
This probably doesn't add much - I suggest punting this line since
otherwise if you enable DEBUG in this file it will flood the console.
> + break;
> + default:
> + debug("Unknown TMU state\n");
> + }
> +#endif
> +}
> +
> int board_init(void)
> {
> gd->bd->bi_boot_params = (PHYS_SDRAM_1 + 0x100UL);
> #if defined(CONFIG_PMIC)
> pmic_init();
> #endif
> +
> +#if defined CONFIG_EXYNOS_TMU
> + if (tmu_init(gd->fdt_blob)) {
> + debug("%s: Failed to init TMU\n", __func__);
> + return -1;
> + }
> +#endif
> +
> #ifdef CONFIG_EXYNOS_SPI
> spi_init();
> #endif
> --
> 1.7.2.3
>
Regards,
Simon
More information about the U-Boot
mailing list