README 17.3 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
ARM Marvell SoCs
================

This document lists all the ARM Marvell SoCs that are currently
supported in mainline by the Linux kernel. As the Marvell families of
SoCs are large and complex, it is hard to understand where the support
for a particular SoC is available in the Linux kernel. This document
tries to help in understanding where those SoCs are supported, and to
match them with their corresponding public datasheet, when available.

Orion family
------------

  Flavors:
        88F5082
        88F5181
        88F5181L
        88F5182
               Datasheet               : http://www.embeddedarm.com/documentation/third-party/MV88F5182-datasheet.pdf
               Programmer's User Guide : http://www.embeddedarm.com/documentation/third-party/MV88F5182-opensource-manual.pdf
               User Manual             : http://www.embeddedarm.com/documentation/third-party/MV88F5182-usermanual.pdf
        88F5281
               Datasheet               : http://www.ocmodshop.com/images/reviews/networking/qnap_ts409u/marvel_88f5281_data_sheet.pdf
        88F6183
25
  Core: Feroceon 88fr331 (88f51xx) or 88fr531-vd (88f52xx) ARMv5 compatible
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
  Linux kernel mach directory: arch/arm/mach-orion5x
  Linux kernel plat directory: arch/arm/plat-orion

Kirkwood family
---------------

  Flavors:
        88F6282 a.k.a Armada 300
                Product Brief  : http://www.marvell.com/embedded-processors/armada-300/assets/armada_310.pdf
        88F6283 a.k.a Armada 310
                Product Brief  : http://www.marvell.com/embedded-processors/armada-300/assets/armada_310.pdf
        88F6190
                Product Brief  : http://www.marvell.com/embedded-processors/kirkwood/assets/88F6190-003_WEB.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F619x_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
        88F6192
                Product Brief  : http://www.marvell.com/embedded-processors/kirkwood/assets/88F6192-003_ver1.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F619x_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
        88F6182
        88F6180
                Product Brief  : http://www.marvell.com/embedded-processors/kirkwood/assets/88F6180-003_ver1.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F6180_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
        88F6281
                Product Brief  : http://www.marvell.com/embedded-processors/kirkwood/assets/88F6281-004_ver1.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/kirkwood/assets/HW_88F6281_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/kirkwood/assets/FS_88F6180_9x_6281_OpenSource.pdf
  Homepage: http://www.marvell.com/embedded-processors/kirkwood/
55
  Core: Feroceon 88fr131 ARMv5 compatible
56 57
  Linux kernel mach directory: arch/arm/mach-mvebu
  Linux kernel plat directory: none
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73

Discovery family
----------------

  Flavors:
        MV78100
                Product Brief  : http://www.marvell.com/embedded-processors/discovery-innovation/assets/MV78100-003_WEB.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/discovery-innovation/assets/HW_MV78100_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/discovery-innovation/assets/FS_MV76100_78100_78200_OpenSource.pdf
        MV78200
                Product Brief  : http://www.marvell.com/embedded-processors/discovery-innovation/assets/MV78200-002_WEB.pdf
                Hardware Spec  : http://www.marvell.com/embedded-processors/discovery-innovation/assets/HW_MV78200_OpenSource.pdf
                Functional Spec: http://www.marvell.com/embedded-processors/discovery-innovation/assets/FS_MV76100_78100_78200_OpenSource.pdf
        MV76100
                Not supported by the Linux kernel.

74
  Core: Feroceon 88fr571-vd ARMv5 compatible
75 76 77 78 79 80 81 82 83 84 85

  Linux kernel mach directory: arch/arm/mach-mv78xx0
  Linux kernel plat directory: arch/arm/plat-orion

EBU Armada family
-----------------

  Armada 370 Flavors:
        88F6710
        88F6707
        88F6W11
86 87 88
    Product Brief:   http://www.marvell.com/embedded-processors/armada-300/assets/Marvell_ARMADA_370_SoC.pdf
    Hardware Spec:   http://www.marvell.com/embedded-processors/armada-300/assets/ARMADA370-datasheet.pdf
    Functional Spec: http://www.marvell.com/embedded-processors/armada-300/assets/ARMADA370-FunctionalSpec-datasheet.pdf
