MyWebUniversity.com Home Page
 



OpenSolaris man pages main menu


Devices                                                   hme(7D)



NAME
     hme - SUNW,hme Fast-Ethernet device driver

SYNOPSIS
     /dev/hme


DESCRIPTION
     The  SUNW,hme  Fast-Ethernet  driver  is  a  multi-threaded,
     loadable,  clonable,  STREAMS hardware driver supporting the
     connectionless Data Link Provider Interface, dlpi(7P),  over
     a   SUNW,hme  Fast-Ethernet  controller. The motherboard and
     add-in SBus SUNW,hme controllers of  several  varieties  are
     supported.  Multiple  SUNW,hme  controllers installed within
     the system are supported by the driver.


     The hme driver  provides  basic  support  for  the  SUNW,hme
     hardware.  It  is used to handle the  SUNW,hme device. Func-
     tions  include  chip  initialization,  frame   transit   and
     receive,   multicast  and  promiscuous  support,  and  error
     recovery and reporting. SUNW,hme The  SUNW,hme  device  pro-
     vides 100Base-TX networking interfaces using SUN's FEPS ASIC
     and an Internal Transceiver. The FEPS ASIC provides the Sbus
     interface and MAC functions and the Physical layer functions
     are provided by the Internal Transceiver which connects to a
     RJ-45 connector. In addition to the RJ-45 connector, an  MI
     (Media Independent Interface) connector is also provided  on
     all   SUNW,hme  devices  except  the   SunSwith SBus adapter
     board. The MI interface is used to connect to  an  External
     Transceiver  which  may  use  any  physical media (copper or
     fiber) specified in the 100Base-TX standard. When an  Exter-
     nal  Transceiver is connected to the MI, the driver selects
     the External Transceiver and  disables  the  Internal  Tran-
     sceiver.


     The 100Base-TX standard specifies an "auto-negotiation" pro-
     tocol  to  automatically select the mode and speed of opera-
     tion. The Internal transceiver is capable  of  doing  "auto-
     negotiation"  with the remote-end of the link (Link Partner)
     and receives the capabilities  of the remote end. It selects
     the   Highest  Common Denominator mode of operation based on
     the priorities. It also supports  forced-mode  of  operation
     where the driver can select the mode of operation.

APLICATION PROGRAMING INTERFACE
     The cloning character-special device  /dev/hme  is  used  to
     access all SUNW,hme controllers installed within the system.

  hme and DLPI




SunOS 5.11           Last change: 5 Sep 1995                    1






Devices                                                   hme(7D)



     The  hme driver is a "style 2" Data Link  Service  provider.
     All  MPROTO  and MPCPROTO type messages are interpreted as
     DLPI  primitives.  Valid  DLPI  primitives  are  defined  in
     .  Refer  to  dlpi(7P)  for more information. An
     explicit DLATACHREQ message by the user  is  required  to
     associate  the opened stream with a particular device (ppa).
     The ppa ID is interpreted as an unsigned long data type  and
     indicates  the  corresponding device instance (unit) number.
     An error (DLERORACK) is returned by the driver if the ppa
     field  value  does not correspond to a valid device instance
     number for this system. The device is initialized  on  first
     attach and de-initialized (stopped) at last detach.


     The values returned by the driver in the DLINFOACK  primi-
     tive  in  response  to  the DLINFOREQ from the user are as
     follows:

         o    The maximum SDU is  1500  (ETHERMTU  -  defined  in
               ).

         o    The minimum SDU is 0.

         o    The dlsap address length is 8.

         o    The MAC type is DLETHER.

         o    The sap length values is -2  meaning  the  physical
              address  component  is followed immediately  by a 2
              byte sap component within the DLSAP address.

         o    The service mode is DLCLDLS.

         o    No optional quality of  service  (QOS)  support  is
              included at present so the  QOS fields are 0.

         o    The provider style is DLSTYLE2.

         o    The version is DLVERSION2.

         o    The broadcast address value is Ethernet/IE broad-
              cast address (0xF).


     Once  in  the  DLATACHED  state,  the  user  must  send  a
     DLBINDREQ  to  associate  a particular SAP (Service Access
     Pointer) with the stream. The hme driver interprets the  sap
     field within the DLBINDREQ as an Ethernet "type" therefore
     valid values for the sap field are in the [0-0xF]  range.
     Only  one  Ethernet  type  can be bound to the stream at any
     time.




