Commit Graph

39228 Commits

Author SHA1 Message Date
tsutsui 0f0f2c4943 Remove .mdebug.abi32 and .comment sections created by binutils-2.14
on converting kernels into ECOFF.
ARC BIOS may be confused by these sections without valid address.
2004-08-30 16:08:24 +00:00
drochner 070747cba1 remove the (superfluous) definition of "cpu" as an interface attribute 2004-08-30 15:35:20 +00:00
drochner 46289e1fef Phase out the use of a string as first "attach args" member to control
which bustype should be attached with a specific call to config_found()
(from a "mainbus" or a bus bridge).
Do it for isa/eisa/mca and pci/agp for now. These buses all attach to
an mi interface attribute "isabus", "eisabus" etc., and the autoconf
framework now allows to specify an interface attribute on config_found()
and config_search(), which limits the search of matching config data
to these which attach to that specific attribute.
So we basically have to call config_found_ia(..., "foobus", ...) where
such a bus is attached.
As a consequence, where a "mainbus" or alike also attaches other
devices (eg CPUs) which do not attach to a specific attribute yet,
we need at least pass an attribute name (different from "foobus") so
that the foo bus is not found at these places. This made some minor
changes necessary which are not obviously related to the mentioned buses.
2004-08-30 15:05:15 +00:00
thorpej d1e0f4a2a0 Add openfirm. 2004-08-29 17:40:12 +00:00
thorpej c409cf7317 Make this compile again. 2004-08-29 17:37:03 +00:00
thorpej f4d9e6500d Add a local prototype for a called-from-asm function. 2004-08-29 17:36:46 +00:00
tsutsui 4c0e18d694 - rename comcnprobe() and comcninit() to com_mainbus_cnprobe() and
com_mainbus_cninit() and move these cn functions from cobalt/console.c
  to dev/com_mainbus.c
- call cninit() only once
- remove unneeded includes
- use ANSI function decls
2004-08-29 16:14:15 +00:00
thorpej 6c08646cb8 Garbage-collect pagemove(); nothing use it anymore (YAY!!!) 2004-08-28 22:12:40 +00:00
thorpej 605050704a Use ANSI function decls and static. 2004-08-28 22:06:28 +00:00
thorpej cfc755477e Minor style nit. 2004-08-28 21:56:00 +00:00
thorpej 606336a153 De-__P 2004-08-28 21:31:07 +00:00
thorpej 63a3547c69 - De-__P.
- Also define DB_ELF_SYMBOLS and DB_ELFSIZE.
2004-08-28 21:24:20 +00:00
thorpej e3e985a071 De-__P 2004-08-28 19:46:41 +00:00
thorpej 2ae3d56b20 fix typo. 2004-08-28 19:44:29 +00:00
thorpej 3083c70ccc Use ANSI function decls, static, and const. 2004-08-28 19:11:19 +00:00
jdolecek 64969161df use uvm_grow() to update stack segment size on stack page fault instead
of MD code
2004-08-28 17:53:00 +00:00
thorpej 8657dbc0c8 Remove the last vestiges of COMPAT_NOLABEL. It's been 10 years; label
your disks already.
2004-08-28 17:45:24 +00:00
thorpej 8ca927b486 Use ANSI function decls, static, and const. 2004-08-28 17:37:00 +00:00
tsutsui 106c596dc1 - Use bus_space(9) to access PCI configuration registers on GT64111.
- Remove unused pci stuff from mainbus.c.
2004-08-28 13:33:31 +00:00
tsutsui 9f92256852 - Reset timer0 of GT64111 in gt_attach() and start it
in cpu_initclocks(9) via a callback function.
  Fixes the "hardclock(9) is called before cpu_initclocks(9)" problem
  reported by KIYOHARA Takashi on port-cobalt.
- Use bus_space(9) functions to access GT64111 registers and
  add register definitions for GT64111 in gtreg.h.
  (XXX this could be in sys/dev/marvell?)
