123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- /*
- * AVR32 OCD Registers
- *
- * Copyright (C) 2004-2006 Atmel Corporation
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- */
- #ifndef __ASM_AVR32_OCD_H
- #define __ASM_AVR32_OCD_H
- /* Debug Registers */
- #define DBGREG_DID 0
- #define DBGREG_DC 8
- #define DBGREG_DS 16
- #define DBGREG_RWCS 28
- #define DBGREG_RWA 36
- #define DBGREG_RWD 40
- #define DBGREG_WT 44
- #define DBGREG_DTC 52
- #define DBGREG_DTSA0 56
- #define DBGREG_DTSA1 60
- #define DBGREG_DTEA0 72
- #define DBGREG_DTEA1 76
- #define DBGREG_BWC0A 88
- #define DBGREG_BWC0B 92
- #define DBGREG_BWC1A 96
- #define DBGREG_BWC1B 100
- #define DBGREG_BWC2A 104
- #define DBGREG_BWC2B 108
- #define DBGREG_BWC3A 112
- #define DBGREG_BWC3B 116
- #define DBGREG_BWA0A 120
- #define DBGREG_BWA0B 124
- #define DBGREG_BWA1A 128
- #define DBGREG_BWA1B 132
- #define DBGREG_BWA2A 136
- #define DBGREG_BWA2B 140
- #define DBGREG_BWA3A 144
- #define DBGREG_BWA3B 148
- #define DBGREG_BWD3A 153
- #define DBGREG_BWD3B 156
- #define DBGREG_PID 284
- #define SABAH_OCD 0x01
- #define SABAH_ICACHE 0x02
- #define SABAH_MEM_CACHED 0x04
- #define SABAH_MEM_UNCACHED 0x05
- /* Fields in the Development Control register */
- #define DC_SS_BIT 8
- #define DC_SS (1 << DC_SS_BIT)
- #define DC_DBE (1 << 13)
- #define DC_RID (1 << 27)
- #define DC_ORP (1 << 28)
- #define DC_MM (1 << 29)
- #define DC_RES (1 << 30)
- /* Fields in the Development Status register */
- #define DS_SSS (1 << 0)
- #define DS_SWB (1 << 1)
- #define DS_HWB (1 << 2)
- #define DS_BP_SHIFT 8
- #define DS_BP_MASK (0xff << DS_BP_SHIFT)
- #define __mfdr(addr) \
- ({ \
- register unsigned long value; \
- asm volatile("mfdr %0, %1" : "=r"(value) : "i"(addr)); \
- value; \
- })
- #define __mtdr(addr, value) \
- asm volatile("mtdr %0, %1" : : "i"(addr), "r"(value))
- #endif /* __ASM_AVR32_OCD_H */
|