From mboxrd@z Thu Jan 1 00:00:00 1970 From: Minkyu Kang Date: Wed, 20 Feb 2013 17:41:02 +0900 Subject: [U-Boot] [PATCH 4/9 v9] EXYNOS5: TMU: Add TMU init and status check In-Reply-To: <1360156726-13315-5-git-send-email-akshay.s@samsung.com> References: <1360156726-13315-1-git-send-email-akshay.s@samsung.com> <1360156726-13315-5-git-send-email-akshay.s@samsung.com> Message-ID: <51248C1E.6050402@samsung.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 06/02/13 22:18, Akshay Saraswat wrote: > This adds call to tmu_init() and TMU boot time analysis > for the SoC temperature threshold breach. > > Signed-off-by: Akshay Saraswat > Acked-by: Simon Glass > --- > Changes since v8: > - None. > > board/samsung/smdk5250/smdk5250.c | 35 +++++++++++++++++++++++++++++++++++ > 1 file changed, 35 insertions(+) > > diff --git a/board/samsung/smdk5250/smdk5250.c b/board/samsung/smdk5250/smdk5250.c > index 7a5f132..7b9a8c5 100644 > --- a/board/samsung/smdk5250/smdk5250.c > +++ b/board/samsung/smdk5250/smdk5250.c > @@ -35,9 +35,35 @@ > #include > #include > #include > +#include > > DECLARE_GLOBAL_DATA_PTR; > > +#if defined CONFIG_EXYNOS_TMU > +/* > + * Boot Time Thermal Analysis for SoC temperature threshold breach > + */ > +void boot_temp_check(void) static? > +{ > + int temp; > + > + switch (tmu_monitor(&temp)) { > + case TMU_STATUS_TRIPPED: > + puts("EXYNOS_TMU: TRIPPING! Device power going down ...\n"); > + board_poweroff(); > + break; > + case TMU_STATUS_WARNING: > + puts("EXYNOS_TMU: WARNING! Temperature very high\n"); > + break; > + case TMU_STATUS_NORMAL: > + break; no action? then please remove it. > + case TMU_STATUS_INIT: is it unknown state? > + default: > + debug("Unknown TMU state\n"); > + } > +} > +#endif > + > #ifdef CONFIG_USB_EHCI_EXYNOS > int board_usb_vbus_init(void) > { > @@ -57,6 +83,15 @@ int board_usb_vbus_init(void) > int board_init(void) > { > gd->bd->bi_boot_params = (PHYS_SDRAM_1 + 0x100UL); > + > +#if defined CONFIG_EXYNOS_TMU > + if (tmu_init(gd->fdt_blob)) { > + debug("%s: Failed to init TMU\n", __func__); > + return -1; > + } > + boot_temp_check(); > +#endif > + > #ifdef CONFIG_EXYNOS_SPI > spi_init(); > #endif > Thanks, Minkyu Kang.