Commit Graph

38186 Commits

Author SHA1 Message Date
sekiya
590daf63b8 Nuke two more instances of #ifdef IP32. 2004-01-18 01:00:48 +00:00
sekiya
06419e6abe ip2x.c and ip32.c are no more. 2004-01-18 00:55:26 +00:00
sekiya
23020fc3cf Finish moving code between ip2x.c and ip3x.c to imc.c and crime.c. 2004-01-18 00:54:55 +00:00
sekiya
90ed8dc85b Add more platform hooks in platform struct. 2004-01-18 00:53:49 +00:00
sekiya
f754464233 Do not directly reference crime_*() routines, go through the platform
struct pointers instead.
2004-01-18 00:50:08 +00:00
sekiya
7f7429081d Large rototill of the lowlevel code:
* move all device-specific bitbanging to the device drivers in question --
  i.e., the ip32 init code doesn't access the CRIME registers directly but
  instead trusts the CRIME driver to DTRT.  machdep.c is cleaner thereby.
* introduce int.c, which handles the interrupt-controller goo formerly
  in ip2x.c.
* unify the CPU interrupt handler, with CRIME, INT2, and the various timer
  handlers hooked in via pointers in the platform struct.
* eliminate ip2x.c and ip32.c.  After the interrupt handler cleanup, the
  actual platform-dependent code was so minimal (rev identification, mask level
  initialization) that it made sense to move it into machdep.c
* "#ifdef DEBUG printf("foo"); #endif" becomes aprint_debug.

Tested on my ip22 and ip32.  Discussed with pooka@, rafal@.
2004-01-18 00:47:21 +00:00
bjh21
8078bc62c9 Change the control flow in vidcaudio_set_params() so as to make the indentation
less hairy.
2004-01-17 23:41:20 +00:00
bjh21
5510e882f1 Adjust vt(4) (WHICH MUST DIE) to the new way of handling bells on
NetBSD/acorn32.
2004-01-17 22:52:42 +00:00
bjh21
a332903327 Remove sysbeep device. 2004-01-17 21:52:02 +00:00
bjh21
13d0914a93 Use audiobell for system beeps on acorn32 when vidcaudio(4) is compiled in.
Remove the vestigal sysbeep device and replace it with the same kind of
mechanism that pckbd(4) uses to find the bell, which is just as ugly, but
more standard.  Adapt beep(4) to the new world (though I'm not sure it
deserves to live).
2004-01-17 21:49:24 +00:00
bjh21
e095fd5eda More light KNF. 2004-01-17 21:25:25 +00:00
bjh21
2ae7606f01 Light KNF. 2004-01-17 21:24:29 +00:00
bjh21
e37ee89427 Don't include option headers we're not going to use. 2004-01-17 21:16:13 +00:00
bjh21
b727d5da17 KNF. 2004-01-17 21:14:46 +00:00
bjh21
8e0990aadd Un-__P. 2004-01-17 21:05:40 +00:00
perry
c70305f794 Make the warning on NEW_BUFQ_STRATEGY much milder -- I've upgraded it
to "Likely stable". I'm not going to make it the default unilaterally
but I really think it should be.
2004-01-16 17:02:05 +00:00
martin
9a80a6dc4b In proc_trampoline don't bother to clear condition codes in the trap
frame, since we no longer rely on this.
While there fix a few comments.
2004-01-16 12:43:43 +00:00
martin
3b86738bf3 Don't rely on proc_trampoline to clear condition codes for a new
child process on fork - it could be overtaken by a signal delivery
and then use the stale condition code in the trap frame.
Instead, set tf_tstate aproprietaly right from the start.
Fixes PR sparc64/20675.
Many thanks to Paul Kranenburg for hints on a similar problem he fixed
for the sparc port.
2004-01-16 12:42:41 +00:00
dyoung
dee4867ed0 Compute tags for *.[sS]' instead of *.s', only. 2004-01-16 10:08:42 +00:00
martin
c89e32bbcc Minor comment fix. 2004-01-16 09:10:10 +00:00
mrg
23884e8622 clean up a little:
- delete ktrsyscall32()
- add a check #ifdef _LP64 to do the conversion if P_32 is set to the
standard ktrsyscall()
- add a couple of similar _LP64/P_32 checks to the systrace code.

this should get systrace working for 32 bit apps as well as complete
ktrace support for "trace_enter/trace_exit" using platforms such as amd64.

