dp83848
Select one of the symbols to view example projects that use it.
Symbol previews are coming soon...
Outline
#define DP83848_H
Includes
#include <stdint.h>
Exported constants
#define DP83848_BCR
#define DP83848_BSR
#define DP83848_PHYI1R
#define DP83848_PHYI2R
#define DP83848_ANAR
#define DP83848_ANLPAR
#define DP83848_ANER
#define DP83848_ANNPTR
#define DP83848_SMR
#define DP83848_ISFR
#define DP83848_IMR
#define DP83848_PHYSCSR
#define DP83848_BCR_SOFT_RESET
#define DP83848_BCR_LOOPBACK
#define DP83848_BCR_SPEED_SELECT
#define DP83848_BCR_AUTONEGO_EN
#define DP83848_BCR_POWER_DOWN
#define DP83848_BCR_ISOLATE
#define DP83848_BCR_RESTART_AUTONEGO
#define DP83848_BCR_DUPLEX_MODE
#define DP83848_BSR_100BASE_T4
#define DP83848_BSR_100BASE_TX_FD
#define DP83848_BSR_100BASE_TX_HD
#define DP83848_BSR_10BASE_T_FD
#define DP83848_BSR_10BASE_T_HD
#define DP83848_BSR_MF_PREAMBLE
#define DP83848_BSR_AUTONEGO_CPLT
#define DP83848_BSR_REMOTE_FAULT
#define DP83848_BSR_AUTONEGO_ABILITY
#define DP83848_BSR_LINK_STATUS
#define DP83848_BSR_JABBER_DETECT
#define DP83848_BSR_EXTENDED_CAP
#define DP83848_PHYI1R_OUI_3_18
#define DP83848_PHYI2R_OUI_19_24
#define DP83848_PHYI2R_MODEL_NBR
#define DP83848_PHYI2R_REVISION_NBR
#define DP83848_ANAR_NEXT_PAGE
#define DP83848_ANAR_REMOTE_FAULT
#define DP83848_ANAR_PAUSE_OPERATION
#define DP83848_ANAR_PO_NOPAUSE
#define DP83848_ANAR_PO_SYMMETRIC_PAUSE
#define DP83848_ANAR_PO_ASYMMETRIC_PAUSE
#define DP83848_ANAR_PO_ADVERTISE_SUPPORT
#define DP83848_ANAR_100BASE_TX_FD
#define DP83848_ANAR_100BASE_TX
#define DP83848_ANAR_10BASE_T_FD
#define DP83848_ANAR_10BASE_T
#define DP83848_ANAR_SELECTOR_FIELD
#define DP83848_ANLPAR_NEXT_PAGE
#define DP83848_ANLPAR_REMOTE_FAULT
#define DP83848_ANLPAR_PAUSE_OPERATION
#define DP83848_ANLPAR_PO_NOPAUSE
#define DP83848_ANLPAR_PO_SYMMETRIC_PAUSE
#define DP83848_ANLPAR_PO_ASYMMETRIC_PAUSE
#define DP83848_ANLPAR_PO_ADVERTISE_SUPPORT
#define DP83848_ANLPAR_100BASE_TX_FD
#define DP83848_ANLPAR_100BASE_TX
#define DP83848_ANLPAR_10BASE_T_FD
#define DP83848_ANLPAR_10BASE_T
#define DP83848_ANLPAR_SELECTOR_FIELD
#define DP83848_ANER_RX_NP_LOCATION_ABLE
#define DP83848_ANER_RX_NP_STORAGE_LOCATION
#define DP83848_ANER_PARALLEL_DETECT_FAULT
#define DP83848_ANER_LP_NP_ABLE
#define DP83848_ANER_NP_ABLE
#define DP83848_ANER_PAGE_RECEIVED
#define DP83848_ANER_LP_AUTONEG_ABLE
#define DP83848_ANNPTR_NEXT_PAGE
#define DP83848_ANNPTR_MESSAGE_PAGE
#define DP83848_ANNPTR_ACK2
#define DP83848_ANNPTR_TOGGLE
#define DP83848_ANNPTR_MESSAGE_CODE
#define DP83848_ANNPRR_NEXT_PAGE
#define DP83848_ANNPRR_ACK
#define DP83848_ANNPRR_MESSAGE_PAGE
#define DP83848_ANNPRR_ACK2
#define DP83848_ANNPRR_TOGGLE
#define DP83848_ANNPRR_MESSAGE_CODE
#define DP83848_MMDACR_MMD_FUNCTION
#define DP83848_MMDACR_MMD_FUNCTION_ADDR
#define DP83848_MMDACR_MMD_FUNCTION_DATA
#define DP83848_MMDACR_MMD_DEV_ADDR
#define DP83848_ENCTR_TX_ENABLE
#define DP83848_ENCTR_TX_TIMER
#define DP83848_ENCTR_TX_TIMER_1S
#define DP83848_ENCTR_TX_TIMER_768MS
#define DP83848_ENCTR_TX_TIMER_512MS
#define DP83848_ENCTR_TX_TIMER_265MS
#define DP83848_ENCTR_RX_ENABLE
#define DP83848_ENCTR_RX_MAX_INTERVAL
#define DP83848_ENCTR_RX_MAX_INTERVAL_64MS
#define DP83848_ENCTR_RX_MAX_INTERVAL_256MS
#define DP83848_ENCTR_RX_MAX_INTERVAL_512MS
#define DP83848_ENCTR_RX_MAX_INTERVAL_1S
#define DP83848_ENCTR_EX_CROSS_OVER
#define DP83848_ENCTR_EX_MANUAL_CROSS_OVER
#define DP83848_MCSR_EDPWRDOWN
#define DP83848_MCSR_FARLOOPBACK
#define DP83848_MCSR_ALTINT
#define DP83848_MCSR_ENERGYON
#define DP83848_SMR_MODE
#define DP83848_SMR_PHY_ADDR
#define DP83848_TPDCR_DELAY_IN
#define DP83848_TPDCR_LINE_BREAK_COUNTER
#define DP83848_TPDCR_PATTERN_HIGH
#define DP83848_TPDCR_PATTERN_LOW
#define DP83848_TCSR_TDR_ENABLE
#define DP83848_TCSR_TDR_AD_FILTER_ENABLE
#define DP83848_TCSR_TDR_CH_CABLE_TYPE
#define DP83848_TCSR_TDR_CH_CABLE_DEFAULT
#define DP83848_TCSR_TDR_CH_CABLE_SHORTED
#define DP83848_TCSR_TDR_CH_CABLE_OPEN
#define DP83848_TCSR_TDR_CH_CABLE_MATCH
#define DP83848_TCSR_TDR_CH_STATUS
#define DP83848_TCSR_TDR_CH_LENGTH
#define DP83848_SCSIR_AUTO_MDIX_ENABLE
#define DP83848_SCSIR_CHANNEL_SELECT
#define DP83848_SCSIR_SQE_DISABLE
#define DP83848_SCSIR_XPOLALITY
#define DP83848_CLR_CABLE_LENGTH
#define DP83848_INT_8
#define DP83848_INT_7
#define DP83848_INT_6
#define DP83848_INT_5
#define DP83848_INT_4
#define DP83848_INT_3
#define DP83848_INT_2
#define DP83848_INT_1
#define DP83848_PHYSCSR_AUTONEGO_DONE
#define DP83848_PHYSCSR_HCDSPEEDMASK
#define DP83848_PHYSCSR_10BT_HD
#define DP83848_PHYSCSR_10BT_FD
#define DP83848_PHYSCSR_100BTX_HD
#define DP83848_PHYSCSR_100BTX_FD
#define DP83848_STATUS_READ_ERROR
#define DP83848_STATUS_WRITE_ERROR
#define DP83848_STATUS_ADDRESS_ERROR
#define DP83848_STATUS_RESET_TIMEOUT
#define DP83848_STATUS_ERROR
#define DP83848_STATUS_OK
#define DP83848_STATUS_LINK_DOWN
#define DP83848_STATUS_100MBITS_FULLDUPLEX
#define DP83848_STATUS_100MBITS_HALFDUPLEX
#define DP83848_STATUS_10MBITS_FULLDUPLEX
#define DP83848_STATUS_10MBITS_HALFDUPLEX
#define DP83848_STATUS_AUTONEGO_NOTDONE
#define DP83848_WOL_IT
#define DP83848_ENERGYON_IT
#define DP83848_AUTONEGO_COMPLETE_IT
#define DP83848_REMOTE_FAULT_IT
#define DP83848_LINK_DOWN_IT
#define DP83848_AUTONEGO_LP_ACK_IT
#define DP83848_PARALLEL_DETECTION_FAULT_IT
#define DP83848_AUTONEGO_PAGE_RECEIVED_IT
Exported types
dp83848_Init_Func
dp83848_DeInit_Func
dp83848_ReadReg_Func
dp83848_WriteReg_Func
dp83848_GetTick_Func
dp83848_IOCtx_t
Init
DeInit
WriteReg
ReadReg
GetTick
dp83848_Object_t
DevAddr
Is_Initialized
IO
pData
DP83848_RegisterBusIO(dp83848_Object_t *, dp83848_IOCtx_t *);
DP83848_Init(dp83848_Object_t *);
DP83848_DeInit(dp83848_Object_t *);
DP83848_DisablePowerDownMode(dp83848_Object_t *);
DP83848_EnablePowerDownMode(dp83848_Object_t *);
DP83848_StartAutoNego(dp83848_Object_t *);
DP83848_GetLinkState(dp83848_Object_t *);
DP83848_SetLinkState(dp83848_Object_t *, uint32_t);
DP83848_EnableLoopbackMode(dp83848_Object_t *);
DP83848_DisableLoopbackMode(dp83848_Object_t *);
DP83848_EnableIT(dp83848_Object_t *, uint32_t);
DP83848_DisableIT(dp83848_Object_t *, uint32_t);
DP83848_ClearIT(dp83848_Object_t *, uint32_t);
DP83848_GetITStatus(dp83848_Object_t *, uint32_t);
Files
loading...
SourceVu
STM32 Libraries and Samples
dp83848
dp83848.h
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
/**
******************************************************************************
* @file dp83848.h
* @author MCD Application Team
* @brief This file contains all the functions prototypes for the
* dp83848.c PHY driver.
******************************************************************************
* @attention
*
* Copyright (c) 2021 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* ... */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef
DP83848_H
#define
DP83848_H
#ifdef
__cplusplus
extern
"C"
{
#endif
/* Includes ------------------------------------------------------------------*/
#include
<
stdint.h>
/** @addtogroup BSP
* @{
*/
/* ... */
/** @addtogroup Component
* @{
*/
/* ... */
/** @defgroup DP83848
* @{
*/
/* ... */
Includes
/* Exported constants --------------------------------------------------------*/
/** @defgroup DP83848_Exported_Constants DP83848 Exported Constants
* @{
*/
/* ... */
/** @defgroup DP83848_Registers_Mapping DP83848 Registers Mapping
* @{
*/
/* ... */
#define
DP83848_BCR
(
(
uint16_t
)
0x0000U
)
#define
DP83848_BSR
(
(
uint16_t
)
0x0001U
)
#define
DP83848_PHYI1R
(
(
uint16_t
)
0x0002U
)
#define
DP83848_PHYI2R
(
(
uint16_t
)
0x0003U
)
#define
DP83848_ANAR
(
(
uint16_t
)
0x0004U
)
#define
DP83848_ANLPAR
(
(
uint16_t
)
0x0005U
)
#define
DP83848_ANER
(
(
uint16_t
)
0x0006U
)
#define
DP83848_ANNPTR
(
(
uint16_t
)
0x0007U
)
#define
DP83848_SMR
(
(
uint16_t
)
0x0019U
)
#define
DP83848_ISFR
(
(
uint16_t
)
0x0012U
)
#define
DP83848_IMR
(
(
uint16_t
)
0x0011U
)
#define
DP83848_PHYSCSR
(
(
uint16_t
)
0x0010U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_BCR_Bit_Definition DP83848 BCR Bit Definition
* @{
*/
/* ... */
#define
DP83848_BCR_SOFT_RESET
(
(
uint16_t
)
0x8000U
)
#define
DP83848_BCR_LOOPBACK
(
(
uint16_t
)
0x4000U
)
#define
DP83848_BCR_SPEED_SELECT
(
(
uint16_t
)
0x2000U
)
#define
DP83848_BCR_AUTONEGO_EN
(
(
uint16_t
)
0x1000U
)
#define
DP83848_BCR_POWER_DOWN
(
(
uint16_t
)
0x0800U
)
#define
DP83848_BCR_ISOLATE
(
(
uint16_t
)
0x0400U
)
#define
DP83848_BCR_RESTART_AUTONEGO
(
(
uint16_t
)
0x0200U
)
#define
DP83848_BCR_DUPLEX_MODE
(
(
uint16_t
)
0x0100U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_BSR_Bit_Definition DP83848 BSR Bit Definition
* @{
*/
/* ... */
#define
DP83848_BSR_100BASE_T4
(
(
uint16_t
)
0x8000U
)
#define
DP83848_BSR_100BASE_TX_FD
(
(
uint16_t
)
0x4000U
)
#define
DP83848_BSR_100BASE_TX_HD
(
(
uint16_t
)
0x2000U
)
#define
DP83848_BSR_10BASE_T_FD
(
(
uint16_t
)
0x1000U
)
#define
DP83848_BSR_10BASE_T_HD
(
(
uint16_t
)
0x0800U
)
#define
DP83848_BSR_MF_PREAMBLE
(
(
uint16_t
)
0x0040U
)
#define
DP83848_BSR_AUTONEGO_CPLT
(
(
uint16_t
)
0x0020U
)
#define
DP83848_BSR_REMOTE_FAULT
(
(
uint16_t
)
0x0010U
)
#define
DP83848_BSR_AUTONEGO_ABILITY
(
(
uint16_t
)
0x0008U
)
#define
DP83848_BSR_LINK_STATUS
(
(
uint16_t
)
0x0004U
)
#define
DP83848_BSR_JABBER_DETECT
(
(
uint16_t
)
0x0002U
)
#define
DP83848_BSR_EXTENDED_CAP
(
(
uint16_t
)
0x0001U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_PHYI1R_Bit_Definition DP83848 PHYI1R Bit Definition
* @{
*/
/* ... */
#define
DP83848_PHYI1R_OUI_3_18
(
(
uint16_t
)
0xFFFFU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_PHYI2R_Bit_Definition DP83848 PHYI2R Bit Definition
* @{
*/
/* ... */
#define
DP83848_PHYI2R_OUI_19_24
(
(
uint16_t
)
0xFC00U
)
#define
DP83848_PHYI2R_MODEL_NBR
(
(
uint16_t
)
0x03F0U
)
#define
DP83848_PHYI2R_REVISION_NBR
(
(
uint16_t
)
0x000FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ANAR_Bit_Definition DP83848 ANAR Bit Definition
* @{
*/
/* ... */
#define
DP83848_ANAR_NEXT_PAGE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_ANAR_REMOTE_FAULT
(
(
uint16_t
)
0x2000U
)
#define
DP83848_ANAR_PAUSE_OPERATION
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ANAR_PO_NOPAUSE
(
(
uint16_t
)
0x0000U
)
#define
DP83848_ANAR_PO_SYMMETRIC_PAUSE
(
(
uint16_t
)
0x0400U
)
#define
DP83848_ANAR_PO_ASYMMETRIC_PAUSE
(
(
uint16_t
)
0x0800U
)
#define
DP83848_ANAR_PO_ADVERTISE_SUPPORT
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ANAR_100BASE_TX_FD
(
(
uint16_t
)
0x0100U
)
#define
DP83848_ANAR_100BASE_TX
(
(
uint16_t
)
0x0080U
)
#define
DP83848_ANAR_10BASE_T_FD
(
(
uint16_t
)
0x0040U
)
#define
DP83848_ANAR_10BASE_T
(
(
uint16_t
)
0x0020U
)
#define
DP83848_ANAR_SELECTOR_FIELD
(
(
uint16_t
)
0x000FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ANLPAR_Bit_Definition DP83848 ANLPAR Bit Definition
* @{
*/
/* ... */
#define
DP83848_ANLPAR_NEXT_PAGE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_ANLPAR_REMOTE_FAULT
(
(
uint16_t
)
0x2000U
)
#define
DP83848_ANLPAR_PAUSE_OPERATION
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ANLPAR_PO_NOPAUSE
(
(
uint16_t
)
0x0000U
)
#define
DP83848_ANLPAR_PO_SYMMETRIC_PAUSE
(
(
uint16_t
)
0x0400U
)
#define
DP83848_ANLPAR_PO_ASYMMETRIC_PAUSE
(
(
uint16_t
)
0x0800U
)
#define
DP83848_ANLPAR_PO_ADVERTISE_SUPPORT
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ANLPAR_100BASE_TX_FD
(
(
uint16_t
)
0x0100U
)
#define
DP83848_ANLPAR_100BASE_TX
(
(
uint16_t
)
0x0080U
)
#define
DP83848_ANLPAR_10BASE_T_FD
(
(
uint16_t
)
0x0040U
)
#define
DP83848_ANLPAR_10BASE_T
(
(
uint16_t
)
0x0020U
)
#define
DP83848_ANLPAR_SELECTOR_FIELD
(
(
uint16_t
)
0x000FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ANER_Bit_Definition DP83848 ANER Bit Definition
* @{
*/
/* ... */
#define
DP83848_ANER_RX_NP_LOCATION_ABLE
(
(
uint16_t
)
0x0040U
)
#define
DP83848_ANER_RX_NP_STORAGE_LOCATION
(
(
uint16_t
)
0x0020U
)
#define
DP83848_ANER_PARALLEL_DETECT_FAULT
(
(
uint16_t
)
0x0010U
)
#define
DP83848_ANER_LP_NP_ABLE
(
(
uint16_t
)
0x0008U
)
#define
DP83848_ANER_NP_ABLE
(
(
uint16_t
)
0x0004U
)
#define
DP83848_ANER_PAGE_RECEIVED
(
(
uint16_t
)
0x0002U
)
#define
DP83848_ANER_LP_AUTONEG_ABLE
(
(
uint16_t
)
0x0001U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ANNPTR_Bit_Definition DP83848 ANNPTR Bit Definition
* @{
*/
/* ... */
#define
DP83848_ANNPTR_NEXT_PAGE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_ANNPTR_MESSAGE_PAGE
(
(
uint16_t
)
0x2000U
)
#define
DP83848_ANNPTR_ACK2
(
(
uint16_t
)
0x1000U
)
#define
DP83848_ANNPTR_TOGGLE
(
(
uint16_t
)
0x0800U
)
#define
DP83848_ANNPTR_MESSAGE_CODE
(
(
uint16_t
)
0x07FFU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ANNPRR_Bit_Definition DP83848 ANNPRR Bit Definition
* @{
*/
/* ... */
#define
DP83848_ANNPRR_NEXT_PAGE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_ANNPRR_ACK
(
(
uint16_t
)
0x4000U
)
#define
DP83848_ANNPRR_MESSAGE_PAGE
(
(
uint16_t
)
0x2000U
)
#define
DP83848_ANNPRR_ACK2
(
(
uint16_t
)
0x1000U
)
#define
DP83848_ANNPRR_TOGGLE
(
(
uint16_t
)
0x0800U
)
#define
DP83848_ANNPRR_MESSAGE_CODE
(
(
uint16_t
)
0x07FFU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_MMDACR_Bit_Definition DP83848 MMDACR Bit Definition
* @{
*/
/* ... */
#define
DP83848_MMDACR_MMD_FUNCTION
(
(
uint16_t
)
0xC000U
)
#define
DP83848_MMDACR_MMD_FUNCTION_ADDR
(
(
uint16_t
)
0x0000U
)
#define
DP83848_MMDACR_MMD_FUNCTION_DATA
(
(
uint16_t
)
0x4000U
)
#define
DP83848_MMDACR_MMD_DEV_ADDR
(
(
uint16_t
)
0x001FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_ENCTR_Bit_Definition DP83848 ENCTR Bit Definition
* @{
*/
/* ... */
#define
DP83848_ENCTR_TX_ENABLE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_ENCTR_TX_TIMER
(
(
uint16_t
)
0x6000U
)
#define
DP83848_ENCTR_TX_TIMER_1S
(
(
uint16_t
)
0x0000U
)
#define
DP83848_ENCTR_TX_TIMER_768MS
(
(
uint16_t
)
0x2000U
)
#define
DP83848_ENCTR_TX_TIMER_512MS
(
(
uint16_t
)
0x4000U
)
#define
DP83848_ENCTR_TX_TIMER_265MS
(
(
uint16_t
)
0x6000U
)
#define
DP83848_ENCTR_RX_ENABLE
(
(
uint16_t
)
0x1000U
)
#define
DP83848_ENCTR_RX_MAX_INTERVAL
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ENCTR_RX_MAX_INTERVAL_64MS
(
(
uint16_t
)
0x0000U
)
#define
DP83848_ENCTR_RX_MAX_INTERVAL_256MS
(
(
uint16_t
)
0x0400U
)
#define
DP83848_ENCTR_RX_MAX_INTERVAL_512MS
(
(
uint16_t
)
0x0800U
)
#define
DP83848_ENCTR_RX_MAX_INTERVAL_1S
(
(
uint16_t
)
0x0C00U
)
#define
DP83848_ENCTR_EX_CROSS_OVER
(
(
uint16_t
)
0x0002U
)
#define
DP83848_ENCTR_EX_MANUAL_CROSS_OVER
(
(
uint16_t
)
0x0001U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_MCSR_Bit_Definition DP83848 MCSR Bit Definition
* @{
*/
/* ... */
#define
DP83848_MCSR_EDPWRDOWN
(
(
uint16_t
)
0x2000U
)
#define
DP83848_MCSR_FARLOOPBACK
(
(
uint16_t
)
0x0200U
)
#define
DP83848_MCSR_ALTINT
(
(
uint16_t
)
0x0040U
)
#define
DP83848_MCSR_ENERGYON
(
(
uint16_t
)
0x0002U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_SMR_Bit_Definition DP83848 SMR Bit Definition
* @{
*/
/* ... */
#define
DP83848_SMR_MODE
(
(
uint16_t
)
0x00E0U
)
#define
DP83848_SMR_PHY_ADDR
(
(
uint16_t
)
0x001FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_TPDCR_Bit_Definition DP83848 TPDCR Bit Definition
* @{
*/
/* ... */
#define
DP83848_TPDCR_DELAY_IN
(
(
uint16_t
)
0x8000U
)
#define
DP83848_TPDCR_LINE_BREAK_COUNTER
(
(
uint16_t
)
0x7000U
)
#define
DP83848_TPDCR_PATTERN_HIGH
(
(
uint16_t
)
0x0FC0U
)
#define
DP83848_TPDCR_PATTERN_LOW
(
(
uint16_t
)
0x003FU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_TCSR_Bit_Definition DP83848 TCSR Bit Definition
* @{
*/
/* ... */
#define
DP83848_TCSR_TDR_ENABLE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_TCSR_TDR_AD_FILTER_ENABLE
(
(
uint16_t
)
0x4000U
)
#define
DP83848_TCSR_TDR_CH_CABLE_TYPE
(
(
uint16_t
)
0x0600U
)
#define
DP83848_TCSR_TDR_CH_CABLE_DEFAULT
(
(
uint16_t
)
0x0000U
)
#define
DP83848_TCSR_TDR_CH_CABLE_SHORTED
(
(
uint16_t
)
0x0200U
)
#define
DP83848_TCSR_TDR_CH_CABLE_OPEN
(
(
uint16_t
)
0x0400U
)
#define
DP83848_TCSR_TDR_CH_CABLE_MATCH
(
(
uint16_t
)
0x0600U
)
#define
DP83848_TCSR_TDR_CH_STATUS
(
(
uint16_t
)
0x0100U
)
#define
DP83848_TCSR_TDR_CH_LENGTH
(
(
uint16_t
)
0x00FFU
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_SCSIR_Bit_Definition DP83848 SCSIR Bit Definition
* @{
*/
/* ... */
#define
DP83848_SCSIR_AUTO_MDIX_ENABLE
(
(
uint16_t
)
0x8000U
)
#define
DP83848_SCSIR_CHANNEL_SELECT
(
(
uint16_t
)
0x2000U
)
#define
DP83848_SCSIR_SQE_DISABLE
(
(
uint16_t
)
0x0800U
)
#define
DP83848_SCSIR_XPOLALITY
(
(
uint16_t
)
0x0010U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_CLR_Bit_Definition DP83848 CLR Bit Definition
* @{
*/
/* ... */
#define
DP83848_CLR_CABLE_LENGTH
(
(
uint16_t
)
0xF000U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_IMR_ISFR_Bit_Definition DP83848 IMR ISFR Bit Definition
* @{
*/
/* ... */
#define
DP83848_INT_8
(
(
uint16_t
)
0x0100U
)
#define
DP83848_INT_7
(
(
uint16_t
)
0x0080U
)
#define
DP83848_INT_6
(
(
uint16_t
)
0x0040U
)
#define
DP83848_INT_5
(
(
uint16_t
)
0x0020U
)
#define
DP83848_INT_4
(
(
uint16_t
)
0x0010U
)
#define
DP83848_INT_3
(
(
uint16_t
)
0x0008U
)
#define
DP83848_INT_2
(
(
uint16_t
)
0x0004U
)
#define
DP83848_INT_1
(
(
uint16_t
)
0x0002U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_PHYSCSR_Bit_Definition DP83848 PHYSCSR Bit Definition
* @{
*/
/* ... */
#define
DP83848_PHYSCSR_AUTONEGO_DONE
(
(
uint16_t
)
0x010U
)
#define
DP83848_PHYSCSR_HCDSPEEDMASK
(
(
uint16_t
)
0x006U
)
#define
DP83848_PHYSCSR_10BT_HD
(
(
uint16_t
)
0x002U
)
#define
DP83848_PHYSCSR_10BT_FD
(
(
uint16_t
)
0x006U
)
#define
DP83848_PHYSCSR_100BTX_HD
(
(
uint16_t
)
0x000U
)
#define
DP83848_PHYSCSR_100BTX_FD
(
(
uint16_t
)
0x004U
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_Status DP83848 Status
* @{
*/
/* ... */
#define
DP83848_STATUS_READ_ERROR
(
(
int32_t
)
-
5
)
#define
DP83848_STATUS_WRITE_ERROR
(
(
int32_t
)
-
4
)
#define
DP83848_STATUS_ADDRESS_ERROR
(
(
int32_t
)
-
3
)
#define
DP83848_STATUS_RESET_TIMEOUT
(
(
int32_t
)
-
2
)
#define
DP83848_STATUS_ERROR
(
(
int32_t
)
-
1
)
#define
DP83848_STATUS_OK
(
(
int32_t
)
0
)
#define
DP83848_STATUS_LINK_DOWN
(
(
int32_t
)
1
)
#define
DP83848_STATUS_100MBITS_FULLDUPLEX
(
(
int32_t
)
2
)
#define
DP83848_STATUS_100MBITS_HALFDUPLEX
(
(
int32_t
)
3
)
#define
DP83848_STATUS_10MBITS_FULLDUPLEX
(
(
int32_t
)
4
)
#define
DP83848_STATUS_10MBITS_HALFDUPLEX
(
(
int32_t
)
5
)
#define
DP83848_STATUS_AUTONEGO_NOTDONE
(
(
int32_t
)
6
)
/**
* @}
*/
/* ... */
/** @defgroup DP83848_IT_Flags DP83848 IT Flags
* @{
*/
/* ... */
#define
DP83848_WOL_IT
DP83848_INT_8
#define
DP83848_ENERGYON_IT
DP83848_INT_7
#define
DP83848_AUTONEGO_COMPLETE_IT
DP83848_INT_6
#define
DP83848_REMOTE_FAULT_IT
DP83848_INT_5
#define
DP83848_LINK_DOWN_IT
DP83848_INT_4
#define
DP83848_AUTONEGO_LP_ACK_IT
DP83848_INT_3
#define
DP83848_PARALLEL_DETECTION_FAULT_IT
DP83848_INT_2
#define
DP83848_AUTONEGO_PAGE_RECEIVED_IT
DP83848_INT_1
154 defines
/**
* @}
*/
/* ... */
/**
* @}
*/
/* ... */
Exported constants
/* Exported types ------------------------------------------------------------*/
/** @defgroup DP83848_Exported_Types DP83848 Exported Types
* @{
*/
/* ... */
typedef
int32_t
(
*
dp83848_Init_Func
)
(
void
)
;
typedef
int32_t
(
*
dp83848_DeInit_Func
)
(
void
)
;
typedef
int32_t
(
*
dp83848_ReadReg_Func
)
(
uint32_t
,
uint32_t
,
uint32_t
*
)
;
typedef
int32_t
(
*
dp83848_WriteReg_Func
)
(
uint32_t
,
uint32_t
,
uint32_t
)
;
typedef
int32_t
(
*
dp83848_GetTick_Func
)
(
void
)
;
typedef
struct
{
dp83848_Init_Func
Init
;
dp83848_DeInit_Func
DeInit
;
dp83848_WriteReg_Func
WriteReg
;
dp83848_ReadReg_Func
ReadReg
;
dp83848_GetTick_Func
GetTick
;
...
}
dp83848_IOCtx_t
;
typedef
struct
{
uint32_t
DevAddr
;
uint32_t
Is_Initialized
;
dp83848_IOCtx_t
IO
;
void
*
pData
;
...
}
dp83848_Object_t
;
/**
* @}
*/
/* ... */
Exported types
/* Exported macro ------------------------------------------------------------*/
/* Exported functions --------------------------------------------------------*/
/** @defgroup DP83848_Exported_Functions DP83848 Exported Functions
* @{
*/
/* ... */
int32_t
DP83848_RegisterBusIO
(
dp83848_Object_t
*
pObj
,
dp83848_IOCtx_t
*
ioctx
)
;
int32_t
DP83848_Init
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_DeInit
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_DisablePowerDownMode
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_EnablePowerDownMode
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_StartAutoNego
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_GetLinkState
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_SetLinkState
(
dp83848_Object_t
*
pObj
,
uint32_t
LinkState
)
;
int32_t
DP83848_EnableLoopbackMode
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_DisableLoopbackMode
(
dp83848_Object_t
*
pObj
)
;
int32_t
DP83848_EnableIT
(
dp83848_Object_t
*
pObj
,
uint32_t
Interrupt
)
;
int32_t
DP83848_DisableIT
(
dp83848_Object_t
*
pObj
,
uint32_t
Interrupt
)
;
int32_t
DP83848_ClearIT
(
dp83848_Object_t
*
pObj
,
uint32_t
Interrupt
)
;
int32_t
DP83848_GetITStatus
(
dp83848_Object_t
*
pObj
,
uint32_t
Interrupt
)
;
/**
* @}
*/
/* ... */
#ifdef
__cplusplus
}
extern "C" { ... }
#endif
/* ... */
#endif
/* DP83848_H */
/**
* @}
*/
/* ... */
/**
* @}
*/
/* ... */
/**
* @}
*/
/* ... */
/**
* @}
*/
/* ... */
Details
Show:
from
Types:
Columns:
All items filtered out
All items filtered out
This file uses the notable symbols shown below. Click anywhere in the file to view more details.
DP83848_GetLinkState()
DP83848_RegisterBusIO()
DP83848_Init()
DP83848_DeInit()
DP83848_DisablePowerDownMode()
DP83848_EnablePowerDownMode()
DP83848_StartAutoNego()
DP83848_SetLinkState()
DP83848_EnableLoopbackMode()
DP83848_DisableLoopbackMode()
DP83848_EnableIT()
DP83848_DisableIT()
DP83848_ClearIT()
DP83848_GetITStatus()
dp83848_Object_t
dp83848_IOCtx_t::ReadReg
DP83848_STATUS_LINK_DOWN
dp83848_IOCtx_t
dp83848_IOCtx_t::WriteReg
dp83848_Object_t::IO
DP83848_STATUS_100MBITS_FULLDUPLEX
DP83848_STATUS_100MBITS_HALFDUPLEX
DP83848_STATUS_10MBITS_FULLDUPLEX
dp83848_IOCtx_t::GetTick
DP83848_STATUS_10MBITS_HALFDUPLEX
dp83848_IOCtx_t::Init
dp83848_IOCtx_t::DeInit
dp83848_Object_t::DevAddr
DP83848_Init()::pObj
DP83848_STATUS_READ_ERROR
DP83848_BCR
DP83848_STATUS_OK
DP83848_STATUS_WRITE_ERROR
DP83848_RegisterBusIO()::ioctx
DP83848_GetLinkState()::pObj
DP83848_BCR_SPEED_SELECT
DP83848_BCR_DUPLEX_MODE
DP83848_RegisterBusIO()::pObj
DP83848_DeInit()::pObj
DP83848_DisablePowerDownMode()::pObj
DP83848_EnablePowerDownMode()::pObj
DP83848_StartAutoNego()::pObj
DP83848_SetLinkState()::pObj
DP83848_EnableLoopbackMode()::pObj
DP83848_DisableLoopbackMode()::pObj
DP83848_EnableIT()::pObj
DP83848_DisableIT()::pObj
DP83848_IMR
DP83848_BCR_AUTONEGO_EN
dp83848_Object_t::Is_Initialized
DP83848_SetLinkState()::LinkState
DP83848_PHYSCSR_HCDSPEEDMASK
DP83848_STATUS_ERROR
DP83848_ClearIT()::pObj
DP83848_GetITStatus()::pObj
DP83848_GetITStatus()::Interrupt
DP83848_BSR
DP83848_ISFR
DP83848_BCR_SOFT_RESET
DP83848_BCR_LOOPBACK
DP83848_BCR_POWER_DOWN
DP83848_EnableIT()::Interrupt
DP83848_DisableIT()::Interrupt
DP83848_SMR
DP83848_PHYSCSR
DP83848_BSR_LINK_STATUS
DP83848_SMR_PHY_ADDR
DP83848_PHYSCSR_AUTONEGO_DONE
DP83848_PHYSCSR_10BT_FD
DP83848_PHYSCSR_100BTX_HD
DP83848_PHYSCSR_100BTX_FD
DP83848_STATUS_ADDRESS_ERROR
DP83848_STATUS_RESET_TIMEOUT
DP83848_STATUS_AUTONEGO_NOTDONE
dp83848_Init_Func
dp83848_DeInit_Func
dp83848_ReadReg_Func
dp83848_WriteReg_Func
dp83848_GetTick_Func
DP83848_ClearIT()::Interrupt
DP83848_H
DP83848_PHYI1R
DP83848_PHYI2R
DP83848_ANAR
DP83848_ANLPAR
DP83848_ANER
DP83848_ANNPTR
DP83848_BCR_ISOLATE
DP83848_BCR_RESTART_AUTONEGO
DP83848_BSR_100BASE_T4
DP83848_BSR_100BASE_TX_FD
DP83848_BSR_100BASE_TX_HD
DP83848_BSR_10BASE_T_FD
DP83848_BSR_10BASE_T_HD
DP83848_BSR_MF_PREAMBLE
DP83848_BSR_AUTONEGO_CPLT
DP83848_BSR_REMOTE_FAULT
DP83848_BSR_AUTONEGO_ABILITY
DP83848_BSR_JABBER_DETECT
DP83848_BSR_EXTENDED_CAP
DP83848_PHYI1R_OUI_3_18
DP83848_PHYI2R_OUI_19_24
DP83848_PHYI2R_MODEL_NBR
DP83848_PHYI2R_REVISION_NBR
DP83848_ANAR_NEXT_PAGE
DP83848_ANAR_REMOTE_FAULT
DP83848_ANAR_PAUSE_OPERATION
DP83848_ANAR_PO_NOPAUSE
DP83848_ANAR_PO_SYMMETRIC_PAUSE
DP83848_ANAR_PO_ASYMMETRIC_PAUSE
DP83848_ANAR_PO_ADVERTISE_SUPPORT
DP83848_ANAR_100BASE_TX_FD
DP83848_ANAR_100BASE_TX
DP83848_ANAR_10BASE_T_FD
DP83848_ANAR_10BASE_T
DP83848_ANAR_SELECTOR_FIELD
DP83848_ANLPAR_NEXT_PAGE
DP83848_ANLPAR_REMOTE_FAULT
DP83848_ANLPAR_PAUSE_OPERATION
DP83848_ANLPAR_PO_NOPAUSE
DP83848_ANLPAR_PO_SYMMETRIC_PAUSE
DP83848_ANLPAR_PO_ASYMMETRIC_PAUSE
DP83848_ANLPAR_PO_ADVERTISE_SUPPORT
DP83848_ANLPAR_100BASE_TX_FD
DP83848_ANLPAR_100BASE_TX
DP83848_ANLPAR_10BASE_T_FD
DP83848_ANLPAR_10BASE_T
DP83848_ANLPAR_SELECTOR_FIELD
DP83848_ANER_RX_NP_LOCATION_ABLE
DP83848_ANER_RX_NP_STORAGE_LOCATION
DP83848_ANER_PARALLEL_DETECT_FAULT
DP83848_ANER_LP_NP_ABLE
DP83848_ANER_NP_ABLE
DP83848_ANER_PAGE_RECEIVED
DP83848_ANER_LP_AUTONEG_ABLE
DP83848_ANNPTR_NEXT_PAGE
DP83848_ANNPTR_MESSAGE_PAGE
DP83848_ANNPTR_ACK2
DP83848_ANNPTR_TOGGLE
DP83848_ANNPTR_MESSAGE_CODE
DP83848_ANNPRR_NEXT_PAGE
DP83848_ANNPRR_ACK
DP83848_ANNPRR_MESSAGE_PAGE
DP83848_ANNPRR_ACK2
DP83848_ANNPRR_TOGGLE
DP83848_ANNPRR_MESSAGE_CODE
DP83848_MMDACR_MMD_FUNCTION
DP83848_MMDACR_MMD_FUNCTION_ADDR
DP83848_MMDACR_MMD_FUNCTION_DATA
DP83848_MMDACR_MMD_DEV_ADDR
DP83848_ENCTR_TX_ENABLE
DP83848_ENCTR_TX_TIMER
DP83848_ENCTR_TX_TIMER_1S
DP83848_ENCTR_TX_TIMER_768MS
DP83848_ENCTR_TX_TIMER_512MS
DP83848_ENCTR_TX_TIMER_265MS
DP83848_ENCTR_RX_ENABLE
DP83848_ENCTR_RX_MAX_INTERVAL
DP83848_ENCTR_RX_MAX_INTERVAL_64MS
DP83848_ENCTR_RX_MAX_INTERVAL_256MS
DP83848_ENCTR_RX_MAX_INTERVAL_512MS
DP83848_ENCTR_RX_MAX_INTERVAL_1S
DP83848_ENCTR_EX_CROSS_OVER
DP83848_ENCTR_EX_MANUAL_CROSS_OVER
DP83848_MCSR_EDPWRDOWN
DP83848_MCSR_FARLOOPBACK
DP83848_MCSR_ALTINT
DP83848_MCSR_ENERGYON
DP83848_SMR_MODE
DP83848_TPDCR_DELAY_IN
DP83848_TPDCR_LINE_BREAK_COUNTER
DP83848_TPDCR_PATTERN_HIGH
DP83848_TPDCR_PATTERN_LOW
DP83848_TCSR_TDR_ENABLE
DP83848_TCSR_TDR_AD_FILTER_ENABLE
DP83848_TCSR_TDR_CH_CABLE_TYPE
DP83848_TCSR_TDR_CH_CABLE_DEFAULT
DP83848_TCSR_TDR_CH_CABLE_SHORTED
DP83848_TCSR_TDR_CH_CABLE_OPEN
DP83848_TCSR_TDR_CH_CABLE_MATCH
DP83848_TCSR_TDR_CH_STATUS
DP83848_TCSR_TDR_CH_LENGTH
DP83848_SCSIR_AUTO_MDIX_ENABLE
DP83848_SCSIR_CHANNEL_SELECT
DP83848_SCSIR_SQE_DISABLE
DP83848_SCSIR_XPOLALITY
DP83848_CLR_CABLE_LENGTH
DP83848_INT_8
DP83848_INT_7
DP83848_INT_6
DP83848_INT_5
DP83848_INT_4
DP83848_INT_3
DP83848_INT_2
DP83848_INT_1
DP83848_PHYSCSR_10BT_HD
DP83848_WOL_IT
DP83848_ENERGYON_IT
DP83848_AUTONEGO_COMPLETE_IT
DP83848_REMOTE_FAULT_IT