Home | History | Annotate | Download | only in footbridge
History log of /src/sys/arch/arm/footbridge/footbridge_clock.c
RevisionDateAuthorComments
 1.27  13-Aug-2021  skrll Trailing whitespace
 1.26  21-Jul-2009  skrll device_t/softc split
CFATTACH_DECL -> CFATTACH_DECL_NEW
struct device * -> device_t
struct cfdata * -> cfdata_t
Use aprint*
 1.25  20-Sep-2008  chris Fix kernel boot issue on cats.

The delay(9) loop, used before the clock device is probed and a hardware timer
is available, was out by a factor of 625.

This wasn't an issue until revision 1.45 of sys/dev/ic/pckbc.c which switched
to using delay(9) when polling the keyboard controller.

Cats attaches the console (and pckbc) before the clock has been probed, and so
the delay loop code is used causing issue with the keyboard polling.
 1.24  03-Dec-2007  ad branches: 1.24.14; 1.24.18; 1.24.20; 1.24.24;
Interrupt handling changes, in discussion since February:

- Reduce available SPL levels for hardware devices to none, vm, sched, high.
- Acquire kernel_lock only for interrupts at IPL_VM.
- Implement threaded soft interrupts.
 1.23  11-Sep-2006  gdamore branches: 1.23.10; 1.23.26; 1.23.28; 1.23.30; 1.23.32; 1.23.38;
Convert netwinder and cats (and any other footbridge based system in the
future) to timecounters, using the dc21285_fclk. ok nick@, chris@.
 1.22  11-Sep-2006  gdamore ANSIfy, and KNF fixes.
 1.21  17-Apr-2006  chris branches: 1.21.8;
Simplify delay loop by moving the maths to before the loop.
There is minimal risk of overflow unless something delays >134s.
 1.20  11-Dec-2005  christos branches: 1.20.4; 1.20.6; 1.20.8; 1.20.10; 1.20.12;
merge ktrace-lwp.
 1.19  02-Jun-2005  he branches: 1.19.2;
Adapt to shadowing and qualifier-cast warnings.
 1.18  05-Oct-2003  matt Add SA_SIGINFO support for ARM (from Chris Gilbert).
 1.17  23-Mar-2003  chris branches: 1.17.2;
Add __KERNEL_RCSID tags to footbridge files.
 1.16  17-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.15  03-Nov-2002  chris Checkin new interrupt handling code for the footbridge.
This is based upon Jason's work on xscale.

Most of the interrupt handling code is now written in C using an asm stub to
call into the C code.

spl* now only updates a software mask, and does not update the hardware,
this should be much faster.

The new code works well on cats, it's untested on netwinder, but should work.

The code implements generic soft interrupts.

More work is still required to bring the isa interrupt handling code upto
scratch currently all isa interrupts are handled at IPL_BIO on the footbridge.
This may cause isa interrupts to be handled later than they should be.
I plan to fix this in the near future.
 1.14  29-Oct-2002  tsutsui Initialize statprev in setstatclockrate().
 1.13  10-Oct-2002  chris branches: 1.13.2;
Fix thinko from this morning, delay is reentrant, so resetting the timer
to 0 on entry will confuse any already running delay.
 1.12  10-Oct-2002  chris Minor tweaks to footbridge's delay, always reset the timer when starting delay run (and set last to the counter value).
