smp.c (ecd740c6f2f092b90b95fa35f757973589eaaca2) smp.c (2751b628c97e66e61f482935ca59148751972941)
1/*
2 * Author: Andy Fleming <afleming@freescale.com>
3 * Kumar Gala <galak@kernel.crashing.org>
4 *
5 * Copyright 2006-2008, 2011-2012 Freescale Semiconductor Inc.
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the

--- 13 unchanged lines hidden (view full) ---

22
23#include <asm/machdep.h>
24#include <asm/pgtable.h>
25#include <asm/page.h>
26#include <asm/mpic.h>
27#include <asm/cacheflush.h>
28#include <asm/dbell.h>
29#include <asm/fsl_guts.h>
1/*
2 * Author: Andy Fleming <afleming@freescale.com>
3 * Kumar Gala <galak@kernel.crashing.org>
4 *
5 * Copyright 2006-2008, 2011-2012 Freescale Semiconductor Inc.
6 *
7 * This program is free software; you can redistribute it and/or modify it
8 * under the terms of the GNU General Public License as published by the

--- 13 unchanged lines hidden (view full) ---

22
23#include <asm/machdep.h>
24#include <asm/pgtable.h>
25#include <asm/page.h>
26#include <asm/mpic.h>
27#include <asm/cacheflush.h>
28#include <asm/dbell.h>
29#include <asm/fsl_guts.h>
30#include <asm/code-patching.h>
30
31#include <sysdev/fsl_soc.h>
32#include <sysdev/mpic.h>
33#include "smp.h"
34
35struct epapr_spin_table {
36 u32 addr_h;
37 u32 addr_l;

--- 224 unchanged lines hidden (view full) ---

262 }
263out:
264#else
265 smp_generic_kick_cpu(nr);
266
267 flush_spin_table(spin_table);
268 out_be32(&spin_table->pir, hw_cpu);
269 out_be64((u64 *)(&spin_table->addr_h),
31
32#include <sysdev/fsl_soc.h>
33#include <sysdev/mpic.h>
34#include "smp.h"
35
36struct epapr_spin_table {
37 u32 addr_h;
38 u32 addr_l;

--- 224 unchanged lines hidden (view full) ---

263 }
264out:
265#else
266 smp_generic_kick_cpu(nr);
267
268 flush_spin_table(spin_table);
269 out_be32(&spin_table->pir, hw_cpu);
270 out_be64((u64 *)(&spin_table->addr_h),
270 __pa((u64)*((unsigned long long *)generic_secondary_smp_init)));
271 __pa(ppc_function_entry(generic_secondary_smp_init)));
271 flush_spin_table(spin_table);
272#endif
273
274 local_irq_restore(flags);
275
276 if (ioremappable)
277 iounmap(spin_table);
278

--- 181 unchanged lines hidden ---
272 flush_spin_table(spin_table);
273#endif
274
275 local_irq_restore(flags);
276
277 if (ioremappable)
278 iounmap(spin_table);
279

--- 181 unchanged lines hidden ---