89
    Core: Sheeva ARMv7 compatible PJ4B
90 91 92 93

  Armada 375 Flavors:
	88F6720
    Product Brief: http://www.marvell.com/embedded-processors/armada-300/assets/ARMADA_375_SoC-01_product_brief.pdf
94 95 96 97 98 99
    Core: ARM Cortex-A9

  Armada 38x Flavors:
	88F6810	Armada 380
	88F6820 Armada 385
	88F6828 Armada 388
100 101
    Product infos:   http://www.marvell.com/embedded-processors/armada-38x/
    Functional Spec: https://marvellcorp.wufoo.com/forms/marvell-armada-38x-functional-specifications/
102 103 104 105 106
    Core: ARM Cortex-A9

  Armada 39x Flavors:
	88F6920 Armada 390
	88F6928 Armada 398
107
    Product infos: http://www.marvell.com/embedded-processors/armada-39x/
108
    Core: ARM Cortex-A9
109

110 111 112 113
  Armada XP Flavors:
        MV78230
        MV78260
        MV78460
114
    NOTE: not to be confused with the non-SMP 78xx0 SoCs
115
    Product Brief: http://www.marvell.com/embedded-processors/armada-xp/assets/Marvell-ArmadaXP-SoC-product%20brief.pdf
116
    Functional Spec: http://www.marvell.com/embedded-processors/armada-xp/assets/ARMADA-XP-Functional-SpecDatasheet.pdf
117 118 119 120
    Hardware Specs:
      http://www.marvell.com/embedded-processors/armada-xp/assets/HW_MV78230_OS.PDF
      http://www.marvell.com/embedded-processors/armada-xp/assets/HW_MV78260_OS.PDF
      http://www.marvell.com/embedded-processors/armada-xp/assets/HW_MV78460_OS.PDF
121
    Core: Sheeva ARMv7 compatible Dual-core or Quad-core PJ4B-MP
122 123 124 125

  Linux kernel mach directory: arch/arm/mach-mvebu
  Linux kernel plat directory: none

126 127 128 129 130 131
EBU Armada family ARMv8
-----------------------

  Armada 3710/3720 Flavors:
	88F3710
	88F3720
132
	Core: ARM Cortex A53 (ARMv8)
133

134 135 136
	Homepage: http://www.marvell.com/embedded-processors/armada-3700/
	Product Brief: http://www.marvell.com/embedded-processors/assets/PB-88F3700-FNL.pdf
	Device tree files: arch/arm64/boot/dts/marvell/armada-37*
137

138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157
  Armada 7K Flavors:
	88F7020 (AP806 Dual + one CP110)
	88F7040 (AP806 Quad + one CP110)
	Core: ARM Cortex A72

	Homepage: http://www.marvell.com/embedded-processors/armada-70xx/
	Product Brief: http://www.marvell.com/embedded-processors/assets/Armada7020PB-Jan2016.pdf
		       http://www.marvell.com/embedded-processors/assets/Armada7040PB-Jan2016.pdf
	Device tree files: arch/arm64/boot/dts/marvell/armada-70*

  Armada 8K Flavors:
	88F8020 (AP806 Dual + two CP110)
	88F8040 (AP806 Quad + two CP110)
	Core: ARM Cortex A72

	Homepage: http://www.marvell.com/embedded-processors/armada-80xx/
	Product Brief: http://www.marvell.com/embedded-processors/assets/Armada8020PB-Jan2016.pdf
		       http://www.marvell.com/embedded-processors/assets/Armada8040PB-Jan2016.pdf
	Device tree files: arch/arm64/boot/dts/marvell/armada-80*

158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174
Avanta family
-------------

  Flavors:
       88F6510
       88F6530P
       88F6550
       88F6560
  Homepage     : http://www.marvell.com/broadband/
  Product Brief: http://www.marvell.com/broadband/assets/Marvell_Avanta_88F6510_305_060-001_product_brief.pdf
  No public datasheet available.

  Core: ARMv5 compatible

  Linux kernel mach directory: no code in mainline yet, planned for the future
  Linux kernel plat directory: no code in mainline yet, planned for the future