When the read value is 0, reset the timer (don't wait till the next loop round to reset it)
Add a bit of debug to the calibration stuff to make sure its working ok.
 1.11  05-Oct-2002  chris Add random jitter to stat clock, the random jitter is +- 511 usec's, so
we should average the nominal clock rate.

stathz now runs at hz (the hard clock hz), without getting high amounts of
time in interrupt handling.
 1.10  02-Oct-2002  thorpej Use CFATTACH_DECL().
 1.9  28-Sep-2002  chris Enable the use of a seperate statclock.

Currently statclock runs at 64hz, maybe it should be faster or slower, I did
try it being the same as hz, but that just made it look like we spent 10% of
time handling interrupts, rather than the 3% that this gives.

Also fix the IPL_LEVELS for netwinder.
 1.8  27-Sep-2002  thorpej Declare all cfattach structures const.
 1.7  27-Sep-2002  provos remove trailing \n in panic(). approved perry.
 1.6  04-May-2002  chris Implement a proper delay routine for footbridge based systems. Note that
until the footbridge is attached we still have to rely on a loop. This
uses TIMER_3 running at 100Hz.
Sadly this doesn't appear to fix the tlp problems, which either means that this
delay routine is not as accurate as it should/could be or tlp is still broken.
 1.5  02-May-2002  mycroft Fix off-by-one error in delay().
 1.4  05-Jan-2002  chris Make some of the arm32 files build with LOOSE_PROTOTYPES not set in the makefile. Turned up a few mismatched functions. Note that this isn't all of the arm32 files. Aim will be to get arm32 kernels built with LOOSE_PROTOTYPES not set.
 1.3  23-Nov-2001  thorpej Use <arm/cpufunc.h>, not <machine/cpufunc.h>.
 1.2  05-Sep-2001  matt branches: 1.2.6;
Change <machine/irqhandler.h> to <machine/intr.h> since the latter always
includes the former and is a standard include file.
 1.1  09-Jun-2001  chris branches: 1.1.2;
Move the footbridge dir out of arm32 into arm.
 1.1.2.4  10-Oct-2002  jdolecek sync kqueue with -current; this includes merge of gehenna-devsw branch,
merge of i386 MP branch, and part of autoconf rototil work
 1.1.2.3  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.2  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.1.2.1  13-Sep-2001  thorpej Update the kqueue branch to HEAD.
 1.2.6.8  11-Nov-2002  nathanw Catch up to -current
 1.2.6.7  18-Oct-2002  nathanw Catch up to -current.
 1.2.6.6  20-Jun-2002  nathanw Catch up to -current.
 1.2.6.5  11-Apr-2002  thorpej TIMER_MAX -> TIMER_MAX_VAL, so as not to conflict with TIMER_MAX
in <sys/time.h>
 1.2.6.4  28-Feb-2002  nathanw Catch up to -current.
 1.2.6.3  11-Jan-2002  nathanw More catchup.
 1.2.6.2  08-Jan-2002  nathanw Catch up to -current.
 1.2.6.1  05-Sep-2001  nathanw file footbridge_clock.c was added on branch nathanw_sa on 2002-01-08 00:23:10 +0000
 1.13.2.1  09-Nov-2002  bjh21 Catch up with -current.
 1.17.2.4  10-Nov-2005  skrll Sync with HEAD. Here we go again...
 1.17.2.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.17.2.2  18-Sep-2004  skrll Sync with HEAD.
 1.17.2.1  03-Aug-2004  skrll Sync with HEAD
 1.19.2.3  07-Dec-2007  yamt sync with head
 1.19.2.2  30-Dec-2006  yamt sync with head.
 1.19.2.1  21-Jun-2006  yamt sync with head.
 1.20.12.1  24-May-2006  tron Merge 2006-05-24 NetBSD-current into the "peter-altq" branch.
 1.20.10.1  19-Apr-2006  elad sync with head - hopefully this will work
 1.20.8.2  14-Sep-2006  yamt sync with head.
 1.20.8.1  24-May-2006  yamt sync with head.
 1.20.6.1  22-Apr-2006  simonb Sync with head.
 1.20.4.1  09-Sep-2006  rpaulo sync with head
 1.21.8.1  18-Nov-2006  ad Sync with head.
 1.23.38.1  08-Dec-2007  mjf Sync with HEAD.
 1.23.32.1  09-Jan-2008  matt sync with HEAD
 1.23.30.1  01-Jan-2008  chris Sync with HEAD.
 1.23.28.1  09-Dec-2007  jmcneill Sync with HEAD.
 1.23.26.1  26-Dec-2007  rjs Sync with HEAD.
 1.23.10.1  03-Dec-2007  ad Sync with HEAD.
 1.24.24.1  19-Oct-2008  haad Sync with HEAD.
 1.24.20.1  10-Oct-2008  skrll Sync with HEAD.
 1.24.18.2  19-Aug-2009  yamt sync with head.
 1.24.18.1  04-May-2009  yamt sync with head.
 1.24.14.1  28-Sep-2008  mjf Sync with HEAD.

RSS XML Feed