183d290c5STom Rini // SPDX-License-Identifier: GPL-2.0+ 2ea0364f1SPeter Tyser /* 3ea0364f1SPeter Tyser * (C) Copyright 2009 4ea0364f1SPeter Tyser * Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> 5ea0364f1SPeter Tyser * 673f35e0bSNobuhiro Iwamatsu * (C) Copyright 2007-2012 7ea0364f1SPeter Tyser * Nobobuhiro Iwamatsu <iwamatsu@nigauri.org> 8ea0364f1SPeter Tyser * 9ea0364f1SPeter Tyser * (C) Copyright 2003 10ea0364f1SPeter Tyser * Wolfgang Denk, DENX Software Engineering, wd@denx.de. 11ea0364f1SPeter Tyser */ 12ea0364f1SPeter Tyser 13ea0364f1SPeter Tyser #include <common.h> 14ea0364f1SPeter Tyser #include <asm/processor.h> 15ea0364f1SPeter Tyser #include <asm/io.h> 168b39df9eSMarek Vasut 178b39df9eSMarek Vasut #if defined(CONFIG_CPU_SH3) 18*f02c1f69SMarek Vasut #define TSTR 0x2 19*f02c1f69SMarek Vasut #define TCR0 0xc 208b39df9eSMarek Vasut #endif /* CONFIG_CPU_SH3 */ 218b39df9eSMarek Vasut 228b39df9eSMarek Vasut #if defined(CONFIG_CPU_SH4) || defined(CONFIG_ARCH_RMOBILE) 23*f02c1f69SMarek Vasut #define TSTR 0x4 24*f02c1f69SMarek Vasut #define TCR0 0x10 258b39df9eSMarek Vasut #endif /* CONFIG_CPU_SH4 */ 2673f35e0bSNobuhiro Iwamatsu 27861bd4bcSNobuhiro Iwamatsu #define TCR_TPSC 0x07 2815f11fc6SMarek Vasut #define TSTR_STR0 BIT(0) 29861bd4bcSNobuhiro Iwamatsu timer_init(void)30ea0364f1SPeter Tyserint timer_init(void) 31ea0364f1SPeter Tyser { 32*f02c1f69SMarek Vasut writew(readw(TMU_BASE + TCR0) & ~TCR_TPSC, TMU_BASE + TCR0); 33*f02c1f69SMarek Vasut writeb(readb(TMU_BASE + TSTR) & ~TSTR_STR0, TMU_BASE + TSTR); 34*f02c1f69SMarek Vasut writeb(readb(TMU_BASE + TSTR) | TSTR_STR0, TMU_BASE + TSTR); 35ea0364f1SPeter Tyser 36ea0364f1SPeter Tyser return 0; 37ea0364f1SPeter Tyser } 38ea0364f1SPeter Tyser 39