]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ARM: 9432/2: add CLIDR accessor functions
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tue, 14 Jan 2025 11:54:19 +0000 (12:54 +0100)
committerRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Tue, 14 Jan 2025 12:29:27 +0000 (12:29 +0000)
Add functions to read the CLIDR, Cache Level ID Register.

Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
arch/arm/include/asm/cachetype.h

index b9dbe1d4c8fe08bec63ed15a12a2221b032c302e..b01c59076b843cf02f97839902e5c54d3b5a81ef 100644 (file)
@@ -83,6 +83,14 @@ static inline unsigned int read_ccsidr(void)
        asm volatile("mrc p15, 1, %0, c0, c0, 0" : "=r" (val));
        return val;
 }
+
+static inline unsigned int read_clidr(void)
+{
+       unsigned int val;
+
+       asm volatile("mrc p15, 1, %0, c0, c0, 1" : "=r" (val));
+       return val;
+}
 #else /* CONFIG_CPU_V7M */
 #include <linux/io.h>
 #include "asm/v7m.h"
@@ -96,6 +104,11 @@ static inline unsigned int read_ccsidr(void)
 {
        return readl(BASEADDR_V7M_SCB + V7M_SCB_CCSIDR);
 }
+
+static inline unsigned int read_clidr(void)
+{
+       return readl(BASEADDR_V7M_SCB + V7M_SCB_CLIDR);
+}
 #endif
 
 #endif