platform: generic: mips p8700: Add match data for CM info

Introduce a structure p8700_cm_info holding the number of coherence
managers and their base addresses found in a particular SoC.

Declare a global pointer to the structure that is set in
mips_p8700_platform_init(), based on the match data of the platform
compatible.

For the match data of the MIPS P8700, a single coherence manager with
a base address of 0x16100000 is declared, identical to what is found
in mips/board.h.

For now, access to the coherence manager register is still based on
the hard-coded values defined in mips/board.h.

Signed-off-by: Benoît Monin <benoit.monin@bootlin.com>
Signed-off-by: Vladimir Kondratiev <vladimir.kondratiev@mobileye.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Link: https://lore.kernel.org/r/20260223-for-upstream-eyeq7h-v3-8-621d004d1a21@mobileye.com
Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
Benoît Monin
2026-02-23 16:54:47 +02:00
committed by Anup Patel
parent c69c159bd0
commit bc2722b0f3
2 changed files with 32 additions and 1 deletions

View File

@@ -10,6 +10,18 @@
#include <mips/board.h>
/** Coherence manager information
*
* @num_cm: Number of coherence manager
* @gcr_base: Array of base address of the CM
*/
struct p8700_cm_info {
unsigned int num_cm;
unsigned long *gcr_base;
};
extern const struct p8700_cm_info *p8700_cm_info;
/* PMA */
#define CSR_MIPSPMACFG0 0x7e0
#define CSR_MIPSPMACFG1 0x7e1