Commit Graph

473 Commits

Author SHA1 Message Date
christos
30fc143afa Add COMPAT_BSDPTY to the rest of the config files. 2004-11-10 17:54:02 +00:00
thorpej
dc2f2fbe74 Centralize the declaration of booted_device and booted_partition. 2004-10-23 17:07:37 +00:00
manu
6e3c639957 IPv4 PIM support, based on a submission from Pavlin Radoslavov posted on
tech-net@
2004-09-04 23:29:44 +00:00
rearnsha
2a1436f519 Remove declaration of db_trapper (since we now use db_machine_init). 2004-08-06 15:10:19 +00:00
atatat
f68a9f1ff2 Add "options SYSCTL_INCLUDE_DESCR" to a lot of configs, but commented
out in most of them.
2004-07-15 03:53:44 +00:00
thorpej
e33c2bb5d5 Add the %MAKEOPTIONSAPPEND token at the end of the file, after the
common Makefile.kern.inc has been included.
2004-06-04 04:45:49 +00:00
tsarna
f53a32e6c9 Refactor tpcalib and hpc* ports to make tpcalib MI, as discussed on tech-kern. 2004-05-28 17:52:06 +00:00
he
20bb5ba64c Provide multiple include protection. Fixes build problem in kdump. 2004-05-11 10:13:35 +00:00
kleink
7b3b647647 Factor out W{CHAR,INT}_{MAX,MIN} into their own header file. 2004-05-08 21:51:47 +00:00
bjh21
3d0535f928 Remove needless includes of <dev/pckbc/wskbdmap_mfii.h>. 2004-03-13 17:23:32 +00:00
jdc
162e36abb1 Make this include the Jornada 720 config and just change the memory size,
as it is exactly the same otherwise.
2004-03-04 19:57:59 +00:00
wiz
d20841bb64 Uppercase CPU, plural is CPUs. 2004-02-13 11:36:08 +00:00
wiz
5fd0048361 Uppercase CPU where appropriate. 2004-02-13 10:10:18 +00:00
manu
61257a84f2 fixes for Brazilian keyboard from Rafael Diniz <rafael2k@terra.com.br>
http://mail-index.netbsd.org/port-hpcarm/2003/12/18/0000.html
2003-12-19 12:16:36 +00:00
manu
aad6b2204e Brazilian keymap, submitted by Rafael Diniz
http://mail-index.netbsd.org/port-hpcarm/2003/12/14/0000.html
2003-12-15 16:11:34 +00:00
mycroft
e07e6dfcac Add a default: to a case statement. 2003-10-27 17:17:42 +00:00
mycroft
8df46a3c92 In j720ssp_kthread(), move the tsleep() to the end of the loop. 2003-10-27 16:18:18 +00:00
lukem
7d84b90c92 Use one 'atabus* at ata?' instead of multiple 'atabus* at FOOide? channel ?'
Use  'atapibus* at atapi?'  instead of  'atapibus* at atabus?'
2003-10-18 08:30:12 +00:00
bouyer
e9255b5ae1 Add atabus. 2003-10-08 11:08:07 +00:00
lukem
1c33b4e6a4 Overhaul MBR handling (part 1):
<sys/bootblock.h>:
    *	Added definitions for the Master Boot Record (MBR) used by
	a variety of systems (primarily i386), including the format
	of the BIOS Parameter Block (BPB).
	This information was cribbed from a variety of sources
	including <sys/disklabel_mbr.h> which this is a superset of.

	As part of this, some data structure elements and #defines
	were renamed to be more "namespace friendly" and consistent
	with other bootblocks and MBR documentation.
	Update all uses of the old names to the new names.

<sys/disklabel_mbr.h>:
    *	Deprecated in favor of <sys/bootblock.h> (the latter is more
	"host tool" friendly).

amd64 & i386:
    *	Renamed /usr/mdec/bootxx_dosfs to /usr/mdec/bootxx_msdos, to
	be consistent with the naming convention of the msdosfs tools.

    *	Removed /usr/mdec/bootxx_ufs, as it's equivalent to bootxx_ffsv1
	and it's confusing to have two functionally equivalent bootblocks,
	especially given that "ufs" has multiple meanings (it could be
	a synonym for "ffs", or the group of ffs/lfs/ext2fs file systems).

    *	Rework pbr.S (the first sector of bootxx_*):
	    +	Ensure that BPB (bytes 11..89) and the partition table
		(bytes 446..509) do not contain code.
	    +	Add support for booting from FAT partitions if BOOT_FROM_FAT
		is defined.  (Only set for bootxx_msdos).
	    +	Remove "dummy" partition 3; if people want to installboot(8)
		these to the start of the disk they can use fdisk(8) to
		create a real MBR partition table...
	    +	Compile with TERSE_ERROR so it fits because of the above.
		Whilst this is less user friendly, I feel it's important
		to have a valid partition table and BPB in the MBR/PBR.

    *	Renamed /usr/mdec/biosboot to /usr/mdec/boot, to be consistent
	with other platforms.

    *	Enable SUPPORT_DOSFS in /usr/mdec/boot (stage2), so that
    	we can boot off FAT partitions.

    *	Crank version of /usr/mdec/boot to 3.1, and fix some of the other
	entries in the version file.