- Move microtime(9) from machdep.c to clock.c, and read timer0 register
  via a callback function. Also change microtime(9) like other ports
  to guarantee that the time will be greater than the value obtained
  by a previous call.
2004-08-28 12:32:48 +00:00
thorpej 523f87a2ce PTDpaddr -> PDPpaddr 2004-08-27 03:51:34 +00:00
drochner 5b0932cc68 kick out the ioasic offset check which happens in submatch() now 2004-08-26 18:07:12 +00:00
jkunz 70b14a8138 Add support for shareing PCI interrupts and PCI-PCI bridges. 2004-08-26 16:52:27 +00:00
jkunz 1035c6af08 Import STI wscons(4) driver from OpenBSD and add new driver for PS/2
keyboard / mouse pots of LASI.
2004-08-26 16:48:06 +00:00
itohy 318777e22f Add njs to some generic config files (I tested on i386 and sparc64). 2004-08-26 14:33:01 +00:00
junyoung 581cbf8089 As suggested on tech-kern@ days ago:
* Get rid of PTmap, PTD, PTDpde, APTmap, APTD, and APTDpde from locore.S.
* Rename PTDpaddr to PDPpaddr, ptdpaddr in struct cpu_kcore_hdr to pdppaddr for consistency.
2004-08-26 10:12:33 +00:00
reinoud b4f746a195 Increase space reserved for symbol space. As of the kernel i build it
needed at least a 255344 bytes while 242000 was reserved. Bumped it a few
kb higher to reduce symbol table fill too soon again.
2004-08-25 12:24:48 +00:00
he b23dd66ac3 It's atac_pio_cap, not atac_PIO_cap. I wonder how I could get this
to compile earlier...
2004-08-25 10:40:15 +00:00
matt e4726fc65d Add pmap counters for reclaimed pvos and for the times a pvo could not be
obtained.
Switch to EVCNT_ATTACH_STATIC*
In DEBUG/DIAGNOSTIC, decrement/increment pmap_pvo_enter_depth around pool
calls since they could possibly cause a recursion back into pmap_pvo_enter.
2004-08-24 21:31:49 +00:00
nathanw 05e0a219ae Don't prohibit DDB and KGDB together. 2004-08-23 20:55:03 +00:00
thorpej 8fa139d957 Use the RET macro, rather than "bx lr" unconditionally. Makes this file
compile again for the INTEGRATOR configuration.
2004-08-23 20:53:56 +00:00
jandberg b58fddce90 Call wdc_init_shadow_regs() after data structures are filled in.
Idea monkeyed from a commit by <mycroft>; reviewed by <aymeric>.
2004-08-23 19:26:25 +00:00
fvdl e8af4bc978 Keep ioapic in the correct order in the global linked list that stores
them. Fixes cases where the ACPI SCI int has to be guessed, because there
are multiple ioapics in the system.
2004-08-23 17:24:23 +00:00
lukem a3135cf216 enable ipw* (Intel PRO/Wireless 2100) 2004-08-23 14:04:45 +00:00
junyoung b13abba3f6 Include libi386.h for function prototypes. 2004-08-23 09:45:53 +00:00
junyoung 26231e86a1 * Nuke __P().
* No need to use 'extern' for function prototypes.
2004-08-23 09:41:59 +00:00
aymeric a225650d5c postpone the calling of wdc_init_shadow_regs(), to follow MI changes.
Thanks to Jukka Andberg for finding that bug.
2004-08-23 08:54:39 +00:00
dsl 3a67f25b17 Use := when saving ${.OBJDIR) - then we get the correct value! 2004-08-23 06:54:04 +00:00
dsl c48b68dc4d Need to use := when evaluating ${.OBJDIR}, then the correct value
is passed into the subdir builds and the 'lib' objects are correctly shared.
Fixes PR/26554
2004-08-23 06:52:04 +00:00
dsl 5084a397e4 Increase space for boot parameters - needed for specifying serial port
IO address and long keyboard translation map.
2004-08-23 06:50:21 +00:00
jandberg a380c0363c pcf_io_map() was returning invalid bus space handles.
Generate them with bus_space_map() like suggested by <aymeric>.
2004-08-22 13:15:11 +00:00
junyoung 938fe5a686 Remove trailing spaces. 2004-08-22 06:46:34 +00:00
junyoung 905834c2fb Fix various typos in comments including ones that weren't noticed
for years.
2004-08-22 05:36:42 +00:00
rearnsha d8574604b2 Support throwing signals to Thumb handlers. 2004-08-21 12:07:34 +00:00
rearnsha 9eb8699bc5 Don't fault if handed a Thumb address to disassemble. Simply print
out 'thumb insn' and punt.
2004-08-21 12:05:41 +00:00
rearnsha b88c8e79ee Add support for prefetch and data aborts in Thumb code. 2004-08-21 12:04:17 +00:00
rearnsha c8bb6ba9a9 Convert the coprocessor defines into an enum to avoid excessive
preprocessor hackery.  If supporting Thumb add an 18th undefined
handler for undefined instruction traps taken in Thumb state.  Kill
MAX_COPROCS and use NUM_UNKNOWN_HANDLERS instead.

