OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [io/] [eth/] [current/] [src/] [lwip/] [eth_conf.inl] - Blame information for rev 825

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 786 skrzyp
//==========================================================================
2
//
3
//      src/lwip/eth_conf.inl
4
//
5
//      Static interface configuration
6
//
7
//==========================================================================
8
// ####ECOSGPLCOPYRIGHTBEGIN####
9
// -------------------------------------------
10
// This file is part of eCos, the Embedded Configurable Operating System.
11
// Copyright (C) 2009 Free Software Foundation, Inc.
12
//
13
// eCos is free software; you can redistribute it and/or modify it under
14
// the terms of the GNU General Public License as published by the Free
15
// Software Foundation; either version 2 or (at your option) any later
16
// version.
17
//
18
// eCos is distributed in the hope that it will be useful, but WITHOUT
19
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
20
// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
21
// for more details.
22
//
23
// You should have received a copy of the GNU General Public License
24
// along with eCos; if not, write to the Free Software Foundation, Inc.,
25
// 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
26
//
27
// As a special exception, if other files instantiate templates or use
28
// macros or inline functions from this file, or you compile this file
29
// and link it with other works to produce a work based on this file,
30
// this file does not by itself cause the resulting work to be covered by
31
// the GNU General Public License. However the source code for this file
32
// must still be made available in accordance with section (3) of the GNU
33
// General Public License v2.
34
//
35
// This exception does not invalidate any other reasons why a work based
36
// on this file might be covered by the GNU General Public License.
37
// -------------------------------------------
38
// ####ECOSGPLCOPYRIGHTEND####
39
//==========================================================================
40
//#####DESCRIPTIONBEGIN####
41
//
42
// Author(s):    Simon Kallweit
43
// Contributors:
44
// Date:         2009-06-09
45
// Purpose:      Static interface configuration
46
// Description:
47
//
48
//####DESCRIPTIONEND####
49
//
50
//==========================================================================
51
 
52
#include 
53
 
54
// Ethernet device configuration
55
struct eth_conf {
56
    cyg_uint8 def;          // This is the default netif
57
    cyg_uint8 dhcp;         // Use DHCP client to get address
58
    cyg_uint8 addr[4];      // IPv4 address
59
    cyg_uint8 netmask[4];   // IPv4 netmask
60
    cyg_uint8 gateway[4];   // IPv4 gateway
61
};
62
 
63
// Ethernet device configuration table
64
static struct eth_conf eth_conf_table[] = {
65
// Ethernet device 0
66
#ifdef CYGPKG_LWIP_ETH0_CONF
67
    {
68
# ifdef CYGDAT_LWIP_ETH0_DEFAULT
69
        .def = 1,
70
# endif
71
# ifdef CYGDAT_LWIP_ETH0_DHCP
72
        .dhcp = 1,
73
# endif
74
# ifdef CYGDAT_LWIP_ETH0_NETCONF_ADDR
75
        .addr = { CYGDAT_LWIP_ETH0_NETCONF_ADDR },
76
# endif
77
# ifdef CYGDAT_LWIP_ETH0_NETCONF_NETMASK
78
        .netmask = { CYGDAT_LWIP_ETH0_NETCONF_NETMASK },
79
# endif
80
# ifdef CYGDAT_LWIP_ETH0_NETCONF_GATEWAY
81
        .gateway = { CYGDAT_LWIP_ETH0_NETCONF_GATEWAY },
82
# endif
83
    },
84
#endif // CYGPKG_LWIP_ETH0_CONF
85
// Ethernet device 1
86
#ifdef CYGPKG_LWIP_ETH1_CONF
87
    {
88
# ifdef CYGDAT_LWIP_ETH1_DEFAULT
89
        .def = 1,
90
# endif
91
# ifdef CYGDAT_LWIP_ETH1_DHCP
92
        .dhcp = 1,
93
# endif
94
# ifdef CYGDAT_LWIP_ETH1_NETCONF_ADDR
95
        .addr = { CYGDAT_LWIP_ETH1_NETCONF_ADDR },
96
# endif
97
# ifdef CYGDAT_LWIP_ETH1_NETCONF_NETMASK
98
        .netmask = { CYGDAT_LWIP_ETH1_NETCONF_NETMASK },
99
# endif
100
# ifdef CYGDAT_LWIP_ETH1_NETCONF_GATEWAY
101
        .gateway = { CYGDAT_LWIP_ETH1_NETCONF_GATEWAY },
102
# endif
103
    },
104
#endif // CYGPKG_LWIP_ETH1_CONF
105
// Ethernet device 2
106
#ifdef CYGPKG_LWIP_ETH2_CONF
107
    {
108
# ifdef CYGDAT_LWIP_ETH2_DEFAULT
109
        .def = 1,
110
# endif
111
# ifdef CYGDAT_LWIP_ETH2_DHCP
112
        .dhcp = 1,
113
# endif
114
# ifdef CYGDAT_LWIP_ETH2_NETCONF_ADDR
115
        .addr = { CYGDAT_LWIP_ETH2_NETCONF_ADDR },
116
# endif
117
# ifdef CYGDAT_LWIP_ETH2_NETCONF_NETMASK
118
        .netmask = { CYGDAT_LWIP_ETH2_NETCONF_NETMASK },
119
# endif
120
# ifdef CYGDAT_LWIP_ETH2_NETCONF_GATEWAY
121
        .gateway = { CYGDAT_LWIP_ETH2_NETCONF_GATEWAY },
122
# endif
123
    },
124
#endif // CYGPKG_LWIP_ETH2_CONF
125
// Ethernet device 3
126
#ifdef CYGPKG_LWIP_ETH3_CONF
127
    {
128
# ifdef CYGDAT_LWIP_ETH3_DEFAULT
129
        .def = 1,
130
# endif
131
# ifdef CYGDAT_LWIP_ETH3_DHCP
132
        .dhcp = 1,
133
# endif
134
# ifdef CYGDAT_LWIP_ETH3_NETCONF_ADDR
135
        .addr = { CYGDAT_LWIP_ETH3_NETCONF_ADDR },
136
# endif
137
# ifdef CYGDAT_LWIP_ETH3_NETCONF_NETMASK
138
        .netmask = { CYGDAT_LWIP_ETH3_NETCONF_NETMASK },
139
# endif
140
# ifdef CYGDAT_LWIP_ETH3_NETCONF_GATEWAY
141
        .gateway = { CYGDAT_LWIP_ETH3_NETCONF_GATEWAY },
142
# endif
143
    },
144
#endif // CYGPKG_LWIP_ETH3_CONF
145
};
146
 
147
#define NUM_ETH_CONF (sizeof(eth_conf_table) / sizeof(struct eth_conf))
148
 
149
static int eth_conf_index;
150
 
151
static struct eth_conf *next_eth_conf(void)
152
{
153
    if (eth_conf_index < NUM_ETH_CONF)
154
        return ð_conf_table[eth_conf_index++];
155
 
156
    return NULL;
157
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.