Commit Graph

560 Commits

Author SHA1 Message Date
christos
b300b74469 Disable SYSTRACE by default on all kernels (discussed with core) 2006-08-12 15:29:52 +00:00
hubertf
ded0447fa8 spc(4) can also attach to pcmcia(4), as was already in hpcmips/GENERIC
for quite some time. Add it to all systems that have pcmcia SCSI.

Pointed out by Björn Johannesson <rherdware@yahoo.com> in private mail,
OK'd by matt@
2006-07-31 23:29:54 +00:00
garbled
a59f110c72 Rather than hardcode the location of the Interrupt Vector Register, we
try to locate it using the residual data.  On some machines this doesn't
work, so we fall back to hardcoding it.  This should fix isa interrupts
on the 7025-F40, which has the IVR at a different location.
2006-07-13 17:50:37 +00:00
garbled
40bedaf4c8 Add support for rebooting 7024 and 7025 models. Since I cannot figure
out how to properly reboot these machines, instead we make use of the
auto-poweron-alarm time, and power cycle the machine to simulate a
reboot.  This is a hack, but until I get documentation on these machines,
at least you will be able to reboot them.
2006-07-12 21:28:33 +00:00
garbled
793a3b26d8 Change how the MPIC/OpenPIC is configured at boot. Rather than scanning
for a magical PCI device location (that is sometimes wrong), we scan the
residual data for an MPIC, and if we find one, wire it up from there.
This will hopefully allow interrupts to work on the MPC750 and the
7025-F40. I suspect however the interrupt vector address on the 7025 will
still need some work.
2006-06-29 17:16:59 +00:00
liamjfoy
aeee5deab9 Add CARP to GENERIC kernel configs. CARP is not enabled by default.
ok: christos
2006-06-28 15:19:27 +00:00
garbled
d0b840b1df General fixups:
1) Fix support for the powerstack E1.  This machine needs to use the 8259
directly, and cannot use the prep interrupt vector register.  Place a
quirk entry in the table for the machine.
2) Add a new com0_vreset boot image.  The vreset code only works on a few
machines, and breaks others like the 7025-F40.  Its only limitedly useful
when used with the com0, so just make it an optional image the user can
install by hand if they want.
3) Bump the bootloader to 1.8 with the above change.
2006-06-27 23:26:13 +00:00
garbled
17ca05a76f 1) Modify pnpbus attachment code to properly decode pnp memory range packets.
2) Modify pnpbus attachment code to record the chipid of the device if it
   has one.
3) Change the clock probes to use the chipid, rather than relying on
potentially untrustworthy subtype and interface.
4) Add decoding of memory ranges to the RESIDUAL_DUMP code.
5) Add a we@pnpbus device to allow netbooting and root device detection
from an IBM we ethernet.  (it will only work if your firmware detects it)
6) Because I moved the pnpbus probe to occur prior to pci and isa, it
screwed up the root device detection and firmware path building code.
Completely rewrite the fw-path detection code to deal with this.
2006-06-23 03:08:41 +00:00
garbled
4c0cfa49ad Attach the pnpbus prior to attaching the pci bus on the prep. This
should allow us to probe for both pnp-attached devices and isa-attached
devices while preferring the pnpbus attachment point.
2006-06-21 20:08:11 +00:00
garbled
cb76e8b6d7 Update install WRT recent clock changes, and break INSTALL into INSTALL
and INSTALL_SMALL.  Since floppy images have to fit on one floppy, we
have to really cut down on the drivers on that image, but people
netbooting don't have that problem, so they deserve a more featured
kernel to install with. (namely one with raid support and more ethernet
drivers)
2006-06-20 17:29:07 +00:00
garbled
1efe96e909 Basic prep timecounter support. This greatly increases the stability of
ntp on my 7248, however, my 7043-140 is still a bit flaky.  I suspect the
only way to fix the 7043 is going to be writing a timecounter driver for
the 8254 present on these machines.  Either way, this makes some of the
machines better, and the other machines are still about the same as they
were before, so it's a net gain for the port.
2006-06-20 05:49:09 +00:00
garbled
aa0bc147ae A bit of clock rototill. It's safer to detect things known by the
residual with the pnpbus probes, than it is to do it with raw isa probes,
so I've replaced the isa mkclock and mcclock code with a pnpbus attachment.

