mirror of
https://github.com/opnsense/src.git
synced 2026-06-11 01:30:30 -04:00
powerpc/aim: Update timebase directly on resume instead of through platform
This only works on single-CPU G4 systems, and more work is needed for
dual-CPU systems. That said, platform sleep does not work, and this is
currently only used for PMU-based CPU speed change.
The elimination of the platform_smp_timebase_sync() call is so that the
timebase sync rendezvous can be enhanced to perform better
synchronization, which requires a full rendezvous. This would be
impossible to do on this single-threaded run.
(cherry picked from commit 921716186f)
This commit is contained in:
parent
ac42b63648
commit
cf8bf3edf8
2 changed files with 2 additions and 4 deletions
|
|
@ -768,7 +768,8 @@ mpc745x_sleep()
|
|||
while (1)
|
||||
mtmsr(msr);
|
||||
}
|
||||
platform_smp_timebase_sync(timebase, 0);
|
||||
/* XXX: The mttb() means this *only* works on single-CPU systems. */
|
||||
mttb(timebase);
|
||||
PCPU_SET(curthread, curthread);
|
||||
PCPU_SET(curpcb, curthread->td_pcb);
|
||||
pmap_activate(curthread);
|
||||
|
|
|
|||
|
|
@ -311,9 +311,6 @@ cpudep_ap_setup()
|
|||
|
||||
vers = mfpvr() >> 16;
|
||||
|
||||
/* The following is needed for restoring from sleep. */
|
||||
platform_smp_timebase_sync(0, 1);
|
||||
|
||||
switch(vers) {
|
||||
case IBM970:
|
||||
case IBM970FX:
|
||||
|
|
|
|||
Loading…
Reference in a new issue