mirror of
https://github.com/team-infusion-developers/android_kernel_samsung_msm8976.git
synced 2024-11-01 10:33:27 +00:00
powerpc: Factoring mpic cpu id fetching into a function
The following code snippet: unsigned int cpu = 0; if (mpic->flags & MPIC_PRIMARY) cpu = hard_smp_processor_id(); is seen in several places in the 'mpic.c' code. This changeset factors that pattern out into a helper function called 'mpic_processor_id'. Signed-off-by: Meador Inge <meador_inge@mentor.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
dfec220272
commit
d6a2639b88
1 changed files with 14 additions and 17 deletions
|
@ -147,6 +147,16 @@ static u32 mpic_infos[][MPIC_IDX_END] = {
|
|||
|
||||
#endif /* CONFIG_MPIC_WEIRD */
|
||||
|
||||
static inline unsigned int mpic_processor_id(struct mpic *mpic)
|
||||
{
|
||||
unsigned int cpu = 0;
|
||||
|
||||
if (mpic->flags & MPIC_PRIMARY)
|
||||
cpu = hard_smp_processor_id();
|
||||
|
||||
return cpu;
|
||||
}
|
||||
|
||||
/*
|
||||
* Register accessor functions
|
||||
*/
|
||||
|
@ -210,19 +220,14 @@ static inline void _mpic_ipi_write(struct mpic *mpic, unsigned int ipi, u32 valu
|
|||
|
||||
static inline u32 _mpic_cpu_read(struct mpic *mpic, unsigned int reg)
|
||||
{
|
||||
unsigned int cpu = 0;
|
||||
unsigned int cpu = mpic_processor_id(mpic);
|
||||
|
||||
if (mpic->flags & MPIC_PRIMARY)
|
||||
cpu = hard_smp_processor_id();
|
||||
return _mpic_read(mpic->reg_type, &mpic->cpuregs[cpu], reg);
|
||||
}
|
||||
|
||||
static inline void _mpic_cpu_write(struct mpic *mpic, unsigned int reg, u32 value)
|
||||
{
|
||||
unsigned int cpu = 0;
|
||||
|
||||
if (mpic->flags & MPIC_PRIMARY)
|
||||
cpu = hard_smp_processor_id();
|
||||
unsigned int cpu = mpic_processor_id(mpic);
|
||||
|
||||
_mpic_write(mpic->reg_type, &mpic->cpuregs[cpu], reg, value);
|
||||
}
|
||||
|
@ -1012,13 +1017,8 @@ static int mpic_host_map(struct irq_host *h, unsigned int virq,
|
|||
* is done here.
|
||||
*/
|
||||
if (!mpic_is_ipi(mpic, hw) && (mpic->flags & MPIC_NO_RESET)) {
|
||||
unsigned int cpu = 0;
|
||||
|
||||
if (mpic->flags & MPIC_PRIMARY)
|
||||
cpu = hard_smp_processor_id();
|
||||
|
||||
mpic_set_vector(virq, hw);
|
||||
mpic_set_destination(virq, cpu);
|
||||
mpic_set_destination(virq, mpic_processor_id(mpic));
|
||||
mpic_irq_set_priority(virq, 8);
|
||||
}
|
||||
|
||||
|
@ -1362,10 +1362,7 @@ void __init mpic_init(struct mpic *mpic)
|
|||
|
||||
mpic_pasemi_msi_init(mpic);
|
||||
|
||||
if (mpic->flags & MPIC_PRIMARY)
|
||||
cpu = hard_smp_processor_id();
|
||||
else
|
||||
cpu = 0;
|
||||
cpu = mpic_processor_id(mpic);
|
||||
|
||||
if (!(mpic->flags & MPIC_NO_RESET)) {
|
||||
for (i = 0; i < mpic->num_sources; i++) {
|
||||
|
|
Loading…
Reference in a new issue