installboot(8) (i386):
    *	Read the existing MBR of the filesystem and retain the BIOS
    	Parameter Block (BPB) in bytes 11..89 and the MBR partition
	table in bytes 446..509.  (Previously installboot(8) would
	trash those two sections of the MBR.)

mbrlabel(8):
    *	Use sys/lib/libkern/xlat_mbr_fstype.c instead of homegrown code
	to map the MBR partition type to the NetBSD disklabel type.


Test built "make release" for i386, and new bootblocks verified to work
(even off FAT!).
2003-10-08 04:25:43 +00:00
agc
299e4a53ec Add COMPAT_16, pointed out by Bryan Vyhmeister. 2003-09-16 21:56:00 +00:00
agc
341e8b0d1a Add a kernel configuration file for the Jornada 728. 2003-09-16 08:22:00 +00:00
agc
497a13cc5b Make the number of 4K DRAM pages into a CPP definition, so that it can be
set from a kernel configuration file. Proposed by Brett Lymn on port-hpcarm.
2003-09-16 08:18:22 +00:00
uwe
d889e9a63d US keydesc corrections from Bryan Vyhmeister (bsd at hub3 dot net).
Tested by Julian Coleman <jdc@netbsd>.
2003-09-15 21:03:10 +00:00
chris
cfb7a98211 Add COMPAT_16 to most arm based kernels. Mainly in preperation for doing
SA_SIGINFO work.
2003-09-13 13:30:01 +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
bsh
fbf0aea004 add __GENERIC_SOFT_INTERRUPTS_ALL_LEVELS to machine/types.h for
following ports:

	acorn26, amiga, hpcarm, sparc, sparc64

