1 /*
2  * l2 cache initialization for CSR SiRFprimaII
3  *
4  * Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company.
5  *
6  * Licensed under GPLv2 or later.
7  */
8 
9 #include <linux/init.h>
10 #include <linux/kernel.h>
11 #include <linux/of.h>
12 #include <asm/hardware/cache-l2x0.h>
13 
14 static struct of_device_id prima2_l2x0_ids[]  = {
15 	{ .compatible = "sirf,prima2-pl310-cache" },
16 	{},
17 };
18 
sirfsoc_l2x0_init(void)19 static int __init sirfsoc_l2x0_init(void)
20 {
21 	struct device_node *np;
22 
23 	np = of_find_matching_node(NULL, prima2_l2x0_ids);
24 	if (np) {
25 		pr_info("Initializing prima2 L2 cache\n");
26 		return l2x0_of_init(0x40000, 0);
27 	}
28 
29 	return 0;
30 }
31 early_initcall(sirfsoc_l2x0_init);
32