Add support for breakpoints set in Thumb code and hand them off to
GDB as required.
2004-08-21 12:03:16 +00:00
rearnsha 6c37261ede Handle SWI's from Thumb code.
Note: this may need further work.  For the momement we unconditionally
convert a Thumb SWI insn into an ARM SWI with the operation code
zero-extended to 24 bits.  However, this should really be a property
of the emulation (how do we know that all emulated systems would want
to work this way?), but that would mean pushing all the handling down
into each of the emulators.
2004-08-21 11:57:36 +00:00
rearnsha 4cdf758fde Support Thumb applications 2004-08-21 11:52:25 +00:00
rearnsha b7bc9f654f Support upcalls and entry points that are in Thumb state. 2004-08-21 11:49:33 +00:00
rearnsha 66780d9b11 ARM10 is an architecture 5 device (not 4).
If supporting architecture 5, enable Thumb code support.

Note: we could probably enable this for 4T processors as well, but
getting interworking right is much more tricky.
2004-08-21 11:08:20 +00:00
rearnsha 3e067d0cbc Add a breakpoint instruction for Thumb. 2004-08-21 11:03:51 +00:00
rearnsha b9627c77bd Add STT_ARM_TFUNC (needed for the dynamic linker to handle Thumb
symbols).
2004-08-21 11:01:33 +00:00
rearnsha 0765a88c26 Define _ARM_ARCH_6, _ARM_ARCH_5 and _ARM_ARCH_4T, based on
architecture defines passed from the compiler.

Define RET and RETc macros for return and conditional return.  If BX is
available in the current instruction set then make use of it.

Note: these really are from the compiler's -march/-mcpu flags, not
from the kernel config, so they can be relied on in user space.
2004-08-21 10:59:41 +00:00
rearnsha a64bc9e882 Define THUMB_INSN_SIZE. 2004-08-21 10:53:36 +00:00
he 1e7492c638 Make this compile again by removing a now-unused local variable
and picking up cmd_iot from the new register struct instead of the
channel struct.
2004-08-21 10:09:21 +00:00
nathanw 8b1b7c1c67 Check DDB before KGDB; if both are enabled, it's more useful to go to
DDB, because you can get to KGDB from there, but not the other way
around.
2004-08-20 21:38:35 +00:00
nathanw 584b896885 Nothing's wrong with having DDB and KGDB in the same kernel. 2004-08-20 21:33:57 +00:00
thorpej 26dfa7dd35 Comment out atabus; no ATA controllers or devices are configured in this
kernel.
2004-08-20 15:15:26 +00:00
wennmach 1b35cf3d9a o Split copyright into mycroft and UCB parts
o remove advertising clause from UCB part
2004-08-20 14:12:52 +00:00
thorpej 9cc521a148 Move most of wdc_softc into a new atac_softc structure that contains
info common to all types of ATA controllers.
2004-08-20 06:39:37 +00:00
simonb 2fe6a47d97 Add dependancies on assym.h for some assembly files so that
"make -j <bignum>" works without having to do a "make depend" first.
2004-08-20 05:34:47 +00:00
thorpej 1600c8b8cd - Add and use a CHAN_TO_WDC() macro to get the wdc_softc from an
ata_channel.
- Add and use a CHAN_TO_WDC_REGS() macro to get the wdc_regs from an
  ata_channel.