While writing the mkclock code, I realized that on motorola prep machines
the mkclock uses the same port range as the nvram part. (it's actually
the same chip/part).  This was causing the nvram not to work on those
machines.  Now the nvram code will recognize this, and wire up the
mkclock as well.  The mkclock probe is just a stub probe used to
pre-detect the fact that this is one of those machines.
2006-06-15 18:15:32 +00:00
tsutsui
261274d592 Put newline if there is no input on Boot: prompt. 2006-06-10 07:49:29 +00:00
tsutsui
e684286988 Fix a botch on ANSIfy. 2006-06-09 18:11:58 +00:00
garbled
76847dcb92 Completely rework how we look up PCI interrupts on prep:
1) Rather than build an array of the pci->intr mappings, build a proplib
tree.
2) add a SIMPLEQ of device properties to the pci_chipset_tag to hold the
proplib trees of each bus.
3) Move the interrupt routing code from pci_conf_interrupt to pci_map_intr()
4) Deal properly with non-native PCI bridge chips that are not recognized
by the prep firmware, and therefore are not noted in the residual data.

The major win of this restructure is #4. Hopefully I haven't broken
anything. Tested on a 7248-100, 7043-140 and 7024-E20.
2006-06-09 01:19:10 +00:00
garbled
b18c709a99 Make the space for the ramdisk slightly larger. 2006-06-01 21:16:05 +00:00
garbled
fed113c6f4 Rewrite the pci bus attribute decodings to be human-readable by using the
proper pcipnp structure file to read them rather than magical array offsets.

Add more complete decoding of the VPD, including extendedvpd, and TLB.  While
I was here, fix a bug where we never printed the L1 cache data properly.
2006-05-30 23:56:38 +00:00
garbled
6a298274ec Add code to decode small vendor items that are documented. Namely we can
now decode the chipid, and L2 processor affinity data.

Also fix a bug where we were reporting the service processor type as a
memory controller.
2006-05-29 22:11:15 +00:00
garbled
c9e13db63a Implement partial support for the RS6K PCI Bridge found on 7025-F40
models.  This code was made possible by assistance from Cory Bajus.

Add code that asks the PCI bridge what it's config base address is, and
use that when wiring up an indirect bridge type.
Move prep's user segment register to 10, because the 7025's PCI config
address is at 11, where the user segment used to be.
Add a battable entry for 0xbf800000 for machines with RS6K bridges.

There is still probably work left to be done before a 7025-F40 is fully
supported.
2006-05-25 02:11:13 +00:00
garbled
1f280c6eaf Add a small convenience function 2006-05-24 16:10:18 +00:00
elad
8ccb6c9341 integrate kauth. 2006-05-14 21:55:09 +00:00
garbled
4ea28c9a6f enable raid in GENERIC. it works. 2006-05-10 19:25:31 +00:00
garbled
a83699fcd9 add MEMORY_DISK_SERVER=0. only saves 600bytes. lame. 2006-05-10 18:40:33 +00:00
garbled
f32de2a8cc Enable a few options from i386's INSTALL_SMALL that save as much space as
possible.  I think this should save about 10k on prep's bootfloppies.
2006-05-10 17:53:12 +00:00
garbled
cd01d819fb Move PCI_NETBSD_CONFIGURE to std.prep. Add *.local files like i386 has. 2006-05-10 17:28:41 +00:00
garbled
a6d48d192d Switch prep to use the MI mbr/disklabel code. 2006-05-10 02:49:53 +00:00
garbled
5f1b3eb60e Use inb/outb macros instead of casting things to volatile. 2006-05-09 03:35:37 +00:00
garbled
5410dc443b convert some of the simple __asm statements to the standard powerpc
macros, like mtmsr().
2006-05-09 03:13:00 +00:00
garbled
ed0efbc5de de-__P these files. 2006-05-09 02:52:39 +00:00
garbled
cfbb4ec285 More KNF. That should be the rest of the .c files. 2006-05-09 02:48:36 +00:00
garbled
aa9567ed00 KNF these files. 2006-05-09 01:18:10 +00:00
garbled
e7b3b846b3 Fix something that never should have worked before, that got broken by
proplib change.  I'm assuming it was wierdness in the devprop API.
2006-05-08 23:12:13 +00:00
garbled
be39d7253e Switch prep over to evcnt(9). While I was here, I also switched it to
use struct cpu_info for the cpu stuff.  Tested on 7248 and 7043.
2006-05-08 17:08:34 +00:00
thorpej
fb44a8574b Remove the devprop API and switch everthing over to the new proplib. Add
a new device_properties() accessor for device_t that returns the device's
property dictionary.
2006-05-05 18:04:41 +00:00
garbled
2baa5f42bc Generic soft interrupt support for prep. Mostly copied from macppc,
tested on 7248 and 7043.
2006-05-03 17:47:05 +00:00
garbled
64b69ee83d Support fixes for the Motorola Powerstack E1.
1) The E1 seems to have the int. siop wired to irq 14-level and the internal
   wdc wired to irq 14-edge.  special case and fail the wdc probe on E1's.
