> +/* For ingress (Host -> KSZ8863), 1 byte is added before FCS. > + * > --------------------------------------------------------------------------- > + * > DA(6bytes)|SA(6bytes)|....|Data(nbytes)|tag0(1byte)|tag1(1byte)|FCS(4bytes) > + * > --------------------------------------------------------------------------- > + * tag0[1,0] : represents port > + * (e.g. 0b00=addr-lookup 0b01=port1, 0b10=port2, > 0b11=port1+port2) > + * tag0[3,2] : bits two and three represent prioritization > + * (e.g. 0b00xx=prio0, 0b01xx=prio1, 0b10xx=prio2, 0b11xx=prio3) > + * > + * For egress (KSZ8873 -> Host), 1 byte is added before FCS. > + * > --------------------------------------------------------------------------- > + * DA(6bytes)|SA(6bytes)|....|Data(nbytes)|tag0(1byte)|FCS(4bytes) > + * > --------------------------------------------------------------------------- > + * tag0[0] : zero-based value represents port > + * (eg, 0b0=port1, 0b1=port2) > + */ > + > +static struct sk_buff *ksz8863_xmit(struct sk_buff *skb, > + struct net_device *dev) > +{ > + struct dsa_port *dp = dsa_slave_to_port(dev); > + struct sk_buff *nskb; > + __be16 *tag;
The comment says 1 byte is added. But tag is a u16? Andrew