- Add and use a CHAN_TO_PCIIDE() macro to get the pciide_softc from an
  ata_channel.
- Add and use a CHAN_TO_PCHAN() macro to get the pciide_channel from an
  ata_channel.  (This one just hides a cast, and is really just for
  consistency with the others.)
2004-08-19 23:25:35 +00:00
chs 80c0e76172 implement pmap_pvo_reclaim(), which steals an existing non-wired pvo entry
for reuse, and use this in pmap_pvo_enter() when we can't allocate a new one.
2004-08-19 15:31:57 +00:00
junyoung 3d45791c36 Rename bootparams to boot_params for consistency. 2004-08-19 10:34:36 +00:00
tsutsui efa3e6b66b Remove bogus TABs. (from OpenBSD) 2004-08-18 14:47:25 +00:00
drochner c67a72f6ff make PCI devices attachable/detachable (as far as the particular drivers
allow), and allow to rescan a bus selectively (ie only the device/
function I'm looking at)
2004-08-17 23:20:10 +00:00
briggs 4634c8ef35 Get correct cache information for earlier VIA C3 models.
Mostly from PR kern/26689 submitted by Michael van Elst.
2004-08-17 15:27:46 +00:00
scw ad271535d4 In _bus_dmamap_load_buffer(), honour the maximum segment size specified
when the DMA map was created.

The previous behaviour honoured the maximum segment size only when
coalescing adjacent segments.
2004-08-17 08:35:43 +00:00
rumble d15d05328d Add some infrastructure to support HPC-based ethernet adapters
(E++):
 o The static configuration table now identifies by HPC offset.
 o Added sq(4) entries for IP12, IP20, and IP24.
 o Accomodated HPC revision forcing based on kernel config flags.
2004-08-17 00:57:42 +00:00
rumble 38bbaabc37 Add defines for the four possible HPC GIO bus addresses. 2004-08-17 00:48:08 +00:00
rumble d023bcf042 Implement several changes that get my E++ (HPC1.5 GIO ethernet
adapter) to work on IP24:
 o Force HPC and GIO slot endianness.
 o Allow slots one and two to be masters and configure for
   realtime mode.

Also, while we're here move IP22 invariants into the IP22 case.

I suspect that IP20 will work as well since it exhibited the same
broken DMA that IP24 did before I flipped the master bit.
2004-08-17 00:44:39 +00:00
aymeric 7813bbed46 add fake bus_space_read_region_stream_4() and bus_space_write_region_stream_4()
macros to cope with the recent wdc_pcmcia changes
2004-08-16 10:23:43 +00:00
aymeric 990d2462b0 add a missing break in the EXC_MCHK|EXC_USER case in trap() 2004-08-16 10:16:16 +00:00
aymeric e2de6e57a9 fix typo in comment 2004-08-16 10:12:40 +00:00
aymeric 9ed8629c70 . use ${SYSDIR} instead of relative paths so that tags links in subdirs work
. fix the links: target to work with objdirs
2004-08-16 10:10:46 +00:00
aymeric 66c464814b add a noop settype() method to the pcmcia_chip_functions to cope with the
recent changes in the PCMCIA code.
This is only compile-tested, but should work because we only support IO cards
on the A1200 for now.
2004-08-16 10:07:52 +00:00
dsl 523a1fe90e Define CONSADDR for pcio.c (continuing the same hack use for the other
parameters).
2004-08-15 22:10:50 +00:00
dsl c1eeebc3dd Allow the com port base address to be specified by the user (via installboot)
rather than taking the value from the bios.
Should allow the system to use a serial console that is also a 'bios serial
console' and isn't in the bios serial port table.
Probably fixes (with a few other changes) PR port-i386/9236
2004-08-15 22:04:45 +00:00
dsl c68c45c975 I challenged mycroft to optimise this code - and he found a spare byte... 2004-08-14 21:03:23 +00:00
uch d5dcd091d7 HCAJ1 -> HCVJ 2004-08-14 15:38:25 +00:00
thorpej 4b51cecfc2 - Split the register handles out of struct wdc_channel into a separate
wdc_regs structure, and array of which (indexed per channel) is pointed
  to by struct wdc_softc.
- Move the resulting wdc_channel structure to atavar.h and rename it to
  ata_channel.  Rename the corresponding flags.
- Add a "ch_ndrive" member to struct ata_channel, which indicates the
  maximum number of drives that can be present on the channel.  For now,
  this is always 2.  Add an ATA_MAXDRIVES constant that places an upper
  limit on this value, also currently 2.
2004-08-14 15:08:04 +00:00
jdolecek 8ac2263519 constify 2004-08-13 21:45:03 +00:00
uch 579420e43b use HCAJ, HCVJ group instead of HCAJ1, HCVJ1C_JP 2004-08-13 15:55:14 +00:00
uch 9d15e929e7 recompile. 2004-08-13 15:52:28 +00:00
uch 5adb2fdc5d add WCE101 and WCE200 binary install target. 2004-08-13 15:51:45 +00:00
uch 986311dca4 add SH7707 2004-08-13 15:50:09 +00:00
uch e659dc81a4 fix debug print. 2004-08-13 15:49:37 +00:00
uch abe2d7cbc7 regen. 2004-08-13 15:49:13 +00:00
uch 7ee4f55250 add SH7707 and HP360LX. add HCAJ and HCVJ group for Sharp Telios 2004-08-13 15:48:51 +00:00
uch 643a469d36 set user specified console as default. 2004-08-13 15:48:21 +00:00
uch 00539717e3 add debug print. 2004-08-13 15:47:53 +00:00
simonb 384a2881c7 Fix a couple of niggles:
. Incorrect name in the kernel config ident lines.
. Call the commented out NetBSD 0.9 binary compat option "COMPAT_09" and
    not "COMPAT_10"(!).
2004-08-13 15:42:02 +00:00
tsutsui e6be65a968 Adapt to NCR5380_USE_BUS_SPACE. 2004-08-13 12:54:44 +00:00
drochner d9a2463d75 oops - forgot the isapnp attachment when I added joystick support
recently
fixes PR port-i386/26630 by George F. Costanzo
2004-08-13 08:45:25 +00:00
thorpej ab20886f7b Don't bother with bits that tell of the presence of optional callbacks;
just check the function pointers for NULL.
2004-08-13 03:12:59 +00:00
sekiya 1a682ebd64 Add 64-bit ABI bootloader (for IP30). Needs a slightly modified toolchain
and a 64-bit-clean libkern.a; once those bits are committed, this should be
100% good to go.
2004-08-11 11:45:26 +00:00
sekiya 8a3d53f346 Start routine for 64-bit ABI. 2004-08-11 11:41:19 +00:00
mycroft 3ebcfd93ee Forget to reset to memory mode on power up.
The hd64465 looks a bit incomplete, but "not my problem".
2004-08-11 06:30:15 +00:00
mycroft 7e4288f8a6 Attempt to fix these up, but I have no way to test them. 2004-08-11 06:16:10 +00:00