On 1/13/26 16:12, Alice Ryhl wrote:
> Now that clk implements Send and Sync, we no longer need to manually
> implement these traits for Th1520PwmDriverData. Thus remove the
> implementations.
>
> Reviewed-by: Gary Guo <[email protected]>
> Reviewed-by: Daniel Almeida <[email protected]>
> Signed-off-by: Alice Ryhl <[email protected]>
> ---
> Cc: [email protected]
> ---
> drivers/pwm/pwm_th1520.rs | 15 ---------------
> 1 file changed, 15 deletions(-)
>
> diff --git a/drivers/pwm/pwm_th1520.rs b/drivers/pwm/pwm_th1520.rs
> index
> e3b7e77356fc2492077c519073e861beb3e44df9..043dc4dbc6232020195c7b73fad302bbb69652df
> 100644
> --- a/drivers/pwm/pwm_th1520.rs
> +++ b/drivers/pwm/pwm_th1520.rs
> @@ -97,21 +97,6 @@ struct Th1520PwmDriverData {
> clk: Clk,
> }
>
> -// This `unsafe` implementation is a temporary necessity because the
> underlying `kernel::clk::Clk`
> -// type does not yet expose `Send` and `Sync` implementations. This block
> should be removed
> -// as soon as the clock abstraction provides these guarantees directly.
> -// TODO: Remove those unsafe impl's when Clk will support them itself.
> -
> -// SAFETY: The `devres` framework requires the driver's private data to be
> `Send` and `Sync`.
> -// We can guarantee this because the PWM core synchronizes all callbacks,
> preventing concurrent
> -// access to the contained `iomem` and `clk` resources.
> -unsafe impl Send for Th1520PwmDriverData {}
> -
> -// SAFETY: The same reasoning applies as for `Send`. The PWM core's
> synchronization
> -// guarantees that it is safe for multiple threads to have shared access
> (`&self`)
> -// to the driver data during callbacks.
> -unsafe impl Sync for Th1520PwmDriverData {}
> -
> impl pwm::PwmOps for Th1520PwmDriverData {
> type WfHw = Th1520WfHw;
>
>
I thought this was already merged :-).
Reviewed-by: Michal Wilczynski <[email protected]>