Re: [PATCH 4/8] net: pse-pd: pd692x0: Expand ethtool status message
From: Oleksij Rempel <o.rempel@pengutronix.de>
Date: 2024-05-30 10:14:01
Also in:
lkml
Hi, On Thu, May 30, 2024 at 11:33:41AM +0200, Kory Maincent wrote:
Thanks for the review! On Thu, 30 May 2024 01:13:59 +0200 Andrew Lunn [off-list ref] wrote:quoted
quoted
+static const struct pd692x0_status_msg pd692x0_status_msg_list[] = { + {.id = 0x06, .msg = "Port is off: Main supply voltage is high."}, + {.id = 0x07, .msg = "Port is off: Main supply voltage is low."}, + {.id = 0x08, .msg = "Port is off: Disable all ports pin is active."}, + {.id = 0x0C, .msg = "Port is off: Non-existing port number."}, + {.id = 0x11, .msg = "Port is yet undefined."}, + {.id = 0x12, .msg = "Port is off: Internal hardware fault."}, + {.id = 0x1A, .msg = "Port is off: User setting."}, + {.id = 0x1B, .msg = "Port is off: Detection is in process."}, + {.id = 0x1C, .msg = "Port is off: Non-802.3AF/AT powered device."}, + {.id = 0x1E, .msg = "Port is off: Underload state."}, + {.id = 0x1F, .msg = "Port is off: Overload state."}, + {.id = 0x20, .msg = "Port is off: Power budget exceeded."}, + {.id = 0x21, .msg = "Port is off: Internal hardware routing error."}, + {.id = 0x22, .msg = "Port is off: Configuration change."}, + {.id = 0x24, .msg = "Port is off: Voltage injection into the port."}, + {.id = 0x25, .msg = "Port is off: Improper Capacitor Detection"}, + {.id = 0x26, .msg = "Port is off: Discharged load."},I don't know of any other driver returning strings like this. Have you seen any other PSE driver with anything similar?We would like to be able to return the failure reason but there is nothing generic in the IEEE 802.3 standard to be able to add it to the UAPI. The TI controller has SUPPLY and FAULT EVENT Register which could report few messages. I am not aware of other PoE controller and how they deal with it. We could add sysfs for reporting the status messages for all the ports but I don't think it is a better idea.
We have ETHTOOL_LINK_EXT_STATE* and THTOOL_LINK_EXT_SUBSTATE_ for different kind of link fail diagnostic. I think it would be good to make the same for PSE ports. Not all of them will overlap with other PSE controllers, but we will have one unified diagnostic interface. It will be easier for user space application to parse and react on it. -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |