Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations | Functions | Variables
smp.c File Reference
#include <linux/module.h>
#include <linux/delay.h>
#include <linux/init.h>
#include <linux/spinlock.h>
#include <linux/sched.h>
#include <linux/interrupt.h>
#include <linux/cache.h>
#include <linux/clockchips.h>
#include <linux/profile.h>
#include <linux/errno.h>
#include <linux/mm.h>
#include <linux/cpu.h>
#include <linux/smp.h>
#include <linux/cpumask.h>
#include <linux/seq_file.h>
#include <linux/irq.h>
#include <linux/slab.h>
#include <linux/atomic.h>
#include <asm/cacheflush.h>
#include <asm/irq_handler.h>
#include <asm/mmu_context.h>
#include <asm/pgtable.h>
#include <asm/pgalloc.h>
#include <asm/processor.h>
#include <asm/ptrace.h>
#include <asm/cpu.h>
#include <asm/time.h>
#include <linux/err.h>

Go to the source code of this file.

Data Structures

struct  blackfin_flush_data
 
struct  ipi_data
 

Macros

#define BFIN_IPI_MSGQ_LEN   5
 

Enumerations

enum  ipi_message_type {
  IPI_RESCHEDULE, IPI_CALL_FUNC, IPI_CALL_FUNC_SINGLE, IPI_CPU_STOP,
  BFIN_IPI_TIMER, BFIN_IPI_RESCHEDULE, BFIN_IPI_CALL_FUNC, BFIN_IPI_CALL_FUNC_SINGLE,
  BFIN_IPI_CPU_STOP, IPI_NOP = 0, IPI_RESCHEDULE = 1, IPI_CALL_FUNC,
  IPI_CALL_FUNC_SINGLE, IPI_CPU_STOP, IPI_TIMER, IPI_NOP =0,
  IPI_RESCHEDULE =1, IPI_CALL_FUNC, IPI_CALL_FUNC_SINGLE, IPI_CPU_START,
  IPI_CPU_STOP, IPI_CPU_TEST
}
 

Functions

struct corelock_slot corelock __attribute__ ((__section__(".l2.bss")))
 
 DECLARE_PER_CPU (struct clock_event_device, coretmr_events)
 
void ipi_timer (void)
 
void send_ipi (const struct cpumask *cpumask, enum ipi_message_type msg)
 
void arch_send_call_function_single_ipi (int cpu)
 
void arch_send_call_function_ipi_mask (const struct cpumask *mask)
 
void smp_send_reschedule (int cpu)
 
void smp_send_msg (const struct cpumask *mask, unsigned long type)
 
void smp_timer_broadcast (const struct cpumask *mask)
 
void smp_send_stop (void)
 
int __cpuinit __cpu_up (unsigned int cpu, struct task_struct *idle)
 
void __cpuinit secondary_start_kernel (void)
 
void __init smp_prepare_boot_cpu (void)
 
void __init smp_prepare_cpus (unsigned int max_cpus)
 
void __init smp_cpus_done (unsigned int max_cpus)
 
void smp_icache_flush_range_others (unsigned long start, unsigned long end)
 
 EXPORT_SYMBOL_GPL (smp_icache_flush_range_others)
 

Variables

struct blackfin_initial_pda
__cpuinitdata 
initial_pda_coreb
 
voidsecondary_stack
 

Macro Definition Documentation

#define BFIN_IPI_MSGQ_LEN   5

Definition at line 71 of file smp.c.

Enumeration Type Documentation

Enumerator:
IPI_RESCHEDULE 
IPI_CALL_FUNC 
IPI_CALL_FUNC_SINGLE 
IPI_CPU_STOP 
BFIN_IPI_TIMER 
BFIN_IPI_RESCHEDULE 
BFIN_IPI_CALL_FUNC 
BFIN_IPI_CALL_FUNC_SINGLE 
BFIN_IPI_CPU_STOP 
IPI_NOP 
IPI_RESCHEDULE 
IPI_CALL_FUNC 
IPI_CALL_FUNC_SINGLE 
IPI_CPU_STOP 
IPI_TIMER 
IPI_NOP 
IPI_RESCHEDULE 
IPI_CALL_FUNC 
IPI_CALL_FUNC_SINGLE 
IPI_CPU_START 
IPI_CPU_STOP 
IPI_CPU_TEST 

Definition at line 51 of file smp.c.

Function Documentation

struct corelock_slot corelock __attribute__ ( (__section__(".l2.bss"))  )
read
int __cpuinit __cpu_up ( unsigned int  cpu,
struct task_struct idle 
)

Definition at line 252 of file smp.c.

void arch_send_call_function_ipi_mask ( const struct cpumask mask)

Definition at line 215 of file smp.c.

void arch_send_call_function_single_ipi ( int  cpu)

Definition at line 210 of file smp.c.

DECLARE_PER_CPU ( struct clock_event_device  ,
coretmr_events   
)
EXPORT_SYMBOL_GPL ( smp_icache_flush_range_others  )
void ipi_timer ( void  )

Definition at line 132 of file smp.c.

void __cpuinit secondary_start_kernel ( void  )

Definition at line 283 of file smp.c.

void send_ipi ( const struct cpumask cpumask,
enum ipi_message_type  msg 
)

Definition at line 191 of file smp.c.

void __init smp_cpus_done ( unsigned int  max_cpus)

Definition at line 353 of file smp.c.

void smp_icache_flush_range_others ( unsigned long  start,
unsigned long  end 
)

Definition at line 368 of file smp.c.

void __init smp_prepare_boot_cpu ( void  )

Definition at line 341 of file smp.c.

void __init smp_prepare_cpus ( unsigned int  max_cpus)

Definition at line 345 of file smp.c.

void smp_send_msg ( const struct cpumask mask,
unsigned long  type 
)

Definition at line 227 of file smp.c.

void smp_send_reschedule ( int  cpu)

Definition at line 220 of file smp.c.

void smp_send_stop ( void  )

Definition at line 237 of file smp.c.

void smp_timer_broadcast ( const struct cpumask mask)

Definition at line 232 of file smp.c.

Variable Documentation

Definition at line 49 of file smp.c.

void* secondary_stack

Definition at line 64 of file smp.c.