From gd78059@sac.sfbay.sun.com Wed Jan 13 10:41:01 2010
Received: from newsunmail1brm.central.sun.com (newsunmail1brm.Central.Sun.COM [129.147.62.245])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id o0DIf15l020815
	for <psarc-ext@sac.sfbay.sun.com>; Wed, 13 Jan 2010 10:41:01 -0800 (PST)
Received: from nwk-avmta-1.SFBay.Sun.COM (nwk-avmta-1.SFBay.Sun.COM [129.146.11.74])
	by newsunmail1brm.central.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.4) with ESMTP id o0DIexD2005645;
	Wed, 13 Jan 2010 11:41:01 -0700 (MST)
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0KW700C5L7WCLP00@nwk-avmta-1.sfbay.Sun.COM>; Wed,
 13 Jan 2010 10:41:00 -0800 (PST)
Received: from dm-sfbay-02.sfbay.sun.com ([129.146.11.31])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0KW700FTD7W9M270@nwk-avmta-1.sfbay.Sun.COM>; Wed,
 13 Jan 2010 10:40:57 -0800 (PST)
Received: from sac.sfbay.sun.com (sac.SFBay.Sun.COM [129.146.226.132])
	by dm-sfbay-02.sfbay.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.4)
 with ESMTP id o0DIevsA001038; Wed, 13 Jan 2010 10:40:57 -0800 (PST)
Received: from sac.sfbay.sun.com (localhost [127.0.0.1])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id o0DIetl3020810; Wed,
 13 Jan 2010 10:40:55 -0800 (PST)
Received: (from gd78059@localhost)
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8/Submit) id o0DIetFr020806; Wed,
 13 Jan 2010 10:40:55 -0800 (PST)
Date: Wed, 13 Jan 2010 10:40:55 -0800 (PST)
From: "Garrett D'Amore - sun microsystems" <gd78059@sac.sfbay.sun.com>
Subject: Open Source elxl replacement [PSARC/2010/014 Self Review]
To: PSARC-ext@sun.com
Cc: Garrett.Damore@sun.com
Message-id: <201001131840.o0DIetFr020806@sac.sfbay.sun.com>
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
Status: RO
Content-Length: 5774


This case offers a mostly drop-in compatible replacement (and upgrade) for
elxl.  However, there is some impact to driver.conf properties and automatic
media selection, as well as two new driver-specific dladm link properties,
so this case records these changes.  I believe these impacts are unlikely
to negatively affect anyone at all (are folks still using 10BASE2 or
10BASE5?), so I'm filing as self-review.  If anyone wants this to be promoted
to a fast track please let me know.  Only minor binding is being sought at
this time.


Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI
This information is Copyright 2010 Sun Microsystems
1. Introduction
    1.1. Project/Component Working Name:
	 Open Source elxl replacement
    1.2. Name of Document Author/Supplier:
	 Author:  Garrett D'Amore
    1.3  Date of This Document:
	13 January, 2010
4. Technical Description

Summary
-------

During the review of PSARC 2010/005, which is a withdrawn case that
aimed to EOF the elxl driver, it became apparent that a number of
people are still using these devices, and need a supported driver.

elxl is currently a closed source driver supporting certain legacy ethernet
cards from 3Com.  (The 3c905 line, and a few compatible family members.)
The existing driver is a vanilla GLDv2 driver, and offers none of the
enhancements such as full-MTU VLAN support, suspend/resume, link
notification, or various other features.  It *does* however support some
legacy devices with multiple media options by automatically probing
each media in turn until it finds one that works before settling on the
media.

We have undertaken a complete rewrite of the elxl driver, based on
a port of the Open Source NetBSD ex driver, which we believe resolves
most of the complaints about the current driver.  In particular, the
new driver fully supports GLDv3, full-MTU VLANs, link notification
for twisted pair and 100BASE-X media, suspend & resume, and fast reboot.
(We've also written hardware checksum offload support, but its inclusion
is still subject to test results, and so we are not making it an
official part of this case.  Its just an implementation detail.)  It
also supports link management for 100BASE-TX using the standard dladm
link properties.

It can also much more easily be extended to support additional cardbus
and miniPCI variants in the future, should someone have such devices
and want to add the support.

This case is only seeking Minor binding for this new driver.

Impact
------

