1/* SPDX-License-Identifier: GPL-2.0+ */ 2/* 3 * System Global Control Register definitions 4 * Copyright (c) 2022 Nuvoton Technology Corp. 5 */ 6 7#ifndef _NPCM_GCR_H_ 8#define _NPCM_GCR_H_ 9 10#define NPCM_GCR_BA 0xF0800000 11 12/* On-Chip ARBEL NPCM8XX VERSIONS */ 13#define ARBEL_Z1 0x00A35850 14#define ARBEL_A1 0x04a35850 15#define ARBEL_A2 0x08a35850 16#define ARBEL_NPCM845 0x00000000 17#define ARBEL_NPCM830 0x00300395 18#define ARBEL_NPCM810 0x00000220 19 20#define MFSEL4_ESPISEL BIT(8) 21#define MFSEL1_LPCSEL BIT(26) 22#define INTCR2_WDC BIT(21) 23 24struct npcm_gcr { 25 unsigned int pdid; 26 unsigned int pwron; 27 unsigned int swstrps; 28 unsigned int rsvd1[2]; 29 unsigned int miscpe; 30 unsigned int spldcnt; 31 unsigned int rsvd2[1]; 32 unsigned int flockr2; 33 unsigned int flockr3; 34 unsigned int rsvd3[3]; 35 unsigned int a35_mode; 36 unsigned int spswc; 37 unsigned int intcr; 38 unsigned int intsr; 39 unsigned int obscr1; 40 unsigned int obsdr1; 41 unsigned int rsvd4[1]; 42 unsigned int hifcr; 43 unsigned int rsvd5[3]; 44 unsigned int intcr2; 45 unsigned int rsvd6[1]; 46 unsigned int srcnt; 47 unsigned int ressr; 48 unsigned int rlockr1; 49 unsigned int flockr1; 50 unsigned int dscnt; 51 unsigned int mdlr; 52 unsigned int scrpad_c; 53 unsigned int scrpad_b; 54 unsigned int rsvd7[4]; 55 unsigned int daclvlr; 56 unsigned int intcr3; 57 unsigned int pcirctl; 58 unsigned int rsvd8[2]; 59 unsigned int vsintr; 60 unsigned int rsvd9[1]; 61 unsigned int sd2sur1; 62 unsigned int sd2sur2; 63 unsigned int sd2irv3; 64 unsigned int intcr4; 65 unsigned int obscr2; 66 unsigned int obsdr2; 67 unsigned int rsvd10[5]; 68 unsigned int i2csegsel; 69 unsigned int i2csegctl; 70 unsigned int vsrcr; 71 unsigned int mlockr; 72 unsigned int rsvd11[8]; 73 unsigned int etsr; 74 unsigned int dft1r; 75 unsigned int dft2r; 76 unsigned int dft3r; 77 unsigned int edffsr; 78 unsigned int rsvd12[1]; 79 unsigned int intcrpce3; 80 unsigned int intcrpce2; 81 unsigned int intcrpce0; 82 unsigned int intcrpce1; 83 unsigned int dactest; 84 unsigned int scrpad; 85 unsigned int usb1phyctl; 86 unsigned int usb2phyctl; 87 unsigned int usb3phyctl; 88 unsigned int intsr2; 89 unsigned int intcrpce2b; 90 unsigned int intcrpce0b; 91 unsigned int intcrpce1b; 92 unsigned int intcrpce3b; 93 unsigned int rsvd13[4]; 94 unsigned int intcrpce2c; 95 unsigned int intcrpce0c; 96 unsigned int intcrpce1c; 97 unsigned int intcrpce3c; 98 unsigned int rsvd14[40]; 99 unsigned int sd2irv4; 100 unsigned int sd2irv5; 101 unsigned int sd2irv6; 102 unsigned int sd2irv7; 103 unsigned int sd2irv8; 104 unsigned int sd2irv9; 105 unsigned int sd2irv10; 106 unsigned int sd2irv11; 107 unsigned int rsvd15[8]; 108 unsigned int mfsel1; 109 unsigned int mfsel2; 110 unsigned int mfsel3; 111 unsigned int mfsel4; 112 unsigned int mfsel5; 113 unsigned int mfsel6; 114 unsigned int mfsel7; 115 unsigned int rsvd16[1]; 116 unsigned int mfsel_lk1; 117 unsigned int mfsel_lk2; 118 unsigned int mfsel_lk3; 119 unsigned int mfsel_lk4; 120 unsigned int mfsel_lk5; 121 unsigned int mfsel_lk6; 122 unsigned int mfsel_lk7; 123 unsigned int rsvd17[1]; 124 unsigned int mfsel_set1; 125 unsigned int mfsel_set2; 126 unsigned int mfsel_set3; 127 unsigned int mfsel_set4; 128 unsigned int mfsel_set5; 129 unsigned int mfsel_set6; 130 unsigned int mfsel_set7; 131 unsigned int rsvd18[1]; 132 unsigned int mfsel_clr1; 133 unsigned int mfsel_clr2; 134 unsigned int mfsel_clr3; 135 unsigned int mfsel_clr4; 136 unsigned int mfsel_clr5; 137 unsigned int mfsel_clr6; 138 unsigned int mfsel_clr7; 139 }; 140 141#endif 142