Description
In the Linux kernel, the following vulnerability has been resolved: phy: tegra: xusb: Fix unbalanced regulator disable in UTMI PHY mode When transitioning from USB_ROLE_DEVICE to USB_ROLE_NONE, the code assumed that the regulator should be disabled. However, if the regulator is marked as always-on, regulator_is_enabled() continues to return true, leading to an incorrect attempt to disable a regulator which is not enabled. This can result in warnings such as: [ 250.155624] WARNING: CPU: 1 PID: 7326 at drivers/regulator/core.c:3004 _regulator_disable+0xe4/0x1a0 [ 250.155652] unbalanced disables for VIN_SYS_5V0 To fix this, we move the regulator control logic into tegra186_xusb_padctl_id_override() function since it's directly related to the ID override state. The regulator is now only disabled when the role transitions from USB_ROLE_HOST to USB_ROLE_NONE, by checking the VBUS_ID register. This ensures that regulator enable/disable operations are properly balanced and only occur when actually transitioning to/from host mode.
Product status
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before ceb645ac6ce052609ee5c8f819a80e8881789b04
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before cdcb0ffd6448f6be898956913a42bd08e59fb2ae
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before 1bb85b5c2bd43b687c3d54eb6328917f90dd38fc
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before 5367cdeb75cb6c687ca468450bceb2602ab239d8
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before ec7f98ff05f0649af0adeb4808c7ba23d6111ef9
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before eaa420339658615d26c1cc95cd6cf720b9aebfca
49d46e3c7e597e8b00c6fc16e6fd7a92044f4371 before cefc1caee9dd06c69e2d807edc5949b329f52b22
5.7
Any version before 5.7
5.10.241
5.15.190
6.1.147
6.6.100
6.12.40
6.15.8
6.16
References
git.kernel.org/...c/ceb645ac6ce052609ee5c8f819a80e8881789b04
git.kernel.org/...c/cdcb0ffd6448f6be898956913a42bd08e59fb2ae
git.kernel.org/...c/1bb85b5c2bd43b687c3d54eb6328917f90dd38fc
git.kernel.org/...c/5367cdeb75cb6c687ca468450bceb2602ab239d8
git.kernel.org/...c/ec7f98ff05f0649af0adeb4808c7ba23d6111ef9
git.kernel.org/...c/eaa420339658615d26c1cc95cd6cf720b9aebfca
git.kernel.org/...c/cefc1caee9dd06c69e2d807edc5949b329f52b22