On 5/2/07, Tom Chen <[EMAIL PROTECTED]> wrote:
I am now writing a giga ethernet driver, currently a GLDV2 driver. I am thiking about whether I should enable VLAN for my GLDv2 driver or upgrade to GLDv3 first then enable VLAN. I found some GLDV2 drivers use [b]gldm_send_tagged[/b] to send VLAN packets, but most GLDV2 do not support VLAN. I couldnot find any man page for this API. Is VLAN not fully supported at GLDv2? I am wondering the VLAN capabilities(what can it do, what can not) in GLDV2 and GLDV3. Any improvement in GLDV3? Can someone give an explaination?
GLDv2 supports VLANs to a limited extent. The work was originally done for the bge driver since the BCM5794 chip that it was originally written for can do tag insertion/strip in hardware. Hence the gldm_send_tagged() entry point simply supplies the VLAN tag in the expectation that the driver just passes it through to the h/w. This interface is not documented as it was never intended to be used by IHV GLDv2 drivers. Nemo was written with the intention of providing VLAN and link aggregation support for all drivers so, if you write a Nemo driver, the framework will handle tag insertion/strip for you and you will be able to aggregate your links. I get the impression that VLAN support in Nemo is in a state of flux but, not being a Sun insider, I don't actually know what's happening and when. I'm fairly sure, though, that the changes will be fairly well, if not totally, hidden from any Nemo drivers. The only downside to writing a Nemo driver is that the interface is *still* not public so you're driver is tied into ON builds. Paul -- Paul Durrant http://www.linkedin.com/in/pdurrant _______________________________________________ networking-discuss mailing list [email protected]
