Commit Graph

2355 Commits

Author SHA1 Message Date
hannken 5c57af78d2 Remove now unused variable `i'. 1999-08-27 10:49:20 +00:00
thorpej 84670a44ef Initialize the default colormap to 0 == black, all others == full white. 1999-08-26 22:53:41 +00:00
thorpej 58858e0968 Suns use black-on-white as the default rcons colors. 1999-08-26 20:50:08 +00:00
ad 2c13aef146 - Update to match new rasops_init semantics
- Set RI_FULLCLEAR so that we clear the *entire* display
- Set RI_CURSOR and cursor position so that old cursor glyph gets wiped

Fixes PR: port-sparc/8121
1999-08-24 11:12:08 +00:00
thorpej 2cf3330a1b Garbage-collect reference to <sys/dmap.h>. 1999-08-23 22:29:37 +00:00
sommerfeld 2e95b13365 Use ${SIZE}, ${OBJCOPY} rather than size and objcopy. 1999-08-21 14:18:36 +00:00
simonb 3c185af5fd Include <sys/endian.h> after defining whether where are little- or
big-endian.  i386, pc532 and vax still include <machine/byte_swap.h>
and define macros for the {n,h}to{h,n}*() functions.  mips also
defines some endian-independent assembly-code aliases for unaligned
memory accesses.
1999-08-21 05:53:50 +00:00
simonb 06a92524c2 Include <sys/bswap.h> for function prototypes. i386, pc532 and vax
still include <machine/byte_swap.h> and define macros for some of
the bswap*() functions.
1999-08-21 05:39:51 +00:00
ad 8974edc06c The 8bpp PROM console uses index 0 as black, 255 as white. Update ri_devcmap
to cater. Partially addresses PR port-sparc/8121.
1999-08-13 09:59:47 +00:00
matt 74ed5b7f0f Add <machine/apmvar.h> for sparc so that apmd can be built. Eventually
this allow it work on Tadpole SPARCbook 3 laptops (and/or other sparc
with power management).
1999-08-11 02:00:09 +00:00
matt 4efe97d08f remove some more devices that are not the tadpole.
add the tctrl device (which controls the tadpole microcontroller).
1999-08-11 01:46:25 +00:00
matt ec55b51b3a do a little colormap manipulation. use the tft power hooks in tctrl 1999-08-11 01:41:06 +00:00
matt 385ed7074b This now works properly and uses interrupts. If you close the lid, the
screen will turn off and when you open the lid screen turns on.  If you
do too rapidly, the driver won't be notified but you can press the micro
switch and it will come back.  Also "halt -p" now works so you don't
have to do Pause-P to powerdown.
1999-08-11 00:46:06 +00:00
thorpej 28fb7c1eb8 Define cpu_number() as discussed on tech-smp. 1999-08-10 21:08:05 +00:00
christos 4f5d78ae59 s/(sbus | obio)/sbus for the sbus attachments. These were vestiges from
the old code.
1999-08-10 12:50:35 +00:00
christos be4c7c3513 split bwtwo driver in obio and sbus parts 1999-08-10 05:04:08 +00:00
christos 072b17778f split bwtwo driver in sbus and obio parts. 1999-08-10 04:56:30 +00:00
matt ede200e1ab Add a driver for the Tadpole SPARCbook microcontroller. It doesn't
do much yet (except for power down support).  As sson as I figure
out to get its interrupts enabled, it will be much more functional.
(e.g., print console messages on low power warnings, be able to turn
off the TFT, etc.).
1999-08-09 18:39:58 +00:00
matt 84e306ed83 Tadpoles don't use the standard sun4m power down hardware. So add
support for doing it the Tadpole way.
1999-08-09 18:35:58 +00:00
matt 1b0bd3757f add entries for the tadpole microcontroller (tctrl) and the
tadpole pcmcia controller (tpcic).  Drivers for the former will
show up today, and the latter later this week or next weekend.
1999-08-09 18:34:43 +00:00
christos 26297cb6e9 PR/8178:Julian Coleman: sparc kernel will not build with cgtwo/cgsix but
without sbus. Remove call to cgsix-sbus-attach (impossible code). Make
routines static (they were declared static, but not defined static and
some compilers can complain).
1999-08-09 12:16:10 +00:00
thorpej 1c0e017cff Change spl calls to always raise priority, except for the ones which are
specifically supposed to lower it.
1999-08-05 21:16:55 +00:00
thorpej eb20bbc780 Change the semantics of splsoftclock() to be like other spl*() functions,
that is priority is rasied.  Add a new spllowersoftclock() to provide the
atomic drop-to-softclock semantics that the old splsoftclock() provided,
and update calls accordingly.

This fixes a problem with using the "rnd" pseudo-device from within
interrupt context to extract random data (e.g. from within the softnet
interrupt) where doing so would incorrectly unblock interrupts (causing
all sorts of lossage).

XXX 4 platforms do not have priority-raising capability: newsmips, sparc,
XXX sparc64, and VAX.  This platforms still have this bug until their
XXX spl*() functions are fixed.
1999-08-05 18:08:08 +00:00
matt 42c15639e0 Remove the false positive on the probe of the built-in modem
on tadpoles by calling comprobe1 to see if the modem is really
there.
1999-08-03 00:32:33 +00:00
matt 864afe0bc7 Add video blanking support. It does not power-down the TFT
since that requires talking to the H8 microcontroller and
that support is not yet done.
1999-08-02 20:36:57 +00:00
matt 016599a30b Colormaps now work. Besides a small fencepost error, the real problem
is that the Tadpole 3GX tech-ref-man was WRONG.  The RAMDAC registers
at at 4 byte offsets, not 8.  Once that was discovered, all the code
just worked.
1999-08-02 18:00:21 +00:00
matt d8f4dbb171 fix a few mmap bugs. pretend to be a cg3 and implement a hack
to fack the Xsun server to believe that the p9100's framebuffer
is really a cg3's.  So if only colormaps worked, X would be able
to run.
1999-08-01 06:27:00 +00:00
matt 4b814be9cf Initial stab at a P9100 console FB driver for the Tadpole 3GX.
It supports RASTERCONSOLE only and the colormap support is
broken (the hardware doesn't seem to be doing what the tech.
docs. say it should be doing).  But it is usable as a console
(but with blue on white as the only color choice).  I figured
I'd check it in since it is somewhat usable and someone else
might figure what I screwed up in the color map support.
1999-08-01 00:23:48 +00:00
matt d4b9056054 Add preliminary support for the built-in modem on Tadpole 3GX/S
laptops.  There is currently something wrong with the interrupt
code but it does attach and sense a 16550a.  (anyways the built
in modem is only a 14.4Kb and you'd really want to use a PCMCIA
modem to get faster dialup rates).
1999-07-30 23:58:25 +00:00
matt 8c0f3c5a5f Add config file specificially for Tadpole 3GX/3GS laptops.
It save ~800KB over the standard GENERIC config file.
1999-07-30 23:55:43 +00:00
thorpej d7bf3732b0 The new rasops stuff is a LOT faster; turn on rasterconsole on the cgsix. 1999-07-30 18:11:38 +00:00
augustss a7cd454b1d It's time to be COMPAT_14. 1999-07-29 10:37:12 +00:00
drochner b513c9a6ad update comments for mi VME 1999-07-28 09:48:36 +00:00
drochner 6922e1976e adapt to mi VME attachment (sorry for being late) 1999-07-28 09:45:08 +00:00
drochner f6fddabf3f back out previous - there is really a "vmebus" attribute 1999-07-28 09:39:48 +00:00
christos 223cc34183 make the vme stuff compile again; I am not sure this is correct as I don't
have the hardware to test, but it has been broken for 3+ weeks now. Hi
Mr. Drochner!
1999-07-28 05:45:50 +00:00
thorpej 6ec1ededf1 Make a slight rearrangement in how <machine/lock.h> is included. 1999-07-27 23:45:13 +00:00
thorpej cc668e410f Define apporpriate an value for SIMPLELOCK_LOCKED, based on the
semantics of ldstub.
1999-07-27 22:22:33 +00:00
thorpej c1ee8f0a8c Prepend `cpu_' to the machine-dependent atomic locking primitivies. 1999-07-27 21:45:39 +00:00
cgd f886376518 be more efficient when doing the SYSTEM_LD_TAIL for -g kernels: don't
copy them just to strip them, use strip -o.
1999-07-26 05:20:44 +00:00
christos 41cc9a0eb8 enable PPP_BSDCOMP, PPP_DEFLATE, PPP_FILTER, PFIL_HOOKS, IPFILTER_LOG
on the GENERIC kernels that had them commented out.
XXX: Please note, that not all the kernels have all the options defined!
1999-07-20 07:40:34 +00:00
christos 0c2a15c04a we don't need no-fpu; anyway this has been renamed in new version of egcs 1999-07-10 22:18:34 +00:00
thorpej 0945bf58b0 Add examples for including the kernel crypto bits from either crypto-us
or crypto-intl, commented out, with instructions to use only one, and
adjust the prefix as necessary.
1999-07-09 18:55:33 +00:00
mrg ecdad0ec33 clean up a bit after jason :)
- fix emitrules() like emitfiles() to deal with the prefix (otherwise it
  would attempt to find the file in the normal base for the NORMAL_C rule).
