1# SPDX-License-Identifier: GPL-2.0-only
2menuconfig ARCH_MMP
3	bool "Marvell PXA168/910/MMP2/MMP3"
4	depends on (CPU_LITTLE_ENDIAN && ARCH_MULTI_V5) || ARCH_MULTI_V7
5	select GPIO_PXA
6	select GPIOLIB
7	select PINCTRL
8	select PLAT_PXA
9	help
10	  Support for Marvell's PXA168/PXA910(MMP), MMP2, and MMP3 processor lines.
11
12if ARCH_MMP
13
14menu "Marvell PXA168/910/MMP2 Implementations"
15
16if ATAGS
17
18config MACH_ASPENITE
19	bool "Marvell's PXA168 Aspenite Development Board"
20	depends on ARCH_MULTI_V5
21	depends on UNUSED_BOARD_FILES
22	select CPU_PXA168
23	help
24	  Say 'Y' here if you want to support the Marvell PXA168-based
25	  Aspenite Development Board.
26
27config MACH_ZYLONITE2
28	bool "Marvell's PXA168 Zylonite2 Development Board"
29	depends on ARCH_MULTI_V5
30	depends on UNUSED_BOARD_FILES
31	select CPU_PXA168
32	help
33	  Say 'Y' here if you want to support the Marvell PXA168-based
34	  Zylonite2 Development Board.
35
36config MACH_AVENGERS_LITE
37	bool "Marvell's PXA168 Avengers Lite Development Board"
38	depends on ARCH_MULTI_V5
39	depends on UNUSED_BOARD_FILES
40	select CPU_PXA168
41	help
42	  Say 'Y' here if you want to support the Marvell PXA168-based
43	  Avengers Lite Development Board.
44
45config MACH_TTC_DKB
46	bool "Marvell's PXA910 TavorEVB/TTC_DKB Development Board"
47	depends on ARCH_MULTI_V5
48	depends on UNUSED_BOARD_FILES
49	select CPU_PXA910
50	help
51	  Say 'Y' here if you want to support the Marvell PXA910-based
52	  TTC_DKB Development Board.
53
54config MACH_BROWNSTONE
55	bool "Marvell's Brownstone Development Platform"
56	depends on ARCH_MULTI_V7
57	depends on UNUSED_BOARD_FILES
58	select CPU_MMP2
59	help
60	  Say 'Y' here if you want to support the Marvell MMP2-based
61	  Brown Development Platform.
62	  MMP2-based board can't be co-existed with PXA168-based &
63	  PXA910-based development board. Since MMP2 is compatible to
64	  ARMv7 architecture.
65
66config MACH_FLINT
67	bool "Marvell's Flint Development Platform"
68	depends on ARCH_MULTI_V7
69	depends on UNUSED_BOARD_FILES
70	select CPU_MMP2
71	help
72	  Say 'Y' here if you want to support the Marvell MMP2-based
73	  Flint Development Platform.
74	  MMP2-based board can't be co-existed with PXA168-based &
75	  PXA910-based development board. Since MMP2 is compatible to
76	  ARMv7 architecture.
77
78config MACH_MARVELL_JASPER
79	bool "Marvell's Jasper Development Platform"
80	depends on ARCH_MULTI_V7
81	depends on UNUSED_BOARD_FILES
82	select CPU_MMP2
83	help
84	  Say 'Y' here if you want to support the Marvell MMP2-base
85	  Jasper Development Platform.
86	  MMP2-based board can't be co-existed with PXA168-based &
87	  PXA910-based development board. Since MMP2 is compatible to
88	  ARMv7 architecture.
89
90config MACH_TETON_BGA
91	bool "Marvell's PXA168 Teton BGA Development Board"
92	depends on ARCH_MULTI_V5
93	depends on UNUSED_BOARD_FILES
94	select CPU_PXA168
95	help
96	  Say 'Y' here if you want to support the Marvell PXA168-based
97	  Teton BGA Development Board.
98
99config MACH_GPLUGD
100	bool "Marvell's PXA168 GuruPlug Display (gplugD) Board"
101	depends on ARCH_MULTI_V5
102	depends on UNUSED_BOARD_FILES
103	select CPU_PXA168
104	help
105	  Say 'Y' here if you want to support the Marvell PXA168-based
106	  GuruPlug Display (gplugD) Board
107endif
108
109config MACH_MMP_DT
110	bool "Support MMP (ARMv5) platforms from device tree"
111	depends on ARCH_MULTI_V5
112	select PINCTRL
113	select PINCTRL_SINGLE
114	select ARCH_HAS_RESET_CONTROLLER
115	select CPU_MOHAWK
116	help
117	  Include support for Marvell MMP2 based platforms using
118	  the device tree. Needn't select any other machine while
119	  MACH_MMP_DT is enabled.
120
121config MACH_MMP2_DT
122	bool "Support MMP2 (ARMv7) platforms from device tree"
123	depends on ARCH_MULTI_V7
124	select PINCTRL
125	select PINCTRL_SINGLE
126	select ARCH_HAS_RESET_CONTROLLER
127	select CPU_PJ4
128	select PM_GENERIC_DOMAINS if PM
129	select PM_GENERIC_DOMAINS_OF if PM && OF
130	help
131	  Include support for Marvell MMP2 based platforms using
132	  the device tree.
133
134config MACH_MMP3_DT
135	bool "Support MMP3 (ARMv7) platforms"
136	depends on ARCH_MULTI_V7
137	select ARM_GIC
138	select HAVE_ARM_SCU if SMP
139	select HAVE_ARM_TWD if SMP
140	select CACHE_L2X0
141	select PINCTRL
142	select PINCTRL_SINGLE
143	select ARCH_HAS_RESET_CONTROLLER
144	select CPU_PJ4B
145	select PM_GENERIC_DOMAINS if PM
146	select PM_GENERIC_DOMAINS_OF if PM && OF
147	help
148	  Say 'Y' here if you want to include support for platforms
149	  with Marvell MMP3 processor, also known as PXA2128 or
150	  Armada 620.
151
152endmenu
153
154config CPU_PXA168
155	bool
156	select CPU_MOHAWK
157	help
158	  Select code specific to PXA168
159
160config CPU_PXA910
161	bool
162	select CPU_MOHAWK
163	help
164	  Select code specific to PXA910
165
166config CPU_MMP2
167	bool
168	select CPU_PJ4
169	help
170	  Select code specific to MMP2. MMP2 is ARMv7 compatible.
171
172config USB_EHCI_MV_U2O
173        bool "EHCI support for PXA USB OTG controller"
174	depends on USB_EHCI_MV
175	help
176	  Enables support for OTG controller which can be switched to host mode.
177
178config MMP_SRAM
179	bool
180
181endif
182