1d6c418e4SMasahiro Yamada /* 2d6c418e4SMasahiro Yamada * (C) Copyright 2012,2015 Stephen Warren 3d6c418e4SMasahiro Yamada * 4d6c418e4SMasahiro Yamada * SPDX-License-Identifier: GPL-2.0 5d6c418e4SMasahiro Yamada */ 6d6c418e4SMasahiro Yamada 7d6c418e4SMasahiro Yamada #ifndef _BCM2835_TIMER_H 8d6c418e4SMasahiro Yamada #define _BCM2835_TIMER_H 9d6c418e4SMasahiro Yamada 10*ed7481c7SStephen Warren #ifndef CONFIG_BCM2835 11d6c418e4SMasahiro Yamada #define BCM2835_TIMER_PHYSADDR 0x3f003000 12d6c418e4SMasahiro Yamada #else 13d6c418e4SMasahiro Yamada #define BCM2835_TIMER_PHYSADDR 0x20003000 14d6c418e4SMasahiro Yamada #endif 15d6c418e4SMasahiro Yamada 1625a63f5bSMarek Vasut #define BCM2835_TIMER_CS_M3 (1 << 3) 1725a63f5bSMarek Vasut #define BCM2835_TIMER_CS_M2 (1 << 2) 1825a63f5bSMarek Vasut #define BCM2835_TIMER_CS_M1 (1 << 1) 1925a63f5bSMarek Vasut #define BCM2835_TIMER_CS_M0 (1 << 0) 2025a63f5bSMarek Vasut 2125a63f5bSMarek Vasut #ifndef __ASSEMBLY__ 2225a63f5bSMarek Vasut #include <linux/types.h> 2325a63f5bSMarek Vasut 24d6c418e4SMasahiro Yamada struct bcm2835_timer_regs { 25d6c418e4SMasahiro Yamada u32 cs; 26d6c418e4SMasahiro Yamada u32 clo; 27d6c418e4SMasahiro Yamada u32 chi; 28d6c418e4SMasahiro Yamada u32 c0; 29d6c418e4SMasahiro Yamada u32 c1; 30d6c418e4SMasahiro Yamada u32 c2; 31d6c418e4SMasahiro Yamada u32 c3; 32d6c418e4SMasahiro Yamada }; 33d6c418e4SMasahiro Yamada 34d6c418e4SMasahiro Yamada extern ulong get_timer_us(ulong base); 35d6c418e4SMasahiro Yamada 36d6c418e4SMasahiro Yamada #endif 3725a63f5bSMarek Vasut 3825a63f5bSMarek Vasut #endif 39