- add emitincludes() which adds include directives for each prefix to the
  $INCLUDES variable in the makefile.
- add %INCLUDES to each Makefile.arch to deal with the above.

this makes "prefix" actually work in a usable manner, and now i can move
on to fixing compiler warnings (errors) in the ESP code. :)
1999-07-09 09:52:55 +00:00
thorpej 3ebbe095e0 Change the pmap_extract() interface to:
boolean_t pmap_extract(pmap_t, vaddr_t, paddr_t *);
This makes it possible for the pmap to map physical address 0.
1999-07-08 18:05:21 +00:00
chs eb770c7b7c add "trace/t <pid>". 1999-07-04 06:45:26 +00:00
itojun 5effafcaa6 kernel configuration for IPv6/IPsec. should be in GENERIC in the future.
(source code will be committed soon)
1999-07-01 07:00:12 +00:00
drochner 33104934d9 update for new VME framework 1999-06-30 15:18:58 +00:00
pk 3c6560a597 More ugly code to force early configuration of the sun4 on-board timer. 1999-06-28 22:40:15 +00:00
pk 61f60a2fbe Allow SFILES to be empty; from Julian Coleman. 1999-06-28 21:03:23 +00:00
pk bd0ac6506c Prepare entry for `hme at sbus'; commented out until driver is finished. 1999-06-28 20:26:47 +00:00
pk 4fe4dae943 Ignore (but still generate a console warning) unhandled user-generated traps. 1999-06-28 15:51:26 +00:00
pk 7c5f595062 mmu_pagein() prototype: change address argument to `vaddr_t'. 1999-06-28 14:44:57 +00:00
pk 5814a13657 mmu_pagein: refuse kernel space addresses here. 1999-06-28 14:41:43 +00:00
itojun 427639cdce - Call ip6intr if INET6 is defined.
- remove "need-flag" for mac68k esp driver, as it is not used in anywhere
  and conflicts with IPsec ESP header.

