Commit Graph

94 Commits

Author SHA1 Message Date
toshii 822c8273de Instead of scheduling all interrupts at IPL_BIO, use an IPL_SERIAL
handler to clear hardware interrupt bit and schedule actual handlers
using soft interrupts registered with desired IPL.

XXX This slows down interrupt handling a bit (up to a few percent with
XXX ping -f or make-over-NFS benchmarks) in some cases.
2001-05-22 17:54:50 +00:00
toshii 7073a10bbd Nuke current_mask. 2001-05-22 17:01:16 +00:00
toshii 128d6fc64b Check RBB and REB bits in the console getc function and go to DDB
when a break signal is detected.
2001-05-21 16:50:35 +00:00
toshii 6e435a5783 Use platid_search to get the GPIO pin number. 2001-05-19 05:07:02 +00:00
toshii a90c8b6620 ANSIify and minor KNF. 2001-05-18 14:51:40 +00:00
toshii c939f00e98 Abandon disabled_mask and spl_mask, and use only current_spl_level to
manage interrupt masking.

This change is necessary for straightforward implementation of coming IPL
support for cascaded intrs, and it should not impair performance.
2001-05-14 16:19:30 +00:00
scw 2963ff5c58 Add `l_poll' to `struct linesw' and provide an xxxpoll() entry point
in each tty driver to indirect through it.

This allows tty line-disciplines to handle poll(2) system calls.
2001-05-02 10:32:08 +00:00
toshii c7df9e68f9 Fix device matching in saip.
ca_match functions should return positive value when matched.
2001-05-01 12:36:54 +00:00
thorpej 1c3a62e066 Sprinkle pmap_update() calls after calls to:
- pmap_enter()
- pmap_remove()
- pmap_protect()
- pmap_kenter_pa()
- pmap_kremove()
as described in pmap(9).

These calls are relatively conservative.  It may be possible to
optimize these a little more.
2001-04-24 04:30:50 +00:00
toshii 58165a53a2 Make masked interrupts don't bring CPU out of idle mode. 2001-04-17 17:12:40 +00:00
toshii a78b59337f Overhaul interrupt handlers.
- Set the match register before calling hardclock() to prevent
 clockintr lossage.
- Better handling of match register overrun case.
2001-04-17 15:58:51 +00:00
toshii 0c1210c6b3 Make the debugging hack needed for DEBUG_BEFOREMMU functional again. 2001-04-17 15:53:04 +00:00
toshii 5373b5ab86 Special care must be taken in order to run statclock at 128Hz.
For now, change statclock rate to 64Hz for simplicity.

Thanks to Ross Harvey for pointing out this issue.
2001-04-17 15:49:02 +00:00
toshii 9e3772786d Add header files for PPC and SSP register definitions. 2001-04-15 17:27:26 +00:00
toshii 1875326646 Use the second channel to generate 128Hz statclock interrupts.
top(1) reports more accurate CPU times (user/sys/intr/idle) now.
2001-04-15 17:19:32 +00:00
toshii 2303009aeb Add SA11[01]0 DMA controller register definitions.
(I forgot to commit this a week ago.)
2001-03-31 13:13:22 +00:00
toshii 02811d05f2 Fix a bug which caused interrupt loss. 2001-03-31 12:49:21 +00:00
toshii 2efdaff40e Set hardware interrupt masks in sa11x0_intr_{establish,disestablish}. 2001-03-31 12:48:10 +00:00
toshii 129f529148 Back out most of rev 1.4 so that it compiles again. 2001-03-31 12:36:53 +00:00
toshii 221f247a25 Add some missing functionality.
- wait READY signal in enable function
 - use tsleep for large delays
 - implement disable function
2001-03-27 18:06:39 +00:00
toshii 7e9512010c Oops. I forgot this line. 2001-03-21 17:43:39 +00:00
toshii 4b32677535 Map DMA controller and disable its DMA channels. 2001-03-21 17:42:37 +00:00
toshii f8dab8e69a Make card insertion/removal work.
XXX powerdown and {io,mem}_unmap are still missing.
2001-03-21 16:16:35 +00:00
toshii 7c429e90c2 Handle interrupt polarity. 2001-03-21 16:08:34 +00:00
toshii f1b9737b90 Fix nit. 2001-03-21 14:48:30 +00:00
toshii 1bb261e173 Fix interrupt handling somewhat so that break signal gets DDB. 2001-03-12 03:27:18 +00:00
toshii ffe630e7c3 Sync with sa11x0_reg.h rev 1.4. 2001-03-11 14:37:03 +00:00
ichiro ea4611b0cd add ExtendedGPIO desc of iPAQ H3600 2001-03-11 07:27:36 +00:00
ichiro 2cb44b8020 add h3600 and jornada720 gpio port and irq 2001-03-11 06:00:42 +00:00
toshii f14e35f58e Driver code for SA11x1 based PCMCIA devices. 2001-03-10 19:01:27 +00:00
toshii 79d31f6571 Common driver code for SA11x0 PCMCIA function. 2001-03-10 19:00:39 +00:00
toshii 57abc92eeb This file is no longer used. PCMCIA driver code is divided into
sa11xx_pcic*, sa11x0_pcic* and sa11x1_pcic*.
2001-03-10 18:59:22 +00:00
toshii 2d36b2225d Support SA1111 companion chip. 2001-03-10 18:50:37 +00:00
toshii 356943c6c4 Fix nit. Read functions were actually writing. :-( 2001-03-10 17:32:14 +00:00
toshii 3a52278a23 Map GPIO registers in saip. 2001-03-10 15:34:38 +00:00
toshii b2cb6de80e Use sa11x0_bs_tag instead of mainbus_bs_tag. 2001-03-10 13:34:34 +00:00
toshii a62d9f6fa0 Handle the offset argument in bus_space_{read,write}* correctly. 2001-03-10 13:29:38 +00:00
toshii 4333644371 Copy bus_space_map() function from arm/mainbus/mainbus_io.c. 2001-03-10 13:27:53 +00:00
toshii 9224009c5d Fix bugs in delay().
- it could wait infinitely.
 - large roundoff error.
2001-03-09 18:55:29 +00:00
toshii 850f81157a Fix an error printf format. 2001-03-05 07:11:18 +00:00
reinoud e89d229692 Make hpcarm compile again after movement of mainbus code 2001-02-24 20:13:59 +00:00
toshii 6fee490e68 Use working bus_space_map. 2001-02-24 12:43:52 +00:00
ichiro 5137cda306 delete local-ID for cvs 2001-02-23 04:31:18 +00:00
ichiro c98cd6c023 hpcarm:
kernel for StrongARM-based WinCE PDA machine.
2001-02-23 03:48:06 +00:00