source: libbsdport/bsd_eth_drivers/if_le/README.rtems @ a8bf95d

B_20100615baselibbsdport-4-10-branch
Last change on this file since a8bf95d was a8bf95d, checked in by Till Straumann <strauman@…>, on Apr 22, 2009 at 10:06:58 PM
  • importing updated version from SLAC as of 20090422
  • Property mode set to 100644
File size: 2.5 KB
Line 
1RTEMS PORT OF THE 'le' ETHERNET DRIVER
2======================================
3
4This is a port of the FreeBSD 'le' driver as of
52007/7/21 (checked out from FreeBSD/head on that date).
6
7SUPPORTED BSPs:
8- you need 'libbsdport' which in turn needs 'libbspExt'
9  These work for i386/pc386 and powerpc/new-exception-processing
10  BSPs, i.e., the BSP must implement <rtems/pci.h> and <rtems/irq.h>.
11
12USAGE:
13- to attach this driver:
14  *     define a NULL terminated list with all libbsdport supported
15        drivers you want to include with your application:
16
17        extern driver_t libbsdport_le_pci_driver;
18
19        driver_t *libbsdport_netdriver_table[] = {
20                &libbsdport_le_pci_driver,
21                /* other drivers here or upstream of 'le' if they support
22                 * the same hardware but are preferred.
23                 */
24                0
25        };
26
27  * specify libbsdport_netdriver_attach for the 'attach' function
28        pointer in struct rtems_bsdnet_ifconfig.
29
30  * use the 'name' field in struct rtems_bsdnet_ifconfig to filter
31    drivers and device instances:
32
33         <driver_name><instance>
34
35    either may be omitted which means that the next available
36        driver/hardware device is to be used. Here are a few examples:
37
38             ""     /* use first device found supported by any driver in the
39                         * libbsdport_driver_table[].
40                             */
41
42             "le1"  /* use first device supported by the 'le' driver */
43
44        Notes: Counting instances begins with 1 (not 0).
45               Consult libbsdport/README for more information.
46
47
48KNOWN ISSUES:
49- only the PCI module has been ported, so far. No ISA (yet).
50  This means that only the
51    am79900*.*
52        lance*.*
53        if_le_pci.c
54  files are really used. Other files are left here for reference.
55- media status (SIOCGIFMEDIA) doesn't work. sc_mediastatus
56  is not set so the media is always reported as 0.
57- 'ignore_broadcast' and 'mtu' settings from
58  struct rtems_bsdnet_ifconfig are ignored. I haven't seen
59  many drivers that honour 'ignore_broadcast' and 'mtu' can be
60  set using a ioctl(). I'm trying to keep changes to BSD sources
61  minimal...
62- ring sizes are restricted to powers of 2.
63
64OTHER NOTES:
65- you can use the 'pcn' driver for 79C971 and upwards
66  chips. 'pcn' supposedly uses more advanced features
67  of those chips.
68- 'le' works with qemu's 'pcnet32' Am79C970A emulation :-)
69
70TESTED WITH:
71  Technobox 10/100-TX Ethernet PMC (AMD Am79C973 chip)
72  qemu 'pcnet32' emulation
73
74TESTED ON:
75  rtems-4.7
76    powerpc/beatnik (motorola MVME5500 and MVME6100 VME boards)
77        i386/pc686      (concurrent technologies PP410 compact PCI)
78        qemu            emulator
79
80T.S, 200707
Note: See TracBrowser for help on using the repository browser.