SunOS 5.11           Last change: 5 Sep 1995                    2






Devices                                                   hme(7D)



     If the user selects a sap with a value of  0,  the  receiver
     will  be in "802.3 mode". All frames received from the media
     having a "type" field in the range [0-1500] are  assumed  to
     be 802.3 frames and are routed up all open Streams which are
     bound to sap value 0. If more than one Stream is  in  "802.3
     mode" then the frame will be duplicated and routed up multi-
     ple Streams as DLUNITDATAIND messages.


     In transmission, the driver checks  the  sap  field  of  the
     DLBINDREQ  if  the  sap value is 0, and if the destination
     type field is in the range [0-1500]. If either is true,  the
     driver  computes  the  length  of the message, not including
     initial MPROTO mblk  (message  block),  of  all  subsequent
     DLUNITDATAREQ  messages  and  transmits  802.3 frames that
     have this value in the MAC frame header length field.


     The hme driver DLSAP address format consists of the  6  byte
     physical  (Ethernet)  address component followed immediately
     by the 2 byte sap (type) component producing an 8 byte DLSAP
     address. Applications should not hardcode to this particular
     implementation-specific DLSAP address format but use  infor-
     mation  returned in the DLINFOACK primitive to compose and
     decompose  DLSAP  addresses.  The  sap  length,  full  DLSAP
     length,  and  sap/physical  ordering are included within the
     DLINFOACK. The physical address length can be computed  by
     subtracting  the  sap  length  from  the  full DLSAP address
     length or by issuing  the  DLPHYSADREQ  to  obtain  the
     current physical address associated with the stream.


     Once in the DLBOUND state, the user may transmit frames  on
     the  Ethernet by sending DLUNITDATAREQ messages to the hme
     driver. The hme driver will route received  Ethernet  frames
     up  all  those  open  and  bound  streams having a sap which
     matches  the  Ethernet  type  as  DLUNITDATAIND  messages.
     Received Ethernet frames are duplicated and routed up multi-
     ple open streams if necessary. The DLSAP  address  contained
     within the DLUNITDATAREQ and DLUNITDATAIND messages con-
     sists of both the sap (type) and  physical  (Ethernet)  com-
     ponents.


     In addition to the mandatory connectionless DLPI message set
     the driver additionally supports the following primitives.

  hme Primitives
     The  DLENABMULTIREQ   and   DLDISABMULTIREQ   primitives
     enable/disable   reception  of  individual  multicast  group
     addresses. A set of multicast addresses may  be  iteratively
     created  and  modified  on  a  per-stream  basis using these



SunOS 5.11           Last change: 5 Sep 1995                    3






Devices                                                   hme(7D)



     primitives. These primitives are accepted by the  driver  in
     any state following DLATACHED.


     The DLPROMISCONREQ and DLPROMISCOFREQ  primitives  with
     the   DLPROMISCPHYS   flag   set  in  the  dllevel  field
     enables/disables  reception  of  all  ("promiscuous   mode")
     frames  on the media including frames generated by the local
     host. When  used  with  the  DLPROMISCSAP  flag  set  this
     enables/disables   reception  of  all  sap  (Ethernet  type)
     values. When used with the DLPROMISCMULTI  flag  set  this
     enables/disables reception of all multicast group addresses.
     The effect of each is  always  on  a  per-stream  basis  and
     independent  of  the other sap and physical level configura-
     tions on this stream or other streams.


     The DLPHYSADREQ primitive returns the 6 octet  Ethernet
     address currently associated (attached) to the stream in the
     DLPHYSADRACK primitive.  This primitive is valid only in
     states following a successful DLATACHREQ.


     The DLSETPHYSADREQ primitive changes the 6 octet  Eth-
     ernet   address  currently  associated  (attached)  to  this
     stream. The credentials  of  the  process  which  originally
     opened  this  stream  must be superuser.  Otherwise EPERM is
     returned in the DLERORACK. This primitive is  destructive
     in  that  it  affects  all  other current and future streams
     attached to this device. An MEROR is  sent  up  all  other
     streams  attached to this device when this primitive is suc-
     cessful on this stream.  Once changed,  all  streams  subse-
     quently  opened and attached to this device will obtain this
     new physical address.  Once changed,  the  physical  address
     will  remain until this primitive is used to change the phy-
     sical address again or the  system  is  rebooted,  whichever
     comes first.

  hme DRIVER
     By default, the hme driver  performs  "auto-negotiation"  to
     select  the   mode and  speed of the link, when the Internal
     Transceiver is used.


     When an External Transceiver is connected to the MI  inter-
     face,  the driver selects the External Transceiver for  net-
     working operations. If  the  External  Transceiver  supports
     "auto-negotiation",  the  driver  uses  the auto-negotiation
     procedure to select the link speed and mode. If the External
     Transceiver  does  not  support  auto-negotiation,  it  will
     select the highest priority  mode  supported  by  the  tran-
     sceiver.