175 176 177 178 179 180 181 182 183
Storage family
--------------

  Armada SP:
	88RC1580
    Product infos: http://www.marvell.com/storage/armada-sp/
    Core: Sheeva ARMv7 comatible Quad-core PJ4C
    (not supported in upstream Linux kernel)

184 185 186 187 188 189 190 191 192 193
Dove family (application processor)
-----------------------------------

  Flavors:
        88AP510 a.k.a Armada 510
                Product Brief   : http://www.marvell.com/application-processors/armada-500/assets/Marvell_Armada510_SoC.pdf
                Hardware Spec   : http://www.marvell.com/application-processors/armada-500/assets/Armada-510-Hardware-Spec.pdf
                Functional Spec : http://www.marvell.com/application-processors/armada-500/assets/Armada-510-Functional-Spec.pdf
  Homepage: http://www.marvell.com/application-processors/armada-500/
  Core: ARMv7 compatible
194 195 196

  Directory: arch/arm/mach-mvebu (DT enabled platforms)
             arch/arm/mach-dove (non-DT enabled platforms)
197 198 199 200 201 202 203

PXA 2xx/3xx/93x/95x family
--------------------------

  Flavors:
        PXA21x, PXA25x, PXA26x
             Application processor only
204
             Core: ARMv5 XScale1 core
205 206 207 208 209 210 211
        PXA270, PXA271, PXA272
             Product Brief         : http://www.marvell.com/application-processors/pxa-family/assets/pxa_27x_pb.pdf
             Design guide          : http://www.marvell.com/application-processors/pxa-family/assets/pxa_27x_design_guide.pdf
             Developers manual     : http://www.marvell.com/application-processors/pxa-family/assets/pxa_27x_dev_man.pdf
             Specification         : http://www.marvell.com/application-processors/pxa-family/assets/pxa_27x_emts.pdf
             Specification update  : http://www.marvell.com/application-processors/pxa-family/assets/pxa_27x_spec_update.pdf
             Application processor only
212
             Core: ARMv5 XScale2 core
213 214 215 216 217 218 219 220 221 222
        PXA300, PXA310, PXA320
             PXA 300 Product Brief : http://www.marvell.com/application-processors/pxa-family/assets/PXA300_PB_R4.pdf
             PXA 310 Product Brief : http://www.marvell.com/application-processors/pxa-family/assets/PXA310_PB_R4.pdf
             PXA 320 Product Brief : http://www.marvell.com/application-processors/pxa-family/assets/PXA320_PB_R4.pdf
             Design guide          : http://www.marvell.com/application-processors/pxa-family/assets/PXA3xx_Design_Guide.pdf
             Developers manual     : http://www.marvell.com/application-processors/pxa-family/assets/PXA3xx_Developers_Manual.zip
             Specifications        : http://www.marvell.com/application-processors/pxa-family/assets/PXA3xx_EMTS.pdf
             Specification Update  : http://www.marvell.com/application-processors/pxa-family/assets/PXA3xx_Spec_Update.zip
             Reference Manual      : http://www.marvell.com/application-processors/pxa-family/assets/PXA3xx_TavorP_BootROM_Ref_Manual.pdf
             Application processor only
223
             Core: ARMv5 XScale3 core
224 225
        PXA930, PXA935
             Application processor with Communication processor
226
             Core: ARMv5 XScale3 core
227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244
        PXA955
             Application processor with Communication processor
             Core: ARMv7 compatible Sheeva PJ4 core

   Comments:

    * This line of SoCs originates from the XScale family developed by
      Intel and acquired by Marvell in ~2006. The PXA21x, PXA25x,
      PXA26x, PXA27x, PXA3xx and PXA93x were developed by Intel, while
      the later PXA95x were developed by Marvell.

    * Due to their XScale origin, these SoCs have virtually nothing in
      common with the other (Kirkwood, Dove, etc.) families of Marvell
      SoCs, except with the MMP/MMP2 family of SoCs.

   Linux kernel mach directory: arch/arm/mach-pxa
   Linux kernel plat directory: arch/arm/plat-pxa