This should be the only MD change in IPv6 support, except kernel config file.
Very sorry if you have any compilation problem with it (I believe it is okay).
If your favorite arch is not included in here, please add a
call to ip6intr() from softintr handle.
1999-06-28 08:20:40 +00:00
mrg 7683f14172 enable xbox and ppp 1999-06-26 18:47:15 +00:00
pk c118a70deb When overriding cache flush functions for specific cpu models, make
sure to update the correct function pointers in `cpuinfo'.
1999-06-24 20:22:12 +00:00
pk ccd6d1e4de Pull in `sparc/compat_13_machdep.c' for SunOS compatibility too. 1999-06-20 16:30:22 +00:00
thorpej 0288ffb53a pmap_change_wiring() -> pmap_unwire(). 1999-06-17 19:23:20 +00:00
thorpej f5a527bb4e Remove pmap_pageable(); no pmap implements it, and it is not really useful,
because pmap_enter()/pmap_change_wiring() (soon to be pmap_unwire())
communicate the information in greater detail.
1999-06-17 18:21:21 +00:00
pk f90f079222 Fix typo in previous. 1999-06-13 07:58:20 +00:00
pk fee9cd9c12 Initialize the heap (for alloc()) explicitly, since the `end' symbol
is not necessarily double-word aligned.
1999-06-12 12:49:24 +00:00
thorpej 2c35c7bd03 Only declare block major numbers for devices which can be the root device. 1999-06-07 20:31:27 +00:00
thorpej d76e7b8c6d Don't pass a nam2blk around at all; just have setroot() and friends reference
dev_name2blk[] directly.  Addresses PR #7622 (ITOH Yasufumi), although
in a different way.
1999-06-07 20:16:08 +00:00
mrg e6545647b8 update this to GENERIC rev. 1.84. 1999-06-06 13:06:38 +00:00
mrg 440ac638bc EXEC_ELF32 is now default. enable "rnd" 1999-06-06 13:00:03 +00:00
pk 3d9ae33cfb Add COMPAT_AOUT. 1999-06-06 09:23:38 +00:00
pk bea0725979 64-bit safety to help sharing compilation tools with sparc64. 1999-06-05 12:54:23 +00:00
christos beb12b13b9 Don't include rasops and wscons goo here; we get it already from fbvar.h 1999-06-02 23:24:00 +00:00
mycroft 7d5f7a34ce We need wsdisplayvar.h for this to compile now! 1999-06-02 12:11:39 +00:00
pk 0953844306 Casts to match `%d' in printf format. 1999-05-27 14:20:10 +00:00
pk 69b216aefe `xmit' & `recv' return `ssize_t' 1999-05-27 14:04:25 +00:00
thorpej beb8d06638 Generally update the comment above vunmapbuf(). 1999-05-26 22:19:33 +00:00
thorpej a2d06a4721 Generally update the comment above the vmapbuf() implementations. 1999-05-26 22:07:36 +00:00
thorpej 2580d306ab Change the vm_map's "entries_pageable" member to a r/o flags member, which
has PAGEABLE and INTRSAFE flags.  PAGEABLE now really means "pageable",
not "allocate vm_map_entry's from non-static pool", so update all map
creations to reflect that.  INTRSAFE maps are maps that are used in
interrupt context (e.g. kmem_map, mb_map), and thus use the static
map entry pool (XXX as does kernel_map, for now).  This will eventually
change now these maps are locked, as well.
1999-05-26 19:16:28 +00:00
thorpej 5832084eaf bus_dmamem_map() maps DMA safe memory, which is usually one or more
managed pages, into KVA space.  Since the pages are managed, we should
use pmap_enter(), not pmap_kenter_pa().

