thorpej
393b381a6d
PCI interrupt mapping support for the IQ80310.
2001-11-09 20:58:57 +00:00
scw
45e7238a02
Bump the version numbers of all bootloaders which use loadfile_elfXX() now
...
that it tries hard to avoid backwards seeks.
2001-11-09 19:53:11 +00:00
thorpej
d32191e3da
Add support for configuring the PCI bus (starting with the Secondary
...
bus only, for now).
XXX Some cleanup wrt. pci_conf_interrupt() needs to happen.
2001-11-09 19:48:35 +00:00
thorpej
b1ec255377
Add a "firstbus" argument to pci_configure_bus(), indicating the
...
first bus number to use, rather than always assuming that we should
start at bus #0 .
2001-11-09 19:29:12 +00:00
thorpej
671a1b111f
Print the fault PC for non-USR Prefetch Aborts.
2001-11-09 19:04:23 +00:00
scw
439d3ea3cb
G/C some debug printfs inadvertently left in the last commit.
2001-11-09 18:27:59 +00:00
scw
2f42a5932e
Implement just enough of an lseek() to keep loadfile_elf32() happy.
...
While I'm here, bump RAWFS_BSIZE up to 8192 since the installation
instructions use "bs=8k oconv=sync". My Archive Viper now streams
nicely while booting.
2001-11-09 18:25:11 +00:00
scw
dca93f1b48
The success/failure status for some Bug syscalls is indicated by the Z
...
flag in the status register, not by a value on the stack.
How this ever worked for so long is beyond me...
2001-11-09 18:18:19 +00:00
thorpej
82c11eec1c
Clear the Master Abort after reading config space for a non-existent
...
PCI device. Disable debugging messages, as PCI config space works now.
2001-11-09 18:04:10 +00:00
thorpej
42a10f6cd4
Implement a badaddr_read() routine which performs a load of the
...
specified size for the caller, and returns true or false indicating
whether or not a Data Abort occurred (i.e. the address was "bad").
2001-11-09 17:58:00 +00:00
thorpej
d16c00cfb2
Disable the ATU interrupt sources (i.e. interrupts that occur when
...
we get Master or Target aborts).
2001-11-09 17:44:43 +00:00
thorpej
10392361f8
Make the DDB trace output a lot easier to look at.
2001-11-09 16:49:29 +00:00
thorpej
13aa19d0fc
Eval boards usually don't have boot loaders. If we're lucky, we
...
have firmware that understands ELF. We're usually stuck with S-Records.
To make life easier, attempt to stuff kernel symbols into the image
with dbsym(8).
If the kernel doesn't have SYMTAB_SPACE, or if the SYMTAB_SPACE is too
small, the kernel build continues as normal; this is just a convenience
measure.
2001-11-09 07:39:25 +00:00
thorpej
147b1bdc1c
Add some rudimentary support for ELF symbols in DDB on the ARM ports.
...
On platforms which load the kernel sans symbols directly from firmware
(possibly in e.g. S-Record format), call ddb_init() with empty arguments,
so that it will search any compiled in SYMTAB_SPACE. On all other platforms,
if __ELF__, also call ddb_init() with empty arguments until ELF bootloaders
which pass symbol information are ready.
2001-11-09 07:21:37 +00:00
thorpej
47514a31be
Remove unneeded declarations of the db_machine_init() function. The
...
ARM ports are the only ones that actually have one, and it is about
to change.
2001-11-09 06:52:23 +00:00
matt
e85e9a59a1
Make this compile under ELF.
2001-11-09 05:31:44 +00:00
thorpej
b72e770a8a
IQ80310-specific setup for the i80312 Companion I/O chip driver.
2001-11-09 03:31:37 +00:00
thorpej
660b98b7dc
Snapshot of work-in-progress for Intel i80312 Companion I/O chip;
...
just basic Inbound and Outbound window setup is done, PCI configuration
space access (not quite working yet), and I/O and Memory space routines
so far.
2001-11-09 03:27:51 +00:00
simonb
0000c94242
Delete "break"s and "return"s after the math_abort() macro, which itself
...
finishes with a "return".
2001-11-09 00:38:57 +00:00
thorpej
3130a93ac8
Remove unnecessary prototypes for zero_page_read{only,write}().
2001-11-09 00:34:34 +00:00
eeh
d0f2652711
Overhaul the interrupt system to use hardware interrupts directly.
2001-11-08 23:28:13 +00:00
scw
61fd713a11
Commit a change I've had lying around for a while: Initialise wired
...
PTEs with `PG_U' to avoid them being needlessly updated when first
accessed.
2001-11-08 21:53:44 +00:00
scw
05c8b8d35b
Fix a couple of uninitialised variable warnings with New Toolchain.
2001-11-08 21:41:42 +00:00
scw
a1cf047679
Fix a couple of uninitialised variable warning with New Toolchain.
2001-11-08 21:40:25 +00:00
reinoud
a822070813
Note the addition of arch/acorn32 as Acorn's line of ARM 6,7,SA machines.
2001-11-08 16:47:51 +00:00
gmcgarry
2cd41580a7
Make install observe ${INSTPRIV}
2001-11-08 07:45:25 +00:00
gmcgarry
12b20b6dde
Use crufty old clock-handling code for now.
2001-11-08 07:01:33 +00:00
gmcgarry
f410d2f08f
Implement bus_space_vaddr()
2001-11-08 06:32:02 +00:00
gmcgarry
3fe33b077f
Reserve for wscons.
2001-11-08 06:27:45 +00:00
thorpej
64d042b3b3
Correct a comment.
2001-11-08 04:18:46 +00:00
thorpej
05dfd6cada
* Define fixed virtual addresses for the Primary and Secondary
...
PCI I/O spaces, as well as the i80312 PMMRs. Map these regions
in early bootstrap along with the on-board device address space.
* Adjust call to i80312_sdram_bounds() for the new way the PMMRs
are defined in i80312reg.h
* Word around some serious braindamage in RedBoot -- RedBoot uses
the on-board Ethernet to TFTP the kernel image. However, it does
not stop the Ethernet before transferring control to the loaded
program. This means that if it happens to receive another packet
(broadcast/multicast/unicast), it will happily scribble over the
memory of the new running program. Work around this problem by
performing a secondary-bus-reset on the i80312's PPB. XXX This
could be problematic if we ever encounter an application where
the i80312's PPB is actually used as a passthrough PPB.
2001-11-08 03:28:53 +00:00
thorpej
64f23a2423
Adjust the way the PMMRs are defined -- offsets from a base, not
...
absolutes. Also, add PPB and more ATU registers.
2001-11-08 03:20:36 +00:00
thorpej
f30c8426f2
Fix delay().
2001-11-08 02:12:05 +00:00
christos
c7be54ce17
increase the size up to the max for the floppy.
2001-11-08 02:11:38 +00:00
aymeric
77dd4deaa6
introduce an interrupt_depth variable which counts how nested we are into
...
interrupts.
This allows hardclock() to account for the time spent in interrrupts, and
as a side-effect, top(1), systat(1) and others will no more report 0% of
interrupt activity.
mvme68k does that already.
2001-11-07 23:25:03 +00:00
bjh21
a2d0fc8a64
Small debugging improvements.
2001-11-07 19:53:19 +00:00
bjh21
c11b878473
Detect overruns before reading any data. This makes overruns easier to
...
understand.
2001-11-07 19:52:59 +00:00
bjh21
67feec8608
Lose options GATEWAY.
2001-11-07 19:45:48 +00:00
yamt
4475186a1d
correct comment.
2001-11-07 10:52:08 +00:00
yamt
5fa0dfa754
use biosdelay instead of adhoc loop.
2001-11-07 08:46:24 +00:00
thorpej
9cc2517cfe
When we read the interrupt status bits, mask it with the shadow copy
...
of the "currently enabled interrupts" -- the CPLD appears to light
up the status bit even if it doesn't cause the CPU IRQ line to be
asserted.
2001-11-07 02:56:18 +00:00
thorpej
0ea59754f1
We were already cheating w/ CPLD register access, so cheat all the
...
way and use pointer derefs rather than bus_space to access them.
2001-11-07 02:24:18 +00:00
thorpej
4a2c5fd66d
* Pass the IRQ number to stray_irqhandler() and display it in
...
the panic message.
* Mask off undefined bits from the XINT3 and XINT0 registers in the CPLD.
2001-11-07 02:06:37 +00:00
thorpej
acf9a688a0
Rework and fleshing out of Intel IQ80310 XScale eval board support.
...
More work to do -- this is a snapshot of work-in-progress.
2001-11-07 00:33:22 +00:00
thorpej
492b42cff8
Garbage collection.
2001-11-07 00:19:13 +00:00
thorpej
b9364bb468
First cut at XScale setup code. Needs more work.
2001-11-07 00:17:36 +00:00
thorpej
46309d6bc6
Const poisoning of cpu/class names.
2001-11-06 20:39:13 +00:00
thorpej
5b3f78d953
"i80200", not "80200".
2001-11-06 20:02:13 +00:00
thorpej
f12c8ee306
"XScale", not "Xscale".
2001-11-06 19:59:43 +00:00
thorpej
daae0ad947
If BOARDTYPE == iq80310, make an S-records version of the kernel
...
as well.
2001-11-06 19:53:22 +00:00
thorpej
e8982cb969
Make it possible for Makefile.${MACHINE}.inc to provide extra
...
stuff at the end of SYSTEM_LD_TAIL.
2001-11-06 19:52:21 +00:00
matt
1f09ca6e53
Fix a small buglet in syncicache (if the area to sync crosses the
...
segment 0 boundary).
2001-11-06 06:25:28 +00:00
simonb
15a42388c0
In pmap_enter(), sync the instruction cache if VM_PROT_EXECUTE. Fixes
...
problems when executing programs where text is copied to a page without
a dma sync (like NFS data bcopy'd to a buffer cache page).
From discussion with Jason Thorpe and Eduardo Horvath.
2001-11-06 04:49:49 +00:00
enami
03b4b0dfdd
Use options<SPC><TAB> consistently (except for GENERIC_ISDN since it is
...
indented rather differently).
2001-11-06 01:57:06 +00:00
simonb
e716956a0e
Calculate the hardware interrupt to irq mapping array and irq mask from
...
the irq to hardware interrupt mask map instead of using two different
interrelated arrays and a bit mask that I've got wrong more than once
when updating by hand (including when I recently added the keyboard/mouse
interrupt mappings). Now only the galaxy_intr_map[] array needs to
be updated when adding extra interrupts.
2001-11-06 01:26:47 +00:00
thorpej
af0d2bf570
Config info for the i80312 XScale companion I/O chip.
2001-11-05 23:38:55 +00:00
thorpej
20b742fd48
RCS ID.
2001-11-05 23:38:05 +00:00
thorpej
49951f6d12
Prototypes for i80312 routines.
2001-11-05 23:37:41 +00:00
thorpej
22514e4c7d
Routines for handling the i80312 memory controller for XScale.
...
Currently includes a routine to determine memory size from the
SDRAM configuration registers.
2001-11-05 23:37:01 +00:00
aymeric
a2cea87aee
defopt SERCONSOLE
2001-11-05 21:29:43 +00:00
matt
a696291eab
Fix bug in pte_spill (wasn't searching the right pvo_table list for the
...
victim PTE is the PTE was a secondary entry).
2001-11-05 06:44:11 +00:00
matt
4f3943d89a
Test the right bit for wired in the PVO.
2001-11-05 06:24:55 +00:00
matt
f02b548314
Don't try to pool_putting a PVO when re-entering a mapping. Since the
...
PVO_MANAGED may get munged, we can possible put this into the wrong pool.
2001-11-05 01:25:38 +00:00
tsutsui
8dd30af8d3
Add trm at pci.
2001-11-05 01:23:17 +00:00
matt
8a49af3cec
Need to use a separate variable for return value of pmap_pte_inset in
...
pte_spill. Make off the high bit of the MFTB().
2001-11-04 22:39:08 +00:00
matt
3ca8d91fc8
Add few a more PMAP_PVO_CHECKs in pte_spill; print pte addr of unmatched
...
pte in panicstr.
2001-11-04 21:15:03 +00:00
thorpej
fe988b60bb
Add PCI window addresses.
2001-11-04 19:32:32 +00:00
tsutsui
882785d057
Cast pa values to u_long in DEBUG printfs for _MIPS_PADDR_T_64BIT ports.
...
XXX should use unsigned long long format?
2001-11-04 14:07:13 +00:00
tsutsui
c143d7c33a
Fix printf format in #ifdef DEBUG part.
2001-11-04 14:01:42 +00:00
tsutsui
064be15283
Use common macro to check message length.
2001-11-04 12:03:41 +00:00
itohy
4972418390
Add midi at opl and midi at mpu
2001-11-04 10:27:15 +00:00
yamt
3eadadcb8a
add adv@cardbus.
...
(commented out if ahc@cardbus is commented out.)
2001-11-04 09:00:38 +00:00
itohy
e8ba741b16
Add mpu at cmpci and opl at cmpci attachment.
...
I always test it on alpha, and add cmpci entries to alpha config files.
2001-11-04 07:39:40 +00:00
thorpej
c88c2c4852
Don't require the IQ80310 option. Made possible by files.<board>.
2001-11-04 03:01:19 +00:00
thorpej
ddb2e9f4cb
Don't require INTEGRATOR or INTEGRATOR_FPGA options. Made possible
...
by files.<board>.
2001-11-04 02:56:13 +00:00
thorpej
9ef485f568
Garbage-collect a bunch of stuff that's not used/needed in
...
eval board environments.
2001-11-04 02:38:28 +00:00
thorpej
b8d49fac16
Move board-specific config definitions into files.<board>, allowing
...
each board type to have its own device namespace.
2001-11-04 02:20:22 +00:00
thorpej
95a9886f49
Add a comment describing what this file is.
2001-11-04 01:23:49 +00:00
thorpej
8f626436b6
Add missing RCS ID, add missing name.
2001-11-04 01:16:01 +00:00
thorpej
88ff68974a
Changes from Martin Husemann and myself:
...
- Make the 32-bit SPARC profile support work with the GCC 2.95.3
SPARC ELF compiler, which uses a different name for mcount.
- Make the 64-bit SPARC profile support header look more like the 32-bit
SPARC header (no functional change -- 64-bit SPARC already used the
correct mcount name).
2001-11-03 20:24:42 +00:00
tsutsui
1b197161d4
Add iha and trm at pci, and mark untested SCSI controllers "UT".
2001-11-03 17:22:39 +00:00
tsutsui
f88a1097c3
Add trm at pci.
...
BTW, should we also add it into INSTALL?
I guess there is no trm adapter which has Openfirmware..
2001-11-03 17:16:17 +00:00
tsutsui
6707f5f39d
Add trm at pci.
2001-11-03 17:08:56 +00:00
yamt
7a6b533ba6
add btinfo stuff.
2001-11-03 12:02:28 +00:00
jdolecek
1a92fabcb3
Don't print any warning if the time base was not provided (i.e. given as zero).
...
Fixes port-i386/1413 by David Carrel.
2001-11-03 11:16:25 +00:00
yamt
375b263ebc
- remove debug printf.
...
- reset the board in EtherStop.
2001-11-03 09:36:47 +00:00
lukem
3343f31154
explicitly pull in sys/types.h
2001-11-03 06:22:54 +00:00
reinoud
9be624a530
Not used in this port yet but since it is supposed to be a generic machine
...
dependend loadfile extention i copied it from arch/arm32/include where it
was committed as part of the ofwboot for sharks where Jason is working on.
2001-11-03 02:12:37 +00:00
rearnsha
e4fff4a560
Replace most uses of pmap_pde_p with pmap_pde_page, since that is what
...
we need later in the code. This fixes a fatal kernel fault in
pmap_modified_emulation if a user application tries to access a kernel
address that is section-mapped.
Add a diagnostic that detects attempts to call pmap_kenter_pa with a
va that is section-mapped.
2001-11-03 00:06:02 +00:00
rearnsha
64c191c269
Define boolean predicates pmap_pde_page, pmap_pde_section & pmap_pde_fpage,
...
which return true if their pde argument is a coarse page, section or
fine page respectively.
2001-11-03 00:01:23 +00:00
rearnsha
6dcc9636dc
Define L1_FPAGE for fine page entries in L1 page table.
2001-11-02 23:58:46 +00:00
thorpej
8526824bce
Fix the LOADADDR() macro.
2001-11-02 23:43:13 +00:00
thorpej
efe39dc997
The a.out header is at the beginning of the .text segment in
...
ZMAGIC images, so use the correct constant (KERNEL_TEXT_BASE)
to find it.
2001-11-02 21:51:57 +00:00
thorpej
428018d519
The a.out header is at the beginning of the .text segment in
...
ZMAGIC images, so use the correct constant (KERNEL_TEXT_BASE)
to find it.
2001-11-02 21:19:10 +00:00
thorpej
b563250dbb
Couple of changes:
...
- Set MARK_START to where we expect to be loading the kernel (0xf0100000).
- The ARM OpenFirmare bindings document describes how the client
program is loaded: OFW allocates and maps 6MB of memory at load-base
(0xf0000000), loads the client program, and then unmaps the memory from
the end of the client program to the end of the allocated region. Then
transfers control to the client program. We must emulate this behavior
to load the kernel: allocate 5MB at 0xf0100000 (where we expect to load
the kernel), load the kernel, then unmap the area after the kernel.
We can now load DHCP and load the kernel via NFS before getting the
dreaded Data Abort.
2001-11-02 20:24:37 +00:00
thorpej
f0be361fce
Make this build again with ALLOC_TRACE, and enable freeall().
2001-11-02 19:58:52 +00:00
lukem
cf524d2464
replace __byte_swap_long_variable and __byte_swap_word_variable
...
#define ({ }) with static __inline { }
2001-11-02 05:23:48 +00:00
lukem
153d16f7b1
replace __byte_swap_long_variable and __byte_swap_word_variable
...
#define ({ }) with static __inline { }
2001-11-02 05:17:59 +00:00
matt
767a35ff99
Indirect labels should start with L
2001-11-02 02:36:57 +00:00
thorpej
da9b5f3614
loadfile() support for the Shark.
2001-11-02 01:27:41 +00:00
thorpej
4cbfdf4a51
Correct a kernel name.
2001-11-01 22:55:25 +00:00
thorpej
13d619a803
Check in of work-in-progress ofwboot for the Shark. Starts, does a
...
DHCP, attempts to load kernel, gets a Data Abort.
2001-11-01 22:50:18 +00:00
rearnsha
87cb8af648
When clearing the modified bit for modified emulation, don't turn
...
caching on for a page just because we are clearing the writable bit in
the PTE: this is incompatible with the way pmap_vac_me_harder works,
and the code in the modified emulation handler doesn't know about
recalculating the cachable attributes (nor should it, IMO).
Also, if we are invalidating a page, flush its TLB entry; for some
reason we were only doing this when clearing the Write or modified
bits.
These patches together seem to solve the random seg-faults that were
still occuring occasionally under heavy paging.
2001-11-01 15:49:16 +00:00
drochner
b4d5b7d621
protect against multiple inclusion
2001-11-01 12:54:35 +00:00
yamt
b7574e5c56
add settings for ne2000.
...
(commented out)
2001-11-01 09:45:03 +00:00
yamt
3492b7a4c6
add ne2000 standalone driver.
2001-11-01 09:37:17 +00:00
chs
fa6e18a029
in pmap_extract(), detect unmapped users addresses too.
2001-11-01 07:37:36 +00:00
thorpej
44f1c938e8
Don't actually need elf64 support in installboot(8).
2001-10-31 22:13:03 +00:00
thorpej
66f972ab70
Need byteorder.c for loadfile_elf*.c
2001-10-31 21:39:02 +00:00
jdolecek
159a2b871c
use right number of zeroes for Cyrix i386_cpuid_cpus[] entries
...
reformat the entries with all zeroes to be more easier to verify
2001-10-31 20:35:21 +00:00
jdolecek
6cb3157ebe
Add defines for the rest of fasttraps as defined on Solaris8/i386. For
...
documentation purposes only (though CLOCK_SETTIME a.k.a T_GETHRESTIME
shouldn't be too hard to implement).
2001-10-31 18:20:13 +00:00
jdolecek
f3bfeee0d6
Fix one more place where we need to restore %fs/%gs explicitly.
2001-10-31 18:17:56 +00:00
jdolecek
01d4649f9f
Make local INTRENTRY, INTRFASTEXIT match those in locore.s, i.e. store &
...
restore %fs/%gs appropriately.
Fixes kern/14275 - compat svr4 works on i386 again :)
Thanks to MOCHIDA Shuji for initial investigation on the issue, that helped
to find the bug a lot.
2001-10-31 18:16:02 +00:00
thorpej
d42a6dc5c2
Rather than using a NetBSD-specific header file <machine/int_types.h>
...
and non-standard inttype-like types, pull in <sys/types.h> if
_KERNEL or _STANDALONE and <inttypes.h> otherwise, and use standard
inttype types.
Discussed with and OK'd by Christos.
2001-10-31 18:05:35 +00:00
bjh21
54edd2d848
Define BOOT_ELF32. Don't define ELFSIZE.
2001-10-31 17:59:38 +00:00
bjh21
82b2265851
Add loadfile_machdep.h, which has been missing since I committed boot26.
2001-10-31 17:58:54 +00:00
thorpej
6d2e0bcbc2
Use <machine/elf_machdep.h> to override Elf64_Word and Elf64_Sword
...
on the Alpha (which uses a non-standard definitions for historical
reasons), rather than #ifdef __alpha__ (which is not cross-tool safe).
2001-10-31 17:44:42 +00:00
thorpej
6797e85570
Include support for elf64.
2001-10-31 17:21:47 +00:00
thorpej
e727e3f180
Split elf32 vs. elf64 handling in loadfile(), including support for
...
each separately and explicitly. BOOT_ELF is now BOOT_ELF32 and
BOOT_ELF64, and ELFSIZE should no longer be defined in loadfile_machdep.h.
2001-10-31 17:20:45 +00:00
reinoud
88ca038117
Change MACHINE_ARCH to arm making it ELF now.
2001-10-31 02:10:35 +00:00
thorpej
4810d73020
Build the loadfile() a.out, ECOFF, and ELF back-ends as separate
...
objects.
2001-10-31 01:51:42 +00:00
thorpej
715b4d636e
Use the standalone byteorder routines.
2001-10-30 23:39:08 +00:00
thorpej
e8ee04475d
- Add a new vnode flag VEXECMAP, which indicates that a vnode has
...
executable mappings. Stop overloading VTEXT for this purpose (VTEXT
also has another meaning).
- Rename vn_marktext() to vn_markexec(), and use it when executable
mappings of a vnode are established.
- In places where we want to set VTEXT, set it in v_flag directly, rather
than making a function call to do this (it no longer makes sense to
use a function call, since we no longer overload VTEXT with VEXECMAP's
meaning).
VEXECMAP suggested by Chuq Silvers.
2001-10-30 15:32:01 +00:00
thorpej
380b5498e9
Make sure to load/store bbinfo values as big-endian.
2001-10-30 05:52:30 +00:00
thorpej
f16413a699
Rather than using nlist(3), use a magic structure with a magic
...
number that installboot(8) can search for. Suggested by cgd@netbsd.org .
2001-10-30 05:13:09 +00:00
lukem
f4e04ac768
merge in changes from GENERIC revs 1.400 ... 1.432:
...
- add MTRR
- comment out DIAGNOSTIC
- add commented out SEM{MNI,MNS,UME,MNU} COMPAT_MACH EXEC_MACHO
- comment out EISA stuff
- add commented out MCA stuff
- add audio devices: esl, emuxki, yds
- add pseudo-device bridge
2001-10-30 01:39:15 +00:00
thorpej
0896046ab3
Attempt at making Type 1 config cycles work, based on "see config-map".
2001-10-30 01:21:24 +00:00
thorpej
6fd8d278ed
pci_conf_interrupt() takes bus/dev/pin, not bus/dev/func.
2001-10-29 23:33:42 +00:00
thorpej
ccb78392f1
Check in of work-in-progress of Firepower native device support.
...
We can find devices in PCI configuration space, but not much else.
2001-10-29 22:28:37 +00:00
thorpej
2d06f95095
Add/rework infrastructure that will allow us to support native
...
device drivers:
- Various native device entries in cdevsw/bdevsw.
- Rework the interrupt infrastructure to provide more flexibility to
the platform-dependent back-end. Rewrite the "ofwgen" simulated
interrupt routines to reflect the changes.
- Clear out the BAT registers and set the fixed battable entries before
calling the platform init routine. The platform init routine is allowed
to set entries in the battable.
- Don't call the platform cons_init routine until after translation is
enabled -- we might need translation to work in order to access bus
space.
2001-10-29 19:04:24 +00:00
thorpej
61438ef172
For System registers which are not 32-bits wide, they are "left justified"
...
within the 32-bit word. Add CSR_{READ,WRITE} macros which compensate for
this.
2001-10-29 18:57:15 +00:00
matt
3a74f9105b
root finds ofbus, not ofroot (just like the shark/dnard)
2001-10-29 17:32:57 +00:00
matt
40296b7cc8
Use Lirqhandler (same bug/fix as in the footbridge_irq.S)
2001-10-29 17:30:26 +00:00
rearnsha
05885de5fc
Garbage collect some early debug hacks that should not have been
...
committed in the first place and prevent linking.
2001-10-29 14:23:35 +00:00
thorpej
b5ae57acc0
Fix a typo, add some UL suffixes to memory map constants.
2001-10-29 04:48:21 +00:00
simonb
163e969b09
Include bit definitions for the Debug Status Register; from Artem Belevich
...
at Riverstone Networks.
2001-10-29 02:02:19 +00:00
simonb
545af90346
Don't return at the end of a void function.
2001-10-29 02:00:01 +00:00
simonb
f7144c4462
G/C unused enable_intr and disable_intr functions. Fix a whitespace nit.
2001-10-29 01:57:49 +00:00
simonb
46cb54843c
Whitespace nit.
2001-10-29 01:53:59 +00:00
simonb
5f47f77815
Use wrteei to enable interrupts.
...
From Artem Belevich at Riverstone Networks.
2001-10-29 01:52:09 +00:00
simonb
6596d92841
Use the Walnut FPGA register offsets instead if the i8042 offsets for
...
the keyboard/mouse command and data ports (whee! they probe now), and
set up keyboard & mouse interrupts (untested for now).
2001-10-29 01:42:11 +00:00
simonb
90a347de11
If a pckbc is configured in, configure the FPGA so that separate
...
interrupts are used for the keyboard and mouse, interrupts are high
and level triggered (and enabled).
2001-10-29 01:37:29 +00:00
simonb
cc4d8c1285
Set up irq16 (FPGA interrupt) and irq17 (SMI interrupt) for the keyboard
...
and mouse.
2001-10-29 01:32:59 +00:00
simonb
ad762e99bf
Expose (and augment) the FPGA registers, and add the static RAM address
...
and size.
2001-10-29 01:31:11 +00:00
manu
6d572de955
Added character devices #60 and #61 to chrtoblktbl[]. They were missing,
...
and it introduced problems (EBUSY error when opening the driver for
writing in securelevel >= 1, plus manipulating some unitialized data at
the end of chrtoblktbl[])
2001-10-28 17:11:56 +00:00
jdolecek
a1a864c05e
add missing dot to copyright message
2001-10-28 16:23:56 +00:00
jdolecek
86f5984fd6
Add "Pentium III (Tualatin)" entry to CPUVENDOR_INTEL/CPUCLASS_686.
...
Make sure the CPUCLASS_686 entry has really 17 (i.e. 16 + default)
name entries as it's supposed to, so that code won't crash when
run on Intel CPUCLASS_686 processor which doesn't have name entry
in the table.
Reported and fix provided by Naoto Morishima in kern/14380.
2001-10-28 16:17:05 +00:00
isaki
12707fe416
fix typo s/X86K/X68K/ in comment.
2001-10-28 07:05:51 +00:00
christos
19c695e204
fix assembler warnings
2001-10-28 01:38:52 +00:00
he
90d849dc54
Pull down revision 1.24.4.1 from the netbsd-1-5 branch:
...
Make sure that an unlabeled device gets at least RAW_PART
in the default in-core disklabel, instead of only a single
partition, so that applying a new disklabel can work normally.
2001-10-27 18:32:35 +00:00
jdolecek
1d592578e5
make compile with VM86 defined
2001-10-27 18:27:06 +00:00
darrenr
b6e4899865
fix so it compiles on a system without 'options SUN4M'
2001-10-27 17:44:18 +00:00
rearnsha
839525d027
When creating section maps, use pte_cache_mode for setting the
...
page attributes of cacheable pages.
2001-10-27 16:51:44 +00:00
rearnsha
b044d8f60c
Add a couple more diagnostics.
2001-10-27 16:48:50 +00:00
rearnsha
e185c586c3
Export pte_cache_mode. Define PT_CACHEABLE in terms of it.
2001-10-27 16:45:35 +00:00
rearnsha
3fd2995a76
Declare the plcom device.
2001-10-27 16:42:37 +00:00
rearnsha
9a322ae54f
Set initial spl level to SPL_SERIAL, which for some strange reason
...
is higher than SPL_HIGH (maybe we should be fixing SPL_HIGH).
If IPL_STATCLOCK is defined, initialize spl_masks[_SPL_STATCLOCK] from
it; otherwise initialize use IPL_CLOCK.
2001-10-27 16:41:00 +00:00
rearnsha
85123cf6bf
Add new spl level -- _SPL_STATCLOCK.
2001-10-27 16:37:24 +00:00
rearnsha
8a92dcdaa8
Pull in machine/conf.h to find out if we have the plcom serial driver.
...
If so, then call plcomsoft when appropriate.
2001-10-27 16:34:12 +00:00
rearnsha
4487810503
Add the IFPGA console device.
2001-10-27 16:29:23 +00:00
rearnsha
4aeabfe53e
Build tags files for the evbarm subtree.
2001-10-27 16:23:05 +00:00
rearnsha
19cf921b2c
Support for the PrimeCell PL010 UART. Similar in behaviour to
...
the normal com driver, but with competely different bit and register
assignments.
2001-10-27 16:22:06 +00:00
rearnsha
27bfd8adf2
Register definitions for the v360 PCI-localbus bridge, as used
...
on the Integrator/AP.
2001-10-27 16:20:29 +00:00
rearnsha
00a19aff1d
Support for the Integrator/AP core-logic FPGA.
2001-10-27 16:19:08 +00:00
rearnsha
65f54d13cc
Basic support for the Integrator/AP board.
2001-10-27 16:17:51 +00:00
rearnsha
e882c399b9
Add SCSI PCI and support for the integrator console.
2001-10-27 16:15:50 +00:00
rearnsha
b7203fd4cb
Configuration for Integrator boards.
2001-10-27 16:14:44 +00:00
rearnsha
682379120f
Integrator boards need a special start-up file to reposition the
...
kernel image.
2001-10-27 16:14:04 +00:00
rearnsha
3444679bb4
Define BOARDTYPE in the Makefile so that the target-specific
...
Makefile fragment (to be added shortly) can DTRT based on the
board we are building a kernel for.
2001-10-27 16:12:33 +00:00
rearnsha
dfab106e99
Add Integrator files.
2001-10-27 16:10:12 +00:00
rearnsha
cd6b6b2576
Pick up arm/psl.h if not NEWINTR.
2001-10-27 16:08:16 +00:00
rearnsha
5431825a48
Add code to support machines that don't use NEWINTR.
2001-10-27 16:07:45 +00:00
rearnsha
267e45bb0f
Temporary file, until such time as the integrator is made to
...
work with NEWINTR.
2001-10-27 16:06:57 +00:00
rearnsha
a6fe9fcb48
Include arm/pci_machdep.h.
2001-10-27 16:06:15 +00:00
rearnsha
4d7eb9deff
Fix a comment. EV boards don't always use a Footbridge.
2001-10-27 16:05:03 +00:00
jdolecek
5d461f21ee
Update freebsd_sigcontext to what FreeBSD currently uses, and save/restore
...
%fs/%gs as appropriate.
XXX Note that the new sigcontext uses the new sigset_t instead of old
int sc_mask. The new FreeBSD sigcontext doesn't contain any backward
compatibility sc_mask, so basically old FreeBSD application making
use of sigcontext are hosed. This can't be fixed in NetBSD compat code.
2001-10-27 12:26:29 +00:00
shin
4843675231
fix virtual alias problem in pmap_copy_page().
...
to eliminate virtual alias, source page should also be flushed.
fixes PR/13587.
2001-10-27 05:44:45 +00:00
msaitoh
32b3143333
Fix incorrect kernelmode check in INTRENTRY macro.
...
Broken INTRENTRY causes CPU reset when sigaltstack is used.
2001-10-27 03:46:19 +00:00
matt
c62d330ad1
Netwinder's MACHINE_ARCH is arm, not arm32.
2001-10-26 23:21:31 +00:00
tron
8aa847844a
Don't try to probe PCI mode on kernels without PCI support. Patch suppied
...
by Rob Windsor in PR port-i386/14364.
2001-10-26 17:07:28 +00:00
shin
e003f33738
remove " in assignment of ENDIAN.
...
fixes mipseb link breakage.
2001-10-26 08:25:54 +00:00
jmc
6d536163de
Change defaults for kernel compiles. Default all to USETOOLS?=no and have
...
the etc Makefile override that by putting USETOOLS into $.MAKEOVERRIDES
This way the default for kernel compiles is still to use the installed
toolchain instead of depending on $TOOLDIR. $TOOLDIR can be used by
simply adding USETOOLS=yes to the command line as usual.
Adjust each ports template to set the default no setting and also pull in
bsd.own.mk if they weren't already to ensure they'll build correctly
with the new toolchain setup.
2001-10-26 06:45:33 +00:00
enami
5bd379b1b2
Fix size of iospace; it's not 2 but 4, since two 16bit wide registers at
...
offset 0 and 2.
2001-10-26 04:22:25 +00:00
eeh
11f7f986bd
Fix bugs in previous.
2001-10-25 23:07:50 +00:00
eeh
5c34145ba7
_LP64 -> EXEC_ELF64
2001-10-25 22:03:38 +00:00
mrg
5f1e48b312
lets play catch up with thorpej.rototiller
2001-10-25 13:28:21 +00:00
kleink
3a3c243c62
Tidy up a little, to be like other ports.
2001-10-25 12:26:18 +00:00
augustss
78ed7b801d
If there is no pckbc, but there is a ukbd, try using the latter as console.
2001-10-24 21:05:17 +00:00
thorpej
678788904a
Memory map and system registers for the Firepower ES, MX, LX, and TX
...
systems.
2001-10-24 20:36:44 +00:00
leo
56252d5449
Small changes to the boot system:
...
- Install boot.atari in both / and /usr/mdec. It looks good to have a
spare copy soemwhere...
- Add '/boot.ata' as a last resort bootname.
All per discussion with Simon Burge, Matthew Green and Soren S. Jorvang.
2001-10-24 20:12:57 +00:00
thorpej
163bd42722
Per request of mrg@netbsd.org, use MACHINE_ARCH of "sparc" for 32-bit
...
sparc64 kernels, thus defaulting to using the 32-bit "sparc" target
toolchain.
2001-10-24 19:12:18 +00:00
thorpej
36703ab375
Clean up the 32-bit vs. 64-bit kernel configuration stuff:
...
- Put all options necessary to build a 64-bit kernel into std.sparc64-64,
which can be included after std.sparc64.
- Change the logic used to enable 64-bit kernels. The kernel Makefile now
uses an LP64 make variable, and explicitly sets compiler flags and linker
scripts to generate 32-bit or 64-bit kernels.
2001-10-24 18:49:38 +00:00
soren
3715322bb3
Determine PCI config mode before the ACPI probe; some methods need
...
to access PCI configuration space early.
2001-10-24 15:53:04 +00:00
thorpej
d213444bc5
Need to install intr.h.
2001-10-24 15:33:17 +00:00
bjh21
a9c8e8ab15
We set MACHINE_ARCH to "arm" on arm26 now.
2001-10-24 13:53:24 +00:00
billc
8b2a9cd42c
NEWPMAP fixes that I missed committing.
2001-10-24 06:26:10 +00:00
shin
2239512d8c
make this compile with -DDEBUG_FIND_PCIC.
2001-10-24 04:09:23 +00:00
thorpej
d1550cb938
For systems (like the briQ) that don't have a "/cpus", look for
...
CPUs in the OFW top-level.
2001-10-23 22:52:14 +00:00
thorpej
9fd244e195
No need to explictly set MACHINE any more; config(8) does it.
2001-10-23 21:24:18 +00:00
reinoud
d3340e7db2
Add a pretty lame LOWMEM configuration ... it has the basic interfaces in it
...
but lacks the podulebus completely; this might be a good starting point for
small memory machines.
Most stuff is disabled but commenting it for easy adding.
2001-10-23 21:21:59 +00:00
pooka
bbee62e254
declare variable used only with BLINK inside #ifdef BLINK to avoid
...
unused variable warning
2001-10-23 20:59:42 +00:00
thorpej
90a2bc2cf7
For MIPS kernel Makefiles, don't set ENDIAN in std.${MACHINE}. Instead,
...
explicitly set MACHINE_ARCH to the appropriate thing. Makefile.mips will
then set all of the internal variables it needs to accordingly.
2001-10-23 20:40:00 +00:00
thorpej
693eff0e2e
No need to set MACHINE now that config(8) sets it.
2001-10-23 19:55:56 +00:00
thorpej
9e91d48638
This file only set MACHINE, which is now set by config(8); delete it.
2001-10-23 19:52:49 +00:00
thorpej
2a073cf8d0
Set MACHINE_ARCH explicitly in Makefiles for which it is constant.
...
Also, since config(8) now explcitly sets MACHINE, there is no need
to do it here in the Makefile.
2001-10-23 19:42:16 +00:00
thorpej
ba217c4196
Set MACHINE_ARCH explicitly in Makefiles for which it is constant.
...
Also, since config(8) now explcitly sets MACHINE, there is no need
to do it here in the Makefile.
2001-10-23 19:26:41 +00:00
thorpej
2c5ebcddfb
Use MACHINE, not TARGET_MACHINE.
2001-10-23 18:57:32 +00:00
thorpej
a2bf3bc31b
Pull in <bsd.own.mk> to get the correct toolchain definitions for
...
the USE_NEW_TOOLCHAIN case.
2001-10-23 17:32:35 +00:00
rearnsha
4ea0954941
Make sure the compile directory doesn't get purged by cvs updates
2001-10-23 13:35:10 +00:00
thorpej
52b15119b0
Add the correct model string for the Total Impact briQ.
2001-10-23 04:19:34 +00:00
thorpej
42e835d381
Clean up the NetBSD/ofppc boot loader:
...
- Garbage collect some cruft that doesn't apply to the ofppc port.
- Make our OFW-friendly alloc.c more like the libsa alloc.c
- Generally reduce some differences where we can between this
boot loader and the NetBSD/macppc boot loader.
- Use libsa's loadfile().
- Fix DDB symbol loading -- Add a magic number after the args string
so the kernel knows the symbols are there, provide both ssym and
esym, and make sure all these values are aligned to a 4-byte boundary.
- Add support for MS-DOS file systems.
2001-10-23 03:31:25 +00:00
thorpej
506d233170
Add machine-dependent defns for libsa's loadfile().
2001-10-23 03:02:03 +00:00
thorpej
dc1a120d26
ofwr_init(): don't clobber r7 -- early startup code needs it to find
...
DDB symbols.
2001-10-23 02:59:09 +00:00
thorpej
718fdfe48f
Add support for fetching DDB symbols from the boot loader. This requires
...
changes to the boot loader (forthcoming).
2001-10-23 01:36:32 +00:00
thorpej
624e16931f
Begin the task of splitting up the ofppc port into common code
...
and platform-specific code, similar to how the Alpha port is
split up.
2001-10-22 23:01:17 +00:00
thorpej
6817ae639c
Fetch the platform name earlier, so we can determine what kind of
...
system we're running on earlier.
2001-10-22 16:44:03 +00:00
mrg
b8aa5aa437
sync with reality:
...
options BLINK
options AUDIO_DEBUG
audiocs at ebus
audio at audiocs
2001-10-22 16:42:44 +00:00
mrg
35a5f0448e
add a note about keeping this file in sync with the sparc64 conf.c. also
...
add some unused code for the pci bus device. (hi uwe!)
2001-10-22 16:40:47 +00:00
mrg
195bc7aef4
clean up for fd changes.
2001-10-22 15:19:55 +00:00
thorpej
63a4b630bb
CPUs attach to mainbus now.
2001-10-22 14:47:44 +00:00
thorpej
783ea940e5
Various things that make OFW-driver kernels work on my Firepower LX MP
...
again:
- Special-case the attachment of CPUs, and logically attach them to
"mainbus", attaching them before any other devices. Otherwise,
CPUs would be found very late in the game on my Firepower.
- Sanity check the timebase-frequency property, printing a warning if
it's not the same on each CPU.
- Pass the correct CPU ID to cpu_attach_subr().
- Fetch the platform name from the OFW root node. We can key off this
later when we implement support for native drivers in the ofppc port.
- Use a table of "special" toplevel OFW nodes ... we skip these nodes
during the device configuration phase. This generally includes the
"options", "packages", etc. nodes. Inspired by sparc & sparc64 ports.
2001-10-22 14:46:08 +00:00
takemura
addd2cfb92
Remove junk line, which I inserted in last commit.
2001-10-22 13:44:05 +00:00
mrg
da8425b96f
clean up ebus:
...
- kill dead dma code
- remove icky self->dv_parent casts
audiocs @ ebus doesn't crash anymore, but it doesn't appear to work
yet either...
2001-10-22 08:09:46 +00:00
mrg
8243634795
this has moved to dev/ebus
2001-10-22 08:04:56 +00:00
mrg
bf444e34ac
kill a dead driver. the floppy driver will be shared with sparc anyway...
2001-10-22 08:03:01 +00:00
mrg
997fe9c917
use <dev/ebus/ebusreg.h>
2001-10-22 08:00:12 +00:00
mrg
abcb6203a8
implement `options BLINK' for sparc64 for ebus & sbus. tested on a U2
...
(sbus) and a U5 (ebus).
2001-10-22 07:31:41 +00:00
mrg
f9358dee8b
use <dev/ebus/ebusreg.h>
2001-10-22 07:06:20 +00:00
thorpej
458af13ace
If we get a secondary CPU on a non-MP kernel, bail out early
...
and print a message about why. This prevents the primary CPU's
cpu_info from being scribbled over w/ secondary CPU info.
2001-10-22 01:45:51 +00:00
thorpej
102249430c
Use <bsd.own.mk> so that the right thing happens when building a
...
kernel w/ USE_NEW_TOOLCHAIN.
2001-10-21 21:13:11 +00:00
thorpej
74c571e033
Normalize the sparc64 kernel Makefile.
2001-10-21 19:46:16 +00:00
simonb
d7357337e0
Fix typo, noted by Artem Belevich.
2001-10-21 15:09:36 +00:00
bjh21
9eca213216
Since arm26 uses ELF, set MACHINE_ARCH to "arm".
2001-10-21 14:19:34 +00:00
takemura
b9f6f9619d
- Added auto detection for BCU device no.
...
- Added clock mask unit register definition.
- Reset child devices and set clock mask.
2001-10-21 09:38:10 +00:00
isaki
3c63a64cab
Change 3 glyphs according to SRAM flags (0xed0059),
...
when ITELOADFONT ioctl is issued.
2001-10-21 03:46:30 +00:00
bjh21
fccfe9fb92
Don't call Debugger() unless the kernel has DDB.
2001-10-20 22:15:02 +00:00
simonb
e1f5fbd944
Fix a tyop in a comment.
2001-10-20 13:47:09 +00:00
billc
5c078bc6e7
Total Impact BRIQ kernel config
2001-10-20 08:32:24 +00:00
billc
b3a54fcf2e
just set MACHINE and include powerpc/param.h - non-NEWPMAP ofppc kernels boot now.
2001-10-20 08:27:12 +00:00
billc
60a9daa74c
Get check for CPU type right.
2001-10-20 08:23:49 +00:00
billc
c67bf6b4de
Fix cpu check to actually work.
2001-10-20 08:22:58 +00:00
billc
c22d12260d
update for NEWPMAP
2001-10-20 08:22:29 +00:00
jmc
51e607ae23
Add nb_progname so this will compile on older NetBSD systems that will be
...
upgrading to -current via the new toolchain build process eventually.
2001-10-20 06:14:30 +00:00
simonb
d9e75e198e
Fix typo in mmap hander.
2001-10-20 05:56:35 +00:00
fvdl
cbc00e701a
Until early last year, the i386 port had 256M of kvm, and the max.
...
amount of kvm used for buffers was set at 70%, some 188M. Then
the total amount of kvm became 1G, and the amount for buffers
thus became some 716M. This is really too much, and some
device drivers want to map quite a bit of kvm these days.
So, cap it at 384M, which gives each buffer a little over 8k (the
default FFS blocksize) physical in an 1G physram configuration.
2001-10-20 00:17:47 +00:00
uch
ce86c1446b
increase maxusers (8->16)
2001-10-19 17:17:19 +00:00
scw
f6e6d32172
Use the entry-point returned from the first call to loadfile()
...
instead of the one from the second call (which has a non-zero
offset included in it).
Fixes port-mvme68k/14292 from Ken Seefried.
2001-10-19 17:09:16 +00:00
shin
003fcedca1
cosmetic change.
2001-10-19 05:47:40 +00:00
bjh21
3506931511
Make sure that PT_STEP is defined for userland, even though we don't
...
support it in the kernel yet. If we don't do this, GDB arbitrarily
assumes we wanted it to be 9, which is silly.
In the kernel, leave it undefined so that sys_process.c doesn't
generate code for it.
2001-10-19 00:18:20 +00:00
phil
ff3d710817
Sharks run coda just fine. Get it here so it is easy to recompile
...
a kernel with coda support.
2001-10-19 00:12:24 +00:00