[PATCH 1/7] rtc: davinci: enable compilation for omap architectures
Dario Binacchi
dariobin at libero.it
Sat May 8 12:40:08 CEST 2021
Hi Pali,
> Il 07/05/2021 09:56 Pali Rohár <pali at kernel.org> ha scritto:
>
>
> 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?
>
I do not think so. I think am335x is omap2 and not omap3.
In https://www.ti.com/lit/ug/spruf98y/spruf98y.pdf I don't see any reference
to the RTC.
Thanks and regards,
Dario
> > Signed-off-by: Dario Binacchi <dariobin at libero.it>
> > ---
> >
> > 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
> >
More information about the U-Boot
mailing list