On Thu, Oct 15, 2026 at 06:27:01PM +0200, Andrew Lunn wrote:
On Thu, Oct 15, 2026 at 11:01:43AM -0500, Alex Elder wrote:
quoted
On 10/15/26 10:40 AM, Lorenzo Bianconi wrote:
quoted
quoted
+ if (count)
+ fsleep(phydev->mdio.reset_assert_delay);
nit: should we check reset_assert_delay field is actually set?
Are you saying there should be an alternative delay used
if it is not set? Do you have a suggestion for what to
use in that case?
Does the binding require the value is set?
What happens it if is 0? I think fsleep() is happy to delay for 0 uS,
but does the hardware still work? Does the datasheet say anything
about power on delays?
I was going to share a text version of the power-up diagram given in
this PHY's datasheet. This might help.
Power-Up Sequence
1. DVDD asserted
|
|<-------- 10 ms -------->| (required for external power)
|
2. DVDD18 / AVDD18 asserted
3. VDD1P25 asserted
|
|<-------- 0.2 ms ------->| (required for LDO to settle)
|
4. VDD_LDO asserted
5. AVDD asserted
|
|<--------- 2 ms -------->| (required for XTL to oscillate)
|
6. Crystal 50 MHz starts oscillating
7. PAD reset deasserted
|
|<------- 10 ms --------->| (deglitch time)
So, maybe just fsleep(22200) or something a bit higher?
Ayaan