2) If we fail to map the NVRAM registers, return, rather than trying to talk
   to them and panic'ing the box.
3) revert my previous "fix" to pnpbus to make irq's default to level.  It
   was wrong, and didn't even fix the powerstack.

With this, we have limited PowerStack E1 support.  The machine cannot
talk to it's IDE controller, and cannot detect it's boot device
automatically, but it does come up and run. Tested with NFS root.
2006-04-26 19:48:01 +00:00
snj
d97db3840b s/allready/already/ 2006-04-25 02:19:31 +00:00
garbled
8937ee204d Make this work on 7024 and 7025 models by not repeating the base address
of the pci bus when we are a pci bus on a ppb.
2006-04-24 18:10:57 +00:00
drochner
1168954c68 adjust comments for the new location of wskbdmap_mfii.c,
addresses PR kern/33290 by henry nelson
2006-04-19 10:31:44 +00:00
garbled
fc8134ddce Disable some things to make it a wee bit smaller. 2006-04-13 19:38:10 +00:00
garbled
e8e7f1b118 Stop building installboot. I'm not sure if it works or not, but it looks
like it wouldn't.  Keep the sources around in case I get around to fixing it.
2006-04-13 19:02:19 +00:00
garbled
3869624bdd Fix a bug in the printing of the "image too big" message, and make it
stop printing when building standalone images.
2006-04-13 18:57:24 +00:00
garbled
ccad384049 More major bootblock changes:
1) Rewrite vreset.c completely.  Saves about 1k, and now it sets the
screen up much better.  Previously the resulting video mode looked bad on
my CRT, and my LCD wouldn't even recognize it as a valid mode.  Now it
looks reasonably good and my LCD can talk to it.

2) Call vga_reset unconditionally in the setup process to fix the onboard
VGA.  If you have a VGA and use the serial console, this will allow you
to still use the VGA device for getty/wscons.  Tested on a 7248 with VGA
and a 7043 without VGA.

3) Change filesystem.c to use nullfs rather than ufs and cd9660.  We
don't actually need an fs at all, but it would take a major rewrite to
get rid of them completely.  This saves about 6KB on the bootloader.

4) Bump version to 1.7.
2006-04-13 18:46:46 +00:00
jmmv
7a51d4dddc Add an extra cookie to the ioctl and mmap wsdisplay accessops that points
to the screen on which they are being called.  The driver cannot guess
this by itself but it is needed to implement, at least, the getwschar and
putwschar functions in the correct place.  There are no functional changes
yet.

Tested on i386 (vga, vga_raster, machfb, vesafb), macppc and sparc64.
Suggested and reviewed by macallan@.
2006-04-12 19:38:22 +00:00
garbled
0bc64c184c set options PCKBCNOTEST so we attach the keyboard controller. 2006-04-11 17:16:24 +00:00
garbled
78fba760a5 de-__P, minor formatting nits, bump version. 2006-04-10 18:40:06 +00:00
garbled
6f63c9c5a1 Remove unused fd.c and video.c files. 2006-04-10 18:01:44 +00:00
garbled
7c00973093 Clean up the bootloader a little bit. Get rid of some unused code,
set the makefile to build the bootloader without the DB_MONITOR stuff by
default, as it is primarily for debugging.  Reduces bootloader size by
about 8k.
2006-04-10 17:58:59 +00:00
thorpej
2be6494fc9 Use device_cfdata(). 2006-03-29 04:16:44 +00:00
pavel
dc1372c547 Add stf to all kernel configs which have INET6 and gif, except the INSTALL
ones and those for specific machines of developers. PR 32304.

OK'ed by rpaulo.

N.B. stf is a cloning device, so it still must be enabled by
"ifconfig stf0 create".
2006-03-28 20:58:39 +00:00