Skip to content

Commit

Permalink
MIPS: CPS: Have asm/mips-cps.h include CM & CPC headers
Browse files Browse the repository at this point in the history
With Coherence Manager (CM) 3.5 information about the topology of the
system, which has previously only been available through & accessed from
the CM, is now also provided by the Cluster Power Controller (CPC). This
includes a new CPC_CONFIG register mirroring GCR_CONFIG, and similarly a
new CPC_Cx_CONFIG register mirroring GCR_Cx_CONFIG.

In preparation for adjusting functions such as mips_cm_numcores(), which
have previously only needed to access the CM, to also access the CPC
this patch modifies the way we use the various CPS headers. Rather than
having users include asm/mips-cm.h or asm/mips-cpc.h individually we
instead have users include asm/mips-cps.h which in turn includes
asm/mips-cm.h & asm/mips-cpc.h. This means that users will gain access
to both CM & CPC registers by including one header, and most importantly
it makes asm/mips-cps.h an ideal location for helper functions which
need to access the various components of the CPS.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/17015/
Patchwork: https://patchwork.linux-mips.org/patch/17217/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
paulburton authored and ralfbaechle committed Aug 29, 2017
1 parent d595d42 commit e83f7e0
Show file tree
Hide file tree
Showing 20 changed files with 28 additions and 30 deletions.
7 changes: 4 additions & 3 deletions arch/mips/include/asm/mips-cm.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,15 @@
* option) any later version.
*/

#ifndef __MIPS_ASM_MIPS_CPS_H__
# error Please include asm/mips-cps.h rather than asm/mips-cm.h
#endif

#ifndef __MIPS_ASM_MIPS_CM_H__
#define __MIPS_ASM_MIPS_CM_H__

#include <linux/bitops.h>
#include <linux/errno.h>
#include <linux/io.h>
#include <linux/types.h>
#include <asm/mips-cps.h>

/* The base address of the CM GCR block */
extern void __iomem *mips_gcr_base;
Expand Down
9 changes: 6 additions & 3 deletions arch/mips/include/asm/mips-cpc.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,15 @@
* option) any later version.
*/

#ifndef __MIPS_ASM_MIPS_CPS_H__
# error Please include asm/mips-cps.h rather than asm/mips-cpc.h
#endif

#ifndef __MIPS_ASM_MIPS_CPC_H__
#define __MIPS_ASM_MIPS_CPC_H__

#include <linux/io.h>
#include <linux/types.h>
#include <asm/mips-cps.h>
#include <linux/bitops.h>
#include <linux/errno.h>

/* The base address of the CPC registers */
extern void __iomem *mips_cpc_base;
Expand Down
3 changes: 3 additions & 0 deletions arch/mips/include/asm/mips-cps.h
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,7 @@ static inline void clear_##unit##_##name(uint##sz##_t val) \
CPS_ACCESSOR_W(unit, sz, name) \
CPS_ACCESSOR_M(unit, sz, name)

#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>

#endif /* __MIPS_ASM_MIPS_CPS_H__ */
2 changes: 1 addition & 1 deletion arch/mips/include/asm/smp-ops.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@

#include <linux/errno.h>

#include <asm/mips-cm.h>
#include <asm/mips-cps.h>

#ifdef CONFIG_SMP

Expand Down
2 changes: 1 addition & 1 deletion arch/mips/kernel/mips-cm.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#include <linux/percpu.h>
#include <linux/spinlock.h>

#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/mipsregs.h>

void __iomem *mips_gcr_base;
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/kernel/mips-cpc.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@
#include <linux/percpu.h>
#include <linux/spinlock.h>

#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>

void __iomem *mips_cpc_base;

Expand Down
3 changes: 1 addition & 2 deletions arch/mips/kernel/pm-cps.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,7 @@
#include <asm/cacheflush.h>
#include <asm/cacheops.h>
#include <asm/idle.h>
#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>
#include <asm/mipsmtregs.h>
#include <asm/pm.h>
#include <asm/pm-cps.h>
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/kernel/smp-cps.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@
#include <linux/types.h>

#include <asm/bcache.h>
#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>
#include <asm/mips_mt.h>
#include <asm/mipsregs.h>
#include <asm/pm-cps.h>
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,8 @@
#include <asm/fpu.h>
#include <asm/fpu_emulator.h>
#include <asm/idle.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/mips-r2-to-r6-emul.h>
#include <asm/mips-cm.h>
#include <asm/mipsregs.h>
#include <asm/mipsmtregs.h>
#include <asm/module.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mm/c-r4k.c
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
#include <asm/cacheflush.h> /* for run_uncached() */
#include <asm/traps.h>
#include <asm/dma-coherence.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>

/*
* Bits describing what cache ops an SMP callback function may perform.
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mm/sc-mips.c
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#include <asm/pgtable.h>
#include <asm/mmu_context.h>
#include <asm/r4kcache.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>

/*
* MIPS32/MIPS64 L2 cache handling
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mti-malta/malta-dtshim.c
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
#include <asm/fw/fw.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-boards/malta.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/page.h>

#define ROCIT_REG_BASE 0x1f403000
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/mti-malta/malta-init.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@
#include <asm/smp-ops.h>
#include <asm/traps.h>
#include <asm/fw/fw.h>
#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-boards/malta.h>

Expand Down
1 change: 0 additions & 1 deletion arch/mips/mti-malta/malta-int.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
#include <asm/i8259.h>
#include <asm/irq_cpu.h>
#include <asm/irq_regs.h>
#include <asm/mips-cm.h>
#include <asm/mips-boards/malta.h>
#include <asm/mips-boards/maltaint.h>
#include <asm/gt64120.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mti-malta/malta-setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@

#include <asm/fw/fw.h>
#include <asm/mach-malta/malta-dtshim.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-boards/malta.h>
#include <asm/mips-boards/maltaint.h>
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/pci/pci-malta.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
#include <linux/init.h>

#include <asm/gt64120.h>
#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-boards/bonito64.h>
#include <asm/mips-boards/msc01_pci.h>
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/pistachio/init.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@
#include <asm/dma-coherence.h>
#include <asm/fw/fw.h>
#include <asm/mips-boards/generic.h>
#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>
#include <asm/prom.h>
#include <asm/smp-ops.h>
#include <asm/traps.h>
Expand Down
3 changes: 1 addition & 2 deletions arch/mips/ralink/mt7621.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@

#include <asm/mipsregs.h>
#include <asm/smp-ops.h>
#include <asm/mips-cm.h>
#include <asm/mips-cpc.h>
#include <asm/mips-cps.h>
#include <asm/mach-ralink/ralink_regs.h>
#include <asm/mach-ralink/mt7621.h>

Expand Down
1 change: 0 additions & 1 deletion arch/mips/vdso/gettimeofday.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@

#include <asm/clocksource.h>
#include <asm/io.h>
#include <asm/mips-cm.h>
#include <asm/unistd.h>
#include <asm/vdso.h>

Expand Down
2 changes: 1 addition & 1 deletion drivers/irqchip/irq-mips-gic.c
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#include <linux/sched.h>
#include <linux/smp.h>

#include <asm/mips-cm.h>
#include <asm/mips-cps.h>
#include <asm/setup.h>
#include <asm/traps.h>

Expand Down

0 comments on commit e83f7e0

Please sign in to comment.