phy: can-transceiver: Re-instate "mux-states" property presence check
authorGeert Uytterhoeven <geert+renesas@glider.be>
Thu, 20 Mar 2025 15:15:42 +0000 (16:15 +0100)
committerVinod Koul <vkoul@kernel.org>
Fri, 11 Apr 2025 11:30:15 +0000 (17:00 +0530)
commite153fdea9db04dd0e2e536e2eb125b16bbbc2af7
tree76b945d5883118a2fd9eb3bc74ee1056f72ed251
parentd784552e76a23c4ffad0e383670cd1d86064a6be
phy: can-transceiver: Re-instate "mux-states" property presence check

On the Renesas Gray Hawk Single development board:

    can-transceiver-phy can-phy0: /can-phy0: failed to get mux-state (0)

"mux-states" is an optional property for CAN transceivers.  However,
mux_get() always prints an error message in case of an error, including
when the property is not present, confusing the user.

Fix this by re-instating the property presence check (this time using
the proper API) in a wrapper around devm_mux_state_get().  When the
multiplexer subsystem gains support for optional muxes, the wrapper can
just be removed.

In addition, propagate all real errors upstream, instead of ignoring
them.

Fixes: d02dfd4ceb2e9f34 ("phy: can-transceiver: Drop unnecessary "mux-states" property presence check")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Tested-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Biju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Link: https://lore.kernel.org/r/3d7e0d723908284e8cf06ad1f7950c03173178f3.1742483710.git.geert+renesas@glider.be
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/phy-can-transceiver.c