|
@@ -43,6 +43,7 @@ static int __maybe_unused max_cpus = 1;
|
|
|
int bmips_smp_enabled = 1;
|
|
|
int bmips_cpu_offset;
|
|
|
cpumask_t bmips_booted_mask;
|
|
|
+unsigned long bmips_tp1_irqs = IE_IRQ1;
|
|
|
|
|
|
#define RESET_FROM_KSEG0 0x80080800
|
|
|
#define RESET_FROM_KSEG1 0xa0080800
|
|
@@ -257,7 +258,7 @@ static void bmips_smp_finish(void)
|
|
|
write_c0_compare(read_c0_count() + mips_hpt_frequency / HZ);
|
|
|
|
|
|
irq_enable_hazard();
|
|
|
- set_c0_status(IE_SW0 | IE_SW1 | IE_IRQ1 | IE_IRQ5 | ST0_IE);
|
|
|
+ set_c0_status(IE_SW0 | IE_SW1 | bmips_tp1_irqs | IE_IRQ5 | ST0_IE);
|
|
|
irq_enable_hazard();
|
|
|
}
|
|
|
|
|
@@ -387,7 +388,8 @@ void __ref play_dead(void)
|
|
|
* IRQ handlers; this clears ST0_IE and returns immediately.
|
|
|
*/
|
|
|
clear_c0_cause(CAUSEF_IV | C_SW0 | C_SW1);
|
|
|
- change_c0_status(IE_IRQ5 | IE_IRQ1 | IE_SW0 | IE_SW1 | ST0_IE | ST0_BEV,
|
|
|
+ change_c0_status(
|
|
|
+ IE_IRQ5 | bmips_tp1_irqs | IE_SW0 | IE_SW1 | ST0_IE | ST0_BEV,
|
|
|
IE_SW0 | IE_SW1 | ST0_IE | ST0_BEV);
|
|
|
irq_disable_hazard();
|
|
|
|