XXX: systrace isn't supported on sparc64 currently... (it doesn't use
trace_enter/trace_exit, or have it's own calls to systrace_xxx()...)
2004-01-16 05:03:02 +00:00
mrg
273220e38e call ktrsyscall32() for 64 bit kernels and 32 bit syscalls. 2004-01-15 14:57:20 +00:00
mrg
1d9c8161a0 begin to implement some ifreq ioctls... long long way to go. 2004-01-15 14:36:28 +00:00
pooka
6e2ad2392e Remove historic remnant that treated the O2 load address as the
sgimips standard.  Define it in the respective config file.
2004-01-15 08:53:42 +00:00
pooka
60b4d7ab8d Replace prehistoric comment "Indy" with something a bit more current 2004-01-15 08:46:31 +00:00
pooka
f78de077a8 The O2 has a PCI slot, add opencrypto.
Brush up some comments a bit while in here.
2004-01-15 08:45:12 +00:00
matt
8ef4267baa Netwinders don't have PCI slots so you can't crypto devices to them. 2004-01-14 23:17:59 +00:00
jonathan
abb59e6f0c Add support for opencrypto, PCI accelerators to sys/arch/*/conf/GENERIC
files for machines I know to have genuine PCI slots.  As sent to tech-kern
for feedback in December 2003. Based on feedback, opencrypto is commented
out in the macppc GENERIC (due to absense of GENERIC_SOFTINT support),
and added to the sparc64 config (sys/arch/sparc64/conf/GENERIC32).
2004-01-14 22:29:03 +00:00
tsutsui
ca7e52eb4f Preserve kernel symbol table not only #if defined(DDB) but
also #if NKSYMS > 0 || defined(LKM).
Should fix port-macppc/21742.
2004-01-14 14:08:40 +00:00
yamt
d113fe51e0 spllower: lower spl before checking pending interrupts.
otherwise, interrupts happened immediately after the check might be left
pending for a while. (until the next tick in the worse case.)
2004-01-14 11:41:27 +00:00
yamt
7246e2cc80 issue memory read barrier for BUS_DMASYNC_POSTREAD operation.
PR/21665 from Stephan Uphoff.
2004-01-14 11:31:55 +00:00
yamt
6125e101f7 remove a duplicated definition of MDP_USEDFPU. 2004-01-14 11:29:40 +00:00
he
9730086e9d Copy code from iq80321 / ixp425:
Use __insn_barrier() to prevent the compiler reordering splx/splraise
relative to the code they're supposed to protect.
2004-01-13 23:18:54 +00:00
nathanw
6eea658635 Adjust the DEBUG check in PMAP_ISACTIVE() to special-case process
exit, since the invariant it checks no longer holds there after the
recent reaper changes.
2004-01-13 18:50:40 +00:00
sekiya
58a060c797 Assign memory controller-dependent watchdog reset functions to
platform.watchdog_reset.
2004-01-13 14:31:37 +00:00
sekiya
986c9703a5 Switch DMA sync function initializer to _bus_dmamap_sync_mips3 to keep things
aligned with previous MIPS1/MIPS3 differentiation.
2004-01-13 14:30:43 +00:00
sekiya
4598391267 The watchdog timer is a function of the memory controller on all SGI platforms.
Add to the machine struct.
2004-01-13 14:18:56 +00:00
sekiya
ffc95bbe6e As the platform-specific bus reset routine varies based on the memory
controller used, set it in the memory controller driver rather than the
platform init code.
2004-01-13 13:05:17 +00:00
sekiya
e5d4293223 Call sgimips_bus_dma_init() in mach_init to set up the proper MIPS1/MIPS3
bus_dma_sync() routine.
2004-01-13 12:57:24 +00:00
sekiya
9c531ea057 Add IP12 subtypes. From Steve Rumble. 2004-01-13 12:30:23 +00:00
sekiya
8507d232d3 Add a call to ip1x_init(). 2004-01-13 05:51:07 +00:00
sekiya
a72de90260 Implement bus routines for MIPS1 processors. Originally from Steve Rumble,
massaged by pooka@.
2004-01-13 05:47:09 +00:00
petrov
704586c08c Fix 32bit kernel build, pointed by Juergen Hannken-Illjes. 2004-01-12 21:16:01 +00:00
jdolecek
0ee51a3dec finish previous (removal of 'reaper' kernel thread):
* move tss_free() call to the new cpu_lwp_free()
* g/c cpu_wait()

fixes PR kern/24067 by Nicolas Joly
2004-01-12 14:31:46 +00:00
sekiya
95e98b18f7 Back out hasty previous commit -- bitwise arithmetic does not always match
integer arithmetic, as demonstrated in this case.
2004-01-12 12:50:07 +00:00
sekiya
1c3c44683b Wrap more mips3_ operations in MIPS3 defines. 2004-01-12 12:32:00 +00:00
sekiya
67770bc1a4 Add pic attached at mainbus (for IP12). 2004-01-12 12:15:05 +00:00
sekiya
e0c8a0088c mips3_* functions aren't available when MIPS3 is not defined, so provide
MIPS1 workalikes (which, for the _8 routines, discard the top 32 bits).
2004-01-12 12:12:24 +00:00
sekiya
09d9a0fb59 Add pic (memory controller for IP12) driver. Originally written by
Steve Rumble, with mostly stylistic changes by myself.
2004-01-12 12:07:06 +00:00
sekiya
f04e7368ea Completely commit to bitwise operations. Instigated by simonb@ 2004-01-12 11:53:31 +00:00
sekiya
a02b828c6e Change one more multiplication to a bit shift. Pointed out by pooka@. 2004-01-12 11:30:24 +00:00
scw
dcb1b313f5 Use __insn_barrier() to prevent the compiler reordering splx/splraise
relative to the code they're supposed to protect.
2004-01-12 10:25:06 +00:00
sekiya
74e150c7b1 CRIME revision 1.1 has a bug that affects PIO operations to/from the MACE.
The recommended workaround is a 5-10ms delay before and after accesses.
Therefore, move the affected bus_space_* operations from bus.h to bus.c
and special-case MACE accesses.

CRIME accesses are not affected, so introduce SGIMIPS_BUS_SPACE_CRIME and
use it as the CRIME tag.

My ip32 seems a little bit happier with this change, and my ip22 didn't
notice the change.
2004-01-12 03:30:51 +00:00
sekiya
bb9d36c069 ANSIfy, and change a multiplication operation to a bit-shift. 2004-01-12 03:26:08 +00:00
jdolecek
93cbc84a2f use P_ZOMBIE() macro instead of checking p_state direct 2004-01-11 19:18:41 +00:00
martin
4641631823 Avoid ras_lookup call if compiling 32bit kernel (which does not have
__HAVE_RAS). Avoids a compile failure pointed out by Juergen Hannken-Illjes.
2004-01-11 15:56:28 +00:00
sekiya
c7e23cc3fe Checkpoint if_mec work (just in case I get hit by a bus). This driver is still
not operational.  The MII code mostly works, DMA data structures are defined
and allocated, but tx/rx logic is missing.
2004-01-11 14:01:46 +00:00
cube
063960f68a Make it aware of the new ata configuration syntax. 2004-01-11 12:55:19 +00:00
sekiya
69911c67f2 Reinstate symbolic device names -- I completely forgot about their use.
Reminder courtesy soren@
2004-01-11 01:48:46 +00:00
bjh21
75080c1305 The VIDC20 data sheet doesn't define the polarity of the sign bit for
8-bit VIDC audio.  Both Richard Earnshaw and I had guessed that a set
bit was positive (the same as normal mu-law), but the AudioWorks
manual, and Sound_SoundLog on RISC OS, seem to disagree.  Change
MULAW_TO_VIDC to match Sound_SoundLog, since the latter is probably
definitive.
2004-01-10 22:33:24 +00:00
is
87374696f2 remove forgotten debug printf from development. 2004-01-10 21:38:32 +00:00
sekiya
f3a4be9263 Bus-spacify ip2x core logic. Eliminate magic numbers.
co
2004-01-10 05:22:09 +00:00
sekiya
aa7367bc4b Add register definitions for INT2 interrupt controller. 2004-01-10 05:16:57 +00:00
sekiya
280b50a365 Add watchdog and bus error handling functions (these features live in
IMC space, thus should be handled here rather than in ip2x.c)
2004-01-10 05:00:50 +00:00
sekiya
60573f92d1 Clean up console device selection logic. 2004-01-10 03:18:23 +00:00
sekiya
937db2de33 de-__P, sprinkle some KNF. 2004-01-10 02:55:54 +00:00
sekiya
c370623a7a Add framework for gio card identification based on product ID. devlist2h.awk
was borrowed from sys/dev/pcmcia.
2004-01-10 02:26:44 +00:00
perry
3682e63056 nuke trailing spaces. 2004-01-09 18:31:25 +00:00
fredb
d5fb378200 Back out CVS fallout from last commit. Really make this build again. 2004-01-09 17:00:02 +00:00
chs
e6d7ceae15 make sure we free the context for the pmap in pmap_destroy().
this usually isn't necessary since we freed it earlier in pmap_remove_all(),
but since uvmspace_free() is now called in the context of the exiting
process, a new context might be allocated if uvm_unmap_detach() decides
to sleep (since cpu_switch() will allocate a new context when it switches
back to the exiting process).
2004-01-09 08:49:42 +00:00
nonaka
bf6adc04cc implement bus_space_set_region_[124], bus_space_copy_region_[124]. 2004-01-08 15:29:20 +00:00
martin
10e9430c36 Minor cleanup 2004-01-08 13:34:04 +00:00
minoura
8f5ee5571c Include compat/hpux/files.hpux.
Untested.
2004-01-08 12:32:03 +00:00
martin
b86d7b2c57 A __insn_barrier() is now available for all archs, remove the MD version
here. Suggested by Jason Thorpe.
2004-01-07 20:02:28 +00:00
cdi
ceb721fd0b Pass some info from the boot loader to the kernel:
- Kernel image name
 - Symbol table
 - A flag indicating console presence (could be clobbered if not passed)

Add _rtt() entry to the boot loader code.
2004-01-07 12:43:43 +00:00
martin
1cfee605ee Implement restartable atomic sequences (RAS) for sparc64. 2004-01-06 21:35:18 +00:00
petrov
d63b2431fa Some cleanup and move ddb_regs declaration to db_interface.c 2004-01-06 20:41:23 +00:00
tsutsui
74ba66664f MD cpu_lwp_free() should have the second arg. 2004-01-06 19:30:38 +00:00
he
38d0807d97 Make these compile again after the latest adjustments. 2004-01-06 18:46:07 +00:00
briggs
ad7a849c27 Change CPPFLAGS to -D${MACHINE}=${MACHINE} instead of just -D${MACHINE}
This makes it possible to define header files on the command line that
might include ${MACHINE} somewhere in the path.  This might be used in
evbppc, for example, when defining PPC_PCI_MACHDEP_IMPL as, for example:

PPC_PCI_MACHDEP_IMPL="<arch/evbppc/sandpoint/pci_machdep.h>"

which will be included as

#include PPC_PCI_MACHDEP_IMPL

Prior to this change, the compile would fail trying to include
<arch/evbppc/1/pci_machdep.h>
2004-01-06 18:44:57 +00:00
matt
ecdec9d579 Add proper boot/autoconf support for SDN devices. Take from Hugh Graham;
see http://mail-index.netbsd.org/port-vax/2002/06/28/0005.html
2004-01-06 17:01:48 +00:00
chuck
e5aceb8c63 the IBM thinkpad T40p's built-in wireless ath0 interface attaches
to pci, so add an entry for it so that the GENERIC_LAPTOP kernel
can use it.
2004-01-06 16:24:14 +00:00
martin
4a0ea0eafd Cosmetics 2004-01-06 14:13:33 +00:00
petrov
e459d2a294 Spinup secondary cpus. Based on codes sent to me by Dennis Chernoivanov
and Chuck Silvers.
2004-01-06 09:38:19 +00:00
nathanw
97a491c111 Add a missing { to cpu_exit() so that it compiles.
(Alpha still doesn't boot with the new-reaper changes, though. First
process to exit kills the system).
2004-01-05 23:51:19 +00:00
hannken
39ce18659d Mapping of console device goes into the reserved tlb's.
Max. memory is 32M for console at fb and 48M for console on com.

If this becomes a problem TLB_NRESERVED needs to become variable.
2004-01-05 19:55:27 +00:00
hannken
036559b798 Implement fb_mmap(). From David P. Reese Jr. with PR #23985. 2004-01-05 16:05:14 +00:00
nonaka
d382cc6c5a Use memset() for "Clear all of BSS".
If (edata-address & 3) != (end-address & 3), my own code cause infinity loop.
Fixed it.
2004-01-05 15:31:03 +00:00
nonaka
62610dfbb2 reduce program size. 2004-01-05 15:17:54 +00:00
nonaka
227a19589a Use 32bit daddr_t. 2004-01-05 15:15:26 +00:00
jdolecek
d0210c07a4 update to recent changes - exit2() doesn't exist anymore and the
exit path always calls lwp_exit2()
pointed out Martin Husemann, change reviewed by Chuck Silvers

also update comment with switch_exit() prototype while here
2004-01-05 08:59:55 +00:00
chs
7e6508e29e add a PMAP_NC flag for pmap_kenter_pa() to specific a non-cached mapping.
use this in mbus_dmamem_map() to fix corruption of DMA memory.
note that this TLB bit is ignored on some CPUs (PA7100 and probably
others of that era), so this doesn't fix the problem in general,
but it does work on newer models and will make things easier later.
2004-01-05 02:25:32 +00:00
jdolecek
a00e4cf6db update to recent changes - exit2() doesn't exist anymore and the
exit path always calls lwp_exit2()
pointed out Martin Husemann
XXX this code seems to not be lwpified
2004-01-04 20:19:15 +00:00
jdolecek
3547ab4b48 update to recent changes - exit2() doesn't exist anymore and the
exit path always calls lwp_exit2()
pointed out Martin Husemann
2004-01-04 19:37:01 +00:00
jandberg
e478eb702e Keymap updates.
- us/de keymaps based on ite keymaps, converted by Gunther Nikl
  (with slight adjustments by me)
- es/fr/sv keymaps similarly based on ite keymaps
- removed the commented out keymaps
- some small fixes to the rest of the existing keymaps
2004-01-04 19:20:43 +00:00
wiz
a5bf3b3c4c Spell controller with two ls. Inspired by miod@openbsd. 2004-01-04 16:19:43 +00:00
chris
fc4ee7d742 Tidy up a few things:
Get rid of the static bus tag, instead move it into the softc.
Update to ThorpeJ's recent variable renaming for ATA things.
De-__P and KNF prototypes, also make attach and probe static.
Add RCSID.
Add a copyright for myself.
2004-01-04 13:49:49 +00:00
jdolecek
c3bb9cd5a4 Process and lwp exit path always executes lwp_exit2() now and cpu_exit()
is empty besides calling switch_exit(). So, rename switch_exit() to
cpu_exit() and modify the routine to call lwp_exit2() direct.
This saves couple cycles on the exit path.
2004-01-04 11:44:52 +00:00
jdolecek
089abdad44 Rearrange process exit path to avoid need to free resources from different
process context ('reaper').

From within the exiting process context:
* deactivate pmap and free vmspace while we can still block
* introduce MD cpu_lwp_free() - this cleans all MD-specific context (such
  as FPU state), and is the last potentially blocking operation;
  all of cpu_wait(), and most of cpu_exit(), is now folded into cpu_lwp_free()
* process is now immediatelly marked as zombie and made available for pickup
  by parent; the remaining last lwp continues the exit as fully detached
* MI (rather than MD) code bumps uvmexp.swtch, cpu_exit() is now same
  for both 'process' and 'lwp' exit

uvm_lwp_exit() is modified to never block; the u-area memory is now
always just linked to the list of available u-areas. Introduce (blocking)
uvm_uarea_drain(), which is called to release the excessive u-area memory;
this is called by parent within wait4(), or by pagedaemon on memory shortage.
uvm_uarea_free() is now private function within uvm_glue.c.

MD process/lwp exit code now always calls lwp_exit2() immediatelly after
switching away from the exiting lwp.

g/c now unneeded routines and variables, including the reaper kernel thread
2004-01-04 11:33:29 +00:00
dbj
e3b3654ebb attempt to make these compile again after recent wdc changes. 2004-01-04 07:08:13 +00:00
thorpej
a963286f8d More wdc_channel structure member namespace cleanup:
- channel -> ch_channel
- wdc -> ch_wdc
2004-01-03 22:56:52 +00:00
chris
300943f949 Tidy up the code, add a copyright block for myself. Sprinkle a few
comments, de-_P things.
2004-01-03 16:37:41 +00:00
chris
190f92bccf Currently the eb7500atx doesn't have a cmos_read function, however it also
won't use the RPC600_IOMD_ID code path, so disable that code path for the
eb7500atx.
2004-01-03 14:53:16 +00:00
chris
637bdaa1f9 Add a kernel for eb7500atx board. 2004-01-03 14:50:03 +00:00
chris
48afc0a2fc Add conf framework support for riscstation. Add a rsbus as this allows
acccesses with addresses shifted by the amount specified in the cookie.

Also make the inclusion of the wscons file the resposibility of whoever
includes files.iomd.  (found while attempting to checking riscstation
support into evbarm)
2004-01-03 14:46:17 +00:00
chris
d69e128c9d On a riscstation leave the iobase as requested, don't add IO_CONF_BASE to
it.
2004-01-03 14:42:12 +00:00
chris
31513e4110 First part of support for the eb7500atx board from simtec:
http://www.simtec.co.uk/products/EB7500ATX/

also available with RISC-OS as a RiscStation:
http://www.riscstation.co.uk/html/products.html

This is basic bootstrap with support for ide and networking, currently only
tested with booting from ABLE, and not RISC-OS.

I would have placed it into evbarm, but iomd doesn't appear to use the same
interrupt files as evbarm.  I'll check it into here for now, until iomd
uses the common interrupt code.
2004-01-03 14:31:28 +00:00
chris
078c5853f3 When adding a new interrupt handler to the iomd, turn off interrupts so
we don't run the risk of an interrupt happening while things are being
updated.
2004-01-03 13:11:47 +00:00
sekiya
b8166ca397 bootinfo is problematic on ip2x under certain circumstances. Disable for now. 2004-01-03 10:29:37 +00:00
sekiya
5b343c479b Streamline bootinfo logic. 2004-01-03 10:28:18 +00:00
lonewolf
d6fda0fcbb Rework the memory detection routine to handle cases where kernel doesn't
fit inside one memory chunk.
Leave 1 page before kernel untouched as that's where our initial kernel
stack before we switch to proc0 stack is (fixes boot problems on my Indy
with small kernels).
2004-01-03 04:26:34 +00:00
thorpej
5bd80d8373 Rename "struct channel_softc" to "struct wdc_channel". 2004-01-03 01:50:52 +00:00
aymeric
f45c23b807 fix an obvious typo which prevented the machdep.cacheinfo table from being
published.
This generated the following warning message at boot time:
sysctl_createv: sysctl_create(cacheinfo) returned 17
2004-01-03 00:09:15 +00:00
martin
bbd16f6828 Don't set ksi_errno - other archs don't bother, so avoid being different.
OK'd by Christos. This makes sparc64 pass the siginfo regression tests.
2004-01-02 20:49:18 +00:00
cl
e7045955c7 kernel part of no-syscall upcall stack return: libpthread registers
an offset between ss_sp and struct sa_stackinfo_t (located in struct
__pthread_st) when calling sa_register.  The kernel increments the
sast_gen counter in struct sastack when an upcall stack is used.
libpthread increments the sasi_stackgen counter in struct
sa_stackinfo_t when an upcall stack is freed.  The kernel compares the
two counters to decide if a stack is free or in use.

- add struct sa_stackinfo_t with sasi_stackgen to count stack use in
  userland
- add sast_gen to struct sastack to count stack use in kernel
- add SA_FLAG_STACKINFO to enable the stackinfo_offset argument in the
  sa_register syscall
- add sa_stackinfo_offset to struct sadata for offset between ss_sp
  and struct sa_stackinfo_t
- add ssize_t stackinfo_offset argument to sa_register, initialize
  struct sadata's sa_stackinfo_offset from it if SA_FLAG_STACKINFO is
  set
- add sa_getstack, sa_getstack0, sa_stackused and sa_setstackfree
  functions to find/use/free upcall stacks and use these where
  appropriate
- don't record stack for upcall in sa_upcall0
- pass sau to sa_switchcall instead of l2 (l2 = curlwp in sa_switchcall)
- add sa_vp_blocker to struct sadata to pass recently blocked lwp to
  sa_switchcall
- delay finding a stack for blocked upcalls to sa_switchcall
- add sa_stacknext to struct sadata pointing to next most likely free
  upcall stack; also g/c sa_stackslist in struct sadata and sast_list
  in struct sastack
- add L_SA_WOKEN flag: LWP is on sa_woken queue
- add L_SA_RECYCLE flag: LWP should be recycled in sa_setwoken
- replace l_upcallstack with L_SA_WOKEN/L_SA_RECYCLE/L_SA_BLOCKING
  flags
- g/c now unused sast_blocker in struct sastack
- make sa_switchcall, sa_upcall0 and sa_upcall_getstate static in
  kern_sa.c
- call sa_upcall_userret only once in userret
- split sa_makeupcalls out of sa_upcall_userret and use to process
  the sa_upcalls queue
- on process exit: mark LWPs sleeping in saunblock interruptible; also
  there are no LWPs sleeping on l->l_upcallstack anymore; also clear
  sa_wokenq_head to prevent unblocked upcalls

additional changes:
- cleanup timerupcall sa_vp == curlwp check
- add check in sa_yield if we didn't block on our way here and we
  wouldn't any longer be the LWP on the VP
- invalidate sa_vp_ofaultaddr after resolving pagefault
2004-01-02 18:52:17 +00:00
uwe
9f2e9e23a0 Update the root window after showing the 'Last chance...' dialog. 2004-01-02 12:13:36 +00:00
sekiya
a1f8b0618b Wire down zsc/zstty mapping and add commented-out entries for
IP20 keyboard/mouse.
2004-01-02 01:39:25 +00:00
sekiya
aa9d797070 IP20 has two z8530 chips -- one at 0xd00 for keyboard/mouse, one at 0xd10
for serial ports.  Attach the former as zs1 to keep serial console goo as
simple as possible.
2004-01-02 01:04:46 +00:00
sekiya
f2bccdeea4 Add trailing newline. Noticed by Steve Rumble. 2004-01-02 00:41:23 +00:00
bjh21
2becc547c7 The lmcaudio driver was only ever used on the RC7500, which we don't support
these days.  Let the CVS history be its only memorial.
2004-01-01 19:12:13 +00:00
thorpej
77eb53d196 Update for opencrypto changes. 2004-01-01 18:46:14 +00:00
bjh21
cc4e11e8e4 No need to #include "vidcaudio.h" here, so don't do it. 2004-01-01 18:07:58 +00:00
chris
8261a721cc Correct the usage of the 4th arg to mainbus_bs_map. It's a flags arg, so
test for the CACHEABLE bit, rather than assuming a non-zero means cacheable
2004-01-01 18:07:27 +00:00
bjh21
7ef29ca465 Rather than calling pmap_extract() from an IPL_AUDIO interrupt handler (which
is naughty even if it does work), find out the complete list of physical pages
we'll have to DMA from in vidcaudio_trigger_output() and save it for use by
the interrupt handler.
2004-01-01 17:52:19 +00:00
thorpej
527c829fa0 Rename:
- wdc_xfer to ata_xfer
- channel_queue to ata_queue
and move them to <dev/ata/atavar.h> so they can be used by non-wdc ATA
controllers.  Clean up the member names of these structures while at it.
2004-01-01 17:18:53 +00:00
bjh21
48a569efe8 Restore a call to vidcaudio_ctrl() that I accidentally deleted. 2004-01-01 16:42:36 +00:00
bjh21
bd6ca18b7e Tidy up debugging printfs to use a single #ifdef and a DPRINTF() macro,
rather than #ifdefs scattered all over the code.
2004-01-01 16:35:35 +00:00
bjh21
ef9b97ce8a Add possibly-useful support for 16-bit sound on VIDC20 systems, using
RISC OS's "*Configure SoundSystem" setting to decide whether to use 16-bit
mode.  Loosely based on parts of Richard Earnshaw's "sound16" patch.
2004-01-01 16:23:15 +00:00
chris
0415feb0e4 Correct entries for IRQ_NEVENT1 and IRQ_NEVENT2. They were both out by one.
This now means a disk is detected on my RiscStation board.
2004-01-01 15:51:48 +00:00
pk
c6ac21f702 Enable reset of a process's alternative signal stack flag. 2004-01-01 15:02:31 +00:00
sekiya
f8c37f800f Don't panic when attempting to share interrupts on ip2x -- just print an
informative message and gracefully return.
2004-01-01 13:32:30 +00:00
sekiya
93f0e8c8a0 It's important to use good quality cables when working with SGI serial ports.
Enable zs console for IP20.
2004-01-01 13:29:08 +00:00
bjh21
45feca04f6 When returning our actual sample rate to audio(4) in 16-bit mode, use the right
base clock rate.
2003-12-31 21:24:47 +00:00
bjh21
8ed8ec9577 Add a little comment explaining how to convert between RISC OS and hardware
CMOS addresses, since the old one's been lost.
2003-12-31 18:49:00 +00:00
jonathan
01c51dab61 Split opencrypto configuration into an attribute, usable by inkernel
clients, and a pseudo-device for userspace access.

The attribute is named `opencrypto'. The pseudo-device is renamed to
"crypto", which has a dependency on "opencrypto". The sys/conf/majors
entry and pseudo-device attach entrypoint are updated to match the
new pseudo-device name.

Fast IPsec (sys/netipsec/files.ipsec) now lists a dependency on the
"opencrypto" attribute.  Drivers for crypto accelerators (ubsec,
hifn775x) also pull in opencrypto, as providers of opencrypto transforms.
2003-12-31 16:44:26 +00:00
bjh21
d21d97a649 Make local functions static. 2003-12-31 15:40:31 +00:00
bjh21
81395409be vidcaudio(4) now needs mulaw and aurateconv. 2003-12-31 15:15:29 +00:00
bjh21
176435992e Substantial rewrite of vidcaudio(4). I don't know if the old version
had ever worked, but if it had, it had bit-rotted so far that it
almost all needed replacing.  The new version support both 8-bit sound
on the VIDC20 and 16-bit sound on the ARM7500 and ARM7500FE.
sysbeep() support has been lost, but I'm not sure whether that belongs
here or in audio(4) anyway.  Support for 16-bit sound on the VIDC20
isn't present because I don't have the hardware to test it.  Donations
welcome!
2003-12-31 15:06:24 +00:00
bjh21
2432228b70 Add definitions of the bits in the Sound Control Register (SCR). 2003-12-31 14:41:15 +00:00
bjh21
0630d87772 Add some useful flag definitions for DMA registers. 2003-12-31 14:40:32 +00:00
thorpej
0beb075071 Simplify allocation of the channel queue. 2003-12-31 02:50:34 +00:00
thorpej
4391735587 Simplify allocation of the channel queue. 2003-12-31 02:47:44 +00:00
thorpej
2dafabdb20 Simplfy allocation of the channel queue. 2003-12-31 02:45:04 +00:00
thorpej
b5b951b13e Simplify allocation of the channel queue. 2003-12-31 02:41:22 +00:00
simonb
9c7cfca904 ANSIfy, KNF. 2003-12-31 02:40:26 +00:00
sekiya
d721fc82ce Force ARCS console for IP20 until the console-on-zs crashing problem is
fixed.  Store the board revision for future use, while we're at it.
2003-12-30 23:56:19 +00:00
sekiya
1cf4c96f39 Don't flush caches here. Fixes crash on IP20 (which apparently occurs only
with beta Blackjack boards that incorporate ARCS V1).
2003-12-30 23:50:25 +00:00
sekiya
a072684caa Adapt if_sq to HPC abstraction layer. It took both Steve Rumble and myself
to untangle the unhappiness that arises from the design differences between
HPC1 and HPC3.
2003-12-30 23:48:07 +00:00
sekiya
52063657cc Force little-endian mode on hpc1, and attach zs on IP20. 2003-12-30 23:45:25 +00:00
augustss
044205cf85 Alphabetize IDE controllers 2003-12-30 18:09:50 +00:00
pk
90c49c51c7 When powering down, first ask the PROM to do it for us. 2003-12-30 14:29:30 +00:00
pk
70f20a1217 Replace the traditional buffer memory management -- based on fixed per buffer
virtual memory reservation and a private pool of memory pages -- by a scheme
based on memory pools.

This allows better utilization of memory because buffers can now be allocated
with a granularity finer than the system's native page size (useful for
filesystems with e.g. 1k or 2k fragment sizes).  It also avoids fragmentation
of virtual to physical memory mappings (due to the former fixed virtual
address reservation) resulting in better utilization of MMU resources on some
platforms.  Finally, the scheme is more flexible by allowing run-time decisions
on the amount of memory to be used for buffers.

On the other hand, the effectiveness of the LRU queue for buffer recycling
may be somewhat reduced compared to the traditional method since, due to the
nature of the pool based memory allocation, the actual least recently used
buffer may release its memory to a pool different from the one needed by a
newly allocated buffer. However, this effect will kick in only if the
system is under memory pressure.
2003-12-30 12:33:13 +00:00
manu
fe7a5ddf22 Fix PowerPC ports build with KGDB. 2003-12-30 11:23:20 +00:00
yamt
8a7df6a14b (MULTIPROCESSOR version of) need_resched:
- nothing needs to be done if ci_want_resched is already set.
- if the cpu isn't running any lwp, send a no-op ipi to it
  so that it can resume immediately from halting in idle loop
  without having to wait until the next clock tick.
some advices from Stephan Uphoff.
2003-12-30 03:57:19 +00:00
yamt
26db734594 fixes and optimizations from Stephan Uphoff.
- pmap_enter: zap PTE and read attributes atomically to
  eliminate a race window which could cause lost of attributes.
- reduce number of TLB shootdown by using some assumptions
  about PTE handling.

for more details, see "SMP improvements for pmap" thread on port-i386@
around May 2003.
2003-12-30 03:55:01 +00:00
shin
755c62af21 initialize sc_epoch and RTC properly when reboot/resume.
Addresses PR/20091.
2003-12-30 03:54:35 +00:00
yamt
4cd02fe3d9 g/c unused x86_ipisend. 2003-12-30 03:52:01 +00:00
bjh21
8907f89465 speaker_ctl() is optional, and vidcaudio_speaker_ctl() did nothing, so kill it. 2003-12-29 16:49:31 +00:00
bjh21
0a64302931 Control debugging with VIDCAUDIO_DEBUG rather that DEBUG, to avoid confusion
with the global kernel macro called DEBUG.
2003-12-29 16:45:58 +00:00
bjh21
1b64799344 Minor KNF. 2003-12-29 16:41:22 +00:00
bjh21
32cf38df51 Fix a DEBUG printf. 2003-12-29 16:36:48 +00:00
bjh21
87bcc196e1 Use NULL rather than 0 to initialise unused function pointers. 2003-12-29 16:25:30 +00:00
pk
20ad8911d9 hpfinish: pass correct buffer to diskerr(); 2003-12-29 16:23:58 +00:00
bjh21
8dcadd2b7c KNF. 2003-12-29 16:20:46 +00:00
bjh21
b64c13c96f ANSIfy, un-__P(). 2003-12-29 16:11:38 +00:00
igy
758273ce95 throw error status when erase command timed out 2003-12-29 12:59:54 +00:00
igy
34a32ca09b using compile option "-G 0" (default) 2003-12-29 12:51:48 +00:00
igy
bd3a594116 make sure variables initialized 2003-12-29 12:31:48 +00:00
igy
1a4bd745a6 remove unused functions to make compile 2003-12-29 12:28:14 +00:00
sekiya
bc5774497e Fixes to HPC abstraction layer from Steve Rumble:
- hpc1_hdd_{ctl,bufptr} and hpc3_hdd_{ctl,bufptr} are
          established in hpcreg.h. All references to these fields
          are updated with the exception of if_sq: (haltwo,
          hpcdma). This makes reading the code and spotting bugs
          easier.
        - hpcdma.c was applying EOCHAIN to the wrong descriptor
          word for the hpc1 case.
        - I added scsi_max_xfer to the abstraction layer, and it
          allows some crusty #defines in wdsc.c to be removed.
          hpc1 now doesn't waste descriptors as it once did.
        - hpcreg.h was updated to reflect the lack of XMITDONE
          bit in hpc1. HPC1_REV15 added for a test in hpc.c
        - hpc.c now verifies HPC1 revisions (1.0 vs 1.5) and
          prints the output a little prettier ;)
        - power interrupts shouldn't establish on non-IP22
          platforms.
2003-12-29 06:33:57 +00:00
sekiya
8a08952e14 Fix typo ("ARCBIOS_MEM_ExecptionBlock"). From Steve Rumble. 2003-12-29 06:26:41 +00:00
christos
a438c6286d make the printf statement a complete line. 2003-12-28 01:20:23 +00:00
mjl
df0cb86d0d Add some casts to printf() args to make it compile w/ DEBUG set. 2003-12-27 13:35:52 +00:00
mjl
054d8c4946 Initialize some auto vars to appaise gcc3. 2003-12-27 13:34:36 +00:00
shin
cb18d8058e fix indentation. 2003-12-27 07:36:06 +00:00
shin
17435165fa Add MobilePro 880 (MC/R730A), MC/R730 support for USB/"pci".
Addresses PR/23654.
2003-12-27 07:34:21 +00:00
shin
26ccb9c6d2 Add MC/R700A, MC/R730, and MC/R730A vrc4172pwm flags.
Addresses PR/23653.
2003-12-27 07:29:56 +00:00
shin
1316c9944d Add MobilePro 880 (MC/R730A) to stylus calibration table.
Addresses PR/23652.
2003-12-27 07:28:21 +00:00
takemura
a09206fd99 Initialized variables and added error handling in mq200_pllparam(). 2003-12-27 05:47:54 +00:00
grant
9427a0c717 add support for the Keywest I2C and snapper audio device, as found on
some iBook and PowerBook models.

this driver was written by Tsubai Masanari and further hacked on by
Jared D. McNeill to work on his iBook.

the driver is limited (master volume control only, and I haven't
tested recording) but has been functioning perfectly on my PowerBook
g4 DVI (ivory) for some time.

ok'd by matt.
2003-12-27 02:19:34 +00:00
aymeric
341f54debe revert previous. -fwritable-strings is not needed now that the ld script
does TRT.
2003-12-26 20:01:15 +00:00
aymeric
3c91265513 merge any section that starts in ".rodata." into the text section.
This matches sections generated by newer versions of gcc to handle the sharing
of constant strings.
2003-12-26 19:59:31 +00:00
aymeric
652090f272 ANSIfy and clean up prototypes.
This has been lying around in my tree for too long now.
2003-12-26 13:43:29 +00:00
aymeric
86b6db2f13 add -fwritable-strings to DBG, so that gcc doesn't generate a ".rodata" section.
I believe this fixes PR port-macppc/23206 and the "ofwboot.xcf issues" reported
on the lists since november.
2003-12-26 13:25:00 +00:00
yamt
1d4f93e85b postpone freeing PTPs until TLBs are flushed
to avoid loading invalid TLB entries.  from Stephan Uphoff.

for more details,
see "i386 pmap bug" thread on port-i386@ around Feb, 2003.
2003-12-26 11:50:51 +00:00
shin
c126403055 suppress false alarm from gcc -Wuninitialized. 2003-12-26 11:13:40 +00:00
shin
0ffac1acf7 initialize variable 'err' properly.
found by gcc -Wuninitialized.
2003-12-26 11:10:08 +00:00
mrg
490518af32 convert __ldstub() from a ({}) macro into a properly static inline function.
the latter is not valid for C++ so says GCC3.
2003-12-26 06:00:58 +00:00
jmc
0fe36533f0 Wrap some areas with #ifndef _LOCORE so assembly files can pick up some defs
from here. Needed for bioscall fixes in PR#14946
2003-12-25 21:03:55 +00:00
jmc
f84b0cd795 Partial fix for PR#14946. Make sure x86 symlinks exist also 2003-12-25 21:02:58 +00:00
uwe
2e00e2438d If "pause before boot" is not set (i.e. user will not be given last
chance to cancel the boot), give user a hint by using MB_ICONWARNING
for the "Are you sure?" dialog.
2003-12-25 03:44:11 +00:00
uwe
376514e2fe Lowercase labels of the "Boot" and "Cancel" buttons.
Init progress bar step/position in ProgressBar::create.

Specify WS_EX_CLIENTEDGE style for the progress bar, an empty gray
area between the buttons looks stupid.  With 3d edge a user has a hint
there's a progress bar there.  While here, make it PBS_SMOOTH, it
looks nicer that way.
2003-12-25 03:19:53 +00:00
briggs
5786d9fb02 Configuration file for the TeamASA NPWR-FC.
XXX - Note that, because the serial interrupt uses the i80321's HPI, this
      configuration will not work as-is without some changes in i80321_icu.c.
2003-12-24 19:41:09 +00:00
uwe
a766825ba3 Trim trailing whitespace. 2003-12-23 17:22:20 +00:00
uwe
37536630d1 Make the progress bar use the whole width between the Boot and Cancel
buttons.  Since there are 11 calls to menu.progress() in hpcboot, set
the progress bar range to 0..11, not 0..12.

In RootWindow::WMCreate - when we mean to adjust the top of the client
are by the button height, use _button_height, instead of cmdbar_height
(they now happen to be equal).
2003-12-23 17:18:25 +00:00
uwe
0c9676c97b Set meaningful error_message is attachLoader fails.
Tweak the way we set "default" error_message.
2003-12-23 16:50:22 +00:00
uwe
55cc78e064 Trim trailing whitespace. 2003-12-23 16:26:48 +00:00
uwe
780ccfc58e Move IDC_OPT_AUTO_INPUT after IDC_OPT_AUTO to get the expected tab-order. 2003-12-23 16:25:35 +00:00
uwe
849e108215 Reverse the order of IDC_CONS_CHK* checkboxes so that they have
"expected" left-to-right Tab-order.
2003-12-23 15:37:11 +00:00
uwe
15cd36d7f0 Widen the "root file system" group to line up with the controls above it. 2003-12-23 15:29:36 +00:00
uwe
789be11611 In MainTabWindow::layout don't touch the Z-order of IDC_MAIN_OPTION_*
controls as this has a nasty side effect of messing the Tab-order as
well.
2003-12-23 15:24:26 +00:00
uwe
734ce0e5ab Trim trailing whitespace. 2003-12-23 15:10:01 +00:00
uwe
f35f57125f Do not replace the boot log text completely on every print - that
causes horrible flicker.  Instead append it and scroll to the caret.
2003-12-23 15:08:33 +00:00
kochi
71ef8c54d3 add ACPICA_PEDANTIC option. 2003-12-23 10:11:42 +00:00
ad
520489e15a MAXINE keyboard and mouse now works, albeit with some minor issues. 2003-12-23 09:39:46 +00:00
hamajima
14ee57b05b only aceride nedds in L-Router 2003-12-23 08:40:55 +00:00
uwe
c87372b749 Load ".symtab" section before ".strtab". The code to pack the symbol
table (kern_ksyms.c:addsymtab) relies on that order.
2003-12-23 04:59:44 +00:00
uwe
36fce64101 Call UpdateWindow after user responded to the safety message dialog,
so that the window can repaint areas damaged by the dialog before the
message pump is stopped while the boot is in progress.
2003-12-23 04:41:13 +00:00
uwe
816df014fc Oops, add braces forgotten in 1.8. 2003-12-23 03:18:13 +00:00
dyoung
66e744eb8b Fix typo: atw(4) was listed as an Aironet card instead of ADMtek. 2003-12-22 10:10:41 +00:00
dsl
4bf8ba6f30 Fix problems booting disks with extended partition from grub (and other
non-netbsd mbr code) - thanks to Joe Thiemann for finding this...
2003-12-21 20:56:40 +00:00
nisimura
eef6d5b9ab Vr4100 and Vr4300 are not capable of having external caches. 2003-12-21 07:59:25 +00:00
uwe
e769028e50 Fix indentation in previous. 2003-12-21 03:22:20 +00:00
uwe
f94c4399a5 Move progress bar management to rootwindow.cpp so that hpcmenu.cpp
doesn't need to know about the GUI hierarchy, etc.

If boot is aborted, rewind the progress bar.
2003-12-21 03:18:31 +00:00
jdolecek
1895548280 comment out COMPAT_NETBSD32 - it doesn't compile, some required
datatypes are not defined
2003-12-20 22:12:21 +00:00
is
cbe2f83110 man/prod id submitted by Pavel Chwalowski in PR 23789. 2003-12-19 22:33:30 +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
tsutsui
10a356924e - add options COMPAT_16
- Netbsd -> NetBSD
- use options<space><tab>
2003-12-19 11:39:30 +00:00
tsutsui
77cc90f021 - Netbsd -> NetBSD
- use options<space><tab>
2003-12-19 11:38:18 +00:00
gavan
f2c2467d5c Correct masks for PCIXSR decomposition 2003-12-19 10:08:11 +00:00
thorpej
54da81c66c A kernel configuration file suitable for Connectix Virtual PC 6. 2003-12-18 17:08:35 +00:00
pk
5218af0651 Use uvm_km_zalloc(...) instead of uvm_km_alloc1(...,1). 2003-12-18 14:15:55 +00:00
uwe
53680504af Add MB_ICONQUESTION style to the message box. 2003-12-18 12:34:10 +00:00
uwe
d3dfc4c864 Add MB_ICONWARNING style to the message box. Use explicit MB_OK. 2003-12-18 12:25:03 +00:00
uwe
e696bfb83c Tweak error message. 2003-12-18 12:21:36 +00:00
uwe
545bd4c3b1 Add MB_ICON* styles to message boxes. Use explicit MB_OK.
Capitalize messages.   Minor tweaks.
2003-12-18 12:18:53 +00:00
uwe
f578e43dec Capitalize error messages. Consistently use "can't". Minor tweaks. 2003-12-18 12:15:40 +00:00
uwe
8b377aad68 Add MB_ICONEXCLAMATION style to the "Last chance..." dialog. Change
the text to "Push YES...", because that's a Yes/No dialog, not Ok/Cancel.
If the user cancels the boot, set error_message appropriately.

Add MB_ICONERROR style to the "BOOT FAILED" dialog.  Explicitly make
it MB_OK, don't rely on the numerology.
2003-12-18 00:00:19 +00:00
abs
7b5d232918 Small fixed to tense in comment. 2003-12-17 22:03:24 +00:00
bsh
7ff9ddf063 mask all interrupts during bootstrap *correctly*.
call s3c2xx0_intr_bootstrap() to initialize variables used by splfoo().
2003-12-17 13:21:33 +00:00
bsh
7020653430 add a function to initialize variables used by splfoo().
This should be called in bootstrap so that splfoo() doesn't touch illegal address.
2003-12-17 13:20:04 +00:00
tls
c58ee50077 Add "sk" driver for SysKonnect/Marvell GigE cards. 2003-12-17 09:18:45 +00:00
martin
6c7d761c0e Fix commented out pcmcia entries: adjust comments, add FULL_SPARC_BUS_SPACE,
adapt wd* at pcmcia to new atabus attachment, and add wi* at pcmcia.
Noticed by Michael Wolfson.
2003-12-17 08:08:02 +00:00
uwe
ad370cb0ff Provide dummy machine/mcontext.h. 2003-12-17 06:17:03 +00:00
simonb
4805123b12 Nuke register prefix for local variables, clean up indentation a little. 2003-12-17 04:04:40 +00:00
uwe
6854a82ca1 Add btodb() define. 2003-12-16 18:59:10 +00:00
uwe
2b3e06be32 Add directory "res" to INCDIR_LIST and drop the "res/" prefix from
#include's in hpcmenu.rc.  This makes it possible to open hpcmenu.rc
in the eVC resource editor.
2003-12-16 18:23:36 +00:00
uwe
5f83499620 Protect __KERNEL_RCSID with #if !defined(_WIN32) for the sake of
hpcboot.exe, that uses this file too.  Compiling for WinCE defeats the
logic in cdefs_aout.h.
2003-12-16 17:16:43 +00:00
uwe
a8250ce937 Drop adler32.c from SRCFILE_LIST, it's no longer in sys/lib/libz. 2003-12-16 15:26:37 +00:00
he
a5915f4ecb Replace cmd_ioh with cmd_baseioh, to track changes to wdcvar.h, so
that this compiles again.  Untested for now.

Reviewed by leo.
2003-12-16 14:07:20 +00:00
manu
d2b4a2c0fa Enable SA_SIGINFO for COMPAT_DARWIN 2003-12-16 13:38:25 +00:00
manu
c3eb252046 GPR5 does not hold code, it holds the signal number (this is the first
argument to the signal handler). It's an extraordinary luck that test
programs worked so far.
2003-12-16 13:36:18 +00:00
keihan
35ef6c8653 netbsd.org -> NetBSD.org 2003-12-16 12:22:24 +00:00
sekiya
af4ac18e50 Introduce abstraction layer for HPC registers and values, which addresses the
divergence between HPC revision 1.5 and revision 3.

The wdsc driver has been updated to reflect this layer (and may now work on
IP20).  The sq driver needs a bit more work before it can be committed.
2003-12-16 11:59:04 +00:00
sekiya
c7a0d0b9f4 iocreg.h has moved. 2003-12-16 10:20:10 +00:00
sekiya
b91ae185fb A slighly more descriptive iocreg.h now lives in ../ioc. 2003-12-16 05:27:40 +00:00
gavan
5232db351e The PIRSR is at location 0xffffe1ec, not 0xffffe2ec.
Source: Intel(R) 80321 I/O Processor Developer's Manual, page 578
2003-12-16 00:04:09 +00:00
jmc
d9948df6dd Clean up tmp files on exit. Fixes PR#23723 2003-12-15 20:07:39 +00:00
martin
b7019538c6 Add config files for Mr.Coffee JavaStatin 1 machines.
Unfortunately we need two slightly different ones for now (OBP vs. OF)
2003-12-15 19:33:01 +00:00
martin
170c19e9bf Rename the JavaStation network boot loader: bootjs.elf -> bootjs.net. 2003-12-15 17:34: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
sekiya
a51a4e0a69 Part two in the Great Renaming. ip22.c becomes ip2x.c, and all generic ip2x
routines become ip2x_*.
2003-12-15 13:02:28 +00:00
sekiya
01a7cd0853 Change all IP22 preprocessor conditionals to IP2X preprocessor conditionals.
Part one of two -- part two will be renaming ip22_*() to ip2x_*().
2003-12-15 12:48:37 +00:00
sekiya
441e82538f IP20 belongs to the IP2x family, thus this should no longer exist. 2003-12-15 12:34:56 +00:00
sekiya
90e0aa001b Add ioc driver to IP2x config file, pull in ioc/files.ioc as well. Note that
IP2x now has blinkenlitzen.
2003-12-15 10:26:38 +00:00
sekiya
3568a47283 Move IOC-specific initialization code from sgimips/ip22.c to ioc/ioc.c. 2003-12-15 10:24:47 +00:00
sekiya
aa10d0203e Add dedicated IOC (I/O Controller) driver. pckbc, zstty, and lpt will each
receive *_ioc.c attachments; machines without IOC (i.e., IP20) will use *_hpc.c
stubs.
2003-12-15 10:23:52 +00:00
scw
5f0d6f1b24 Work-around an obscure bug (reported by a couple of people, and reproduced
exactly twice by me) which causes the code at the top of copyin which
word-aligns the destination pointer to copy more bytes than necessary,
resulting in an alignment fault later on.

The bug is difficult to reproduce, but as far as I can tell it seems
to be as a result of the condition codes being corrupted, possibly
following a page fault caused by the first ldrbt/strb instructions.
The subsequent ldr<cc>bt/str<cc>b instructions then _always_ execute.
I can't think of any obvious reason why this would happen, though.
2003-12-15 09:27:18 +00:00
scw
fbdf861fac The last cpsr_all change was misguided. Just use cpsr_c wherever possible. 2003-12-15 09:18:21 +00:00
simonb
210a9530eb Use UART_SIZE instead of a (redefined) COM_NPORTS. 2003-12-15 09:13:41 +00:00
jdolecek
e1a0411746 print complete contents of the second feature byte; this also fixes
printing of DMA32 bit
2003-12-15 08:38:01 +00:00
jmc
43bf89bfc6 Fixes from PR#23177. Various lint/logic fixes:
Fix some non-initialized variables
close the output files when done
Redo the printing for RCS strings so they don't expand in the awk script too
Do proper tests for variables existance before accessing

Verified output from all scripts is identical to original versions
2003-12-15 07:32:20 +00:00
lonewolf
bf0b94a750 Add pckbc/wscons/newport related attachments. 2003-12-15 05:29:20 +00:00
lonewolf
280382edf9 Add support for attaching newport/pckbc as console on IP22 (Indy).
XXX Does this work on Indigo2 too?
XXX Ugly hardcoded bus_space_tags and stuff.
XXX This whole file is one damn ugly mess.
2003-12-15 05:28:14 +00:00
lonewolf
613491354d Implement direct configuration for GIO devices.
XXX Still needs a way to handle Indigo2 spurious "productid 0x04 revision 0x00"
XXX phantom devices.
2003-12-15 05:26:56 +00:00
lonewolf
3e256e53b0 Support for SGI NG1 ("newport") graphics controller. 2003-12-15 05:24:51 +00:00
he
f9e95c8ced Stop the install from trying to strip the ECOFF executable.
The MIPS strip program seg-faults if that is attempted.
2003-12-14 22:57:54 +00:00
ragge
57fa6bb861 TOPDOWN_VM is now mandatory on vax. 2003-12-14 19:39:24 +00:00
martin
9eead0293e Make this look more like GENERIC. 2003-12-14 17:26:58 +00:00
fredb
d19528e4e0 Adapt to MI ATA/wdc changes. Especially, now that the address of
each individual ATA register is in the attachment structure, we
can dispense with the custom bus_space mapping hack which set the
stride, then unset it for particular bus_space functions. (There
is really no stride; the data register is read and written to
consecutive bytes. The control register mappings just happen to
be separated by four bytes.) While we're here, de-__P(), and lose
a confusing shift.

This has been tested on Quadra 630. Reviewed by bouyer.
2003-12-14 15:31:23 +00:00
tsutsui
cae6629a57 Include <bsd.own.mk> at the top so that machine-links are also created
on "make depend". Tested on my RaQ2, and fixes port-cobalt/23711.
While here, two more cosmetics:
- remove redundant definitions
- use NOMAN rather than setting MAN empty
2003-12-14 11:58:38 +00:00
tsutsui
bd3274f615 Change unit and part variables for wd from u_int8_t to u_int. 2003-12-14 11:53:52 +00:00
dyoung
10d1fa6e70 Add ath(4) for Atheros 802.11a/b/g cards. 2003-12-14 09:54:01 +00:00
sekiya
a15d89e48a Move IOC (integrated peripheral controller) init code into the IP22-specific
routine, as IP20 does not possess an IOC.  This will eventually be moved into
a dedicated IOC driver that attaches its peripherals as children, but the
changes involved are too intrusive right now.
2003-12-14 07:53:10 +00:00
sekiya
3e021de39c Uncomment dpclock, remove IP20 option. IP20 now boots as far as the
boot device selection prompt using the GENERIC kernel.
2003-12-14 07:31:02 +00:00
sekiya
fa349eb13c Allow hpc to attach on IP20. 2003-12-14 07:28:17 +00:00
sekiya
264219f697 Bus-space'ify the memory controller driver, and add IP20-specific bits. 2003-12-14 07:21:51 +00:00
sekiya
4aeb14dce4 IP20 should handle the watchdog timer in the same manner as for IP22. 2003-12-14 06:11:35 +00:00
sekiya
8302dd42e0 The serial controller on IP20 lives in a different place. Modify
zs_get_chan_addr() to reflect this.

XXX hardcoded addresses are quite distasteful.  This should be passed in
through consinit() -- to avoid conflicts with Ilpo's soon-to-be-committed
framebuffer driver, I'll hold off until his code hits the tree.
2003-12-14 05:59:50 +00:00
sekiya
6f71ce82f5 For the purposes of machdep.c, consider IP20 to be a variant of IP22. ip20.c
and #ifdef IP20 will go away (short-term), ip22_* will be renamed to ip2x_*
(slighly longer-term).
2003-12-14 05:49:14 +00:00
sekiya
f9ff3d87e9 The ARCBIOS->FlushAllCaches() vector is NULL on at least one SGI platform
(ip20) and has no actual operational effect, thus it should not be invoked here.
2003-12-14 05:33:22 +00:00
sekiya
f2b161aa21 Compile sgimips/ip[23]2.c iff the corresponding IP[23] is defined in the
config file.
2003-12-14 05:23:12 +00:00
thorpej
08227d36cb No need to include wdvar.h anymore. 2003-12-14 05:15:53 +00:00
uwe
3fcefe2a85 Use callout_schedule instead of callout_reset to re-establish keyboard
callouts.

While here, #if 0 the code in pfckbd_callout_hp to read (and ignore)
PFC registers G and H.
2003-12-14 04:03:16 +00:00
uwe
b9588a2c89 There's no such thing as "JavaStation-10". Krups official name is
"JavaStation-NC".  Pointed out by Pete Zaitcev (long ago).
2003-12-14 03:25:46 +00:00
uwe
85a134f3c1 Use CONFIG_HOOK_BRIGHTNESS* to support WSDISPLAYIO_PARAM_BRIGHTNESS.
Use CONFIG_HOOK_POWERCONTROL_LCDLIGHT to turn on/off the LCD in
response to WSDISPLAYIO_SVIDEO.

Implementation of these hooks for Jornada 680 is to follow shortly.
2003-12-14 02:52:15 +00:00
thorpej
9a136c5211 Remove piixide, since these boards will never, ever have one. 2003-12-14 01:33:15 +00:00
thorpej
2f2ca9e66b Split the Intel i31244 SATA controller ("Artisea") driver out of piixide
into its own driver (artsata).
2003-12-14 01:32:01 +00:00
thorpej
084803988a Remove the IDE controllers that only exist in southbridge chips (which
none of these boards have).

XXX piixide stays for now, because that's where the Intel i31244 SATA
controller is.  That will change, eventually.
2003-12-13 23:31:21 +00:00
thorpej
22267f63f3 Collapse the atabus declaration into "atabus* at ata? channel ?". 2003-12-13 23:28:11 +00:00
thorpej
a291e39668 The Netwinder can only have a Symphony IDE chip on it, so remove all the
others (leave the generic "pciide" there, but commented out).
2003-12-13 23:26:04 +00:00
thorpej
9e321b3a18 Collapse the atabus declaration into "atabus* at ata? channel ?". 2003-12-13 23:24:47 +00:00
thorpej
98f7d12017 Split out the Silicon Image SATALink support into its own driver,
"satalink".
2003-12-13 23:13:40 +00:00
ad
9aa9b8ebf5 Add drivers for the desktop bus, DC-7085 and pm display. Make it possible to
select between rcons or wscons at compile time. Ok'ed by simonb.
2003-12-13 23:04:37 +00:00
ad
3234027240 Add write barriers (a no-op on vax). 2003-12-13 23:02:33 +00:00
thorpej
523e3bb618 I haven't had this laptop for a long time now. 2003-12-13 22:48:02 +00:00
he
1423e83c49 Adapt to rename of WDC_CAP_LBA48 to ATA_CMD2_LBA48 in atareg.h,
and don't use types which will be promoted when passed as ...,
causing a warning.
2003-12-13 22:34:30 +00:00
chs
6b91282609 ramdisk doesn't fit in 400k anymore, make it 500k. 2003-12-13 22:06:23 +00:00
rearnsha
94c1474569 The machdep.debug sysctl variable uses code CPU_DEBUG
(not CPU_CONSDEV).
2003-12-13 12:07:41 +00:00
martin
b4467b848f Don't touch the PROM VA on JavaStations. From Valeriy. 2003-12-13 10:26:13 +00:00
martin
d741bf72ed Remove a comment - this is no longer experimental and works with an
unpatched tree.
2003-12-13 09:31:20 +00:00
sekiya
f398c5e022 Remove MIPS3_L2CACHE_ABSENT. 2003-12-13 01:30:50 +00:00
jmc
f3a436d0a1 Add a .WAIT after common so libs get built before they're needed 2003-12-12 23:00:09 +00:00
martin
ef9590543d Add support to build bootjs.elf - the secondary bootstrap used to netboot
JavaStations. Based on patches from Valeriy E. Ushakov.
2003-12-12 22:15:59 +00:00
nathanw
d7a0075027 Trap 0x8 (T_DOUBLEFLT) and 0x11 (T_ALIGNFLT) should be TRAP, not
ZTRAP; while the error code is always 0, the processor indeed pushes
the 0 on the stack, according to table 5-1 in the IA32 SPG.
2003-12-12 20:17:53 +00:00
thorpej
648d5e6e22 Add a default case to avoid an uninitialized variable warning. 2003-12-12 16:42:44 +00:00
jmc
e63a18f899 Initialize clksp as gcc can't figure out that it gets set before the switch 2003-12-12 16:21:35 +00:00
jmc
c594ed376d Needs a .WAIT before doing boot/bootxx 2003-12-12 15:57:32 +00:00
sekiya
c0996cb32c Remove preprocessor conditional MIPS3_L2CACHE_ABSENT, which was rendered
superfluous by Tsutsui-san's previous changes.

(this change differs slightly from that posted to port-mips@, as
mips_flushcache_allpvh should be compiled iff MIPS3_PLUS is defined and
MIPS3_L2CACHE_ABSENT should be removed from files.mips as well)
2003-12-12 14:55:58 +00:00
martin
119a91826a If compiling for JavaStations, modify kernal VA layout to not conflict
with the PROM. From Valeriy E. Ushakov. This is a hack, but as long as
we don't have a way to arrange for a proper VA layout on this machines
(i.e. beyound the PROM) it is needed.
2003-12-12 14:51:48 +00:00
martin
808a75e1c5 Use the new split hard/softinterrupt handlers to avoid running mouse/keyboard
input functions to be run at IPL_SERIAL (instead of the intended IPL_TTY).
2003-12-12 14:31:39 +00:00
jmc
3ac305c74a Add a stub for the majors (which just includes amiga's majors file). 2003-12-12 04:12:09 +00:00
atatat
74b1767b3c The machdep.debug node is an int, not a struct 2003-12-12 03:52:56 +00:00
scw
6222bc14b8 Fix a typo in bswr2rb() which resulted in an 8-bit load instead 16-bit.
Pointed out by Derek Godfrey.
2003-12-11 23:52:25 +00:00
matt
0ecc4c35b5 Copy ksi->ksi_info, not all of ksi, to user stack. 2003-12-11 18:33:52 +00:00
matt
786b602bd3 Rework things to move common stuff into Makefile.inc. 2003-12-11 17:34:09 +00:00
uch
f948356718 Update for new world of indirect wdc registers. 2003-12-11 09:53:15 +00:00
martin
8198b105e1 Bump SYMTAB_SPACE, we need more nowadays. 2003-12-11 08:42:20 +00:00
matt
98c902b471 Convert fixcoff into a true host tool by making it under tools. 2003-12-11 00:27:42 +00:00
matt
cd3cb31917 Make sure to pick up nbcompat definitions 2003-12-10 23:45:25 +00:00
matt
b1865b274e Use be16toh/htobe16 instead of ntohs/htons. 2003-12-10 23:36:07 +00:00
matt
104c58abbf s/u_int16_t/uint16_t/ for more portability 2003-12-10 23:08:14 +00:00
petrov
90efe83bb9 Fix strict-aliasing compiler warning. 2003-12-10 20:09:05 +00:00
drochner
bfae4c94ef if the code segment is not enlarged, return 0 in pmap_exec_fixup
so that the trap is not retried
(fixes cases where a program traps for good reasons)
2003-12-10 18:13:32 +00:00
tsutsui
556423a6ac Bump SYMTAB_SPACE to 204800. 2003-12-10 18:08:50 +00:00
drochner
e74e4d19cb Just checking a global marker (pm_hiexec) for the highest executable
address currently in effect does not always work: There might be more
instances of the code segment selector in other threads, on other CPUs
and in *jmp_bufs.
So always check whether the CS needs updating, if it is not already
set to the "BIG" value.
This code needs more cleanup, this is considered a stopgap fix only.
2003-12-10 13:59:48 +00:00
agc
7db1d33cba Modify the licences of code written by Theo De Raadt from a 4-clause
to a 2-clause licence (retaining UCB clauses (1) and (2)), per PR
22409 from Joel Baker, approved by Theo de Raadt, and ratified by
myself - the only discrepancy being the handling of the original
clause 3 in src/usr.sbin/yppoll/yppoll.c.
2003-12-10 12:06:25 +00:00
tsutsui
4949a9ae53 Add WSDISPLAYIO_VIDEO_{ON,OFF} support for WSDISPLAYIO_SVIDEO ioctl.
Patch from Yasushi Oshima.
2003-12-10 10:36:02 +00:00
tsutsui
4aa0d301de Invert Y-axis value for mms(4). From Yasushi Oshima on port-dreamcast. 2003-12-10 10:30:45 +00:00
simonb
fa8e22ca2d Make unimpl_emul.o depend on assym.h so that "make -j N" kernel builds
work.
2003-12-10 04:59:35 +00:00
jmc
695a2a2f9f Change reference at bottom from sys/dev/majors to sys/conf/majors to match
reality
2003-12-10 02:04:00 +00:00
jmc
66a3e546ff Oops. _KERNEL, not KERNEL 2003-12-10 01:26:24 +00:00
lonewolf
49e806d166 sgimips lives in the new-style wscons land. 2003-12-10 00:24:21 +00:00
lonewolf
b57c3a57f9 Make this compile and apparently work (it generates interrupts properly, at
least).
XXX The is_console test is horribly ugly but necessary for the pckbc_cnattach
XXX coming soon.
2003-12-10 00:22:29 +00:00
lonewolf
3fe422af98 Garbage collect unused file. 2003-12-10 00:18:07 +00:00
lonewolf
8d097bc535 Remove the extra call to consinit(). 2003-12-10 00:00:51 +00:00
he
9d5ca63b31 Bump SYMTAB_SPACE so that the symbol table fits again. 2003-12-09 18:00:22 +00:00
jmc
2608098ab2 Wrap sys root'd includes with #ifdef KERNEL so this will compile for things
including machine/cpu.h (which includes this)
2003-12-09 15:47:17 +00:00
jmc
9a398a5661 Make libsa build first as other items depend on it (for -j builds) 2003-12-09 15:46:01 +00:00
simonb
8b18b565b8 Make some comments line up. 2003-12-09 09:49:01 +00:00
matt
031990a547 Make sure to include <bsd.own.mk> to pick up the definition of HAVE_GCC3 2003-12-09 04:54:54 +00:00
scw
6e97fad006 Set up a temporary 1MB mapping to cover the SDRAM controller's registers. 2003-12-08 16:15:31 +00:00
scw
2107fae815 Scoot the SDRAM controller's mapping forward to the next 1MB boundary
so it can be mapped easily at startup.
2003-12-08 16:14:16 +00:00
chs
6ca2b78b74 enable com console. 2003-12-08 14:59:26 +00:00
scw
ec226f1150 Don't hard-code SDRAM size. Let ixp425_sdram_size() figure it out
at runtime.
2003-12-08 14:44:03 +00:00
scw
40db825e26 Add support for picking up the size of SDRAM by reading the memory
controller's config register.
2003-12-08 14:41:11 +00:00
scw
c2415a0dc3 Oops, map PCI memory space at VA 0xf8000000 instead of in the middle
of user VM space at 0x48000000.
2003-12-08 13:40:33 +00:00
matt
48b7ea2255 Strings (even ifdef'ed out) can't run past the end of the line. Use
ANSI string concatenation.
2003-12-08 09:29:30 +00:00
matt
840a2d6df7 Make -mno-asm-pic dependend on HAVE_GCC3 == no 2003-12-08 09:28:36 +00:00
jdolecek
f76cf6a9ea need cast to (long long) for %llx format when compiling 64bit kernel 2003-12-08 08:08:40 +00:00