Dear Community,

> The Tegra30 SoC is a bit special, as it doesn't have the separate IP
> block to provide watchdog functionality.
> 
> Instead, timer IP block allows such functionality when properly
> configured.
> 
> As in the tegra30.dtsi there is a timer node, which "covers" all
> timers, with 'nvidia,tegra30-timer' compatibility it was necessary to
> manually bind U-Boot's WDT driver (based on WDT_UCLASS).
> 
> Signed-off-by: Lukasz Majewski <lu...@nabladev.com>
> ---
>  drivers/timer/tegra-timer.c | 18 ++++++++++++++++++
>  1 file changed, 18 insertions(+)
> 
> diff --git a/drivers/timer/tegra-timer.c b/drivers/timer/tegra-timer.c
> index 3545424889d..361539efa43 100644
> --- a/drivers/timer/tegra-timer.c
> +++ b/drivers/timer/tegra-timer.c
> @@ -11,6 +11,8 @@
>  #include <asm/arch/clock.h>
>  #include <asm/arch/tegra.h>
>  
> +#include <dm/lists.h>
> +
>  #define TEGRA_OSC_CLK_ENB_L_SET              (NV_PA_CLK_RST_BASE +
> 0x320) #define TEGRA_OSC_SET_CLK_ENB_TMR      BIT(5)
>  
> @@ -106,6 +108,21 @@ static int tegra_timer_probe(struct udevice *dev)
>       return 0;
>  }
>  
> +static int tegra_timer_bind(struct udevice *dev)
> +{
> +     /*
> +      * In Tegra 30 SoC the Watchdog is accomplished
> +      * by the timer IP block (timer5).
> +      */
> +     if (CONFIG_IS_ENABLED(WDT_TEGRA))
> +             return device_bind_driver_to_node(dev, "tegra_wdt",
> +                                               "tegra-wdt",
> +                                               dev_ofnode(dev),
> +                                               NULL);
> +
> +     return 0;
> +}
> +
>  static const struct timer_ops tegra_timer_ops = {
>       .get_count = tegra_timer_get_count,
>  };
> @@ -124,6 +141,7 @@ U_BOOT_DRIVER(tegra_timer) = {
>       .id             = UCLASS_TIMER,
>       .of_match       = tegra_timer_ids,
>       .probe          = tegra_timer_probe,
> +     .bind           = tegra_timer_bind,
>       .ops            = &tegra_timer_ops,
>       .flags          = DM_FLAG_PRE_RELOC,
>  };

Are there any new comments regarding this patch set?

-- 
Best regards,

Lukasz Majewski

--
Nabla Software Engineering GmbH
HRB 40522 Augsburg
Phone: +49 821 45592596
E-Mail: off...@nabladev.com
Geschftsfhrer : Stefano Babic

Reply via email to