This was proposed by Martin Husemann at teck-kern@ in May to properly
test whether softintr can be established for all IPL, or only for
IPL_SOFT*.  OKed by acorn26, hpcarm and sparc port masters.
2003-08-06 00:43:53 +00:00
lukem
08716eae82 __KERNEL_RCSID() 2003-07-15 00:24:37 +00:00
he
609811d881 Follow up the rename of _SPL_IMP to _SPL_VM. 2003-06-23 22:18:10 +00:00
thorpej
452a8fdae2 Rename IPL_IMP -> IPL_VM. 2003-06-16 20:00:56 +00:00
thorpej
181911c6db Don't need ARM32_PMAP_NEW option any more. 2003-05-22 05:52:18 +00:00
thorpej
d5bcde54a7 Move KERNEL_VM_SIZE into the C files where its used. 2003-05-22 05:47:04 +00:00
thorpej
1963a8521c Use virtual_avail and virtual_end to compute the size of the available
kernel VM space for VM_MAX_KERNEL_BUF, and move the definition into
generic ARM code.
2003-05-22 05:25:48 +00:00
thorpej
361d0454ce Move KERNEL_VM_BASE inside where it is used (it won't be there for long). 2003-05-21 22:48:20 +00:00
thorpej
2a90e2a9c9 Remove redundant bounds_check_with_label() prototype. 2003-05-10 16:12:02 +00:00
thorpej
bbba90a2fb Don't expose KERNEL_TEXT_BASE outside of board-specific code. This gives
individual board start-up code more flexibility about where the kernel
starts in the kernel address space.
2003-05-03 18:25:28 +00:00
thorpej
aae7e372b7 Reduce differences between ARM32_NEW_VM_LAYOUT and not; always pass
the start and end of the kernel managed virtual address space to
pmap_bootstrap() in the new pmap.
2003-05-03 03:49:03 +00:00
thorpej
1dff12252d Remove old pmap support for platforms which have fully switched over. 2003-05-03 03:29:06 +00:00
thorpej
b84ae2d2c2 Switch to the new pmap. 2003-05-03 03:19:27 +00:00
thorpej
4eeee795e8 Eliminate PTE_BASE and the PT-PT completely in the ARM32_PMAP_NEW case.
Also in the ARM32_PMAP_NEW case, reclaim the USPACE-bytes of wasted space
at the top of the user address that hasn't been needed for a very very
long time.
2003-05-02 23:22:33 +00:00
toshii
5d4354a6d4 Make it compile without ARM32_PMAP_NEW defined.
Fixes PR kern/21397 by Jachym Holecek.
2003-05-02 14:42:48 +00:00
toshii
af1587350a Use db_machine_init. 2003-05-02 14:36:38 +00:00
thorpej
7de2c299a2 Don't define APTE_BASE if ARM32_PMAP_NEW is defined; the new pmap
doesn't use it.
2003-04-28 01:34:28 +00:00
ragge
69a66687f8 Call ksyms_init() instead of ddb_init() in case of
NKSYMS || defined(DDB) || defined(LKM)
2003-04-26 11:05:05 +00:00
toshii
7583c79436 Make it boot with ARM32_PMAP_NEW defined. 2003-04-26 08:31:30 +00:00
toshii
20697a7696 Fix a comment; 0x40000 isn't 1MB.
Use KERNEL_BASE instead of 0xc0000000. No functional change.
2003-04-26 07:09:26 +00:00
toshii
7dbee668be Some line folding cleanups.
Kill an unused variable.
2003-04-26 06:44:28 +00:00
wiz
d75ae2c6f5 no iic, thus no rtc@iic, thus no todclock@rtc. 2003-04-17 11:45:13 +00:00
thorpej
cc2c493bc4 Use PAGE_SIZE rather than NBPG. 2003-04-02 07:35:54 +00:00
thorpej
fd53a1c386 Use PAGE_SIZE rather than NBPG. 2003-04-02 03:51:33 +00:00
chris
42d1c259a4 duplicate the changes from arm/arm32/stubs.c's dumpsys to remove pmap_map
usage.
Seems this file should really be split into the hpcarm specific bits
so it shares stubs.c with the other arm32 ports.

Pointed out by Håvard
2003-03-25 10:41:39 +00:00
simonb
276fd1665c The Double-Semi-Colon Police. 2003-01-20 05:29:53 +00:00
thorpej
23bc250391 Merge the nathanw_sa branch. 2003-01-17 21:55:23 +00:00
lukem
4bb41ae2f2 Rework how KERNOBJDIR functions; now it's always determined with
cd ${KERNSRCDIR}/${KERNARCHDIR}/compile && ${PRINTOBJDIR}
This is far simpler than the previous system, and more robust with
objdirs built via BSDOBJDIR.

The previous method of finding KERNOBJDIR when using BSDOBJDIR by
referencing _SRC_TOP_OBJ_ from another directory was extremely
fragile due to the depth first tree walk by <bsd.subdir.mk>, and
the caching of _SRC_TOP_OBJ_ (with MAKEOVERRIDES) which would be
empty on the *first* pass to create fresh objdirs.

This change requires adding sys/arch/*/compile/Makefile to create
the objdir in that directory, and descending into arch/*/compile
from arch/*/Makefile.  Remove the now-unnecessary .keep_me files
whilst here.

Per lengthy discussion with Andrew Brown.
2003-01-06 17:40:18 +00:00
takemura
285679b875 Added new ioctl command, WSMOUSEIO_GETID to tell touch panel identifier
for tpctl(8).
2003-01-03 04:36:26 +00:00
lukem
0635de35a3 Remove KDIR=, since SYS_INCLUDE=symlinks and KDIR are not supported any more. 2002-11-26 23:30:07 +00:00
manu
be554117a6 Removed debug messages 2002-11-07 17:26:34 +00:00
jdolecek
c82ab2eb79 now that mem_no is emitted by config(8), there is no reason to keep
copy of more or less identical iskmemdev() for every arch; move the function
to spec_vnop.c, and g/c machine-dependant copies
2002-10-26 13:50:17 +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
bsh
7b6639153c make atomic_{set,clear}_bit() inline for arm32 ports, and
add <machine/atomic.h> for them.
2002-10-19 12:22:33 +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
elric
5ab71e20b0 Added commented out cgd(4)s to GENERIC configs. 2002-10-14 18:39:22 +00:00
jdolecek
4140408d7e g/c empty apmpoll(), use nopoll() instead 2002-10-07 21:32:10 +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
bsh
5880df1648 avoid warning when NAPM==0 2002-09-29 13:16:22 +00:00
thorpej
f818766afe Declare all cfattach structures const. 2002-09-27 20:31:45 +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
thorpej
d1ad2ac4f2 Rather than referencing the cfdriver directly in the cfdata entries,
instead use a string naming the driver.  The cfdriver is then looked
up in a list which is built at run-time.
2002-09-27 02:24:06 +00:00
manu
e2da53c091 More definitions to get apmd building (but it is not functionnal yet) 2002-09-19 16:52:00 +00:00
manu
7f8a47f4a1 - missing bits of apm
- KNF
2002-09-18 19:54:47 +00:00
lukem
3ea2e21f82 enable USERCONF by default; it's small and extremely useful to have available. 2002-09-18 02:43:53 +00:00
manu
e77de5cb68 Initial APM support (enough to get battery level) 2002-09-16 19:52:52 +00:00
manu
eee61c81f0 Fix a config mistake for wsmouse 2002-09-16 19:50:27 +00:00
thorpej
c0691fd89d Back out previous; it breaks binary compatibility between platforms
in the same MACHINE_ARCH.
2002-09-14 15:54:00 +00:00
mycroft
e9a1e15d7e Move some #defines out of _KERNEL. 2002-09-14 12:58:37 +00:00
manu
100872541e fix touchpanel broken behavior:
- when moving the stylus, the cursor was updated only when the screen was
released
- when moving the stylus for too long, the kernel crashed

This was caused by improper delays in SSP read and write, and by interrupt
hammering while the screen is touched). Both led to the machine handling
interrupts all the time and been unable to schedule the X server, therefore
the lack of cursor refresh.

The problem is fixed by
- masking touchpanel interrupts as soon as we are already handling them
- creating a kernel thread (j720ssp) that takes care of keyboard and
touchpanel I/O, instead of doing it in a softintr.
- reducing delays in j720ssp_readwrite operations from 5ms to 0.1ms.

NB: If the delay in j720ssp_readwrite operation is lowered to 0.1, then
switching on the screen using the power key pushes brightness to maximum.
In order to avoid this, we introduce a wait argument to j720ssp_readwrite,
which specify how many microseconds we have to wait. j720ssp_readwrite is
called with wait = 100 everywhere except in j720lcdparam where it is called
with wait = 500. That way it works.
2002-09-13 22:44:58 +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
f9889ab068 Correctly map altgr on a french keyboard 2002-08-27 17:54:30 +00:00
thorpej
77a6866508 Enable caching on kernel and user page tables. This saves having
to do uncached memory access during VM operations (which can be
quite expensive on some CPUs).

We currently write-back PTEs as soon as they're modified; there is
some room for optimization (to write them back in larger chunks).
For PTEs in the APTE space (i.e. PTEs for pmaps that describe another
process's address space), PTEs must also be evicted from the cache
complete (PTEs in PTE space will be evicted durint a context switch).
2002-08-24 02:16:30 +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
thorpej
5fddbbe3d5 Do cached memory access to L1 tables, making sure to write-back the
cache after any L1 table modifications.
2002-08-21 18:34:31 +00:00
briggs
0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
thorpej
79af00bddb Move the calls to uvm_page_physload() out of pmap_bootstrap() and
into platform-specific initialization code, giving platform-specific
code control over which free list a given chunk of memory gets put
onto.

Changes are essentially mechanical.  Test compiled for all ARM
platforms, test booted on Intel IQ80321 and Shark.

Discussed some time ago on port-arm.
2002-07-31 00:20:51 +00:00
thorpej
d3aa5664b7 Move the uvm_setpagesize() call to platform-dependent code in preparation
for other changes to pmap_bootstrap().
2002-07-30 16:16:38 +00:00
manu
2126ded42f Implements WSKBDIO_GTYPE 2002-07-22 20:55:48 +00:00
manu
861152fbd3 Enable two WSDISPLAY options needed by the X server 2002-07-22 20:55:09 +00:00
manu
a719492472 Added a commented out J720KBD_LAYOUT option, to show how default keymap can
be changed.
2002-07-21 19:20:55 +00:00
manu
11bde95a38 Added a french keymap, but the altgr key does not work yet (to be fixed later) 2002-07-21 19:16:39 +00:00
ichiro
c0a235d462 change path of include file 2002-07-20 01:36:56 +00:00
ichiro
0fa83706ca make compile "IPAQ" 2002-07-19 19:29:28 +00:00
ichiro
422658da08 move sa11x0 to under arch/arm
make compile
2002-07-19 19:15:48 +00:00
toshii
f72ad6b998 Support jornada720 touchpanel. 2002-07-19 08:49:48 +00:00
manu
210ae8794f Added PHY to the config file so that most PCMCIA ethernet board will work. 2002-07-18 20:03:41 +00:00
toshii
aa2f38ff11 Recognize hpcboot's "b=xx" option, which specifies the root device to use. 2002-07-13 13:40:28 +00:00
toshii
01b6ded4f1 Comment out MEMORY_DISK_HOOKS as a workarund for the following problem.
hpcarm has a bug which prevents booting if kernel text+data size exceeds
3.75MB.
2002-06-22 13:04:00 +00:00
lukem
fde6ae6f04 Enable "pseudo-device clockctl" in all kernels, except
installation related kernels (INSTALL* and RAMDISK*).
This enables rc.conf(5) $ntpd_chroot to be used "out of the box"
2002-06-17 05:14:02 +00:00
toshii
f98f1c4df5 Add a missing config_hook_init call. 2002-05-31 13:43:28 +00:00