Commit Graph

36404 Commits

Author SHA1 Message Date
marcus
afc21ff9d1 mulaw/alaw timing bugfix from Izumi Tsutsui. 2003-08-25 18:48:31 +00:00
uwe
bb09aff859 Undo previous as it broke things.
There are some scattered implicit RASTERCONSOLE dependencies,
so there should be a better way.
2003-08-25 17:50:22 +00:00
tron
c8232f0d0f Protect inclusion of "opt_vm86.h" with "#ifdef _KERNEL_OPT" as appropriate. 2003-08-25 13:11:30 +00:00
drochner
8085017e31 fix _UC_MACHINE_SP() for the vm86 case: we have to add the SS offset 2003-08-25 09:20:25 +00:00
he
2dfc91641e Remove duplicate entry for ``pf''. 2003-08-25 09:05:13 +00:00
mrg
0e001a53fa make it "static long nil;" as it's used as &nil in an array wanting long *'s.
makes GCC3 happy.
2003-08-25 04:51:10 +00:00
marcus
9010cdf728 LINEAR and LINEAR_LE need to be interchangeable (fixes 8bit unsigned bug). 2003-08-24 19:52:46 +00:00
marcus
f436d156b4 Added some encodings which were supported but not listed. 2003-08-24 19:44:29 +00:00
chs
14ee4005a1 make sp_tlb_flush() work for profiling kernels:
when we're profiling, the compiler creates a stack frame for us,
so doing a "retl" isn't so good in that case.
2003-08-24 18:10:31 +00:00
chs
2ab420f918 recognize the latest version of the GMAC. 2003-08-24 18:02:00 +00:00
chs
939df36e55 add support for non-executable mappings (where the hardware allows this)
and make the stack and heap non-executable by default.  the changes
fall into two basic catagories:

 - pmap and trap-handler changes.  these are all MD:
   = alpha: we already track per-page execute permission with the (software)
	PG_EXEC bit, so just have the trap handler pay attention to it.
   = i386: use a new GDT segment for %cs for processes that have no
	executable mappings above a certain threshold (currently the
	bottom of the stack).  track per-page execute permission with
	the last unused PTE bit.
   = powerpc/ibm4xx: just use the hardware exec bit.
   = powerpc/oea: we already track per-page exec bits, but the hardware only
	implements non-exec mappings at the segment level.  so track the
	number of executable mappings in each segment and turn on the no-exec
	segment bit iff the count is 0.  adjust the trap handler to deal.
   = sparc (sun4m): fix our use of the hardware protection bits.
	fix the trap handler to recognize text faults.
   = sparc64: split the existing unified TSB into data and instruction TSBs,
	and only load TTEs into the appropriate TSB(s) for the permissions.
	fix the trap handler to check for execute permission.
   = not yet implemented: amd64, hppa, sh5

 - changes in all the emulations that put a signal trampoline on the stack.
   instead, we now put the trampoline into a uvm_aobj and map that into
   the process separately.

