d7df84b3ce
Some irqchip initialization must be done on secondary CPUs. On mvebu platforms, this is currently achieved by having the arch/arm/mach-mvebu/platsmp.c code directly call into a function exported by the irqchip driver, which isn't really nice. This commit changes this by using the same solution as the one used in the GIC driver: the irqchip driver registers a CPU notifier, which is used to do the secondary CPU IRQ initialization. This way, the irqchip driver is completely autonomous, and the function no longer needs to be exposed from the irqchip driver to the SoC code. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Link: https://lkml.kernel.org/r/1397483648-26611-6-git-send-email-thomas.petazzoni@free-electrons.com Signed-off-by: Jason Cooper <jason@lakedaemon.net>
27 lines
710 B
C
27 lines
710 B
C
/*
|
|
* Generic definitions for Marvell Armada_370_XP SoCs
|
|
*
|
|
* Copyright (C) 2012 Marvell
|
|
*
|
|
* Lior Amsalem <alior@marvell.com>
|
|
* Gregory CLEMENT <gregory.clement@free-electrons.com>
|
|
* Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
*
|
|
* This file is licensed under the terms of the GNU General Public
|
|
* License version 2. This program is licensed "as is" without any
|
|
* warranty of any kind, whether express or implied.
|
|
*/
|
|
|
|
#ifndef __MACH_ARMADA_370_XP_H
|
|
#define __MACH_ARMADA_370_XP_H
|
|
|
|
#ifdef CONFIG_SMP
|
|
#include <linux/cpumask.h>
|
|
|
|
#define ARMADA_XP_MAX_CPUS 4
|
|
|
|
void armada_xp_secondary_startup(void);
|
|
extern struct smp_operations armada_xp_smp_ops;
|
|
#endif
|
|
|
|
#endif /* __MACH_ARMADA_370_XP_H */
|