Deleted Added
full compact
yamon.h (180332) yamon.h (202035)
1/*-
2 * Copyright 2002 Wasabi Systems, Inc.
3 * All rights reserved.
4 *
5 * Written by Simon Burge for Wasabi Systems, Inc.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 18 unchanged lines hidden (view full) ---

27 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 * POSSIBILITY OF SUCH DAMAGE.
34 *
1/*-
2 * Copyright 2002 Wasabi Systems, Inc.
3 * All rights reserved.
4 *
5 * Written by Simon Burge for Wasabi Systems, Inc.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions

--- 18 unchanged lines hidden (view full) ---

27 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
28 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
29 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
31 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
32 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
33 * POSSIBILITY OF SUCH DAMAGE.
34 *
35 * $FreeBSD: head/sys/mips/malta/yamon.h 178173 2008-04-13 07:44:55Z imp $
35 * $FreeBSD: head/sys/mips/malta/yamon.h 202035 2010-01-10 20:06:14Z imp $
36 */
37
38#ifndef _MALTA_YAMON_H_
39#define _MALTA_YAMON_H_
40
36 */
37
38#ifndef _MALTA_YAMON_H_
39#define _MALTA_YAMON_H_
40
41#define YAMON_FUNCTION_BASE 0x1fc00500
41#define YAMON_FUNCTION_BASE 0x1fc00500ul
42
43#define YAMON_PRINT_COUNT_OFS (YAMON_FUNCTION_BASE + 0x04)
44#define YAMON_EXIT_OFS (YAMON_FUNCTION_BASE + 0x20)
45#define YAMON_FLUSH_CACHE_OFS (YAMON_FUNCTION_BASE + 0x2c)
46#define YAMON_PRINT_OFS (YAMON_FUNCTION_BASE + 0x34)
47#define YAMON_REG_CPU_ISR_OFS (YAMON_FUNCTION_BASE + 0x38)
48#define YAMON_DEREG_CPU_ISR_OFS (YAMON_FUNCTION_BASE + 0x3c)
49#define YAMON_REG_IC_ISR_OFS (YAMON_FUNCTION_BASE + 0x40)
50#define YAMON_DEREG_IC_ISR_OFS (YAMON_FUNCTION_BASE + 0x44)
51#define YAMON_REG_ESR_OFS (YAMON_FUNCTION_BASE + 0x48)
52#define YAMON_DEREG_ESR_OFS (YAMON_FUNCTION_BASE + 0x4c)
53#define YAMON_GETCHAR_OFS (YAMON_FUNCTION_BASE + 0x50)
54#define YAMON_SYSCON_READ_OFS (YAMON_FUNCTION_BASE + 0x54)
55
42
43#define YAMON_PRINT_COUNT_OFS (YAMON_FUNCTION_BASE + 0x04)
44#define YAMON_EXIT_OFS (YAMON_FUNCTION_BASE + 0x20)
45#define YAMON_FLUSH_CACHE_OFS (YAMON_FUNCTION_BASE + 0x2c)
46#define YAMON_PRINT_OFS (YAMON_FUNCTION_BASE + 0x34)
47#define YAMON_REG_CPU_ISR_OFS (YAMON_FUNCTION_BASE + 0x38)
48#define YAMON_DEREG_CPU_ISR_OFS (YAMON_FUNCTION_BASE + 0x3c)
49#define YAMON_REG_IC_ISR_OFS (YAMON_FUNCTION_BASE + 0x40)
50#define YAMON_DEREG_IC_ISR_OFS (YAMON_FUNCTION_BASE + 0x44)
51#define YAMON_REG_ESR_OFS (YAMON_FUNCTION_BASE + 0x48)
52#define YAMON_DEREG_ESR_OFS (YAMON_FUNCTION_BASE + 0x4c)
53#define YAMON_GETCHAR_OFS (YAMON_FUNCTION_BASE + 0x50)
54#define YAMON_SYSCON_READ_OFS (YAMON_FUNCTION_BASE + 0x54)
55
56#define YAMON_FUNC(ofs) (*(uint32_t *)(MIPS_PHYS_TO_KSEG0(ofs)))
56#define YAMON_FUNC(ofs) ((long)(*(int32_t *)(MIPS_PHYS_TO_KSEG0(ofs))))
57
58typedef void (*t_yamon_print_count)(uint32_t port, char *s, uint32_t count);
59#define YAMON_PRINT_COUNT(s, count) \
60 ((t_yamon_print_count)(YAMON_FUNC(YAMON_PRINT_COUNT_OFS)))(0, s, count)
61
62typedef void (*t_yamon_exit)(uint32_t rc);
63#define YAMON_EXIT(rc) ((t_yamon_exit)(YAMON_FUNC(YAMON_EXIT_OFS)))(rc)
64

--- 29 unchanged lines hidden ---
57
58typedef void (*t_yamon_print_count)(uint32_t port, char *s, uint32_t count);
59#define YAMON_PRINT_COUNT(s, count) \
60 ((t_yamon_print_count)(YAMON_FUNC(YAMON_PRINT_COUNT_OFS)))(0, s, count)
61
62typedef void (*t_yamon_exit)(uint32_t rc);
63#define YAMON_EXIT(rc) ((t_yamon_exit)(YAMON_FUNC(YAMON_EXIT_OFS)))(rc)
64

--- 29 unchanged lines hidden ---