07 Aug, 2008

1 commit


25 Jul, 2008

1 commit

  • This fixes kernel http://bugzilla.kernel.org/show_bug.cgi?id=11112 (bogus
    RTC update IRQs reported) for rtc-at91rm9200 by scrubbing old IRQ status
    before enabling IRQs.

    It also removes nonfunctional periodic IRQ support from this driver;
    only update IRQs are reported, or provided by the hardware.

    I suspect some other RTCs probably have versions of #11112; it's easy to
    overlook, since most non-RTC drivers don't care about spurious IRQs:
    they're not reported to userspace.

    Signed-off-by: David Brownell
    Report-by: W Unruh
    Cc: Andrew Victor
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

22 May, 2008

2 commits

  • On ARM, asm/rtc.h only contains definitions for the predecessor to
    the RTC class support. RTC class drivers should not be including
    this include.

    Build tested on at91sam9rl and s3c2410 configurations.

    Acked-by: Alessandro Zummo
    Signed-off-by: Russell King

    Russell King
     
  • asm/mach/time.h is the ARM header file for setting up kernel ticker
    timekeeping (be that the old jiffy interrupt or the new clocksource.)
    RTC drivers have no business using this header file, and in fact do
    not require it.

    Build tested on at91sam9rl, omap and s3c2410 configurations.

    Acked-by: Alessandro Zummo
    Acked-by: Andrew Victor
    Signed-off-by: Russell King

    Russell King
     

28 Apr, 2008

1 commit


11 Apr, 2008

1 commit

  • Since 43cc71eed1250755986da4c0f9898f9a635cb3bf, the platform modalias is
    prefixed with "platform:". Add MODULE_ALIAS() to the hotpluggable RTC
    platform drivers, to re-enable module auto loading.

    [dbrownell@users.sourceforge.net: more drivers, minor fix]
    Signed-off-by: Kay Sievers
    Signed-off-by: David Brownell
    Cc: Greg KH
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kay Sievers
     

09 May, 2007

2 commits

  • RTC class suspend/resume support, re-initializing the system clock on resume
    from the clock used to initialize it at boot time.

    - The reinit-on-resume is hooked to the existing RTC_HCTOSYS config
    option, on the grounds that a clock good enough for init must also
    be good enough for re-init.

    - Inlining a version of the code used by ARM, to save and restore the
    delta between a selected RTC and the current system wall-clock time.

    - Removes calls to that ARM code from AT91, OMAP1, and S3C RTCs. This
    means that systems using those RTCs across suspend/resume will likely
    want to change their kernel configs to enable RTC_HCTOSYS.

    If HCTOSYS isn't using a second RTC (with battery?), this changes the
    system's initial date from Jan 1970 to the epoch this hardware uses:
    1998 for AT91, 2000 for OMAP1 (assuming no split power mode), etc.

    This goes on top of the patch series removing "struct class_device" usage
    from the RTC framework. That's all needed for class suspend()/resume().

    Signed-off-by: David Brownell
    Acked-by: Greg Kroah-Hartman
    Acked-By: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • This patch removes class_device from the programming interface that the RTC
    framework exposes to the rest of the kernel. Now an rtc_device is passed,
    which is more type-safe and streamlines all the relevant code.

    Signed-off-by: David Brownell
    Acked-by: Greg Kroah-Hartman
    Acked-By: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

21 Feb, 2007

1 commit

  • Various bug fixes to the at91rm9200 RTC:

    - alarm: setalarm() should pay attention to the "enabled" flag

    - init: cleaner handling of the wakeup flags, which cpu init should
    really have set up. Doing it here is just a workaround.

    - linkage: since the at91_rtc driver probe() routine is in the init
    section, it should use platform_driver_probe() instead of leaving
    that pointer around in the driver struct after init section removal.

    - linkage: likewise, remove() belongs in the exit section.

    Among other things, the init and alarm changes ensure that this driver
    handles the new sysfs "wakealarm" attribute properly.

    Signed-off-by: David Brownell
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

06 Jan, 2007

1 commit

  • The at91rm9200 RTC driver needs some assistance to build, because of recent
    header file rearrangement.

    Signed-off-by: David Brownell
    Cc: Alessandro Zummo
    Cc: Andrew Victor
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

14 Dec, 2006

1 commit

  • Fix a glitch in the procfs dumping of whether the alarm IRQ is enabled: use
    the traditional name (from drivers/char/rtc.c and many other places) of
    "alarm_IRQ", not "alrm_wakeup" (which didn't even match the efirtc code, which
    originated that reporting API).

    Also, update a few of the RTC drivers to stop providing that duplicate status,
    and/or to expose it properly when reporting the alarm state. We really don't
    want every RTC driver doing their own thing here...

    Signed-off-by: David Brownell
    Acked-by: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     

11 Dec, 2006

1 commit

  • The new Atmel AT91SAM9261 and AT91SAM9260 processors do not have the
    internal RTC peripheral. This RTC driver is therefore
    AT91RM9200-specific.

    This patch renames rtc-at91.c to rtc-at91rm9200.c, and changes the name
    of the configuration option.

    Signed-off-by: Andrew Victor
    Cc: Alessandro Zummo
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Victor