Re: [PATCH v3 0/8] Hirschmann Hellcreek DSA driver
From: Vladimir Oltean <olteanv@gmail.com>
Date: 2020-08-24 22:02:10
Also in:
linux-devicetree
On Mon, Aug 24, 2020 at 02:31:10PM -0700, Jakub Kicinski wrote:
On Thu, 20 Aug 2020 10:11:10 +0200 Kurt Kanzenbach wrote:quoted
this series adds a DSA driver for the Hirschmann Hellcreek TSN switch IP. Characteristics of that IP: * Full duplex Ethernet interface at 100/1000 Mbps on three ports * IEEE 802.1Q-compliant Ethernet Switch * IEEE 802.1Qbv Time-Aware scheduling support * IEEE 1588 and IEEE 802.1AS supportI don't see anything worth complaining about here, but this is not my area of expertise.. DSA and TAPRIO folks - does this look good to you?
Just my comment on patch 5/8 about netdev->tc_to_txq. There are 2 distinct things about that: - accessing struct net_device directly hurts the DSA model a little bit. - I think there's some confusion regarding the use of netdev->tc_to_txq itself. I don't think that's the right place to setup a VLAN PCP to traffic class mapping. That's simply "what traffic class does each netdev queue have". I would even go as far as say that Linux doesn't support a VLAN PCP to TC mapping (similar to the DSCP to TC mapping from the DCB ops) at all, except for the ingress-qos-map and egress-qos-map of the 8021q driver, which can't be offloaded and don't map nicely over existing hardware anyway (what hardware has an ingress-qos-map and an egress-qos-map per individual VLAN?!). Although I do really see the need for having a mapping between VLAN PCP and traffic class, I would suggest Kurt to not expose this through taprio/mqprio (hardcode the PCP mapping as 1-to-1 with TC, as other drivers do), and let's try to come up separately with an abstraction for that. Thanks, -Vladimir