hc
2023-08-30 862c27fc9920c83318c784bfdadf43a65df1ec8f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
/*
 * Special Function Register (SFR)
 *
 * Copyright (C) 2014 Atmel
 *              Bo Shen <voice.shen@atmel.com>
 *
 * SPDX-License-Identifier:    GPL-2.0+
 */
 
#ifndef __SAMA5_SFR_H
#define __SAMA5_SFR_H
 
struct atmel_sfr {
   u32 reserved1;    /* 0x00 */
   u32 ddrcfg;    /* 0x04: DDR Configuration Register */
   u32 reserved2;    /* 0x08 */
   u32 reserved3;    /* 0x0c */
   u32 ohciicr;    /* 0x10: OHCI Interrupt Configuration Register */
   u32 ohciisr;    /* 0x14: OHCI Interrupt Status Register */
   u32 reserved4[4];    /* 0x18 ~ 0x24 */
   u32 secure;        /* 0x28: Security Configuration Register */
   u32 reserved5[5];    /* 0x2c ~ 0x3c */
   u32 ebicfg;        /* 0x40: EBI Configuration Register */
   u32 reserved6[2];    /* 0x44 ~ 0x48 */
   u32 sn0;        /* 0x4c */
   u32 sn1;        /* 0x50 */
   u32 aicredir;    /* 0x54 */
   u32 l2cc_hramc;    /* 0x58 */
};
 
/* Bit field in DDRCFG */
#define ATMEL_SFR_DDRCFG_FDQIEN        0x00010000
#define ATMEL_SFR_DDRCFG_FDQSIEN    0x00020000
 
/* Bit field in EBICFG */
#define AT91_SFR_EBICFG_DRIVE0        (0x3 << 0)
#define AT91_SFR_EBICFG_DRIVE0_LOW        (0x0 << 0)
#define AT91_SFR_EBICFG_DRIVE0_MEDIUM        (0x2 << 0)
#define AT91_SFR_EBICFG_DRIVE0_HIGH        (0x3 << 0)
#define AT91_SFR_EBICFG_PULL0        (0x3 << 2)
#define AT91_SFR_EBICFG_PULL0_UP        (0x0 << 2)
#define AT91_SFR_EBICFG_PULL0_NONE        (0x1 << 2)
#define AT91_SFR_EBICFG_PULL0_DOWN        (0x3 << 2)
#define AT91_SFR_EBICFG_SCH0        (0x1 << 4)
#define AT91_SFR_EBICFG_SCH0_OFF        (0x0 << 4)
#define AT91_SFR_EBICFG_SCH0_ON            (0x1 << 4)
#define AT91_SFR_EBICFG_DRIVE1        (0x3 << 8)
#define AT91_SFR_EBICFG_DRIVE1_LOW        (0x0 << 8)
#define AT91_SFR_EBICFG_DRIVE1_MEDIUM        (0x2 << 8)
#define AT91_SFR_EBICFG_DRIVE1_HIGH        (0x3 << 8)
#define AT91_SFR_EBICFG_PULL1        (0x3 << 10)
#define AT91_SFR_EBICFG_PULL1_UP        (0x0 << 10)
#define AT91_SFR_EBICFG_PULL1_NONE        (0x1 << 10)
#define AT91_SFR_EBICFG_PULL1_DOWN        (0x3 << 10)
#define AT91_SFR_EBICFG_SCH1        (0x1 << 12)
#define AT91_SFR_EBICFG_SCH1_OFF        (0x0 << 12)
#define AT91_SFR_EBICFG_SCH1_ON            (0x1 << 12)
 
/* Bit field in AICREDIR */
#define ATMEL_SFR_AICREDIR_NSAIC    0x00000001
 
#endif