originally from openbsd, adapted for netbsd by me.
2003-08-24 17:52:28 +00:00
marcus
7973c3321c Added AICA sound driver contributed by Ryo Shimizu. 2003-08-24 17:33:27 +00:00
uwe
65aeb1d742 #include "opt_rcons.h" 2003-08-24 17:31:59 +00:00
chs
fd825b0f1e avoid taking the kernel lock for MPSAFE syscalls.
add missing unlock in fancy case.
2003-08-24 16:36:10 +00:00
chs
3cf764618d remove bogus code that terminates stack trace too early on OEA. 2003-08-24 16:33:41 +00:00
he
cb53c3ac12 The new ufs.o also needs memset, so add it. 2003-08-24 15:19:46 +00:00
he
d871277d7d Adapt to new ufs.c needing memcmp and memmove. 2003-08-24 15:11:18 +00:00
he
47a6e783ff Adapt to const-ification of the first arg of the open function of fs_ops. 2003-08-24 14:43:29 +00:00
mrg
b5076a98db 64 bit number literals need a "ULL" suffix 2003-08-24 00:41:43 +00:00
he
75219318a9 Add memmove.c, needed by new ufs.c. 2003-08-23 09:10:51 +00:00
dsl
f3404c9f63 Fix same breakage as previous (need memmove for symlink handling in ufs.c)
but use (probably) smaller footprint code from libsa.
2003-08-22 21:14:35 +00:00
dsl
6c51a53afa Add memmove - needed for symlink processing in ufs.c 2003-08-22 21:00:26 +00:00
he
b372f2beaa Adapt to const-ification of first arg of open function in fs_ops. 2003-08-22 08:06:19 +00:00
itojun
8ebd15f8cd add udav* 2003-08-22 07:52:48 +00:00
itojun
96467c96c7 add udav* 2003-08-22 05:14:00 +00:00
itojun
4440262659 create /dev/crypto 2003-08-22 05:06:22 +00:00
petrov
53514f157f Don't set and check absent interrupts on sabre. 2003-08-22 00:46:25 +00:00
petrov
051f6b8a9a Cosmetic: move DEBUG defines. 2003-08-22 00:45:40 +00:00
he
1c6c843936 Adapt to const-ification of first arg of open function in fs_ops. 2003-08-21 23:28:27 +00:00
he
09c6022868 Add memcmp, memmove and bcmp to handle the new ufs.c. 2003-08-21 23:24:36 +00:00
he
b6643fd4d3 Adapt to const-ification of first arg of open function in fs_ops. 2003-08-21 23:15:18 +00:00
he
241ad00001 Adapt to const'ing of the first argument of the open function in fs_ops. 2003-08-21 22:34:48 +00:00
he
395b0c6682 Now that ufsboot / ufs.c uses memmove(), we need to include it here. 2003-08-21 13:12:32 +00:00
pk
84ab67f557 sun4/sun4c DIAGNOSTIC: fix tally of locked down pmegs.
pmap_page_protect: DIAGNOSTIC: show `pg' argument in panic.
pmap_unwire: for now, only used for sun4/sun4c MMUs.
2003-08-21 09:36:28 +00:00
fvdl
c43b35423e Pass pointers to frames from assembly, do not use the 'frame on stack
as argument passed by value' trick, as gcc 3.3.x makes (valid) assumptions
about the stack that will not be true. Costs 2 instructions per trap/syscall
on i386, 4 per interrupt for MP. One instruction per trap/syscall on amd64,
2 per interrupt for MP. I expect gcc 3.3.1 to make up for this by better
optimization (it'd better..)

While here, make amd64 compile again by using subr_mbr_disk.c
2003-08-20 21:48:35 +00:00
matt
a1bba8f344 Relax things so that OFW implementations that don't conform to the OFW PCI
bindings will work.
2003-08-20 14:41:56 +00:00
ragge
e7bd9c8c0f Add Makefile. 2003-08-20 12:29:08 +00:00
ragge
7ea6b903f5 Basic machine-dependent code for pdp10.
Lots of stuff here not yet finished.
2003-08-19 10:54:59 +00:00
ragge
a08c4b9e22 Header files for pdp10. 2003-08-19 10:53:04 +00:00
ragge
7a599d2c3e Simple ebus, Massbus adapter and Massbus disk drivers.
The Massbus disk drivers should be merged with the vax Massbus disk drivers
when the 4.4BSD Massbus code gets free.
2003-08-19 10:51:57 +00:00
ragge
ab103e8af7 Configuration files for pdp10. 2003-08-19 10:49:57 +00:00
eeh
677644de4b Increase the size for the symbol table so we don't overflow anymore. 2003-08-18 23:20:06 +00:00
matt
121c8942a6 Not all PPC ports (e.g. macppc) equate IPL_NONE with 0. 2003-08-18 22:10:33 +00:00
eeh
26ed6e652b Do not rely on an address from one particular firmware version. 2003-08-18 21:34:11 +00:00
eeh
e898bed96b Use the only documented method to get the board data from the firmware. 2003-08-18 21:30:51 +00:00
dsl
fc94061686 Further fallout from making 'path' arg to 'ufs_open' 'constchar *'.
There may be fallout in other builds....
2003-08-18 15:47:41 +00:00
matt
93b63570a0 Properly walk the OF tree to map a PCI node's interrupt property into the
proper settings for the interrupt-controller.
2003-08-18 07:08:11 +00:00
hannken
d56baf4735 Add a placeholder for lpt, char 20.
Requested by: Matt Thomas
2003-08-17 19:15:50 +00:00
chs
e02e4ecc2b lots-o-stuff:
- fix opcodes_base[10] to allow us to find "cmpli".
 - fix "cmp" definition.
 - add various missing SPRs.
 - use the right bits for the "BI" operand.
 - fix operand calculation for "rlwinm" and friends, and display
   the operands in the same order as the manuals do.
 - make the buffer bigger to avoid overflow.
2003-08-17 18:23:17 +00:00
chs
f96eebf908 use the value of the "soft-reset" property (if it exists) to locate
the reset vector (needed on my shiny new G4).  from tsubai.
2003-08-17 18:12:34 +00:00
chs
86bd9c4a5e recognize the product ID used on the latest G4s. 2003-08-17 18:10:09 +00:00
chs
4ba6255f14 add some 745x-specific MSSCR0 bits. 2003-08-17 18:08:17 +00:00
chs
f19809f0fa remove an unused proto. 2003-08-17 18:07:11 +00:00
pk
dd51ebce3f sun4/sun4c MMU: keep `wired' status per page, implemented by defining a bit
in the PTE word that is not used by the hardware. Use it to unlock a `pmeg'
if the wired count in a segment drops to zero.
2003-08-17 18:00:51 +00:00
kochi
35312b5efa make shutdown error messages clearer (idea from Christoph Egger) 2003-08-17 14:23:16 +00:00
kochi
1cc19c34e0 Try shutdown with ACPI only when ACPI is enabled.
Patch from Masanori Kanaoka (with a little modification by me).
2003-08-17 14:15:43 +00:00
hannken
efc0a23c7d Add lpt (for explora) as char 20.
This major number is unused in macppc.
2003-08-17 11:06:46 +00:00
pk
fda797e0a4 sun4/sun4c MMU: keep `wired' status per page, implemented by defining a bit
in the PTE word that is not used by the hardware. Use it to unlock a `pmeg'
if the wired count in a segment drops to zero.
2003-08-16 19:21:21 +00:00
hannken
af69915880 Add bus_dmamap_sync as dma regions are no longer uncached. 2003-08-16 15:40:41 +00:00
hannken
58f4f18578 Fix a typo: sm->sg_npte -> sp->sg_npte 2003-08-14 11:00:02 +00:00
tsutsui
143adabe3d If BUS_DMA_ALLOCNOW is specified with nsegments > 1
in jazz_bus_dmamap_create() disable BUS_DMA_ALLOCNOW for now
rather than return ENOMEM.  Required by some PCI devices (like pciide(4)).
XXX needs re-think how BUS_DMA_ALLOCNOW should be handled.
XXX (we should use another flag for the jazz internal DMAC?)
2003-08-14 09:35:26 +00:00
yamt
e6483a7858 - leave a compiler which register is used for an asm argument.
- use correct asm constraints.
- eliminate usage of dummy variables.
2003-08-13 12:40:31 +00:00
yamt
fd72624430 use correct asm operand indexes.
(previously 'GLptr' was used as mask.)
this long standing bug seems to be uncovered by
my previous change(rev.1.2) on some machines.

PR/22457 from Matthias Scheler, and tested by him.
2003-08-13 12:38:35 +00:00
ragge
923106363e Some of the vax-specific mem*() functions did not check for len > 65535,
and when MAXDSIZ were increased memcpy() length sometimes were larger
than 64k (like in amap_extend()) All functions now checks the length.
This fixes PR#19968.

Disable the inline string functions and use the C versions instead.
2003-08-13 11:30:50 +00:00
scw
031f751a7d Lmapped_start is used in db_trace, so mark as a 'function'. 2003-08-12 21:48:07 +00:00
matt
1d1029332d Remove this. The architecture specific ones are now used. 2003-08-12 18:35:51 +00:00
matt
47483092bd Cleanup/rework cpu_switch*, switch_exit, Idle routine. Remove pcb_psl
since it was write-only.  When setting up a process, make sure the fake
callframes are properly linked together.

Only lower SPL when in Idle loop.  Raise spl to previous level (which would
be IPL_SCHED) when exiting Idle loop.  Never lower SPL anyplace else.
2003-08-12 18:34:47 +00:00
matt
b986a8c215 D'oh! The PCB can't be accessed with the MMU off. So get the pmap pointer
*before* disabling the MMU.
2003-08-12 15:40:02 +00:00
pk
87d5e88b94 sun4/sun4 mem_fault(): on kernel faults we now need to try to page in a
a `pmeg' too. See also sparc/pmap.c, rev 1.265.
2003-08-12 15:34:32 +00:00
pk
98d3a23993 Extensive rewrite of the sun4/sun4c pmap code to allow non-wired kernel
mappings to use the pre-emptable pool of `PMEG' MMU resources.
2003-08-12 15:31:56 +00:00
pk
fe30a2e6c1 Use pmap_remove_all() to flush the cache by context and set a flag to
avoid subsequent user space cache flushes by page or segment in pmap_remove().
2003-08-12 15:13:11 +00:00
scw
10e88b305a copy{in,out} and kcopy should return success if 'len' is zero. 2003-08-12 13:51:52 +00:00
scw
8d5dbf5382 An FPUEXC leaves the PC pointing to the FP instruction
which caused the exception. To avoid an endless loop if
the user is ignoring or catching SIGFPE, adjust the saved
PC to skip over the offending instruction.

XXX: It's not clear that this is the correct behaviour,
XXX: but it's the only way to make sh5 pass the IEEEFP
XXX: regression tests in regress/lib/libc/ieeefp/except.
2003-08-12 13:50:23 +00:00
dsl
744ee27288 Try looking RF_PROTECTED_SECTORS further down the partition if /boot
cannot be found.
Lets the system boot directly from a rad set.
2003-08-12 10:03:03 +00:00
bsh
e1cdd07843 use CLZ insn to find a pending interrupt. 2003-08-12 08:24:04 +00:00
matt
a3a18840be Remove SPILLSTK leftovers. 2003-08-12 05:15:41 +00:00
matt
c0d6cb285d Nuke ci_curpm and curpm. Nuke pcb_pmreal. Those were use for spill stacks
and those no longer exist.  for few uses that need CURPM, use CURPCB/PCB_PM
2003-08-12 05:06:53 +00:00
fvdl
8c1a2eef97 Fix deadlock issue. Slight variation on patch by Stephan Uphoff. 2003-08-11 21:15:50 +00:00
drochner
657c8bd72c fix a memory deallocation botch in the realloc-ldt case,
plus some cosmetics
from Stephen Ma per PR port-i386/19724
2003-08-11 17:26:24 +00:00
drochner
6fb41457ab arrgh - KERNBASE_LOCORE! 2003-08-11 16:56:46 +00:00
matt
3527dc3950 When getting the lwp to switch to, test to see if the scheduling queue is
empty, and if so panic.  Change references to "proc/process" to lwp.
2003-08-11 15:39:24 +00:00
drochner
e8d0979bed Fix stack location for VM86 processes in the !sigaltstack case.
I doubt it makes much sense to use the VM's stack for this, but the
old code was doubtless wrong because it potentially overwrote random
user memory.
(It might be a good idea to use the process' pre-vm86()-call stack,
but atm the infrastructure for this is missing.)
2003-08-11 14:09:18 +00:00
christos
cdf5cfc132 Kill another stray setup_stack. Thanks @@@. 2003-08-11 13:27:58 +00:00
atatat
3e5ef14f22 Make sure to wrap include opt_foo.h in _KERNEL_OPT. 2003-08-11 13:20:39 +00:00
christos
2b16e874b8 I don't understand why there this is here, since we have exec_ecoff.c in kern,
but remove the stack setup function anyway.
2003-08-11 12:58:43 +00:00
chs
b90614b54e catch up with changes elsewhere. 2003-08-11 05:13:20 +00:00
matt
341742a7e9 Add PTEGCOUNT defparam for opt_pmap.h 2003-08-11 01:33:30 +00:00
scw
927c51ccaf Explicitly declare some symbols used by db_stack_trace_print()
as functions so they can be picked up as such.
2003-08-10 22:24:50 +00:00
scw
27479ae035 64-bit db_addr_t makes life much easier now that ddb uses ksyms. 2003-08-10 22:22:31 +00:00
scw
7f2011899c In PIC_GET_GOT, use a local numeric label which is very unlikely to
clash with other labels in code which uses it.
2003-08-10 22:18:12 +00:00
martin
965abb5c4c Avoid intermediate (void*) casts.
Replace aliased pointer magic with shift/mask arithmetic.
2003-08-10 15:17:55 +00:00
martin
7406b873ca Replace strict-alias bug prone pointer magic with (IMHO clearer)
shift/mask arithmetic.
2003-08-10 15:14:02 +00:00
martin
c26dc73c1d Remove unecessary intermediate (void*) casts. 2003-08-10 14:53:12 +00:00
martin
7a1600bb14 Remove unecessary intermediate (void*) casts. 2003-08-10 14:50:09 +00:00
tsutsui
5b7e87e535 Fix a leftover comment. 2003-08-10 12:00:03 +00:00
tsutsui
37b01430e9 Call prep_bus_space_init() and consinit() after oea_batinit() and oea_init()
because powerpc/bus_space.c:bus_space_init() checks BAT maps. (from mvmeppc)
2003-08-10 11:41:36 +00:00
chs
792f9a7f05 remove some leftover cruft. 2003-08-10 02:30:51 +00:00
chs
78a835abdc fix typos in comments. 2003-08-10 02:03:31 +00:00
chs
a883716eb4 track changes in libsa Makefile. 2003-08-10 02:01:26 +00:00
uwe
e4bd28ac72 Undo previous. It breaks profiling, but I managed to test against the
wrong tree and so missed it.
2003-08-10 01:22:03 +00:00
uwe
147642d466 Real _PROF_PROLOGUE so that assembly language functions can be profiled. 2003-08-10 00:00:26 +00:00
uwe
9cd06ccd7e For ELF put RCSID strings into .ident section. 2003-08-09 23:04:43 +00:00
dsl
221f1dff47 Some systems (esp. those with a Promise IDE controller card) seem to
destroy %dl (drive number) across the 'disk reset' command.
Preserve %dl across that call and all registers across the disk reads.
Reorder the code to remove some long conditional jumps to save space.
2003-08-09 20:57:45 +00:00
bsh
7061f16abb enable LCD, PCMCIA, CF and PS/2 keyboard. 2003-08-09 19:41:44 +00:00
bsh
eab266e671 add following drivers for Intel Lubbock.
LCD
	on-board SA-1111 companion chip
	PCMCIA/CF slots
2003-08-09 19:38:53 +00:00
yamt
b1eb92cb46 in ACPI_ACQUIRE_GLOBAL_LOCK,
don't assume that the reserved bits of the global lock are all zero.
it's actually needed for, at least, IBM Thinkpad X21 (2662-64J).
2003-08-09 17:35:43 +00:00
igy
aabdcf8773 bump the version number 2003-08-09 11:38:16 +00:00
igy
07f9797566 add bootp support 2003-08-09 11:37:57 +00:00
pk
f18213d166 Simplify the definitions of VA_VPG() and VA_OFF(). 2003-08-09 09:30:04 +00:00
martin
a26ce66da3 KERNBASE -> KERNBASE_LOCORE (make it compile again) 2003-08-09 08:58:50 +00:00
igy
8f53455cfb netboot support 2003-08-09 08:01:42 +00:00
christos
c23ca09f5a use KERNBASE_LOCORE 2003-08-08 20:14:06 +00:00
christos
bbb5cbabcf cleanup the mess with KERNBASE and KERNBASE_LOCORE. 2003-08-08 20:13:04 +00:00
rafal
fc27d910c0 To make keeping these two in sync easier, add commented-out entries for
device-majors used on the other port to each of the sparc{,64} majors
files.
2003-08-08 17:03:14 +00:00
rafal
e552920482 Add major 85 for radio(4). 2003-08-08 16:40:31 +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
matt
ff2ea365c3 Nuke spillstk. Use INTSTK instead of hardcoded value. 2003-08-08 07:15:20 +00:00
matt
3d5b7190ad Nuke ci_spillstk/CI_SPILLSTK. No longer needed. 2003-08-08 07:14:26 +00:00
matt
add426be7e Add a type for trapstart so ddb will use it. 2003-08-08 06:11:48 +00:00
matt
938aca290c Don't try to spill entries from the kernel's pmap. As of now, they can no
longer be evicted, only user-mappings can be evicted.
2003-08-08 06:10:43 +00:00
matt
330dc2e202 Allow only user-mappings to be evicted (spillage). This prevents the
dreaded eviction of a kernel stack page.
2003-08-08 06:06:48 +00:00
uwe
8c46e68137 Add more sh7709 interrupt sources. Split sh3 and sh4 specific
switches because of conflicts in exception codes.
2003-08-08 00:52:42 +00:00
bsh
d1e6225495 add lubbock_pcic.c 2003-08-08 00:11:21 +00:00
marcus
c17ec7adc5 * RTC can now be set to a new date.
Thanks to Ryo Shimizu for sending in a patch.
* Use proper G2 bus space functions to enforce locking protocol.
2003-08-07 23:14:13 +00:00
martin
a8f065cf19 Add "esiop" driver to PCI bus table, so mapping OF boot device pathes
to autoconfig device nodes works when booting from a esiop attached drive
(instead of the old siop)
2003-08-07 22:24:34 +00:00
bouyer
1f2944e8e5 Add esiop at pci to GENERIC which already have siop at pci.
esiop has been tested enouth now.
esiop not added to INSTALL kernels because of possible space constraint.
siop should be able to drive all adapters supported by esiop.
2003-08-07 17:17:58 +00:00
bsh
02087c6497 make this compile again. (arm32_bus_dma_tag._cookie) 2003-08-07 16:58:35 +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
ichiro
208a93d254 fix dont reset register when every interrupt.
pointed by Shoichi Miyake port-arm/22392
2003-08-07 13:32:27 +00:00
soren
b22ef904f5 Enable ahd(4) by default. There are some problems with higher speeds /
packetized mode, but those can be disabled in the Adaptec BIOS setup.
2003-08-07 12:06:15 +00:00
scw
79f7012e02 Delete 'pf'.
NetBSD/evbsh5 will pick up the 'pf' entry from arch/sh5/conf/majors.sh5.
2003-08-07 11:57:48 +00:00
bouyer
7c840df334 Add esiop at pci to GENERIC which already have siop at pci.
esiop has been tested enouth now.
esiop not added to INSTALL kernels because of possible space constraint.
siop should be able to drive all adapters supported by esiop.
2003-08-06 12:32:03 +00:00
matt
c60f393ec5 Don't overwrite the value of DAR in r30. Use r31 instead. 2003-08-06 07:18:56 +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
fredette
c7f2e26f8b Bumped the version number to account for fixes in tapeboot. 2003-08-05 19:14:56 +00:00
fredette
100e6f3698 Added seek support for tape files. Before, seeking a tape file
would silently fail, causing loadfile to load file contents into
the wrong addresses.

On the sun3/sun3x, MARK_START was incorrectly set too.  Also
added support for booting a sun2.
2003-08-05 19:10:26 +00:00
dsl
e33c0fa9eb Dont need jmpl, ljmp or jmp is fine. 2003-08-05 15:14:49 +00:00
kanaoka
c5cef9cc94 - Use local variable instead of sc_Arg in softc.
- Use ACPI_ALLOCATE_BUFFER/AcpiOsFree combination instead of sc_Ret in softc.

   Pointed out by kochi.
2003-08-05 14:24:45 +00:00
dsl
0be64684b7 Some bios manage to load the mbr code to 7c0:0 (instead of 0:7c00) especially
when loading from CDROM.  Change so we don't care what %cs is.
Adjust code layout so that anyone who feels so inclinded can use this for
the mbr code.  Note that mbr slot 0 overlays a data area that must be zero
when this is read from the pbr.
2003-08-05 13:41:52 +00:00
bsh
f2de581410 forgot to add copyright. 2003-08-05 11:44:28 +00:00
bsh
b5fd93af20 add and enable USB devices. I've so far tested floppy and CD-R drives,
mice, and smartmedia card readers.
2003-08-05 11:36:14 +00:00
bsh
4060e862f4 add s3c2xx0_bus_dma_init() which is called by s3c2410_attach().
add a variable wdcdebug_wd_mask for a temporary workaround to the link
error when umass is configured in SMDK2410 kernel.  I'll re-visit this
later.
2003-08-05 11:32:35 +00:00
bsh
3245163bdf support S3C2410's built-in USB host controller, which is OHCI
compliant.
2003-08-05 11:28:59 +00:00
bsh
0b5ec916cd add busdma tag to s3c2xx0_softc and attach arg.
initialize busdma tag in s3c2410_attach()
2003-08-05 11:26:54 +00:00
bsh
3bf70b2edf add s3c2xx0_busdma.c which is used to initialize bus dma tag. 2003-08-05 11:24:08 +00:00
simonb
20a37f9627 Note that the used interrupt bits are 405GP specific.
Fix a tyop.
2003-08-05 02:10:31 +00:00
matt
9254350d6a Change bc x,y,z to their simplified mnemonics. During a kernel DSI fault,
if the exception address is < 1 page away from the KSP, switch to the that
CPU's spill stack to handle the trap.  Otherwise you can get in a infinite
DSI fault loop.
2003-08-04 22:29:59 +00:00
matt
0e50e47bb9 Make that OEA based kernels can properly deal with kernel ISI faults. Now
that LKMs are supported, it is possible for a LKM page to be "outspilled"
resulting in a possible ISI fault.  Try to spill the page back in.
2003-08-04 22:26:59 +00:00
drochner
a505528166 fix the last proc->lwp transition glitch 2003-08-04 18:43:38 +00:00
bsh
3410ad1777 various bug fixes. Now SMDK2410 evboard boots up to single user mode
using install ramdisk.
2003-08-04 12:41:44 +00:00
bsh
490a557f57 disable interrupts at the beginning. 2003-08-04 12:38:57 +00:00
bsh
3bcf928aaa don't be too verbose unless VERBOSE_INIT_ARM is defined. 2003-08-04 12:37:43 +00:00
bsh
388f0338ac option SSCOM_S3C2800 is needed for S3C2800 based platforms. 2003-08-04 12:35:51 +00:00
bsh
50c0756fc2 bit polarity of interrupt mask registers don't match between s3c2800
and s3c24[10]0.  define macro s3c2xx0_update_hw_mask() for it.
2003-08-04 12:34:08 +00:00
bsh
950a49dffb initialize global_intr_mask. 2003-08-04 12:31:12 +00:00
bsh
1df8bfd121 Samsung's S3C2800 and S3C24[10]0 CPUs have same built-in UART block,
but there are very small diffs in register definitions.  For that, add
new options SSCOM_S3C{2800,2410,2400} and include appropriate
s3c*reg.h.

SSCOM_S3C2410 is also needed for interrupt controller differences.
2003-08-04 12:28:49 +00:00
bsh
b335250276 + fix TCON register bit definitions. Thank you Samsung for stupid
register design.

+ add definitions for UART registers that are not compatible with
  S3C2800's.
2003-08-04 12:19:38 +00:00
bsh
23ba082952 + cleanup attach message.
+ use aprint_normal()
2003-08-04 12:09:19 +00:00
bsh
d10f592c16 fix comments. 2003-08-04 10:24:15 +00:00
dsl
0ca66aa416 mbr partition stuff isn't saved here (or anywhere else) anymore. 2003-08-04 10:09:10 +00:00
matt
9b7d071bab Eliminate stmw/lmw substituting the individual load/store instructions.
Use more symbolic constants.  These are now safe for use on PPC64.
2003-08-04 00:32:49 +00:00
matt
a4a468e215 Add SFRAME_USER_SR (even though the 4XX doesn't have one). 2003-08-04 00:30:51 +00:00
eeh
c07f47e182 The firmware actually passes the info block pointer in the link register. 2003-08-03 23:28:45 +00:00
eeh
f77f1feee5 Use %r<n> for register names. 2003-08-03 23:26:55 +00:00
matt
777589be9a Add each register in trapframe, switchframe, and faultbuf. 2003-08-03 21:40:13 +00:00
matt
e3e80aa5d7 Add PPC_OEA64 and netbsd32_sigcode.S 2003-08-03 21:38:08 +00:00
matt
618c78b771 Don't use stmw. Do each store individually. 2003-08-03 21:27:49 +00:00
matt
42382e46c4 Add CPUSAVE_* and each register in the saveframe and faultbuf. 2003-08-03 21:26:27 +00:00
bsh
18fca6b097 an arg of s3c2800_clk_freq() has been changed to match with
s3c24x0_clk_freq().
2003-08-03 14:11:16 +00:00
lukem
64b5a0fe7b Add INCSYMLINKS to <bsd.inc.mk> and <bsd.kinc.mk>, and use that instead of
SYMLINKS to install symlinked header files.  INCSYMLINKS are installed with
'make includes'.  This avoids using SYMLINKS and hacks with the 'linkinstall'
target in <bsd.links.mk>, as linksinstall occurs in 'make install' and hacks
to get it to occur in 'make includes' weren't robust, as seen in lib/libdes.

Yet more improvements to bsd.README.
2003-08-03 09:23:14 +00:00
uwe
85fb38b211 When passing &buffers to uvm_map, add a cast to (void *). Without it,
gcc3 with -O2 produces "dereferencing type-punned pointer will break
strict-aliasing rules" warning.
2003-08-03 00:01:44 +00:00
uwe
2b2ae88a13 Move the definition of enum hd64461video_display_mode out of the
definition of struct hd64461video_chip.  Makes gcc3 happy.
2003-08-02 22:39:13 +00:00
uwe
f49836bca3 Add "break" to the empty "default" case.
Makes gcc3 happy.
2003-08-02 22:33:36 +00:00
matt
dd1c661661 Nuke stmreg/ldmreg. PPC64 doesn't have a lmd/stmd so make sure lmw/stmw
don't invoke valid instructions on PPC64.
2003-08-02 19:40:39 +00:00
matt
c9d56ac39d Add symbolic offsets for what's in cpu save locations.
Add a PPC64 variant of mftb
2003-08-02 19:35:26 +00:00
matt
2f71595941 Make this compile with gcc3. Change kernel_pmap_store to array of struct
pmap instead of array u_long.  A bit of space is wasted but it supresses
the -Wcast-align warning.
2003-08-02 19:10:04 +00:00
bjh21
6407c43a48 Descend into stand so boot32 gets built. 2003-08-02 17:57:35 +00:00
tsutsui
75e4cfdd9e splx() doesn't require a return value. (from mvme68k) 2003-08-02 13:04:49 +00:00
pk
0ac4b6aae4 On small sun4c machines trim the buffer cache to reduce the demand for
kernel virtual memory. This leaves more of the precious PMEG resources
available for user space VM which speeds up things considerably, since
a reasonable PMEG working set can be maintained.
2003-08-02 08:10:44 +00:00
kristerw
2e750373ec Add a missing NULL _cookie to the arm32_bus_dma_tag initialization. 2003-08-01 22:43:27 +00:00
mrg
2c28bbc2b3 avoid a gcc3.3 warning 2003-08-01 13:20:35 +00:00
pk
21a55ba7c3 Fix initialisation of the module_viking_sun4d structure. 2003-08-01 12:29:30 +00:00
pk
d08520ecd9 mainbus_attach: declare appropriate variables for SUN4D too. 2003-08-01 12:25:45 +00:00
pk
6dafe11ede Correct some `defined(SUN*)' inconsistencies. 2003-08-01 12:19:50 +00:00
tsutsui
42bb8b65cc Add majors for MI SCSI devices (cd, ch, ss, and uk). 2003-08-01 01:52:51 +00:00
tsutsui
7751dc9174 Reserve some major numbers for wscons, as per comments in hp300/conf.c
(which is in Attic) rev 1.47.
2003-08-01 01:43:18 +00:00
tsutsui
16cf56440e Move dev/scsireg.h into stand/common since it is no longer used by kernel. 2003-08-01 01:25:44 +00:00
tsutsui
0da9bed83e Switch hp300 to MI SCSI with MI mb89352 SPC SCSI driver (at last),
and remove old hp300 MD oscsi support derived from 4.4BSD-Lite2.
2003-08-01 01:18:39 +00:00
bsh
e5df2a7bb7 delete my private hack sneaked into previous commit. 2003-08-01 01:01:37 +00:00
bsh
250a139bc5 change an arg of s3c2800_clk_freq() to match with s3c24x0_clk_freq(). 2003-08-01 00:41:42 +00:00
bsh
b80cc89773 tweak to share s3c2xx0_intr.c for S3C2800 and S3C2410.
move init_interrupt_masks() from s3c2xx0_intr.c to s3c2800_intr.c, since
it doesn't work for S3C2410.
2003-08-01 00:40:17 +00:00
bsh
d887fc052f delete an incorrecct comment
delete unused definitions
2003-08-01 00:30:21 +00:00
tsutsui
7c9baaa885 Add "oddbyte" bus_space(9) access ops for DIO devices which have
odd byte address space.
2003-08-01 00:29:16 +00:00
tsutsui
7a65036308 Modify hp300 bus_space(9) structures/functions to add hooks to override
access functions. This is required by some DIO devices to use MI drivers.
2003-08-01 00:23:17 +00:00
bsh
2393816ede add SSCOM_S3C2410 option. 2003-07-31 20:34:15 +00:00
bsh
3a51a1be48 move KERNEL_BASE_PHYS from mk.smdk2xx0 to std.smdk2800, to share
mk.smdk2xx0 with SMDK2410.
2003-07-31 20:25:28 +00:00
bsh
76df5f270b the first cut for Samsung SMDK2410 support.
It is an evaluation board for S3C2410.

XXX: not tested much yet.
XXX: smdk2410_machdep.c and smdk2410_start.S are almost identical
     to SMDK2800's.  One day I'll merge them.
2003-07-31 20:11:45 +00:00
bsh
86ab1d6591 the first cut of Samsung S3C2410 support.
It is Samsung's another ARM920 based SoC.

XXX: not tested much yet.
2003-07-31 19:49:41 +00:00
bsh
eb6fd47108 split sscomintr() to sscomtxintr() and sscomrxintr(). 2003-07-31 19:08:10 +00:00
he
5b3551df93 Initialize one more arm32_bus_dma_tag's _cookie to NULL. 2003-07-31 17:51:09 +00:00