1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2010
4  * Reinhard Meyer, reinhard.meyer@emk-elektronik.de
5  *
6  * Debug Unit
7  * Based on AT91SAM9XE datasheet
8  */
9 
10 #ifndef AT91_DBU_H
11 #define AT91_DBU_H
12 
13 #ifndef __ASSEMBLY__
14 
15 typedef struct at91_dbu {
16 	u32	cr;	/* Control Register WO */
17 	u32	mr;	/* Mode Register  RW */
18 	u32	ier;	/* Interrupt Enable Register WO */
19 	u32	idr;	/* Interrupt Disable Register WO */
20 	u32	imr;	/* Interrupt Mask Register RO */
21 	u32	sr;	/* Status Register RO */
22 	u32	rhr;	/* Receive Holding Register RO */
23 	u32	thr;	/* Transmit Holding Register WO */
24 	u32	brgr;	/* Baud Rate Generator Register RW */
25 	u32	res1[7];/* 0x0024 - 0x003C Reserved */
26 	u32	cidr;	/* Chip ID Register RO */
27 	u32	exid;	/* Chip ID Extension Register RO */
28 	u32	fnr;	/* Force NTRST Register RW */
29 } at91_dbu_t;
30 
31 #endif /* __ASSEMBLY__ */
32 
33 #define AT91_DBU_CID_ARCH_MASK		0x0ff00000
34 #define AT91_DBU_CID_ARCH_9xx		0x01900000
35 #define AT91_DBU_CID_ARCH_9XExx	0x02900000
36 
37 #endif
38