Apart from the positive impacts listed above, the new elxl driver
has impact on driver.conf settings.  In particular, the following
driver.conf settings (documented in elxl(7D)) are no longer supported:

	tx_start_thresh
	recv-descriptors
	xmit-descriptors
	min-recv-data-buffers
	max-recv-data-buffers
	inter-frame-space
	full-duplex

Most of the above properties are simply no longer tunable in the new
driver.  (The exception is "full-duplex", which is handled via the
mechanism described below.)

Furthermore, automatic selection of non-twisted-pair media on the
NICs with multiple media options (e.g. 3C900-COMBO, and simlar options)
is no longer supported.  These devices will all default to 100BASE-TX using
autonegotiation (for 100 Mbps models) or 10BASE-T half-duplex (10 Mbps only
models.)

Link mode for 100BASE-TX, 100BASE-T4, and "true" MII devices is handled
via the 802.3 link properties like all other devices.

Selection of alternate media can be performed using the dladm "_media"
device-driver private property.  The setting can be one of

    "mii"	- selects 100BASE-TX, 100BASE-T4, or an external MII port
		  (all these PHYS use MII style register access)
    "tp-hdx"	- selects 10BASE-T in half-duplex mode (10Mbps models only)
    "tp-fdx"	- selects 10BASE-T in full-duplex mode (10Mbps models only)
    "aui"	- selects the AUI interface (10BASE5) if present
    "bnc"	- selects the BNC interface (10BASE2) if present
    "fx-hdx"	- selects 100BASE-FX in half-duplex if available
    "fx-fdx"	- selects 100BASE-FX in full-duplex if available
    "fl-hdx"	- selects 10BASE-FL in half-duplex mode if available
    "fl-fdx"	- selects 10BASE-FL in full-duplex mode if available

For most models, the default (and usually the only option) will be "mii".
The "tp-hdx" and "tp-fdx" are used only on models that support 10Mbps
twisted pair without any autonegotiation.  The default setting on
100BASE-FX models will be "fx-fdx" (full-duplex).  All other 10Mbps only
devices will default to half-duplex.

We also provide a new property, "_available_media", which lists the
possible options for the media separated by commas.  For example, on a
3C900-COMBO card, the value of _available_media is "tp-hdx,tp-fdx,aui,bnc".
(Note that this property will likely be removed in the future, when
the MAC_PROP_POSSIBLE interface is properly supported in the MAC layer
for private properties.  The current implementation only supports integer
properties such as MTU.  In any event, we do not intend to document the
_available_media property.)


INTERFACES
----------

Imported Interfaces
GLDv3 and descendents	Consolidation Private*

	* Note: the GLDv3 interfaces are in the process of being
	  upgraded to Committed.  When this happens, we will switch
	  to using the Commmitted interfaces.

Exported Interfaces
elxl			Committed	Device driver name.
_media 			Uncommitted	Both property name and values.
_available_media	Uncommitted	Undocumented, expected to be removed.
legacy properties	REMOVED		No more driver.conf tunables
automatic media select	REMOVED		Undocumented semantic, to be removed.

6. Resources and Schedule
    6.4. Steering Committee requested information
   	6.4.1. Consolidation C-team Name:
		ON
    6.5. ARC review type: Automatic
    6.6. ARC Exposure: open


From carlsonj@workingcode.com Wed Jan 13 11:18:01 2010
Received: from newsunmail1brm.central.sun.com (newsunmail1brm.Central.Sun.COM [129.147.62.245])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id o0DJI1UJ022060
	for <psarc-ext@sac.sfbay.sun.com>; Wed, 13 Jan 2010 11:18:01 -0800 (PST)
Received: from nwk-avmta-1.SFBay.Sun.COM (nwk-avmta-1.SFBay.Sun.COM [129.146.11.74])
	by newsunmail1brm.central.sun.com (8.13.7+Sun/8.13.7/ENSMAIL,v2.4) with ESMTP id o0DJHwd3036964
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Wed, 13 Jan 2010 12:18:01 -0700 (MST)
Received: from pmxchannel-daemon.nwk-avmta-1.sfbay.Sun.COM by
 nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0KW700K0H9M0ZJ00@nwk-avmta-1.sfbay.Sun.COM> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@sun.com); Wed, 13 Jan 2010 11:18:00 -0800 (PST)
