On Friday 07 May 2021 06:15:02 Dario Binacchi wrote:
> The Davinci's onchip RTC is also present on TI OMAP1, AM33XX, AM43XX and
> DRA7XX SOCs. So, let's enable compilation for these architectures too.

Hello! If it is available on AM33XX, do you know if it is also on OMAP3?

> Signed-off-by: Dario Binacchi <[email protected]>
> ---
> 
>  drivers/rtc/Kconfig   |  7 +++++++
>  drivers/rtc/davinci.c | 11 ++++++++---
>  2 files changed, 15 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/rtc/Kconfig b/drivers/rtc/Kconfig
> index c84a9d2b27..cbdfddb80f 100644
> --- a/drivers/rtc/Kconfig
> +++ b/drivers/rtc/Kconfig
> @@ -188,4 +188,11 @@ config RTC_ABX80X
>         families of ultra-low-power  battery- and capacitor-backed real-time
>         clock chips.
>  
> +config RTC_DAVINCI
> +     bool "Enable TI OMAP RTC driver"
> +     depends on ARCH_DAVINCI || ARCH_OMAP2PLUS
> +     help
> +       Say "yes" here to support the on chip real time clock
> +       present on TI OMAP1, AM33xx, DA8xx/OMAP-L13x, AM43xx and DRA7xx.
> +
>  endmenu
> diff --git a/drivers/rtc/davinci.c b/drivers/rtc/davinci.c
> index c446e7a735..8f5f76c9d6 100644
> --- a/drivers/rtc/davinci.c
> +++ b/drivers/rtc/davinci.c
> @@ -9,11 +9,16 @@
>  #include <rtc.h>
>  #include <asm/io.h>
>  #include <asm/davinci_rtc.h>
> +#include <asm/arch/hardware.h>
>  #include <linux/delay.h>
>  
> +#if !defined(RTC_BASE) && defined(DAVINCI_RTC_BASE)
> +#define RTC_BASE DAVINCI_RTC_BASE
> +#endif
> +
>  int rtc_get(struct rtc_time *tmp)
>  {
> -     struct davinci_rtc *rtc = (struct davinci_rtc *)DAVINCI_RTC_BASE;
> +     struct davinci_rtc *rtc = (struct davinci_rtc *)RTC_BASE;
>       unsigned long sec, min, hour, mday, wday, mon_cent, year;
>       unsigned long status;
>  
> @@ -57,7 +62,7 @@ int rtc_get(struct rtc_time *tmp)
>  
>  int rtc_set(struct rtc_time *tmp)
>  {
> -     struct davinci_rtc *rtc = (struct davinci_rtc *)DAVINCI_RTC_BASE;
> +     struct davinci_rtc *rtc = (struct davinci_rtc *)RTC_BASE;
>  
>       debug("Set DATE: %4d-%02d-%02d (wday=%d)  TIME: %2d:%02d:%02d\n",
>               tmp->tm_year, tmp->tm_mon, tmp->tm_mday, tmp->tm_wday,
> @@ -75,7 +80,7 @@ int rtc_set(struct rtc_time *tmp)
>  
>  void rtc_reset(void)
>  {
> -     struct davinci_rtc *rtc = (struct davinci_rtc *)DAVINCI_RTC_BASE;
> +     struct davinci_rtc *rtc = (struct davinci_rtc *)RTC_BASE;
>  
>       /* run RTC counter */
>       writel(0x01, &rtc->ctrl);
> -- 
> 2.17.1
> 

Reply via email to