Also, when entering the mappings, enter with an access_type of
VM_PROT_READ | VM_PROT_WRITE.  We do this for a couple of reasons:

	(1) On systems that have H/W mod/ref attributes, the hardware
	    may not be able to track mod/ref done by a bus master.

	(2) On systems that have to do mod/ref emulation, this prevents
	    a mod/ref page fault from potentially happening while in an
	    interrupt context, which can be problematic.

This latter change is fairly important if we ever want to be able to
transfer DMA-safe memory pages to anonymous memory objects; we will need
to know that the pages are modified, or else data could be lost!

Note that while the pages are unowned (i.e. "just DMA-safe memory pages"),
they won't consume any swap resources, as the mappings are wired, and
the pages aren't on the active or inactive queues.
1999-05-25 23:14:03 +00:00
ad 080560c8c6 - Setting initial position of cursor is up to caller.
- Set cursor position properly for SPARC. From Juergen Hannken-Illjes.
1999-05-23 17:59:39 +00:00
thorpej d7ffa508b1 Provide an mdallocsys() that clips bufpages if necessary (on the Sun4c).
This will be (and needs to be) done before nbuf is computed.
1999-05-21 00:08:14 +00:00
thorpej 88c7cff619 Make this compile again. 1999-05-20 20:15:27 +00:00
pk fea10fb499 Operate Hypersparc cache in write-back mode again.
Remove `hypersparc under construction' message.
1999-05-20 10:06:39 +00:00
pk 1040b9e209 If TLB entries need to be flushed, make sure to do this after any necessary
cache flushes, since on VIPT machines the cache flush may induce a TLB load.
1999-05-20 10:03:12 +00:00
lukem e4a87aa1a9 * convert to using MI allocsys(). most ports were using an MD allocsys(),
although a couple still used the old pre-4.4-lite (?) mechanism.
* use format_bytes() to format the various printf()s that print out memory sizes
1999-05-20 08:21:42 +00:00
ad a4f0570f7d SPARC console is black on white, and is centered by default. 1999-05-19 21:05:59 +00:00
ad 02bc362e3e Add arg to rcons_init() that when set causes screen to be cleared. 1999-05-19 20:34:19 +00:00
ad 218af6a342 Insert missing code that defines screen metrics for rcons. This fixes the
more blatant rcons brokenness (ie no panics).
1999-05-19 19:59:04 +00:00
pk ae6d12926c Turn on the video timing which is not always done by the PROM (e.g. if we're
not the console).
1999-05-19 08:31:42 +00:00
ad 7efb86f6b8 Fix typo that broke rasops operation. 1999-05-18 21:36:21 +00:00
thorpej 0ff6aaf4c2 Don't clear the screen when we connect rasops; the SPARC doesn't connect
the rasops console until autoconfiguration, and it kinda sucks to have
the boot messages suddenly disappear from the screen.
1999-05-18 18:13:39 +00:00
ad 20be6a2a2a Fix typo on my behalf. From Juergen Hannken-Illjes. 1999-05-16 21:19:33 +00:00
pk 87d4c19ebf Remove cruft from `nmi_hard()' interrupt handler. 1999-05-16 16:56:35 +00:00
pk 1a2299d57c Temporary work-around in pmap_enter on 4/400 machines: pre-allocate
MMU region cookies. This keeps the machine from crashing when running
in user mode.
TODO: fix the bugs then kill or alter this work-around.
1999-05-16 16:48:59 +00:00
pk d379bda6a5 Well, what do you know.. the TLB context flush has been coded with the
wrong `type' field all these years. Fix this and add a TLB region flush
as well.  Also take care of a few inconsequential nits.
1999-05-16 16:37:45 +00:00
ad 3b602e5afa Panic if rasops_init() fails us (should never be the case). 1999-05-15 13:04:03 +00:00
ad 6834085f8b Make sure rasops_info descriptor is zeroed out before initializing. 1999-05-15 12:52:22 +00:00
mrg 95e0190e23 split the sun ms/kbd drivers into frontend/backend parts at the serial
interface border, so that other serial interfaces can be attached to the
ms/kbd.  zero functional changes and mostly involves moving code around
a bit.  tested on the SS2.

this is necessary to attach the PCI ultrasparc keyboard/mouse drivers.
1999-05-14 06:42:02 +00:00
eeh ea28d54c9e Let NetBSD/sparc know about 64-bit formats even if it can't execute them. 1999-05-14 00:18:51 +00:00
thorpej c10a926030 Allow the caller to specify a stack for the child process. If NULL,
the child inherits the stack pointer from the parent (traditional
behavior).  Like the signal stack, the stack area is secified as
a low address and a size; machine-dependent code accounts for stack
direction.

This is required for clone(2).
1999-05-13 21:58:32 +00:00
mrg a59ced70bd pull in files.aout 1999-05-12 12:48:27 +00:00
drochner fe310dd299 include <lib/libkern/libkern.h> for intoa()/inet_ntoa() 1999-05-07 16:19:27 +00:00
pk 4cb2198a44 Declare `bootinfo' also if !DDB. 1999-05-05 15:32:33 +00:00