Received: from brmea-mail-1.sun.com ([192.18.98.31])
 by nwk-avmta-1.sfbay.Sun.COM
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0KW700FQH9M0M6C0@nwk-avmta-1.sfbay.Sun.COM> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@sun.com); Wed,
 13 Jan 2010 11:18:00 -0800 (PST)
Received: from relay15i.sun.com
 (ip125.net129179-4.block1.us.syntegra.com [129.179.4.125])
	by brmea-mail-1.sun.com (8.13.6+Sun/8.12.9) with ESMTP id o0DJHxuh025790	for
 <PSARC-ext@sun.com>; Wed, 13 Jan 2010 19:17:59 +0000 (GMT)
Received: from mmp14es.mmp.us.syntegra.com ([160.41.208.14] [160.41.208.14])
 by relay15i.sun.com with ESMTP id BT-MMP-503600 for PSARC-ext@sun.com; Wed,
 13 Jan 2010 19:17:58 +0000 (Z)
Received: from relay14i.sun.com (relay14i.sun.com [129.179.4.124])
 by mmp14es.mmp.us.syntegra.com with ESMTP id BT-MMP-518983; Wed,
 13 Jan 2010 19:17:58 +0000 (Z)
Received: from carlson.workingcode.com ([75.150.68.97] [75.150.68.97])
 by relay1i.sun.com with ESMTP id BT-MMP-31005235; Wed,
 13 Jan 2010 19:17:58 +0000 (Z)
Received: from [10.50.23.149] (gate.abinitio.com [65.170.40.132])
	(authenticated bits=0)	by carlson.workingcode.com (8.14.2+Sun/8.14.3)
 with ESMTP id o0DJHoXb008962
	(version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed,
 13 Jan 2010 14:17:51 -0500 (EST)
Date: Wed, 13 Jan 2010 14:17:50 -0500
From: James Carlson <carlsonj@workingcode.com>
Subject: Re: Open Source elxl replacement [PSARC/2010/014 Self Review]
In-reply-to: <201001131840.o0DIetFr020806@sac.sfbay.sun.com>
To: "Garrett D'Amore - sun microsystems" <gd78059@sac.sfbay.sun.com>
Cc: PSARC-ext@sun.com
Message-id: <4B4E1C5E.3070702@workingcode.com>
MIME-version: 1.0
Content-type: text/plain; charset=ISO-8859-1
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
X-Brightmail-Tracker: AAAAAA==
X-DCC-dmv.com-Metrics: carlson; whitelist
X-Antispam: No, score=3.2/5.0, scanned in 0.244sec at (localhost [127.0.0.1])
	by smf-spamd v1.3.1 - http://smfs.sf.net/
References: <201001131840.o0DIetFr020806@sac.sfbay.sun.com>
User-Agent: Thunderbird 2.0.0.22 (X11/20090605)
Status: RO
Content-Length: 854

Garrett D'Amore - sun microsystems wrote:
> This case offers a mostly drop-in compatible replacement (and upgrade) for
> elxl.  However, there is some impact to driver.conf properties and automatic
> media selection, as well as two new driver-specific dladm link properties,
> so this case records these changes.  I believe these impacts are unlikely
> to negatively affect anyone at all (are folks still using 10BASE2 or
> 10BASE5?), so I'm filing as self-review.  If anyone wants this to be promoted
> to a fast track please let me know.  Only minor binding is being sought at
> this time.

Thank you!  That looks like the right thing to do.

> _available_media	Uncommitted	Undocumented, expected to be removed.

Undocumented == Private

Other than that, this sounds great.

-- 
James Carlson         42.703N 71.076W         <carlsonj@workingcode.com>

From gdamore@sun.com Wed Jan 13 11:30:02 2010
Received: from sunmail6brm.central.sun.com (sunmail6brm.Central.Sun.COM [129.147.4.169])
	by sac.sfbay.sun.com (8.13.8+Sun/8.13.8) with ESMTP id o0DJU1RE022218
	for <psarc-ext@sac.sfbay.sun.com>; Wed, 13 Jan 2010 11:30:01 -0800 (PST)
Received: from brm-avmta-1.central.sun.com (brm-avmta-1.Central.Sun.COM [129.147.4.11])
	by sunmail6brm.central.sun.com (8.13.8+Sun/8.13.8/ENSMAIL,v2.4) with ESMTP id o0DJU0hB029939
	for <@sunmail2sca.sfbay.sun.com:PSARC-ext@sun.com>; Wed, 13 Jan 2010 13:30:01 -0600 (CST)
Received: from pmxchannel-daemon.brm-avmta-1.central.sun.com by
 brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 id <0KW700M33A60R900@brm-avmta-1.central.sun.com> for PSARC-ext@sun.com
 (ORCPT PSARC-ext@Sun.COM); Wed, 13 Jan 2010 12:30:00 -0700 (MST)
Received: from sca-es-mail-2.sun.com ([192.18.43.133])
 by brm-avmta-1.central.sun.com
 (Sun Java System Messaging Server 6.2-3.04 (built Jul 15 2005))
 with ESMTP id <0KW700KRYA5YYL10@brm-avmta-1.central.sun.com> for
 PSARC-ext@sun.com (ORCPT PSARC-ext@Sun.COM); Wed,
 13 Jan 2010 12:29:59 -0700 (MST)
Received: from fe-sfbay-10.sun.com ([192.18.43.129])
	by sca-es-mail-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id o0DJTwsW006471	for
 <PSARC-ext@Sun.COM>; Wed, 13 Jan 2010 11:29:58 -0800 (PST)
Received: from conversion-daemon.fe-sfbay-10.sun.com by fe-sfbay-10.sun.com
 (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul  2 2009))
 id <0KW7007009PYXZ00@fe-sfbay-10.sun.com> for PSARC-ext@Sun.COM
 (ORCPT PSARC-ext@Sun.COM); Wed, 13 Jan 2010 11:29:58 -0800 (PST)
