On Mon, 20 Nov 2023 19:00:03 +0100 Andrew Lunn <andrew@xxxxxxx> wrote: > > Official name for "PoE" is "Power via Media Dependent Interface". PoE is > > not used in the IEEE 802.3-2018. Using names not used in the specification, > > make development even harder :) > > Especially since there are even more marketing names (names not used in the > > specification) for different PoE variants: > > - 802.3af (802.3at Type 1), PoE > > - 802.3at Type 2, PoE+ > > - 802.3bt Type 3, 4PPoE or PoE++ > > - 802.3bt Type 4, 4PPoE or PoE++ > > From the 2018 standard: > > 1.4.407 Power Sourcing Equipment (PSE): A DTE or midspan device that > provides the power to a single link section. PSEs are defined for > use with two different types of balanced twisted-pair PHYs. When > used with 2 or 4 pair balanced twisted-pair (BASE-T) PHYs, (see IEEE > Std 802.3, Clause 33), DTE powering is intended to provide a single > 10BASE-T, 100BASE-TX, or 1000BASE-T device with a unified interface > for both the data it requires and the power to process these > data. When used with single balanced twisted-pair (BASE-T1) PHYs > (see IEEE Std 802.3, Clause 104), DTE powering is intended to > provide a single 100BASE-T1 or 1000BASE-T1 device with a unified > interface for both the data it requires and the power to process > these data. A PSE used with balanced single twisted-pair PHYs is > also referred to as a PoDL PSE. > > So it seems like, anything not PoDL PSE does not have a name :-( > > However, everything not PoDL PSE seems to be clause 33. So how about: > > enum ethtool_podl_pse_admin_state podl_admin_control; > enum ethtool_c33_pse_admin_state c33_admin_control; > > At least inside the kernel we use c22, c45, c37 etc. I'm not sure they > are visible to userspace, but if we don't have a better name, maybe we > have to use c33 in userspace as well. > > I do think naming like this makes it clear we are talking about two > parallel technologies, not a generic layer and then extensions for > podl. > > What do you think? If we decide to add a prefix, "c33" is precise but less easily understandable, why not using simply "poe" prefix? Maybe as POE were originally PMDI you prefer to use c33 which won't change over time? Should I also modify the content of the enum? ETHTOOL_PSE_ADMIN_STATE_* to ETHTOOL_C33_PSE_ADMIN_* ETHTOOL_PSE_PW_D_STATUS_* to ETHTOOL_C33_PSE_PW_D_STATUS_* -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com