ADF7030-1 Device Drivers API Reference Manual  Alpha 0.0.1
Device Drivers for ADF7030-1 Transceiver
__public__ADF7030_1_hw_cdef.h
1 #ifndef ADF7030_HW_CDEF_H
2 #define ADF7030_HW_CDEF_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
20 /* ------------------- Start of section using anonymous unions ------------------ */
21 #if defined(__CC_ARM)
22  #pragma push
23  #pragma anon_unions
24 #elif defined(__ICCARM__)
25  #pragma language=extended
26 #elif defined(__GNUC__)
27  /* anonymous unions are enabled by default */
28 #elif defined(__TMS470__)
29 /* anonymous unions are enabled by default */
30 #elif defined(__TASKING__)
31  #pragma warning 586
32 #else
33  #warning Not supported compiler type
34 #endif
35 
36 
37 
38 /* ================================================================================ */
39 /* ================ VCO_CAL_RESULTS ================ */
40 /* ================================================================================ */
41 
42 
47 typedef struct {
48  __IO uint32_t DATA0;
49  __IO uint32_t DATA1;
50  __IO uint32_t DATA2;
51  __IO uint32_t DATA3;
52  __IO uint32_t DATA4;
53  __IO uint32_t DATA5;
54  __IO uint32_t DATA6;
55  __IO uint32_t DATA7;
57 
58 
59 /* ================================================================================ */
60 /* ================ PMU ================ */
61 /* ================================================================================ */
62 
63 
68 typedef struct {
69  __I uint32_t RESERVED0[2];
70 
71  union {
72  __IO uint32_t KEY;
74  struct {
75  __IO uint32_t SW_KEY : 6;
76  } KEY_b;
77  };
78 } ADI_PMU_Type;
79 
80 
81 /* ================================================================================ */
82 /* ================ SPI_HOST ================ */
83 /* ================================================================================ */
84 
85 
90 typedef struct {
92  union {
93  __IO uint32_t PNTR0;
95  struct {
96  __IO uint32_t SPIS_PNTR0 : 32;
97  } PNTR0_b;
98  };
99 
100  union {
101  __IO uint32_t PNTR1;
103  struct {
104  __IO uint32_t SPIS_PNTR1 : 32;
105  } PNTR1_b;
106  };
107 
108  union {
109  __IO uint32_t PNTR2;
111  struct {
112  __IO uint32_t SPIS_PNTR2 : 32;
113  } PNTR2_b;
114  };
116 
117 
118 /* ================================================================================ */
119 /* ================ IRQ_CTRL ================ */
120 /* ================================================================================ */
121 
122 
127 typedef struct {
129  union {
130  __IO uint32_t MASK[2];
132  struct {
133  uint32_t : 8;
134  __IO uint32_t BUFF_HALF_IRQN: 1;
136  __IO uint32_t BUFF_FULL_IRQN: 1;
138  __IO uint32_t SM_READY_IRQN: 1;
143  __IO uint32_t SM_IDLE_IRQN: 1;
147  } MASK_b[2];
148  };
149 
150  union {
151  __IO uint32_t STATUS[2];
153  struct {
154  __IO uint32_t PREAMBLE_IRQN: 1;
156  __IO uint32_t PREAMBLE_GONE_IRQN: 1;
159  __IO uint32_t SYNCWORD_IRQN: 1;
165  __IO uint32_t LENGTH_IRQN: 1;
168  __IO uint32_t PAYLOAD_IRQN: 1;
171  __IO uint32_t PAYLOAD_BLOC_IRQN: 1;
174  __IO uint32_t CRC_CHK_IRQN: 1;
177  __IO uint32_t EOF_IRQN : 1;
179  __IO uint32_t BUFF_HALF_IRQN: 1;
181  __IO uint32_t BUFF_FULL_IRQN: 1;
183  __IO uint32_t SM_READY_IRQN: 1;
188  __IO uint32_t SM_IDLE_IRQN: 1;
192  } STATUS_b[2];
193  };
195 
196 
197 /* ================================================================================ */
198 /* ================ AFC ================ */
199 /* ================================================================================ */
200 
201 
206 typedef struct {
208  union {
209  __IO uint32_t CONFIG;
211  struct {
212  __IO uint32_t MODE : 3;
213  } CONFIG_b;
214  };
215  __I uint32_t RESERVED0[3];
216 
217  union {
218  __I uint32_t FREQUENCY_ERROR;
220  struct {
221  __I uint32_t READBACK : 16;
223  } FREQUENCY_ERROR_b;
224  };
225 } ADI_AFC_Type;
226 
227 
228 /* ================================================================================ */
229 /* ================ CRMGT ================ */
230 /* ================================================================================ */
231 
232 
237 typedef struct {
238  __I uint32_t RESERVED0[2];
239 
240  union {
241  __IO uint32_t PROC_CLK_EN;
243  struct {
244  __IO uint32_t CONFIGURATION: 32;
245  } PROC_CLK_EN_b;
246  };
248 
249 
250 /* ================================================================================ */
251 /* ================ MISC ================ */
252 /* ================================================================================ */
253 
254 
259 typedef struct {
261  union {
262  __IO uint32_t FW;
264  struct {
265  __IO uint32_t STATUS : 2;
266  uint32_t : 6;
267  __IO uint32_t CURR_STATE : 6;
268  } FW_b;
269  };
270 } ADI_MISC_Type;
271 
272 
273 /* -------------------- End of section using anonymous unions ------------------- */
274 #if defined(__CC_ARM)
275  #pragma pop
276 #elif defined(__ICCARM__)
277  /* leave anonymous unions enabled */
278 #elif defined(__GNUC__)
279  /* anonymous unions are enabled by default */
280 #elif defined(__TMS470__)
281  /* anonymous unions are enabled by default */
282 #elif defined(__TASKING__)
283  #pragma warning restore
284 #else
285  #warning Not supported compiler type
286 #endif
287 
288 
289 
290 
291 /* ================================================================================ */
292 /* ================ Peripheral memory map ================ */
293 /* ================================================================================ */
294 
295 #define ADI_VCO_CAL_RESULTS_BASE 0x20000844UL
296 #define ADI_PMU_BASE 0x40000C00UL
297 #define ADI_SPI_HOST_BASE 0x40001800UL
298 #define ADI_IRQ_CTRL_BASE 0x40003800UL
299 #define ADI_AFC_BASE 0x400041F8UL
300 #define ADI_CRMGT_BASE 0x40004270UL
301 #define ADI_MISC_BASE 0x400042B4UL
302 
303 
304 /* ================================================================================ */
305 /* ================ Peripheral declaration ================ */
306 /* ================================================================================ */
307 
308 #define ADI_VCO_CAL_RESULTS ((ADI_VCO_CAL_RESULTS_Type*) ADI_VCO_CAL_RESULTS_BASE)
309 #define ADI_PMU ((ADI_PMU_Type *) ADI_PMU_BASE)
310 #define ADI_SPI_HOST ((ADI_SPI_HOST_Type *) ADI_SPI_HOST_BASE)
311 #define ADI_IRQ_CTRL ((ADI_IRQ_CTRL_Type *) ADI_IRQ_CTRL_BASE)
312 #define ADI_AFC ((ADI_AFC_Type *) ADI_AFC_BASE)
313 #define ADI_CRMGT ((ADI_CRMGT_Type *) ADI_CRMGT_BASE)
314 #define ADI_MISC ((ADI_MISC_Type *) ADI_MISC_BASE)
315  /* End of group HW_Struct Hardware Structures Definition */ /* End of group PHY_headers PHY C Headers */ /* End of group adf7030-1 ADF7030-1 Driver */
319 
320 #ifdef __cplusplus
321 }
322 #endif
323 
324 
325 #endif /* ADF7030_HW_CDEF_H */
326 
327 
MISC Firmware Register (MISC)
IRQ Control Register (IRQ_CTRL)
Some description. (SPI_HOST)
Power Management (PMU)
Clock and Reset Control (CRMGT)
VCO Calibration Results (VCO_CAL_RESULTS)