title> https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-rolling-lts 2025-08-13T15:13:45Z usb: misc: qcom_eud: Access EUD_MODE_MANAGER2 through secure calls 2025-08-13T15:13:45Z Komal Bajaj komal.bajaj@oss.qualcomm.com 2025-07-31T09:01:32Z urn:sha1:c0485e864a2eaa1d5a84c71e573dd236d0e885ae EUD_MODE_MANAGER2 register is mapped to a memory region that is marked as read-only for operating system running at EL1, enforcing access restrictions that prohibit direct memory-mapped writes via writel(). Attempts to write to this region from HLOS can result in silent failures or memory access violations, particularly when toggling EUD (Embedded USB Debugger) state. To ensure secure register access, modify the driver to use qcom_scm_io_writel(), which routes the write operation to Qualcomm Secure Channel Monitor (SCM). SCM has the necessary permissions to access protected memory regions, enabling reliable control over EUD state. SC7280, the only user of EUD is also affected, indicating that this could never have worked on a properly fused device. Fixes: 9a1bf58ccd44 ("usb: misc: eud: Add driver support for Embedded USB Debugger(EUD)") Signed-off-by: Melody Olvera <quic_molvera@quicinc.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Souradeep Chowdhury <quic_schowdhu@quicinc.com> Signed-off-by: Komal Bajaj <komal.bajaj@oss.qualcomm.com> Link: https://lore.kernel.org/r/20250731-eud_mode_manager_secure_access-v8-1-4a5dcbb79f41@oss.qualcomm.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> usb: misc: eud: Remove error print for devm_add_action_or_reset() 2025-08-13T14:55:36Z Waqar Hameed waqar.hameed@axis.com 2025-08-05T09:33:37Z urn:sha1:4b58e0638c4b0f4b80c87b1c711b065eca559551 When `devm_add_action_or_reset()` fails, it is due to a failed memory allocation and will thus return `-ENOMEM`. `dev_err_probe()` doesn't do anything when error is `-ENOMEM`. Therefore, remove the useless call to `dev_err_probe()` when `devm_add_action_or_reset()` fails, and just return the value instead. Signed-off-by: Waqar Hameed <waqar.hameed@axis.com> Reviewed-by: Bjorn Andersson <andersson@kernel.org> Link: https://lore.kernel.org/r/pndo6sukt8u.a.out@axis.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> usb: Switch back to struct platform_driver::remove() 2024-10-04T13:13:03Z Uwe Kleine-König u.kleine-koenig@baylibre.com 2024-09-24T08:43:29Z urn:sha1:9a0749d61a9a999fd15813a8f7db0a7a2451a657 After commit 0edb555a65d1 ("platform: Make platform_driver::remove() return void") .remove() is (again) the right callback to implement for platform drivers. Convert all platform drivers below drivers/usb to use .remove(), with the eventual goal to drop struct platform_driver::remove_new(). As .remove() and .remove_new() have the same prototypes, conversion is done by just changing the structure member name in the driver initializer. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@baylibre.com> Link: https://lore.kernel.org/r/20240924084329.53094-2-u.kleine-koenig@baylibre.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> usb: misc: eud: switch to fallback compatible for device matching 2024-07-31T08:42:17Z Krzysztof Kozlowski krzysztof.kozlowski@linaro.org 2024-07-31T05:44:38Z urn:sha1:db1c0bc6534a60adc65efa80f298dffb02274076 The bindings require two compatibles to be used: qcom,sc7280-eud followed by fallback qcom,eud. The convention is to use fallback compatible in OF device ID tables, unless some device-specific quirks are needed. This will also simplify matching any new devices - they will use existing OF device ID entry, instead of adding a new one. Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Link: https://lore.kernel.org/r/20240731054438.9073-1-krzysztof.kozlowski@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>