Commit | Line | Data |
---|---|---|
89e162af RY |
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> | |
89e162af | 11 | #include <linux/of.h> |
89e162af | 12 | #include <asm/hardware/cache-l2x0.h> |
89e162af | 13 | |
917d8535 BS |
14 | static struct of_device_id prima2_l2x0_ids[] = { |
15 | { .compatible = "sirf,prima2-pl310-cache" }, | |
16 | {}, | |
89e162af RY |
17 | }; |
18 | ||
917d8535 | 19 | static int __init sirfsoc_l2x0_init(void) |
89e162af RY |
20 | { |
21 | struct device_node *np; | |
89e162af | 22 | |
917d8535 BS |
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); | |
89e162af | 27 | } |
89e162af RY |
28 | |
29 | return 0; | |
30 | } | |
917d8535 | 31 | early_initcall(sirfsoc_l2x0_init); |