Hi Thomas, On 8 October 2015 at 02:03, Thomas Chou <tho...@wytron.com.tw> wrote: > Implement a Timer uclass to work with lib/time.c. > > Signed-off-by: Thomas Chou <tho...@wytron.com.tw> > Reviewed-by: Simon Glass <s...@chromium.org> > --- > v2 > fix coding style. > v3 > add description to Kconfig as Simon suggested. > move timer.c code to lib/time.c. > add dm_timer dev to global data. > remove timer_init(). > change API name get_clock. > v4 > add comment about timer hardware. > v5 > revert to get_rate and use uclass priv to store the clock_rate. > split gd->dm_timer renewal to anohter patch. > > drivers/Kconfig | 2 ++ > drivers/Makefile | 1 + > drivers/timer/Kconfig | 12 +++++++++ > drivers/timer/Makefile | 7 ++++++ > drivers/timer/timer-uclass.c | 42 +++++++++++++++++++++++++++++++ > include/asm-generic/global_data.h | 3 +++ > include/dm/uclass-id.h | 1 + > include/timer.h | 52 > +++++++++++++++++++++++++++++++++++++++ > lib/time.c | 49 ++++++++++++++++++++++++++++++++++++ > 9 files changed, 169 insertions(+) > create mode 100644 drivers/timer/Kconfig > create mode 100644 drivers/timer/Makefile > create mode 100644 drivers/timer/timer-uclass.c > create mode 100644 include/timer.h
Acked-by: Simon Glass <s...@chromium.org> Please see one last thing below. > > diff --git a/drivers/Kconfig b/drivers/Kconfig > index 63c92c5..f9496f7 100644 > --- a/drivers/Kconfig > +++ b/drivers/Kconfig > @@ -56,6 +56,8 @@ source "drivers/spi/Kconfig" > > source "drivers/thermal/Kconfig" > > +source "drivers/timer/Kconfig" > + > source "drivers/tpm/Kconfig" > > source "drivers/usb/Kconfig" > diff --git a/drivers/Makefile b/drivers/Makefile > index 9d0a595..692da78 100644 > --- a/drivers/Makefile > +++ b/drivers/Makefile > @@ -48,6 +48,7 @@ obj-y += pcmcia/ > obj-y += dfu/ > obj-y += rtc/ > obj-y += sound/ > +obj-y += timer/ > obj-y += tpm/ > obj-y += twserial/ > obj-y += video/ > diff --git a/drivers/timer/Kconfig b/drivers/timer/Kconfig > new file mode 100644 > index 0000000..54a4c40 > --- /dev/null > +++ b/drivers/timer/Kconfig > @@ -0,0 +1,12 @@ > +menu "Timer Support" > + > +config DM_TIMER One more little nit - this should be just 'TIMER'? All of the DM_... options will eventually be removed. They indicate that driver model is being used for a function. In your case, there is no legacy version so you can just omit the DM_. > + bool "Enable Driver Model for Timer drivers" > + depends on DM > + help > + Enable driver model for Timer access. It uses the same API as > + lib/time.c. But now implemented by the uclass. The first timer > + will be used. The timer is usually a 32 bits free-running up > + counter. There may be no real tick, and no timer interrupt. > + > +endmenu Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot