Commit Graph

71 Commits

Author SHA1 Message Date
scw f77bf2bb0c Enable/Restore alignment fault state on interrupt handler entry/exit. 2003-11-05 21:10:59 +00:00
bsh 10c7bfc755 split StrongArm companion chip (sacc) driver so that we can support
sacc on other platforms than hpcarm (evbarm for example).

codes specific to hpcarm are extracted and moved to hpcarm/dev/.
2003-08-08 12:29:22 +00:00
agc aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
lukem 08716eae82 __KERNEL_RCSID() 2003-07-15 00:24:37 +00:00
fvdl d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
ichiro 904951f445 struct proc * -> struct lwp * 2003-06-29 11:10:35 +00:00
martin d505b18964 Make sure to include opt_foo.h if a defflag option FOO is used. 2003-06-23 11:00:59 +00:00
rjs 9e4c3aa218 Remove unused structure member variables. 2003-04-14 14:18:41 +00:00
rjs 8704a520e3 Remove unused sa_membase and sa_memsize structure member variables. 2003-04-14 14:16:10 +00:00
rjs 5043a41a74 Add bs_mmap and make hack in bs_mmap conditional on hpcarm. 2003-04-06 12:56:45 +00:00
he e7dc774449 Including <uvm/uvm_extern.h> exposed the fact that we had a benign
type mismatch for SetCPSR.  Remove local extern declaration, since
it's now superfluous.
2003-04-03 17:47:04 +00:00
thorpej 95281cabad Use PAGE_SIZE rather than NBPG. 2003-04-01 23:19:08 +00:00
chris d19c70cbe2 Fix for PR arm/17971. Used patch as provided
Compiled, but no hardware to test on.
2003-03-31 19:52:35 +00:00
bsh f8f0fcb3af don't make kernels with options DEBUG print too much debug messages. 2003-03-23 08:59:02 +00:00
rjs b486d4a0ff Add NULL cn_halt and cn_flush entries to consdev. 2003-03-07 13:30:35 +00:00
thorpej ced18120c6 Merge the nathanw_sa branch. 2003-01-19 07:29:19 +00:00
thorpej 359ed65495 Use aprint_normal() for cfprint routines. 2003-01-01 00:46:13 +00:00
bsh 9e1fd4dd36 Driver for keyboard controller in the SA-1111 companion chip.
Our PC keyboard driver (sys/dev/pckbc/pckbd.c) works only with 8042
keyboard controller driver (sys/dev/ic/pckbc.c).  So, This file
provides same functions as those of 8042 driver.

XXX: we need cleaner interface between the keyboard driver and
     keyboard controller drivers.