245
MMP/MMP2/MMP3 family (communication processor)
246 247 248 249 250 251 252 253 254 255 256 257
-----------------------------------------

   Flavors:
        PXA168, a.k.a Armada 168
             Homepage             : http://www.marvell.com/application-processors/armada-100/armada-168.jsp
             Product brief        : http://www.marvell.com/application-processors/armada-100/assets/pxa_168_pb.pdf
             Hardware manual      : http://www.marvell.com/application-processors/armada-100/assets/armada_16x_datasheet.pdf
             Software manual      : http://www.marvell.com/application-processors/armada-100/assets/armada_16x_software_manual.pdf
             Specification update : http://www.marvell.com/application-processors/armada-100/assets/ARMADA16x_Spec_update.pdf
             Boot ROM manual      : http://www.marvell.com/application-processors/armada-100/assets/armada_16x_ref_manual.pdf
             App node package     : http://www.marvell.com/application-processors/armada-100/assets/armada_16x_app_note_package.pdf
             Application processor only
258 259
             Core: ARMv5 compatible Marvell PJ1 88sv331 (Mohawk)
        PXA910/PXA920
260 261 262
             Homepage             : http://www.marvell.com/communication-processors/pxa910/
             Product Brief        : http://www.marvell.com/communication-processors/pxa910/assets/Marvell_PXA910_Platform-001_PB_final.pdf
             Application processor with Communication processor
263 264
             Core: ARMv5 compatible Marvell PJ1 88sv331 (Mohawk)
        PXA688, a.k.a. MMP2, a.k.a Armada 610
265 266
             Product Brief        : http://www.marvell.com/application-processors/armada-600/assets/armada610_pb.pdf
             Application processor only
267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283
             Core: ARMv7 compatible Sheeva PJ4 88sv581x core
	PXA2128, a.k.a. MMP3 (OLPC XO4, Linux support not upstream)
	     Product Brief	  : http://www.marvell.com/application-processors/armada/pxa2128/assets/Marvell-ARMADA-PXA2128-SoC-PB.pdf
	     Application processor only
	     Core: Dual-core ARMv7 compatible Sheeva PJ4C core
	PXA960/PXA968/PXA978 (Linux support not upstream)
	     Application processor with Communication Processor
	     Core: ARMv7 compatible Sheeva PJ4 core
	PXA986/PXA988 (Linux support not upstream)
	     Application processor with Communication Processor
	     Core: Dual-core ARMv7 compatible Sheeva PJ4B-MP core
	PXA1088/PXA1920 (Linux support not upstream)
	     Application processor with Communication Processor
	     Core: quad-core ARMv7 Cortex-A7
	PXA1908/PXA1928/PXA1936
	     Application processor with Communication Processor
	     Core: multi-core ARMv8 Cortex-A53
284 285 286 287 288 289 290 291 292 293 294 295 296 297

   Comments:

    * This line of SoCs originates from the XScale family developed by
      Intel and acquired by Marvell in ~2006. All the processors of
      this MMP/MMP2 family were developed by Marvell.

    * Due to their XScale origin, these SoCs have virtually nothing in
      common with the other (Kirkwood, Dove, etc.) families of Marvell
      SoCs, except with the PXA family of SoCs listed above.

   Linux kernel mach directory: arch/arm/mach-mmp
   Linux kernel plat directory: arch/arm/plat-pxa

298
Berlin family (Multimedia Solutions)
299 300 301
-------------------------------------

  Flavors:
302 303 304
	88DE3010, Armada 1000 (no Linux support)
		Core:		Marvell PJ1 (ARMv5TE), Dual-core
		Product Brief:	http://www.marvell.com.cn/digital-entertainment/assets/armada_1000_pb.pdf
