11 Jan, 2012
1 commit
-
This patch converts the drivers in drivers/rtc/* to use the
module_platform_driver() macro which makes the code smaller and a bit
simpler.Signed-off-by: Axel Lin
Acked-by: Mark Brown
Acked-by: Mike Frysinger
Acked-by: Guan Xuetao
Acked-by: Linus Walleij
Acked-by: Haojian Zhuang
Cc: Alessandro Zummo
Cc: Srinidhi Kasagar
Cc: Lars-Peter Clausen
Cc: Ben Dooks
Cc: John Stultz
Acked-by: Jean-Christophe PLAGNIOL-VILLARD
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
28 Dec, 2011
3 commits
-
Since the regmap of rtc on sa1100, pxa and mmp Marvell soc families are
almost the same, so re-arch the rtc-sa1100 to support them.Signed-off-by: Jett.Zhou
Acked-by: Arnd Bergmann
Acked-by: Haojian Zhuang
Acked-by: Robert Jarzmik
Signed-off-by: Arnd Bergmann -
In rtc generic interface of setting alarm, it will check the alarm time
value valid or not, so rtc_periodic_alarm is redundant, remove it.Signed-off-by: Jett.Zhou
Acked-by: Haojian Zhuang
Signed-off-by: Arnd Bergmann -
These registers are used in old ioctl of UIE and PIE, now they are
emulated by rtc generic code of hrtimer, so it can be removed.Signed-off-by: Jett.Zhou
Acked-by: Haojian Zhuang
Signed-off-by: Arnd Bergmann
10 Mar, 2011
5 commits
-
Since PIE interrupts are now emulated, this patch removes the previous
code that used the hardware counters.The removal of read_callback() also fixes a wrong user space behaviour
of this driver, which was not returning the right value to read().[john.stultz: Merge fixups]
CC: Thomas Gleixner
CC: Alessandro Zummo
CC: Marcelo Roberto Jimenez
CC: rtc-linux@googlegroups.com
Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: John Stultz -
This patch removes the UIE and PIE information that is now being
supplied directly in the generic RTC code.CC: Thomas Gleixner
CC: Alessandro Zummo
CC: Marcelo Roberto Jimenez
CC: rtc-linux@googlegroups.com
Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: John Stultz -
With the generic RTC rework, the UIE mode irqs are handled
in the generic layer, and only hardware specific ioctls
get passed down to the rtc driver layer.So this patch removes the UIE mode ioctl handling in the rtc
driver layer, which never get used.CC: Thomas Gleixner
CC: Alessandro Zummo
CC: Marcelo Roberto Jimenez
CC: rtc-linux@googlegroups.com
Signed-off-by: John Stultz -
With the generic rtc code now emulating PIE mode irqs via an
hrtimer, no one calls the rtc_class_ops->irq_set_freq call.This patch removes the hook and deletes the driver functions
if no one else calls them.CC: Thomas Gleixner
CC: Alessandro Zummo
CC: Marcelo Roberto Jimenez
CC: rtc-linux@googlegroups.com
Signed-off-by: John Stultz -
With PIE mode interrupts now emulated in generic code via an hrtimer,
no one calls rtc_class_ops->irq_set_state(), so this patch removes it
along with driver implementations.CC: Thomas Gleixner
CC: Alessandro Zummo
CC: Marcelo Roberto Jimenez
CC: rtc-linux@googlegroups.com
Signed-off-by: John Stultz
04 Feb, 2011
1 commit
-
Some rtc drivers use the ioctl method instead of the alarm_irq_enable
method for enabling alarm interupts. With the new virtualized RTC
rework, its important for drivers to use the alarm_irq_enable instead.This patch converts the drivers that use the AIE ioctl method to
use the alarm_irq_enable method. Other ioctl cmds are left untouched.I have not been able to test or even compile most of these drivers.
Any help to make sure this change is correct would be appreciated!CC: Alessandro Zummo
CC: Thomas Gleixner
CC: Marcelo Roberto Jimenez
Reported-by: Marcelo Roberto Jimenez
Tested-by: Marcelo Roberto Jimenez
Signed-off-by: John Stultz
21 Dec, 2010
1 commit
-
This patch uses the RTC framework to treat some common ioctl.
In particular, it fixes the behaviour of rtc_irq_set_freq(), which did
not work as expected because the timer was not beeing retriggered.Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: Russell King
10 Nov, 2010
3 commits
-
This patch fixes a nasty initialization condition on the RTSR register.
Sometimes, bit 1 will wake up set, sometimes not. This can be seen
by checking the value of the RTSR by typing '$ cat /proc/driver/rtc',
which has been provided by the previous patch.If this bit is set, the command '$ cat /dev/rtc0' will lock the system
in an endless interrupt routine calling loop.This patch fixes the issue both at sa1100_rtc_probe(), where it avoids
a spurious interrupt from happening, and at sa1100_rtc_interrupt(),
which is the robust solution, though it does not avoid the first
spurious interrupt.Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: Russell King -
This patch adds a line to the output of /proc/drivers/rtc to show
the value of the RTSR register. It will be used to demonstrate
a nasty initialization bug that will be fixed in the sequence.Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: Russell King -
This patch fixes checkpatch.pl issues in drivers/rtc/rtc-sa1100.c,
which I will later modify.Signed-off-by: Marcelo Roberto Jimenez
Signed-off-by: Russell King
16 Dec, 2009
1 commit
-
Signed-off-by: Alexey Dobriyan
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
23 Sep, 2009
1 commit
16 Sep, 2009
1 commit
-
Due to problems at cam.org, my nico@cam.org email address is no longer
valid. FRom now on, nico@fluxnic.net should be used instead.Signed-off-by: Nicolas Pitre
Signed-off-by: Linus Torvalds
10 Sep, 2009
1 commit
-
Remove the following warning:
Platform driver 'sa1100-rtc' needs updating - please use dev_pm_opsSigned-off-by: Haojian Zhuang
Signed-off-by: Eric Miao
09 Mar, 2009
1 commit
-
The remaining registers are separated into:
-
-
-and then we can remove pxa-regs.h completely. Instead of #include this
file, let's:1. include the specific with care (if that's absolutely
necessary)2. define the registers in the driver, make cleanly defined API to expose
the register access to external with sufficient reasonSigned-off-by: Eric Miao
29 Dec, 2008
1 commit
-
As Nicolas and Russell pointed out, CLOCK_TICK_RATE is no more
a constant on PXA when multiple processors and platforms are
selected, change TIMER_FREQ in rtc-sa1100.c into a variable.Since the code to decide the clock tick rate is re-used from
timer.c, introduce a common get_clock_tick_rate() for this.Signed-off-by: Eric Miao
Acked-by: Nicolas Pitre
07 Aug, 2008
2 commits
-
This just leaves include/asm-arm/plat-* to deal with.
Signed-off-by: Russell King
-
Remove includes of asm/hardware.h in addition to asm/arch/hardware.h.
Then, since asm/hardware.h only exists to include asm/arch/hardware.h,
update everything to directly include asm/arch/hardware.h and remove
asm/hardware.h.Signed-off-by: Russell King
10 Jul, 2008
1 commit
-
…-reviewed', 'rpc', 'rtc' and 's3c' into devel
22 Jun, 2008
1 commit
-
Mark rtc sa1100 driver as wakeup source before registering it.
rtc_device_register evaluates device_can_wakeup(rtc->dev.parent) and
supresses the creation of /sys/class/rtc/rtcX/wakealarm if
device_can_wakeup is not (yet) true.Signed-off-by: Uli Luckas
Signed-off-by: Russell King
22 May, 2008
1 commit
-
Move the two functions rtc-sa1100 wants from the old ARM RTC library
into the rtc-sa1100 driver.Acked-by: Alessandro Zummo
Signed-off-by: Russell King
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
07 Feb, 2008
1 commit
-
Remove some more references to dev->power.power_state. That field is overdue
for removal, but we can't do that while it's still referenced in the kernel.
The only reason to update it was to make the /sys/devices/.../power/state
files (now removed) work better.Signed-off-by: David Brownell
Cc: Russell King
Cc: Alessandro Zummo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
26 Jan, 2008
1 commit
-
Replace wakeup support using the alarm via the SA1100 RTC driver on
SA1100 and PXA platforms. This allows RTC alarm wakeup to be enabled
via sysfs using the conventional attributes.Acked-by: Alessandro Zummo
Signed-off-by: Russell King
20 Oct, 2007
1 commit
-
remove asm/bitops.h includes
including asm/bitops directly may cause compile errors. don't include it
and include linux/bitops instead. next patch will deny including asm header
directly.Cc: Adrian Bunk
Signed-off-by: Jiri Slaby
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
09 May, 2007
1 commit
-
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
21 Feb, 2007
1 commit
-
Some rtc-sa1100 bugfixes:
- The read_alarm() method reports the rtc_wkalrm.enabled field properly.
This patch is already in the handhelds.org tree.- And the set_alarm() method now handles that flag correctly, rather than
making mismatched {en,dis}able_irq_wake() calls, which trigger runtime
warning messages. (Those calls are best made in suspend/resume methods.)Note that while this SA1100/PXA RTC is fully capable of waking those ARM
processors from sleep states, that mechanism isn't properly supported on
either processor family, or in this driver. Some boards have board-specific
PM glue providing partial workarounds for the weak generic PM support.Signed-off-by: David Brownell
Cc: Alessandro Zummo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
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
05 Oct, 2006
1 commit
-
Maintain a per-CPU global "struct pt_regs *" variable which can be used instead
of passing regs around manually through all ~1800 interrupt handlers in the
Linux kernel.The regs pointer is used in few places, but it potentially costs both stack
space and code to pass it around. On the FRV arch, removing the regs parameter
from all the genirq function results in a 20% speed up of the IRQ exit path
(ie: from leaving timer_interrupt() to leaving do_IRQ()).Where appropriate, an arch may override the generic storage facility and do
something different with the variable. On FRV, for instance, the address is
maintained in GR28 at all times inside the kernel as part of general exception
handling.Having looked over the code, it appears that the parameter may be handed down
through up to twenty or so layers of functions. Consider a USB character
device attached to a USB hub, attached to a USB controller that posts its
interrupts through a cascaded auxiliary interrupt controller. A character
device driver may want to pass regs to the sysrq handler through the input
layer which adds another few layers of parameter passing.I've build this code with allyesconfig for x86_64 and i386. I've runtested the
main part of the code on FRV and i386, though I can't test most of the drivers.
I've also done partial conversion for powerpc and MIPS - these at least compile
with minimal configurations.This will affect all archs. Mostly the changes should be relatively easy.
Take do_IRQ(), store the regs pointer at the beginning, saving the old one:struct pt_regs *old_regs = set_irq_regs(regs);
And put the old one back at the end:
set_irq_regs(old_regs);
Don't pass regs through to generic_handle_irq() or __do_IRQ().
In timer_interrupt(), this sort of change will be necessary:
- update_process_times(user_mode(regs));
- profile_tick(CPU_PROFILING, regs);
+ update_process_times(user_mode(get_irq_regs()));
+ profile_tick(CPU_PROFILING);I'd like to move update_process_times()'s use of get_irq_regs() into itself,
except that i386, alone of the archs, uses something other than user_mode().Some notes on the interrupt handling in the drivers:
(*) input_dev() is now gone entirely. The regs pointer is no longer stored in
the input_dev struct.(*) finish_unlinks() in drivers/usb/host/ohci-q.c needs checking. It does
something different depending on whether it's been supplied with a regs
pointer or not.(*) Various IRQ handler function pointers have been moved to type
irq_handler_t.Signed-Off-By: David Howells
(cherry picked from 1b16e7ac850969f38b375e511e3fa2f474a33867 commit)
01 Oct, 2006
1 commit
-
Update RTC framework so that drivers can constify their method tables, moving
them from ".data" to ".rodata". Then update the drivers.Signed-off-by: David Brownell
Cc: Alessandro Zummo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
03 Jul, 2006
1 commit
-
Signed-off-by: Thomas Gleixner
Cc: Ingo Molnar
Cc: "David S. Miller"
Cc: Benjamin Herrenschmidt
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
28 Jun, 2006
1 commit
-
locking init cleanups:
- convert " = SPIN_LOCK_UNLOCKED" to spin_lock_init() or DEFINE_SPINLOCK()
- convert rwlocks in a similar mannerthis patch was generated automatically.
Motivation:
- cleanliness
- lockdep needs control of lock initialization, which the open-coded
variants do not give
- it's also useful for -rt and for lock debugging in generalSigned-off-by: Ingo Molnar
Signed-off-by: Arjan van de Ven
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
26 Jun, 2006
1 commit
-
Centralize CAP_SYS_XXX checks to avoid duplicate code and missing checks in
the drivers.Signed-off-by: Alessandro Zummo
Cc: Richard Purdie
Cc: Yoichi Yuasa
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
22 May, 2006
1 commit
-
Appropriately use -ENOIOCTLCMD and -ENOTTY when the ioctl is not
implemented by a driver.(akpm: we're not allowed to return -ENOIOCTLCMD to userspace. This patch does
the right thing).Signed-off-by: Alessandro Zummo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds
06 May, 2006
1 commit
-
Fix:
drivers/rtc/rtc-sa1100.c: In function `sa1100_rtc_proc':
drivers/rtc/rtc-sa1100.c:298: warning: unsigned int format, long unsigned int arg (arg 3)and arrange for sa1100_rtc_open() to pass the devid to free_irq()
rather than NULL.Signed-off-by: Russell King
11 Apr, 2006
1 commit
-
- convert printks to dev_xxx
- remove messages in excess
Signed-off-by: Alessandro Zummo
Signed-off-by: Andrew Morton
Signed-off-by: Linus Torvalds