Commit Graph

1689 Commits

Author SHA1 Message Date
christos
c0f54daf70 Add em_alpha_exp 1998-10-03 18:17:14 +00:00
ross
78492e307a If not MULTIPROCESSOR then identify the interrupt target cpu by hwrpb id (%d)
rather than attachment name, and hence avoid referencing `cpus'.
1998-10-01 22:57:30 +00:00
erh
b0367216c1 Macros to call a linux syscall. 1998-10-01 16:19:59 +00:00
erh
79a9d0776d Add linux compat includes. 1998-10-01 16:18:53 +00:00
erh
b9e8494b1d Add linux signal trampoline code. 1998-10-01 16:18:46 +00:00
thorpej
21adfe5c18 Oops, brain'o. 1998-09-29 23:45:25 +00:00
thorpej
16b0d8f1e4 Disable the code that halts secondary processors in cpu_reboot(). Halting
the secondary works, but not when called from here?!  XXX!
1998-09-29 21:59:33 +00:00
thorpej
ce57c93ef5 some temporary debugging printfs in the IPI code. 1998-09-29 19:40:33 +00:00
drochner
fb345194ad document CLOCK_COMPAT_OSF1 1998-09-29 18:25:54 +00:00
drochner
70d1e71ea0 Allow to use the RTC chip in a way compatible to OSF/1: use an offset
of 52 years between RTC and UNIX time.
This is controlled by "option CLOCK_COMPAT_OSF1".
1998-09-29 18:23:55 +00:00
drochner
88b626a585 make compile w/o MULTIPROCESSOR 1998-09-29 15:55:47 +00:00
thorpej
69d81d8df1 Prototype cpu_halt_secondary(). 1998-09-29 07:07:36 +00:00
thorpej
30e4de5632 In cpu_reboot(), halt the secondary CPUs. 1998-09-29 07:07:09 +00:00
thorpej
1b8e855f2a First try at a HALT interprocessor interrupt handler. 1998-09-29 07:06:02 +00:00
thorpej
94b97dce9b CPUF_HATCHED is dead, replaced by cpus_running bitmask. 1998-09-29 07:05:30 +00:00
thorpej
99698d1a1a - Use a bitmask for "running CPUs", rather than a flag in the softc.
- Add a function to halt a secondary CPU.
- Enable interrupts on secondary CPUs once they've hatched.
1998-09-29 07:04:58 +00:00
thorpej
469f020ae3 Don't process CLOCK or DEVICE interrupts if we're not the primary CPU. 1998-09-29 07:02:04 +00:00
thorpej
30ec5015b1 In exception_return(), if MULTIPROCESSOR, skip software interrupts, ASTs,
and floating point handling if we're not the primary CPU.
1998-09-29 07:01:16 +00:00
thorpej
392a96cc91 Define the offset of hwrpb->rpb_primary_cpu_id. 1998-09-29 06:22:09 +00:00
thorpej
183f609c83 - Do not set TLCPUMASK on non-I/O nodes. That register exists only on
I/O nodes.  Previous code erroneously set it on CPU nodes only.
- In both the single- and multi-processor case, route all interrupts from
  I/O nodes to the primary CPU, for now.
1998-09-29 04:22:36 +00:00
thorpej
4c2e179b93 PROM doens't need to be mapped to start up the secondaries, so remove some
dead code.
1998-09-28 22:21:13 +00:00
thorpej
9bd45385a9 Turn off some debugging printfs, and kludge around a boot block bug until
I can install fixed boot blocks on my MP test systems.
1998-09-28 21:50:32 +00:00
thorpej
705cac105e Invalidate the TB and I-stream upon entry, and fix a typo in the wrkgp call. 1998-09-28 21:48:50 +00:00
thorpej
34a8ac8484 Set the primary CPU's PAL revision to the OSF/1 PAL revision after switching
to it, per the Green Book (pointed out by Chris Demetriou).
1998-09-28 21:21:55 +00:00
thorpej
5caecb6ae0 Fix for some EGCS warnings. 1998-09-28 21:18:55 +00:00
drochner
980b2b416f fix PMAP_ACTIVATE_ASN_SANITY() arguments 1998-09-27 17:23:25 +00:00
thorpej
2c50ec242f Add basic interprocessor interrupt sending and receiving code. Current
IPI functions: HALT, IMB, TBIA, TBIAP.

XXX HALT is not yet implemented, it's just a stub.
1998-09-26 00:03:51 +00:00
thorpej
78d445810b Add an interprocessor interrupt bitmask to the cpu_softc, and publicize
the cpus[] array.
1998-09-26 00:01:17 +00:00
thorpej
1f4921edce - Oops, forgot to initalize the cpu_softc simplelock.
- Add yet another debugging printf.
1998-09-26 00:00:33 +00:00
thorpej
e2aa38459c Implement atomic quadword load-and-latch. 1998-09-25 23:59:42 +00:00
thorpej
01c75223d7 Minor style tweaks. 1998-09-25 22:06:33 +00:00
thorpej
d3ce2be01c Don't bother printing the message from the secondary console. All it is
is basically the acknowledgement of the START command.  Print the idle
USPACE address for now.  Use the alias "apcb_backup_ksp" when setting the
backup kernel stack pointer in the secondary's boot HWPCB.
1998-09-25 03:23:50 +00:00
thorpej
57e656b2ec The processor unique value in the PCB is used as a backup kernel stack
pointer when booting secondary CPUs.  Add an alias for it.
1998-09-25 03:21:31 +00:00
thorpej
3ea9247ac8 GENERIC config file + MULTIPROCESSOR + some debugging stuff. 1998-09-25 00:46:09 +00:00
thorpej
fcb0203141 First-cut at code to spin up secondary processors on a multiprocessor
Alpha system, conditional on MULTIPROCESSOR.

NOTE: This does not yet work completely.  The secondary CPU begins the
boot process, but never makes it into the cpu spinup trampoline.  This
is merely a snapshot of a work-in-progress.
1998-09-24 23:28:17 +00:00
thorpej
feb1d22dcc NCPU > 1 -> MULTIPROCESSOR 1998-09-24 23:00:43 +00:00
thorpej
3cde5f5817 Machine-dependent spin lock operations for Alpha, included if MULTIPROCESSOR
is specified.
1998-09-24 22:32:35 +00:00
thorpej
91a031471d Implement atomic test-and-set for longwords (32-bit). 1998-09-24 22:22:07 +00:00
thorpej
1b04ff4897 Make prom_enter() and prom_leave() public. 1998-09-24 21:18:13 +00:00
thorpej
ba6d13d876 Use the primary CPU ID on console_restart(), not hard-coded 0. 1998-09-24 21:12:43 +00:00
ross
e43333b7e7 Move if_ade* from alpha/pci/ to alpha/a12/ 1998-09-24 05:36:05 +00:00
ross
09c3723e08 Put back ahc and bha scsi HBA driver configs. 1998-09-24 05:33:41 +00:00
ross
81ea242049 Fix include path, these days a12 header files are in alpha/a12. 1998-09-24 05:32:52 +00:00
ross
ec4de2679b Track tfs -> ustarfs change. 1998-09-24 05:23:58 +00:00
thorpej
c69dbb3c28 Actually, yes we do know what the rpb_restart entry point is used for,
so delete some #if 0'd code.
1998-09-24 03:39:24 +00:00
thorpej
7521c309df When setting up the hwrpb for restarts, use the primary CPU ID from the
hwrpb.
1998-09-24 00:30:19 +00:00
thorpej
7df5ebc392 "Gee, there was already a function to do that." 1998-09-23 22:02:21 +00:00
thorpej
53d42701b5 Implement a function to recompute the HWRPB checksum. 1998-09-23 21:51:04 +00:00
ross
86f044d10e Track changes elsewhere in the PCI interface. 1998-09-23 21:20:55 +00:00
ross
55714d5b34 Update for vm_offset_t, vaddr_t sweep. 1998-09-23 21:17:17 +00:00