SunOS 5.11           Last change: 5 Sep 1995                    4






Devices                                                   hme(7D)



         o    100 Mbps, full-duplex

         o    100 Mbps, half-duplex

         o    10 Mbps, full-duplex

         o    10 Mbps, half-duplex


     The link can be in one of the  4 following modes:


     These speeds and modes are described in the 100Base-TX stan-
     dard.


     The auto-negotiation protocol automatically selects:

         o    Operation mode (half-duplex or full-duplex)

         o    Speed (100 Mbps or 10 Mbps)


     The auto-negotiation protocol does the following:

         o    Gets all the modes of operation  supported  by  the
              Link Partner

         o    Advertises its capabilities to the Link Partner

         o    Selects the  highest  common  denominator  mode  of
              operation based on the  priorities


     The internal transceiver is capable of all of the  operating
     speeds and modes listed above. When the internal transceiver
     is used, by default, auto-negotiation is used to select  the
     speed and the mode of the link and the common mode of opera-
     tion with the Link Partner.


     When an external transceiver is connected to the  MI inter-
     face,  the  driver selects the external transceiver for net-
     working operations. If  the  external  transceiver  supports
     auto-negotiation:

         o    The driver uses the auto-negotiation  procedure  to
              select the link speed and mode.


     If  the  external  transceiver   does  not   support   auto-
     negotiation



SunOS 5.11           Last change: 5 Sep 1995                    5






Devices                                                   hme(7D)



         o    The driver selects the highest priority  mode  sup-
              ported by the transceiver.


     Sometimes, the user may want to select the speed and mode of
     the  link.  The  SUNW,hme device supports programmable "IPG"
     (Inter-Packet Gap) parameters ipg1 and   ipg2.  By  default,
     the  driver  sets  ipg1 to 8  byte-times and ipg2 to 4 byte-
     times (which are the standard values). Sometimes,  the  user
     may  want  to  alter  these  values depending on whether the
     driver supports 10 Mbps or 100  Mpbs  and  accordingly,  IPG
     will be set to 9.6 or 0.96 microseconds.

  hme Parameter List
     The hme driver provides  for  setting  and  getting  various
     parameters  for  the   SUNW,hme  device.  The parameter list
     includes:
       current transceiver status
       current link status
       inter-packet gap
       local transceiver capabilities
       link partner capabilities


     The local transceiver has two set of capabilities:  one  set
     reflects  the capabilities of the hardware, which are  read-
     only (RO) parameters and the second set reflects the  values
     chosen  by  the  user and is used in  speed selection. There
     are read/write (RW) capabilities. At boot  time,  these  two
     sets  of  capabilities  will  be  the same. The Link Partner
     capabilities are  also  read  only  parameters  because  the
     current  default  value of these parameters can only be read
     and cannot be modified.

FILES
     /dev/hme                hme special character device


     /kernel/drv/hme.conf    System-wide  default  device  driver
                             properties


SEE ALSO
     ndd(1M), netstat(1M), driver.conf(4), dlpi(7P)











SunOS 5.11           Last change: 5 Sep 1995                    6



OpenSolaris man pages main menu

Contact us      |       About us      |       Term of use      |       Copyright © 2000-2010 MyWebUniversity.com ™