305
	88DE3005, Armada 1500 Mini
306 307
		Design name:	BG2CD
		Core:		ARM Cortex-A9, PL310 L2CC
308 309 310
	88DE3006, Armada 1500 Mini Plus
		Design name:	BG2CDP
		Core:		Dual Core ARM Cortex-A7
311 312
	88DE3100, Armada 1500
		Design name:	BG2
313
		Core:		Marvell PJ4B-MP (ARMv7), Tauros3 L2CC
314
	88DE3114, Armada 1500 Pro
315
		Design name:	BG2Q
316
		Core:		Quad Core ARM Cortex-A9, PL310 L2CC
317
	88DE3214, Armada 1500 Pro 4K
318 319
		Design name:	BG3
		Core:		ARM Cortex-A15, CA15 integrated L2CC
320 321
	88DE3218, ARMADA 1500 Ultra
		Core:		ARM Cortex-A53
322

323
  Homepage: https://www.synaptics.com/products/multimedia-solutions
324 325 326
  Directory: arch/arm/mach-berlin

  Comments:
327

328 329 330
   * This line of SoCs is based on Marvell Sheeva or ARM Cortex CPUs
     with Synopsys DesignWare (IRQ, GPIO, Timers, ...) and PXA IP (SDHCI, USB, ETH, ...).

331 332
   * The Berlin family was acquired by Synaptics from Marvell in 2017.

333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375
CPU Cores
---------

The XScale cores were designed by Intel, and shipped by Marvell in the older
PXA processors. Feroceon is a Marvell designed core that developed in-house,
and that evolved into Sheeva. The XScale and Feroceon cores were phased out
over time and replaced with Sheeva cores in later products, which subsequently
got replaced with licensed ARM Cortex-A cores.

  XScale 1
	CPUID 0x69052xxx
	ARMv5, iWMMXt
  XScale 2
	CPUID 0x69054xxx
	ARMv5, iWMMXt
  XScale 3
	CPUID 0x69056xxx or 0x69056xxx
	ARMv5, iWMMXt
  Feroceon-1850 88fr331 "Mohawk"
	CPUID 0x5615331x or 0x41xx926x
	ARMv5TE, single issue
  Feroceon-2850 88fr531-vd "Jolteon"
	CPUID 0x5605531x or 0x41xx926x
	ARMv5TE, VFP, dual-issue
  Feroceon 88fr571-vd "Jolteon"
	CPUID 0x5615571x
	ARMv5TE, VFP, dual-issue
  Feroceon 88fr131 "Mohawk-D"
	CPUID 0x5625131x
	ARMv5TE, single-issue in-order
  Sheeva PJ1 88sv331 "Mohawk"
	CPUID 0x561584xx
	ARMv5, single-issue iWMMXt v2
  Sheeva PJ4 88sv581x "Flareon"
	CPUID 0x560f581x
	ARMv7, idivt, optional iWMMXt v2
  Sheeva PJ4B 88sv581x
	CPUID 0x561f581x
	ARMv7, idivt, optional iWMMXt v2
  Sheeva PJ4B-MP / PJ4C
	CPUID 0x562f584x
	ARMv7, idivt/idiva, LPAE, optional iWMMXt v2 and/or NEON

376 377 378
Long-term plans
---------------

379 380 381 382
 * Unify the mach-dove/, mach-mv78xx0/, mach-orion5x/ into the
   mach-mvebu/ to support all SoCs from the Marvell EBU (Engineering
   Business Unit) in a single mach-<foo> directory. The plat-orion/
   would therefore disappear.
383 384 385 386 387 388 389 390 391 392 393 394 395

 * Unify the mach-mmp/ and mach-pxa/ into the same mach-pxa
   directory. The plat-pxa/ would therefore disappear.

Credits
-------

 Maen Suleiman <maen@marvell.com>
 Lior Amsalem <alior@marvell.com>
 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
 Andrew Lunn <andrew@lunn.ch>
 Nicolas Pitre <nico@fluxnic.net>
 Eric Miao <eric.y.miao@gmail.com>