source: SVN/cambria/redboot/packages/io/eth/current/include/netdev.h @ 1

Last change on this file since 1 was 1, checked in by Tim Harvey, 2 years ago

restored latest version of files from server backup

Signed-off-by: Tim Harvey <tharvey@…>

File size: 3.1 KB
Line 
1#ifndef _NETDEV_H_
2#define _NETDEV_H_
3//==========================================================================
4//
5//      include/netdev.h
6//
7//      Network device description
8//
9//==========================================================================
10//####ECOSGPLCOPYRIGHTBEGIN####
11// -------------------------------------------
12// This file is part of eCos, the Embedded Configurable Operating System.
13// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
14//
15// eCos is free software; you can redistribute it and/or modify it under
16// the terms of the GNU General Public License as published by the Free
17// Software Foundation; either version 2 or (at your option) any later version.
18//
19// eCos is distributed in the hope that it will be useful, but WITHOUT ANY
20// WARRANTY; without even the implied warranty of MERCHANTABILITY or
21// FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
22// for more details.
23//
24// You should have received a copy of the GNU General Public License along
25// with eCos; if not, write to the Free Software Foundation, Inc.,
26// 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
27//
28// As a special exception, if other files instantiate templates or use macros
29// or inline functions from this file, or you compile this file and link it
30// with other works to produce a work based on this file, this file does not
31// by itself cause the resulting work to be covered by the GNU General Public
32// License. However the source code for this file must still be made available
33// in accordance with section (3) of the GNU General Public License.
34//
35// This exception does not invalidate any other reasons why a work based on
36// this file might be covered by the GNU General Public License.
37//
38// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
39// at http://sources.redhat.com/ecos/ecos-license/
40// -------------------------------------------
41//####ECOSGPLCOPYRIGHTEND####
42//==========================================================================
43//#####DESCRIPTIONBEGIN####
44//
45// Author(s):    gthomas
46// Contributors: gthomas
47// Date:         2000-01-10
48// Purpose:     
49// Description: 
50//             
51//
52//####DESCRIPTIONEND####
53//
54//==========================================================================
55
56#include <cyg/hal/hal_tables.h>
57
58// Network device support
59
60typedef struct cyg_netdevtab_entry {
61    const char        *name;
62    bool             (*init)(struct cyg_netdevtab_entry *tab);
63    void              *device_instance;  // Local data, instance specific
64    unsigned long     status;
65} CYG_HAL_TABLE_TYPE cyg_netdevtab_entry_t;
66
67#define CYG_NETDEVTAB_STATUS_AVAIL   0x0001
68
69extern cyg_netdevtab_entry_t __NETDEVTAB__[], __NETDEVTAB_END__;
70
71#define NETDEVTAB_ENTRY(_l,_name,_init,_instance)  \
72static bool _init(struct cyg_netdevtab_entry *tab);                  \
73cyg_netdevtab_entry_t _l CYG_HAL_TABLE_ENTRY(netdev) = {             \
74   _name,                                                            \
75   _init,                                                            \
76   _instance                                                         \
77};
78
79#endif // _NETDEV_H_
Note: See TracBrowser for help on using the repository browser.