diff options
author | Ganesan Ramalingam <ganesanr@broadcom.com> | 2015-01-07 06:28:38 -0500 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2015-04-01 11:21:54 -0400 |
commit | 94e37fc22a99ce8f4b1995e4ead1c51c27923ae3 (patch) | |
tree | 3069b2adad636ebcdd4bcc6696201d5c54fe489d /arch | |
parent | 065d7029a83dab2c4d3947c0c8462e5c4ae5a5a6 (diff) |
MIPS: Netlogic: Add built-in dts for XLP5xx boards
Signed-off-by: Ganesan Ramalingam <ganesanr@broadcom.com>
Signed-off-by: Jayachandran C <jchandra@broadcom.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/8896/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips/boot/dts/netlogic/Makefile | 1 | ||||
-rw-r--r-- | arch/mips/boot/dts/netlogic/xlp_rvp.dts | 77 | ||||
-rw-r--r-- | arch/mips/netlogic/Kconfig | 9 | ||||
-rw-r--r-- | arch/mips/netlogic/xlp/dt.c | 10 |
4 files changed, 94 insertions, 3 deletions
diff --git a/arch/mips/boot/dts/netlogic/Makefile b/arch/mips/boot/dts/netlogic/Makefile index e126cd3171c7..9868057140b5 100644 --- a/arch/mips/boot/dts/netlogic/Makefile +++ b/arch/mips/boot/dts/netlogic/Makefile | |||
@@ -2,6 +2,7 @@ dtb-$(CONFIG_DT_XLP_EVP) += xlp_evp.dtb | |||
2 | dtb-$(CONFIG_DT_XLP_SVP) += xlp_svp.dtb | 2 | dtb-$(CONFIG_DT_XLP_SVP) += xlp_svp.dtb |
3 | dtb-$(CONFIG_DT_XLP_FVP) += xlp_fvp.dtb | 3 | dtb-$(CONFIG_DT_XLP_FVP) += xlp_fvp.dtb |
4 | dtb-$(CONFIG_DT_XLP_GVP) += xlp_gvp.dtb | 4 | dtb-$(CONFIG_DT_XLP_GVP) += xlp_gvp.dtb |
5 | dtb-$(CONFIG_DT_XLP_RVP) += xlp_rvp.dtb | ||
5 | 6 | ||
6 | obj-y += $(patsubst %.dtb, %.dtb.o, $(dtb-y)) | 7 | obj-y += $(patsubst %.dtb, %.dtb.o, $(dtb-y)) |
7 | 8 | ||
diff --git a/arch/mips/boot/dts/netlogic/xlp_rvp.dts b/arch/mips/boot/dts/netlogic/xlp_rvp.dts new file mode 100644 index 000000000000..7188aed2ea2e --- /dev/null +++ b/arch/mips/boot/dts/netlogic/xlp_rvp.dts | |||
@@ -0,0 +1,77 @@ | |||
1 | /* | ||
2 | * XLP5XX Device Tree Source for RVP boards | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | / { | ||
7 | model = "netlogic,XLP-RVP"; | ||
8 | compatible = "netlogic,xlp"; | ||
9 | #address-cells = <2>; | ||
10 | #size-cells = <2>; | ||
11 | |||
12 | soc { | ||
13 | #address-cells = <2>; | ||
14 | #size-cells = <1>; | ||
15 | compatible = "simple-bus"; | ||
16 | ranges = <0 0 0 0x18000000 0x04000000 // PCIe CFG | ||
17 | 1 0 0 0x16000000 0x02000000>; // GBU chipselects | ||
18 | |||
19 | serial0: serial@30000 { | ||
20 | device_type = "serial"; | ||
21 | compatible = "ns16550"; | ||
22 | reg = <0 0x112100 0xa00>; | ||
23 | reg-shift = <2>; | ||
24 | reg-io-width = <4>; | ||
25 | clock-frequency = <125000000>; | ||
26 | interrupt-parent = <&pic>; | ||
27 | interrupts = <17>; | ||
28 | }; | ||
29 | pic: pic@110000 { | ||
30 | compatible = "netlogic,xlp-pic"; | ||
31 | #address-cells = <0>; | ||
32 | #interrupt-cells = <1>; | ||
33 | reg = <0 0x110000 0x200>; | ||
34 | interrupt-controller; | ||
35 | }; | ||
36 | |||
37 | nor_flash@1,0 { | ||
38 | compatible = "cfi-flash"; | ||
39 | #address-cells = <1>; | ||
40 | #size-cells = <1>; | ||
41 | bank-width = <2>; | ||
42 | reg = <1 0 0x1000000>; | ||
43 | |||
44 | partition@0 { | ||
45 | label = "x-loader"; | ||
46 | reg = <0x0 0x100000>; /* 1M */ | ||
47 | read-only; | ||
48 | }; | ||
49 | |||
50 | partition@100000 { | ||
51 | label = "u-boot"; | ||
52 | reg = <0x100000 0x100000>; /* 1M */ | ||
53 | }; | ||
54 | |||
55 | partition@200000 { | ||
56 | label = "kernel"; | ||
57 | reg = <0x200000 0x500000>; /* 5M */ | ||
58 | }; | ||
59 | |||
60 | partition@700000 { | ||
61 | label = "rootfs"; | ||
62 | reg = <0x700000 0x800000>; /* 8M */ | ||
63 | }; | ||
64 | |||
65 | partition@f00000 { | ||
66 | label = "env"; | ||
67 | reg = <0xf00000 0x100000>; /* 1M */ | ||
68 | read-only; | ||
69 | }; | ||
70 | }; | ||
71 | |||
72 | }; | ||
73 | |||
74 | chosen { | ||
75 | bootargs = "console=ttyS0,115200 rdinit=/sbin/init"; | ||
76 | }; | ||
77 | }; | ||
diff --git a/arch/mips/netlogic/Kconfig b/arch/mips/netlogic/Kconfig index 0823321c10e0..fb00606e352d 100644 --- a/arch/mips/netlogic/Kconfig +++ b/arch/mips/netlogic/Kconfig | |||
@@ -41,6 +41,15 @@ config DT_XLP_GVP | |||
41 | pointer to the kernel. The corresponding DTS file is at | 41 | pointer to the kernel. The corresponding DTS file is at |
42 | arch/mips/netlogic/dts/xlp_gvp.dts | 42 | arch/mips/netlogic/dts/xlp_gvp.dts |
43 | 43 | ||
44 | config DT_XLP_RVP | ||
45 | bool "Built-in device tree for XLP RVP boards" | ||
46 | default y | ||
47 | help | ||
48 | Add an FDT blob for XLP RVP board into the kernel. | ||
49 | This DTB will be used if the firmware does not pass in a DTB | ||
50 | pointer to the kernel. The corresponding DTS file is at | ||
51 | arch/mips/netlogic/dts/xlp_rvp.dts | ||
52 | |||
44 | config NLM_MULTINODE | 53 | config NLM_MULTINODE |
45 | bool "Support for multi-chip boards" | 54 | bool "Support for multi-chip boards" |
46 | depends on NLM_XLP_BOARD | 55 | depends on NLM_XLP_BOARD |
diff --git a/arch/mips/netlogic/xlp/dt.c b/arch/mips/netlogic/xlp/dt.c index 7cc46032b28e..a625bdb6d6aa 100644 --- a/arch/mips/netlogic/xlp/dt.c +++ b/arch/mips/netlogic/xlp/dt.c | |||
@@ -41,17 +41,21 @@ | |||
41 | 41 | ||
42 | #include <asm/prom.h> | 42 | #include <asm/prom.h> |
43 | 43 | ||
44 | extern u32 __dtb_xlp_evp_begin[], __dtb_xlp_svp_begin[], | 44 | extern u32 __dtb_xlp_evp_begin[], __dtb_xlp_svp_begin[], __dtb_xlp_fvp_begin[], |
45 | __dtb_xlp_fvp_begin[], __dtb_xlp_gvp_begin[]; | 45 | __dtb_xlp_gvp_begin[], __dtb_xlp_rvp_begin[]; |
46 | static void *xlp_fdt_blob; | 46 | static void *xlp_fdt_blob; |
47 | 47 | ||
48 | void __init *xlp_dt_init(void *fdtp) | 48 | void __init *xlp_dt_init(void *fdtp) |
49 | { | 49 | { |
50 | if (!fdtp) { | 50 | if (!fdtp) { |
51 | switch (current_cpu_data.processor_id & PRID_IMP_MASK) { | 51 | switch (current_cpu_data.processor_id & PRID_IMP_MASK) { |
52 | #ifdef CONFIG_DT_XLP_RVP | ||
53 | case PRID_IMP_NETLOGIC_XLP5XX: | ||
54 | fdtp = __dtb_xlp_rvp_begin; | ||
55 | break; | ||
56 | #endif | ||
52 | #ifdef CONFIG_DT_XLP_GVP | 57 | #ifdef CONFIG_DT_XLP_GVP |
53 | case PRID_IMP_NETLOGIC_XLP9XX: | 58 | case PRID_IMP_NETLOGIC_XLP9XX: |
54 | case PRID_IMP_NETLOGIC_XLP5XX: | ||
55 | fdtp = __dtb_xlp_gvp_begin; | 59 | fdtp = __dtb_xlp_gvp_begin; |
56 | break; | 60 | break; |
57 | #endif | 61 | #endif |