XXX: PS/2 mice are not supported yet.
2002-12-20 04:12:51 +00:00
bsh 5f7d2415b6 back out a part of my previous commit. 2002-12-18 04:25:56 +00:00
bsh 7e91daa3b3 guard against being included twice 2002-12-18 04:20:36 +00:00
bsh 35345c15f5 + protect against including twice
+ add struct sa1111_attach_args for keyboard controller support.
2002-12-18 04:16:09 +00:00
bsh b454cbf9c6 + protect against including twice
+ add bit definitions in SKCR
+ add keyboard controller registers
2002-12-18 04:09:31 +00:00
itohy 94b2e6e61d Dump DDB_* and SYMTAB_SPACE options to opt_ddbparam.h rather than opt_ddb.h.
These options are used in limited files but #include "opt_ddb.h" are
everywhere, and changing them caused almost full recompilation.
2002-11-04 06:24:38 +00:00
jdolecek e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
bjh21 d599df9587 Continue the " - . - 8" purge. Specifically:
add	rd, pc, #foo - . - 8		->	adr	rd, foo
ldr	rd, [pc, #foo - . - 8]		->	ldr	rd, foo

Also, when saving the return address for a function pointer call, use
"mov lr, pc" just before the call unless the return address is somewhere
other than just after the call site.

Finally, a few obvious little micro-optimisations like using LDR directly
rather than ADR followed by LDR, and loading directly into PC rather than
bouncing via R0.
2002-10-14 22:32:50 +00:00
chs 038d3a7684 add missing protos. 2002-10-05 17:12:09 +00:00
thorpej c5e91d447d Use CFATTACH_DECL(). 2002-10-02 04:55:47 +00:00
thorpej 9a711d6985 Declare all cfattach structures const. 2002-09-27 20:29:02 +00:00
provos 0f09ed48a5 remove trailing \n in panic(). approved perry. 2002-09-27 15:35:29 +00:00
thorpej 6c88de3b53 Introduce a new routine, config_match(), which invokes the
cfattach->ca_match function in behalf of the caller.  Use it
rather than invoking cfattach->ca_match directly.
2002-09-27 03:17:40 +00:00
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
manu 9d459610ba When the serial port was not checked in hpcboot on hpcarm, writing to
/dev/ttyS0 crashed the kernel. This is because sacom_filltx uses some
uninitialized static variables. Pulling the salues from softc instead
fixes the problem (this is what was done before the drver was moved
from /sys/arch/hpcarm to /sys/arch/arm, anyway).
2002-09-02 05:27:39 +00:00
thorpej 6cc7c1c1ff * Add PTE_SYNC() and PTE_SYNC_RANGE() macros. These don't actually do
anything yet.
* Use PTE_SYNC() and PTE_SYNC_RANGE() in some obvious places, i.e.
  where vtopte() is used.
2002-08-22 01:13:53 +00:00
rjs 92f063ee47 Always clear SA11x0 GPIO in interrupt handler. 2002-08-12 22:26:41 +00:00
ichiro ca24dad921 make compile 2002-07-19 19:07:33 +00:00
ichiro a52924b3fa change include path 2002-07-19 18:36:26 +00:00
ichiro 08dbae76fb sync to hpcarm/sa11x0
later, remove hpcarm/sa11x0
2002-07-19 18:26:56 +00:00
thorpej 2a46fa85a8 Update for recent changes to the ARM pmap. From Hiroyuki Bessho,
PR 16617.
2002-05-03 03:32:54 +00:00
thorpej 32a0860797 Centralize ARM CPU configuration information by adding a new header
file, <arm/cpuconf.h>, which pulls in "opt_cputypes.h" and then defines
the following:
* CPU_NTYPES -- now many CPU types are configured into the kernel.  What
  you really want to know is "== 1" or "> 1".
* Defines ARM_ARCH_2, ARM_ARCH_3, ARM_ARCH_4, ARM_ARCH_5, depending
  on which ARM architecture versions are configured (based on CPU_*
  options).  Also defines ARM_NARCH to determins how many architecture
  versions are configured.
* Defines ARM_MMU_MEMC, ARM_MMU_GENERIC, ARM_MMU_XSCALE depending on
  which classes of ARM MMUs are configured into the kernel, and ARM_NMMUS
  to determine how many MMU classes are configured.

Remove the needless inclusion of "opt_cputypes.h" in several places.
Convert remaining users to <arm/cpuconf.h>.
2002-04-12 18:50:29 +00:00
thorpej 5ffc15a083 Use vtopte() instead of pmap_pte(). 2002-03-24 18:12:54 +00:00
thorpej 2488d00e5f KERNEL_SPACE_START -> KERNEL_BASE 2002-03-23 19:38:30 +00:00
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
rjs 415c021881 Map the reset controller registers. 2002-03-13 00:02:41 +00:00
rjs 54204051f6 Add bus space handle for SA11x0 reset controller. 2002-03-12 23:57:35 +00:00
rjs adde6b76ba Interrupt related defines for SA11x0. 2002-01-09 15:54:19 +00:00
rjs 1d49b1abec Establish interrupt handlers before enabling the clocks. 2002-01-08 11:40:56 +00:00
rjs 4bb5c4fa7c Add extra SA1111 register definitions. 2002-01-08 11:36:52 +00:00
rjs cd6d465f6b Add reset controller register definitions. 2002-01-08 11:29:51 +00:00
rjs 1b4e5cf968 Add check for microtime() being called before clock is initialized. 2002-01-08 11:21:02 +00:00
thorpej 0c57d87232 Use <arm/cpufunc.h>, not <machine/cpufunc.h>. 2001-11-23 19:21:47 +00:00