Commit Graph

49414 Commits

Author SHA1 Message Date
lukem c50eb8cc85 deprecate fs_fscktime; we never used it.
in an effort to maintain compatibility with freebsd/openbsd/whatever,
i'm attempting to get the superblock format in sync, and freebsd uses
the int32_t at this position for `fs_pendinginodes'.

if we ever decide to implement fscktime functionality, we'll:
a) make sure to liaise with the other projects to reserve the same
   spare field
b) actually implement the code this time ...

(this is also preparing us for other changes, like the new dirpref code)
2001-09-03 14:52:17 +00:00
tsutsui cc46ca4327 Add more working PCI devices on arc:
pcscp* at pci?
 epic* at pci?
 pcn* at pci?
 rtk* at pci?
 sip* at pci?
and remove le at pci, which is superseded by pcn.
2001-09-03 14:39:08 +00:00
mrg be4df68bb5 don't explicitly size the intrhand[] array; fixes PR#13859 from <martti.kuparinen@iki.fi> 2001-09-03 13:07:21 +00:00
matt 9b16bbab9f Move constab from conf.c to autoconf.c (since conf.c is going away shortly). 2001-09-03 05:02:18 +00:00
matt e940b67ae4 Use new shared arm/arm32/conf.c 2001-09-03 04:28:51 +00:00
thorpej a73a7f44bd Bump MAX_CONF_DEV to 32, add some missing newlines in error
messages, and add a TODO item (allocate all metadata dynamically).
2001-09-03 03:46:26 +00:00
matt d7c7a3ea02 Add __ELF__ stuff for resized types under ELF. 2001-09-03 01:51:39 +00:00
matt b0f89169ee Switch netwinder to use a common conf.c for the arm ports. 2001-09-03 01:50:00 +00:00
matt cc353c4912 Sync hpcarm & arm32 conf.c (this entails shifting the i4b major numbers
up by one on arm32 and and adding notdef entries on hpcarm).
2001-09-03 01:33:38 +00:00
uwe 73b5928070 _bus_dmamap_load_mbuf: panic with correct function name. 2001-09-03 01:14:14 +00:00
thorpej 3ac8a43f8b Comment what the PF bit means in the MODE SELECT command, and
define a scsipi_mode_page_header, which has the common fields
(page code and page length) of all mode pages.
2001-09-02 22:06:16 +00:00
thorpej dda09e1b39 Add the Force Unit Access and Disable Page Out bits to the
READ(10) and WRITE(10) commands.
2001-09-02 20:17:04 +00:00
thorpej e6bfee4968 Use the AUDIO_PAGE definition common to SCSI and ATAPI. 2001-09-02 19:53:40 +00:00
thorpej ac7519b12e Centralize the definition of the page code mask and page-savable bit
in the pages returned by MODE SENSE.
2001-09-02 19:35:20 +00:00
matt 64bde37d3a com (16550) attachment for iq80310 2001-09-02 18:50:13 +00:00
thorpej d737e7fda8 Oops, name the caching parameters page structure member. 2001-09-02 16:47:45 +00:00
enami 26ea33d355 Fix an obvious typo found while reading the source. 2001-09-02 13:17:54 +00:00
tsutsui 354cce66e5 Use be16toh(), be32toh(), le16toh() and le32toh() rather than
ntohs(), ntohl() or homegrown bswap() functions.

XXX Does anyone use drives with PQUIRK_LITTLETOC on big endian machines?
2001-09-02 13:11:53 +00:00
manu 27d1edf719 Added 64 bits support in header files.
All headers should be common to 32 bits MIPS and 64 bits MIPS now.
2001-09-02 08:39:37 +00:00
tsutsui 1f2768852a Enable siop at pci. 2001-09-02 08:27:07 +00:00
manu f914316a09 Fixed indent problems 2001-09-02 07:56:11 +00:00
manu 220d274aa6 Fixed indent problems 2001-09-02 07:27:33 +00:00
manu 54eff3d533 Added some comments 2001-09-02 07:25:58 +00:00
manu b9581b43a2 Fixed an error in a define 2001-09-02 07:24:49 +00:00
tsutsui cf574991b8 Add a small version of memmove() for libsa.
Mostly identical with libsa/bcopy.c.
2001-09-02 07:04:16 +00:00
manu fbdc500a69 Fixed indent problems 2001-09-02 06:51:15 +00:00
tsutsui a234112f80 Make 3C509[B] in ISA mode probed correctly on big endian machines. 2001-09-02 06:46:57 +00:00
mrg 3ec1b99028 place the main chunk of POWEROFSEVEN's config into the .inc file, and have
the 32 and 64 files define MACHINE_ARCH, CC, LD and AS appropriately to build
a 32 or 64 bit kernel, respectively.  this allows either to be built on a
system that can generate 32 or 64 bit code.
2001-09-02 05:53:38 +00:00
lukem e3ba61f9f3 Incorporate fix by iedowse @ FreeBSD to allow disks with large numbers of
cylinder groups to work correctly, with minor modifications by me to work
with our FFS_EI code.  From the FreeBSD commit message:

	The ffs superblock includes a 128-byte region for use by temporary
	in-core pointers to summary information. An array in this region
	(fs_csp) could overflow on filesystems with a very large number of
	cylinder groups (~16000 on i386 with 8k blocks). When this happens,
	other fields in the superblock get corrupted, and fsck refuses to
	check the filesystem.

	Solve this problem by replacing the fs_csp array in 'struct fs'
	with a single pointer, and add padding to keep the length of the
	128-byte region fixed. Update the kernel and userland utilities
	to use just this single pointer.

	With this change, the kernel no longer makes use of the superblock
	fields 'fs_csshift' and 'fs_csmask'. Add a comment to newfs/mkfs.c
	to indicate that these fields must be calculated for compatibility
	with older kernels.

	Reviewed by:    mckusick
2001-09-02 01:58:30 +00:00
eeh 2102cef10c Add an entry for level-15 interrupts. 2001-09-02 01:45:47 +00:00
eeh 87bb8014dc Get rid of all simba references. 2001-09-02 01:18:56 +00:00
thorpej 1cbbd5c37c Disable all of the RF_ASSERT()s by default, enabling them if the
RAID_DIAGNOSTIC option is specified in the kernel configuration
file.
2001-09-01 23:50:43 +00:00
atatat 5f25c01eff Comment out bridge pseudo devices from ports that don't
__HAVE_GENERIC_SOFT_INTERRUPTS.  bridge(4) doesn't compile there.
2001-09-01 23:08:40 +00:00
atatat 97c67a9bae Add bridge pseudo devices to GENERIC configs 2001-09-01 21:52:23 +00:00
chs 8677b0ddf4 rearrange pmap_kenter_pa() to map unmanaged pages uncached as well.
this is apparently needed on the arc port.
slight optimization in pmap_kremove().
2001-09-01 17:08:19 +00:00
mjacob 6bb9f4a949 Add support for 2 Gigabit cards (2300/2312). This necessitated a change
in how interrupts are down- the 23XX has not only a different place to check
for an interrupt, but unlike all other QLogic cards, you have to read the
status as a 32 bit word- not 16 bit words. Rather than have device specific
functions as called from the core module (in isp_intr), it makes more sense
to have the platform/bus modules do the gruntwork of splitting out the
isr, semaphore register and the first outgoing mailbox register (if needed)
*prior* to calling isp_intr (if calling isp_intr is necessary at all).
2001-09-01 07:12:23 +00:00
msaitoh d3e7333a60 s/cpu_startup/sh3_startup/g in panic messages 2001-09-01 03:02:31 +00:00
thorpej 2cf7638731 Add the caching parameters mode page. 2001-09-01 02:39:21 +00:00
mjacob 18e1071fce Add table value for Ultra3, so configuring an Ultra3 disk shows:
sd1: sync (12.5ns offset 14), 16-bit (160.000MB/s) transfers, tagged queueing enabled

instead of:

sd1: sync (36.0ns offset 14), 16-bit (55.554MB/s) transfers, tagged queueing enabled
2001-09-01 00:54:38 +00:00
mjacob 4986b9ee8b Ulp! Open Wide! Another Firmware Enchilada!
2-Gigabit card firmware.
2001-08-31 22:28:37 +00:00
chuck 31ae40ba15 confirmed the code for MID_VAX1K NMAGIC binaries was wrong,
you've got to pad the text just like with 4.3BSD binaries.
fix it.

i have now successfully tested compat-vax1k with real
o/m/z magic binaries from both 4.3BSD and netbsd 1.3.
2001-08-31 18:44:12 +00:00
martin c51e03edde Move struct segmap declaration inside #ifndef _LOCORE to make locore.s
compilable again.
2001-08-31 18:06:13 +00:00
eeh 5783dd5873 instance-to-path works on instances not nodes. 2001-08-31 17:10:54 +00:00
eeh ed373b780a Change data segment size calculations so we don't need to resize if the
bootloader did it for us.
2001-08-31 16:47:41 +00:00
augustss 60ffafe273 Add a new quirk, PQUIRK_NOBIGMODESENSE, for devices that need big
SCSI ops, but still fails on big mode sense.
Makes M-Sys DiskOnKey work.
2001-08-31 07:09:41 +00:00
augustss 033a7fa40d Some quirks for USB M-Sys DiskOnKey. Still not enough to make it work. 2001-08-31 06:54:42 +00:00
chs 94d6f3ee95 map files are zero-length. 2001-08-31 04:56:26 +00:00
simonb 023bdd2bf2 Use comments around the token after a #endif. 2001-08-31 04:44:54 +00:00
simonb e5b3cbb4cd Use comments around the token after a #endif. 2001-08-31 04:18:52 +00:00
simonb a6b8c86af0 Remove an unneeded comment; ``sync'' with other "just include <mips/foo.h>"
files.
2001-08-31 03:53:22 +00:00
simonb 4ac4da1c52 G/C the unused kernel-only CLK_TCK #define.
XXX: does include/time.h still need <machine/limits.h>?
2001-08-31 03:46:03 +00:00
lukem 563fb2d03f no need to cast arg to lblktosize() any more 2001-08-31 03:38:45 +00:00
lukem 2bfd8a2678 More fixes from FreeBSD (with changes):
- Cast blk argument to lblktosize() to (off_t), to prevent 32 bit overflow.
  whilst almost every use in ffs used this for small blknos, there are
  potential issues, and it's safer this way.  (as discussed with chuq)
- Use 64bit (off_t) math to calculate if we have hit our freespace() limit.
  Necessary for coherent results on filesystems bigger than 0.5Tb.
- Use lblktosize() in blksize() and dblksize(), to make it obvious what's
  happening
- Remove sblksize() - nothing uses it
2001-08-31 03:15:45 +00:00
briggs e6ca9b3514 Fix use of uninitialized variable. Missed by gcc, spotted by enami. 2001-08-31 01:00:16 +00:00
eeh 84fb62aba0 Handle kernels with data+BSS segments larger than 4MB. 2001-08-30 23:00:19 +00:00
eeh f2e3486b5b Preliminary UltraSPARC III suport (not enabled yet). 2001-08-30 22:58:30 +00:00
matt 04bdd02c1a Make pmap_pte_insert STATIC so it will show up in DEBUG kernel with DDB
traces.
2001-08-30 22:06:44 +00:00
matt 4a580ee45e Make sure to restore SR 0 since returning from a syscall is actually
one way of doing a process context switch.
2001-08-30 22:00:48 +00:00
matt a140263932 Add new 7450 SPRs 2001-08-30 21:55:27 +00:00
matt 50b056bc3a Teach db_trace that some low addresses are ok to trace. 2001-08-30 21:44:58 +00:00
manu 8e1033bfc3 Enable the GCC signature test so that ld.so will be executable (needed for
Linux's ldd)
2001-08-30 20:41:36 +00:00
manu 8537f76c98 Changed the way signature tests are done. This makes possible to run
ld.so as an executable on the PowerPC (Linux's ldd does this), and it also
much clearer IMHO.
2001-08-30 20:22:08 +00:00
rearnsha 46f383bde2 Adjust printf format string for size_t change. 2001-08-30 17:16:02 +00:00
soren 9b39be0b69 Regen. 2001-08-30 16:22:48 +00:00
soren 6863a605e0 Add some more Hifn chips. 2001-08-30 16:21:42 +00:00
lukem 0cf1d74c5b be consistent when casting arg to lblktosize() in UVM_PAGE_TRKOWN debug code 2001-08-30 15:17:28 +00:00
lukem c56418af73 some improvements from freebsd/openbsd
- replace the unused fs_headswitch and fs_trkseek with fs_id[2], bringing
  our struct fs closer to that in freebsd & openbsd (& solaris FWIW)
- dumpfs: improve warning message when cpc == 0
2001-08-30 14:37:25 +00:00
mrg 10516949e9 add some sun4/sun4c/sun4m compat code so we can build 32 bit kvm. (these files are not even vaguely syncable.) 2001-08-30 09:32:23 +00:00
haya 2228225e5c Add some register definitions for TI PCI12XX and Toshiba ToPIC.
Add ToPIC97 and ToPIC100 chip initialisation routine.
Add more TI PCI12XX chip initialisation.
2001-08-30 09:20:17 +00:00
lukem c535133897 - minor whitespace and comments cleanup
- replace "filesystem" with "file system"
- fix spelo (from freebsd)
2001-08-30 08:31:25 +00:00
chs 1de4b3e2e0 min() -> MIN() (on general principles) 2001-08-30 03:55:42 +00:00
chs eccd469cf7 min() -> MIN() 2001-08-30 03:47:53 +00:00
briggs 89829e4825 defines for OPENPIC_ICR / serial mode. 2001-08-30 03:08:52 +00:00
briggs 0ea9d87eb1 Create an opt_openpic.h and add both OPENPIC and OPENPIC_SERIAL_MODE to it. 2001-08-30 03:08:22 +00:00
briggs 6017201500 Rename PCI_MAPREG_TYPE_ROM to PCI_MAPREG_ROM_ENABLE to keep up with pciconf.? 2001-08-30 02:53:56 +00:00
briggs e4f8f2f2da Respect __PCI_BUS_DEVORDER.
If all devices can handle 66MHz, then use 66MHz.
Triple the number of configured I/O ranges that we can handle on a bus
  (8 was insufficient--originally didn't consider multifunction devices)
Allow one to specify which types of memory to configure, I/O, ROM, or
  MEM--for example, one could configure only ROM or only non-ROM.
Ensure that the ROM is disabled if we're not configuring it.
Only set PCI_COMMAND_IO_ENABLE/PCI_COMMAND_MEM_ENABLE if there are valid
  memory ranges configured.
2001-08-30 02:52:41 +00:00
briggs f05abdee3c - Change default time frequency to 100MHz from 66MHz.
- Support the serial mode interrupts (with a kernel configuration option)
  on the Sandpoint X3.
- Initialize cpu_timebase.
- Enable tulip driver.
2001-08-30 02:08:42 +00:00
matt e4892d7157 When invaliding single icache line on XScale, the branch target buffer
also needs to be invalidated.  Also, but in the right sequence to empty
the pipeline on XScale.
2001-08-30 01:15:39 +00:00
simonb 352f878e45 Gah, fix a number of channel status/select bitfields. 2001-08-29 23:32:21 +00:00
nathanw 4666070137 Correct a comment: The address of the signal handler is passed to the
sigcode trampoline in pv (t12), not a3, and has been since the
beginning of time.
2001-08-29 20:17:08 +00:00
briggs c50646a1f3 Add adw 2001-08-29 17:37:47 +00:00
briggs 665cc59e75 Ensure that data accessed by the ADW driver in memory is in
little-endian byte-order.  This should work out to be a no-op
for LE systems, and allows BE systems to use the board.

Tested on PPC, reviewed by Dante.

NOTE: The board/microcode does have a BIG_ENDIAN mode of operation,
but it's not well-documented.  That might be interesting to investigate
at some point in the future, though.
2001-08-29 17:25:03 +00:00
itohy a0f0f74348 Print extra information on machine check (AS500, AS600). 2001-08-29 14:14:33 +00:00
chuck 1b6311c365 make 4.3 binaries run once again on the vax. tested with
omagic/nmagic/zmagic binaries from guest account on
Lord Isildur's tahoe system (thanks).   enabled if both
COMPAT_43 and COMPAT_VAX1K are defined.

basically rewrote exec_vax1k_prep_anymagic() to handle more
file formats.  we remove vax1k_subr.c because we now use the
standard vmcmd_readvn function.

XXX: suspect the code for MID_VAX1K NMAGIC binaries is wrong,
need a binary to confirm this...  the old code did not pad the
end of the text segment to a page boundary, and that seems wrong.
you definitely need to pad it on a 4.3BSD NMAGIC binary and i
don't see why MID_VAX1K should be different?
2001-08-29 03:43:53 +00:00
tsubai de0feee64b Regen. 2001-08-28 23:54:14 +00:00
tsubai 7cba152e7c Add more Apple devices. 2001-08-28 23:53:14 +00:00
thorpej 14f612c5b3 - Swap the bytes OR'd into init_ladrf[], for big-endian machines.
- Make sure to sync the init block.

Pointed out by Izumi Tsutsui.
2001-08-28 15:22:30 +00:00
tsutsui ab8b3ce5d3 Remove descriotion about homegrown sonic driver from TODO list
since it has been replaced with the MI driver.
2001-08-28 15:17:47 +00:00
thorpej 2e4bdfe678 Add a TODO item: Do this in 2 passes. One pass that configures the
bus (and optionally maps expansion ROMs), and an optional second
pass to disable expansion ROMs that are mapped.  This would allow
MD code to possibly execute the expansion ROMs (possibly in an x86
emulator) to configure a device (e.g. a VGA card, which pretty much
needs to be configured by its ROM).
2001-08-28 15:13:48 +00:00
thorpej cdf824bfb6 If MD code doesn't provide pci_conf_hook(), then default to not mapping
the expansion ROMs on cards, since address decoders may be shared between
the ROM and PCI memory space on some cards (i.e. "only map the ROM if you're
going to use it, and then unmap it when you're done" is the intended
usage).
2001-08-28 15:09:10 +00:00
eeh b14bf2ceef Fix incorrect parentheses. 2001-08-28 14:51:28 +00:00
thorpej fdb02063d2 Print "auto-FDX" for the second "autoselect" instance. Pointed out
by Izumi Tsutsui.
2001-08-28 14:15:18 +00:00
ad d46bbf4926 In the absense of any objection, move the rbus I/O range to 0x600-0x700
in the ARMADA config. On the M700 at least, the SMBus host controller lies
it 0x4000 (the beginning of the range allocated by default to rbus), and
stomping all over it causes bad things to happen.
2001-08-28 09:25:52 +00:00
matt df0327518e Add evbarm, ibmnws, mvmw88k, m88k 2001-08-28 05:59:48 +00:00
matt dfbb14ad68 __syncicache needs to be exports to userspace as well as the kernel. 2001-08-28 03:03:43 +00:00
eeh 2879b54794 Enable some additional useful options like NFS_SERVER and RAID. 2001-08-28 02:43:49 +00:00
simonb 2d4d9f7fdc Stop pci_configure_bus() from mapping PCI expansion ROMs. Fixes problems
with at least some sip (and possibly siop) cards on the walnut.
2001-08-28 01:35:06 +00:00
eeh 8949c133a4 Get rid of debug printf. 2001-08-27 22:38:34 +00:00
augustss 8afb9f3591 Use #include <machine/intr.h> instead of #include <machine/cpu.h> to
improve portability.
2001-08-27 22:37:33 +00:00
augustss 494454a87d Comment out the hme driver; it's not totally MI yet. 2001-08-27 22:25:42 +00:00