Received: from [192.168.251.11] ([unknown] [76.93.15.33])
 by fe-sfbay-10.sun.com
 (Sun Java(tm) System Messaging Server 7u2-7.04 64bit (built Jul  2 2009))
 with ESMTPSA id <0KW700I8AA5XJLE0@fe-sfbay-10.sun.com>; Wed,
 13 Jan 2010 11:29:57 -0800 (PST)
Date: Wed, 13 Jan 2010 11:29:57 -0800
From: "Garrett D'Amore" <gdamore@sun.com>
Subject: Re: Open Source elxl replacement [PSARC/2010/014 Self Review]
In-reply-to: <4B4E1C5E.3070702@workingcode.com>
Sender: Garrett.Damore@sun.com
To: James Carlson <carlsonj@workingcode.com>
Cc: "Garrett D'Amore - sun microsystems" <gd78059@sac.sfbay.sun.com>,
        PSARC-ext@sun.com
Message-id: <4B4E1F35.3090908@sun.com>
MIME-version: 1.0
Content-type: text/plain; CHARSET=US-ASCII; format=flowed
Content-transfer-encoding: 7BIT
X-PMX-Version: 5.4.1.325704
References: <201001131840.o0DIetFr020806@sac.sfbay.sun.com>
 <4B4E1C5E.3070702@workingcode.com>
User-Agent: Thunderbird 2.0.0.23 (X11/20091013)
Status: RO
Content-Length: 1181

James Carlson wrote:
> Garrett D'Amore - sun microsystems wrote:
>   
>> This case offers a mostly drop-in compatible replacement (and upgrade) for
>> elxl.  However, there is some impact to driver.conf properties and automatic
>> media selection, as well as two new driver-specific dladm link properties,
>> so this case records these changes.  I believe these impacts are unlikely
>> to negatively affect anyone at all (are folks still using 10BASE2 or
>> 10BASE5?), so I'm filing as self-review.  If anyone wants this to be promoted
>> to a fast track please let me know.  Only minor binding is being sought at
>> this time.
>>     
>
> Thank you!  That looks like the right thing to do.
>
>   
>> _available_media	Uncommitted	Undocumented, expected to be removed.
>>     
>
> Undocumented == Private
>
> Other than that, this sounds great.
>   

I wasn't sure I could get away with that for a property that I was 
essentially exposing to users (although not documenting it to facilitate 
its later removal.)

If I can call this "Private", that works so much the better.

Btw, I need code reviewers for this as well... 
http://cr.opensolaris.org/~gdamore/elxl/


    - Garrett


