lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251029203557.286adaec@pavilion>
Date: Wed, 29 Oct 2025 20:35:57 +0100
From: Thomas Wismer <thomas@...mer.xyz>
To: Oleksij Rempel <o.rempel@...gutronix.de>
Cc: Kory Maincent <kory.maincent@...tlin.com>, Andrew Lunn
 <andrew+netdev@...n.ch>, "David S. Miller" <davem@...emloft.net>, Eric
 Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo
 Abeni <pabeni@...hat.com>, Rob Herring <robh@...nel.org>, Krzysztof
 Kozlowski <krzk+dt@...nel.org>, Conor Dooley <conor+dt@...nel.org>, Thomas
 Wismer <thomas.wismer@....ch>, netdev@...r.kernel.org,
 devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next v2 1/2] net: pse-pd: tps23881: Add support for
 TPS23881B

Hi Oleksij,

Many thanks for the review.

On Fri, Oct 24, 2025 at 12:49:58 +0200, Oleksij Rempel wrote:
> > +		/* skip SRAM load, ROM firmware already
> > IEEE802.3bt compliant */  
> 
> TL;DR:
> 
> A more accurate comment would be:
> /* skip SRAM load, ROM provides Clause 145 hardware-level support */
> 
> Longer version:
> 
> Please reference IEEE 802.3-2022 (Clause 145) instead of the "IEEE
> 802.3bt" amendment:
> - The IEEE 802.3-2022 standard is free for everyone with the IEEE
> Xplore program.
> - The "bt" amendment costs money.
> - Using the free standard helps all community members review this
> driver.
[...]

Good to know that the IEEE 802.3-2022 standard is available free of charge.
I'm happy to adopt your accurate wording.

> [...]
> > @@ -1422,6 +1442,10 @@ static int tps23881_i2c_probe(struct
> > i2c_client *client)  
> [...]
> >  
> > -	dev_info(&client->dev, "Firmware revision 0x%x\n", ret);
> > +	if (ret == 0xFF)
> > +		dev_warn(&client->dev, "Device entered safe
> > mode\n");  
> 
>                 return -ENODEV; /* Or another appropriate error */
> 
> The datasheet states this happens on an "un-recoverable firmware
> fault." According to the datasheet, when in "Safe Mode," all ports
> are shut down. The device is not in a functional state to act as a PSE
> controller.

The datasheets (TPS23881 from May 2023 / TPS23881B from May 2025) state that,
regarding entering "safe mode", "any channels that are currently powered will
remain powered, but the majority of the operation will be disabled". Because the
rest of the driver code assumes the device to be in a functional state, bailing
out here makes perfect sense.

> > static const struct i2c_device_id tps23881_id[] = {
> >  	{ "tps23881" },
> > 	{ }
> > };
> > MODULE_DEVICE_TABLE(i2c, tps23881_id);
> 
> I guess tps23881_id should be updated too.

Agreed. I will fix this.

Best regards,
Thomas


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