Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: MbedFileServer_1768MiniDK2 RedWireBridge IssueDebug_gcc MiMicRemoteMCU-for-Mbed ... more
core/driver/uip/EthDev.h@64:258e84040262, 2013-10-23 (annotated)
- Committer:
- nyatla
- Date:
- Wed Oct 23 04:49:08 2013 +0000
- Revision:
- 64:258e84040262
- Parent:
- 63:157ee3202edb
fix issue; http://mbed.org/users/nyatla/code/libMiMic/issues/1
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| nyatla | 0:142ee8b12fef | 1 | /* |
| nyatla | 0:142ee8b12fef | 2 | * @file: EthDev.h |
| nyatla | 0:142ee8b12fef | 3 | * @purpose: Ethernet Device Definitions |
| nyatla | 0:142ee8b12fef | 4 | * @version: V1.10 |
| nyatla | 0:142ee8b12fef | 5 | * @date: 24. Feb. 2009 |
| nyatla | 0:142ee8b12fef | 6 | *---------------------------------------------------------------------------- |
| nyatla | 0:142ee8b12fef | 7 | * |
| nyatla | 0:142ee8b12fef | 8 | * Copyright (C) 2009 ARM Limited. All rights reserved. |
| nyatla | 0:142ee8b12fef | 9 | * |
| nyatla | 0:142ee8b12fef | 10 | * ARM Limited (ARM) is supplying this software for use with Cortex-M3 |
| nyatla | 0:142ee8b12fef | 11 | * processor based microcontrollers. This file can be freely distributed |
| nyatla | 0:142ee8b12fef | 12 | * within development tools that are supporting such ARM based processors. |
| nyatla | 0:142ee8b12fef | 13 | * |
| nyatla | 0:142ee8b12fef | 14 | * THIS SOFTWARE IS PROVIDED "AS IS". NO WARRANTIES, WHETHER EXPRESS, IMPLIED |
| nyatla | 0:142ee8b12fef | 15 | * OR STATUTORY, INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF |
| nyatla | 0:142ee8b12fef | 16 | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. |
| nyatla | 0:142ee8b12fef | 17 | * ARM SHALL NOT, IN ANY CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR |
| nyatla | 0:142ee8b12fef | 18 | * CONSEQUENTIAL DAMAGES, FOR ANY REASON WHATSOEVER. |
| nyatla | 0:142ee8b12fef | 19 | * |
| nyatla | 0:142ee8b12fef | 20 | */ |
| nyatla | 0:142ee8b12fef | 21 | /* |
| nyatla | 0:142ee8b12fef | 22 | * Modified for MiMic by R.Iizuka. 2011.08.27 |
| nyatla | 0:142ee8b12fef | 23 | * http://nyatla.jp/mimic |
| nyatla | 0:142ee8b12fef | 24 | */ |
| nyatla | 0:142ee8b12fef | 25 | |
| nyatla | 0:142ee8b12fef | 26 | #ifndef _ETHDEV__H |
| nyatla | 0:142ee8b12fef | 27 | #define _ETHDEV__H |
| nyatla | 0:142ee8b12fef | 28 | #include "NyLPC_stdlib.h" |
| nyatla | 0:142ee8b12fef | 29 | #include "../../uip/NyLPC_uip.h" |
| nyatla | 0:142ee8b12fef | 30 | #include "IEthernetDevice.h" |
| nyatla | 0:142ee8b12fef | 31 | |
| nyatla | 0:142ee8b12fef | 32 | #ifdef __cplusplus |
| nyatla | 0:142ee8b12fef | 33 | extern "C" { |
| nyatla | 0:142ee8b12fef | 34 | #endif /* __cplusplus */ |
| nyatla | 0:142ee8b12fef | 35 | |
| nyatla | 0:142ee8b12fef | 36 | |
| nyatla | 0:142ee8b12fef | 37 | #ifndef NULL |
| nyatla | 0:142ee8b12fef | 38 | #define NULL 0 |
| nyatla | 0:142ee8b12fef | 39 | #endif |
| nyatla | 0:142ee8b12fef | 40 | |
| nyatla | 0:142ee8b12fef | 41 | /*---------------------------------------------------------------------------- |
| nyatla | 0:142ee8b12fef | 42 | Ethernet Device Defines |
| nyatla | 0:142ee8b12fef | 43 | *----------------------------------------------------------------------------*/ |
| nyatla | 0:142ee8b12fef | 44 | #define EthDev_ADDR_SIZE 6 /*!< Ethernet Address size in bytes */ |
| nyatla | 0:142ee8b12fef | 45 | |
| nyatla | 0:142ee8b12fef | 46 | /*---------------------------------------------------------------------------- |
| nyatla | 0:142ee8b12fef | 47 | Ethernet Device Configuration and Control Command Defines |
| nyatla | 0:142ee8b12fef | 48 | *----------------------------------------------------------------------------*/ |
| nyatla | 0:142ee8b12fef | 49 | typedef enum { |
| nyatla | 0:142ee8b12fef | 50 | EthDev_LINK_DOWN = 0, /*!< Ethernet link not established */ |
| nyatla | 0:142ee8b12fef | 51 | EthDev_LINK_UP = 1, /*!< Ethernet link established */ |
| nyatla | 0:142ee8b12fef | 52 | } EthDev_LINK; |
| nyatla | 0:142ee8b12fef | 53 | |
| nyatla | 0:142ee8b12fef | 54 | typedef enum { |
| nyatla | 0:142ee8b12fef | 55 | EthDev_SPEED_10M = 0, /*!< 10.0 Mbps link speed */ |
| nyatla | 0:142ee8b12fef | 56 | EthDev_SPEED_100M = 1, /*!< 100.0 Mbps link speed */ |
| nyatla | 0:142ee8b12fef | 57 | EthDev_SPEED_1000M = 2, /*!< 1.0 Gbps link speed */ |
| nyatla | 0:142ee8b12fef | 58 | } EthDev_SPEED; |
| nyatla | 0:142ee8b12fef | 59 | |
| nyatla | 0:142ee8b12fef | 60 | typedef enum { |
| nyatla | 0:142ee8b12fef | 61 | EthDev_DUPLEX_HALF = 0, /*!< Link half duplex */ |
| nyatla | 0:142ee8b12fef | 62 | EthDev_DUPLEX_FULL = 1, /*!< Link full duplex */ |
| nyatla | 0:142ee8b12fef | 63 | } EthDev_DUPLEX; |
| nyatla | 0:142ee8b12fef | 64 | |
| nyatla | 0:142ee8b12fef | 65 | typedef enum { |
| nyatla | 0:142ee8b12fef | 66 | EthDev_MODE_AUTO = 0, |
| nyatla | 0:142ee8b12fef | 67 | EthDev_MODE_10M_FULL = 1, |
| nyatla | 0:142ee8b12fef | 68 | EthDev_MODE_10M_HALF = 2, |
| nyatla | 0:142ee8b12fef | 69 | EthDev_MODE_100M_FULL = 3, |
| nyatla | 0:142ee8b12fef | 70 | EthDev_MODE_100M_HALF = 4, |
| nyatla | 0:142ee8b12fef | 71 | EthDev_MODE_1000M_FULL = 5, |
| nyatla | 0:142ee8b12fef | 72 | EthDev_MODE_1000M_HALF = 6, |
| nyatla | 0:142ee8b12fef | 73 | } EthDev_MODE; |
| nyatla | 0:142ee8b12fef | 74 | |
| nyatla | 0:142ee8b12fef | 75 | typedef struct { |
| nyatla | 0:142ee8b12fef | 76 | EthDev_LINK Link : 1; |
| nyatla | 0:142ee8b12fef | 77 | EthDev_DUPLEX Duplex : 1; |
| nyatla | 0:142ee8b12fef | 78 | EthDev_SPEED Speed : 2; |
| nyatla | 0:142ee8b12fef | 79 | } EthDev_STATUS; |
| nyatla | 0:142ee8b12fef | 80 | |
| nyatla | 0:142ee8b12fef | 81 | |
| nyatla | 0:142ee8b12fef | 82 | /*---------------------------------------------------------------------------- |
| nyatla | 0:142ee8b12fef | 83 | Ethernet Device IO Block Structure |
| nyatla | 0:142ee8b12fef | 84 | *----------------------------------------------------------------------------*/ |
| nyatla | 0:142ee8b12fef | 85 | typedef struct { |
| nyatla | 0:142ee8b12fef | 86 | |
| nyatla | 0:142ee8b12fef | 87 | /* Initialized by the user application before call to Init. */ |
| nyatla | 0:142ee8b12fef | 88 | EthDev_MODE Mode; |
| nyatla | 0:142ee8b12fef | 89 | unsigned char HwAddr[EthDev_ADDR_SIZE]; |
| nyatla | 0:142ee8b12fef | 90 | void *(*RxFrame) (int size); |
| nyatla | 0:142ee8b12fef | 91 | void (*RxFrameReady) (int size); |
| nyatla | 0:142ee8b12fef | 92 | |
| nyatla | 0:142ee8b12fef | 93 | /* Initialized by Ethernet driver. */ |
| nyatla | 0:142ee8b12fef | 94 | int (*Init) (void); |
| nyatla | 0:142ee8b12fef | 95 | int (*UnInit) (void); |
| nyatla | 0:142ee8b12fef | 96 | int (*SetMCFilter)(int NumHwAddr, unsigned char *pHwAddr); |
| nyatla | 0:142ee8b12fef | 97 | int (*TxFrame) (void *pData, int size); |
| nyatla | 0:142ee8b12fef | 98 | void (*Lock) (void); |
| nyatla | 0:142ee8b12fef | 99 | void (*UnLock) (void); |
| nyatla | 0:142ee8b12fef | 100 | EthDev_STATUS (*LinkChk) (void); |
| nyatla | 0:142ee8b12fef | 101 | } EthDev_IOB; |
| nyatla | 0:142ee8b12fef | 102 | |
| nyatla | 0:142ee8b12fef | 103 | |
| nyatla | 0:142ee8b12fef | 104 | const struct TiEthernetDevice* getEthernetDevicePnP(void); |
| nyatla | 0:142ee8b12fef | 105 | |
| nyatla | 0:142ee8b12fef | 106 | |
| nyatla | 0:142ee8b12fef | 107 | #ifdef __cplusplus |
| nyatla | 0:142ee8b12fef | 108 | } |
| nyatla | 0:142ee8b12fef | 109 | #endif /* __cplusplus */ |
| nyatla | 0:142ee8b12fef | 110 | |
| nyatla | 0:142ee8b12fef | 111 | #endif |
MiMic Webservice library