smp.h (3c19d5ada1bec8b97119215298df7669d3ffb3db) smp.h (b866cc2199d6a6cdcefe4acfe4cfca3ac3c6d38e)
1/*
2 * smp.h: PowerPC-specific SMP code.
3 *
4 * Original was a copy of sparc smp.h. Now heavily modified
5 * for PPC.
6 *
7 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
8 * Copyright (C) 1996-2001 Cort Dougan <cort@fsmlabs.com>

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

35extern void cpu_die(void);
36extern int cpu_to_chip_id(int cpu);
37
38#ifdef CONFIG_SMP
39
40struct smp_ops_t {
41 void (*message_pass)(int cpu, int msg);
42#ifdef CONFIG_PPC_SMP_MUXED_IPI
1/*
2 * smp.h: PowerPC-specific SMP code.
3 *
4 * Original was a copy of sparc smp.h. Now heavily modified
5 * for PPC.
6 *
7 * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
8 * Copyright (C) 1996-2001 Cort Dougan <cort@fsmlabs.com>

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

35extern void cpu_die(void);
36extern int cpu_to_chip_id(int cpu);
37
38#ifdef CONFIG_SMP
39
40struct smp_ops_t {
41 void (*message_pass)(int cpu, int msg);
42#ifdef CONFIG_PPC_SMP_MUXED_IPI
43 void (*cause_ipi)(int cpu, unsigned long data);
43 void (*cause_ipi)(int cpu);
44#endif
45 void (*probe)(void);
46 int (*kick_cpu)(int nr);
47 int (*prepare_cpu)(int nr);
48 void (*setup_cpu)(int nr);
49 void (*bringup_done)(void);
50 void (*take_timebase)(void);
51 void (*give_timebase)(void);

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

120/* This is only used by the powernv kernel */
121#define PPC_MSG_RM_HOST_ACTION 4
122
123/* for irq controllers that have dedicated ipis per message (4) */
124extern int smp_request_message_ipi(int virq, int message);
125extern const char *smp_ipi_name[];
126
127/* for irq controllers with only a single ipi */
44#endif
45 void (*probe)(void);
46 int (*kick_cpu)(int nr);
47 int (*prepare_cpu)(int nr);
48 void (*setup_cpu)(int nr);
49 void (*bringup_done)(void);
50 void (*take_timebase)(void);
51 void (*give_timebase)(void);

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

120/* This is only used by the powernv kernel */
121#define PPC_MSG_RM_HOST_ACTION 4
122
123/* for irq controllers that have dedicated ipis per message (4) */
124extern int smp_request_message_ipi(int virq, int message);
125extern const char *smp_ipi_name[];
126
127/* for irq controllers with only a single ipi */
128extern void smp_muxed_ipi_set_data(int cpu, unsigned long data);
129extern void smp_muxed_ipi_message_pass(int cpu, int msg);
130extern void smp_muxed_ipi_set_message(int cpu, int msg);
131extern irqreturn_t smp_ipi_demux(void);
132
133void smp_init_pSeries(void);
134void smp_init_cell(void);
135void smp_setup_cpu_maps(void);
136

--- 80 unchanged lines hidden ---
128extern void smp_muxed_ipi_message_pass(int cpu, int msg);
129extern void smp_muxed_ipi_set_message(int cpu, int msg);
130extern irqreturn_t smp_ipi_demux(void);
131
132void smp_init_pSeries(void);
133void smp_init_cell(void);
134void smp_setup_cpu_maps(void);
135

--- 80 unchanged lines hidden ---