]> git.ipfire.org Git - thirdparty/linux.git/commit
phy: renesas: rcar-gen3-usb2: Fix ID check logic with VBUS valid
authorLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Thu, 21 Aug 2025 15:59:57 +0000 (16:59 +0100)
committerVinod Koul <vkoul@kernel.org>
Mon, 1 Sep 2025 16:45:56 +0000 (22:15 +0530)
commit356590cd61cf89e2420d5628e35b6e73c6b6a770
tree28aaf8b90918fbc4bf043a240505a593ab1f4ae7
parent3d13e378d465e8ae0be1697005342055b07eaf11
phy: renesas: rcar-gen3-usb2: Fix ID check logic with VBUS valid

The existing ID detection logic returned false when both IDDIG and
VBUSVALID were set, which caused incorrect role determination in some
cases. The condition:

    !(device && !vbus_valid)

did not properly reflect the intended relationship between IDDIG and
VBUSVALID signals.

Update the logic to:

    return vbus_valid ? device : !device;

This ensures that when VBUS is valid, the role follows the IDDIG value,
and when VBUS is not valid, the role is inverted, matching the expected
OTG behavior.

Fixes: b725741f1c21 ("phy: renesas: rcar-gen3-usb2: Add support for RZ/T2H SoC")
Signed-off-by: Lad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Link: https://lore.kernel.org/r/20250821155957.1088337-1-prabhakar.mahadev-lad.rj@bp.renesas.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/renesas/phy-rcar-gen3-usb2.c