Re: [PATCH net] dpll: zl3073x: Handle missing or corrupted flash configuration

From: Simon Horman

Date: Mon Oct 13 2025 - 05:15:09 EST


On Wed, Oct 08, 2025 at 04:14:45PM +0200, Ivan Vecera wrote:
> If the internal flash contains missing or corrupted configuration,
> basic communication over the bus still functions, but the device
> is not capable of normal operation (for example, using mailboxes).
>
> This condition is indicated in the info register by the ready bit.
> If this bit is cleared, the probe procedure times out while fetching
> the device state.
>
> Handle this case by checking the ready bit value in zl3073x_dev_start()
> and skipping DPLL device and pin registration if it is cleared.
> Do not report this condition as an error, allowing the devlink device
> to be registered and enabling the user to flash the correct configuration.
>
> Prior this patch:
> [ 31.112299] zl3073x-i2c 1-0070: Failed to fetch input state: -ETIMEDOUT
> [ 31.116332] zl3073x-i2c 1-0070: error -ETIMEDOUT: Failed to start device
> [ 31.136881] zl3073x-i2c 1-0070: probe with driver zl3073x-i2c failed with error -110
>
> After this patch:
> [ 41.011438] zl3073x-i2c 1-0070: FW not fully ready - missing or corrupted config
>
> Fixes: 75a71ecc24125 ("dpll: zl3073x: Register DPLL devices and pins")
> Signed-off-by: Ivan Vecera <ivecera@xxxxxxxxxx>

I am unsure how much precedence there is for probing a device
with very limited functionality like this. But, the approach
does make sense to me as it provides a path for user intervention
to address the detected problem which at any rate renders the probed
driver inoperable.

Reviewed-by: Simon Horman <horms@xxxxxxxxxx>

...