ARM Allwinner SoCs
==================

This document lists all the ARM Allwinner SoCs that are currently
supported in mainline by the Linux kernel. This document will also
provide links to documentation and/or datasheet for these SoCs.

SunXi family
------------
  Linux kernel mach directory: arch/arm/mach-sunxi

  Flavors:
    * ARM926 based SoCs
      - Allwinner F20 (sun3i)
        + Not Supported

    * ARM Cortex-A8 based SoCs
      - Allwinner A10 (sun4i)
        + Datasheet
	  http://dl.linux-sunxi.org/A10/A10%20Datasheet%20-%20v1.21%20%282012-04-06%29.pdf
	+ User Manual
	  http://dl.linux-sunxi.org/A10/A10%20User%20Manual%20-%20v1.20%20%282012-04-09%2c%20DECRYPTED%29.pdf

      - Allwinner A10s (sun5i)
        + Datasheet
          http://dl.linux-sunxi.org/A10s/A10s%20Datasheet%20-%20v1.20%20%282012-03-27%29.pdf

      - Allwinner A13 / R8 (sun5i)
        + Datasheet
	  http://dl.linux-sunxi.org/A13/A13%20Datasheet%20-%20v1.12%20%282012-03-29%29.pdf
        + User Manual
          http://dl.linux-sunxi.org/A13/A13%20User%20Manual%20-%20v1.2%20%282013-01-08%29.pdf

      - Next Thing Co GR8 (sun5i)

    * Dual ARM Cortex-A7 based SoCs
      - Allwinner A20 (sun7i)
        + User Manual
          http://dl.linux-sunxi.org/A20/A20%20User%20Manual%202013-03-22.pdf

      - Allwinner A23 (sun8i)
        + Datasheet
          http://dl.linux-sunxi.org/A23/A23%20Datasheet%20V1.0%2020130830.pdf
        + User Manual
          http://dl.linux-sunxi.org/A23/A23%20User%20Manual%20V1.0%2020130830.pdf

    * Quad ARM Cortex-A7 based SoCs
      - Allwinner A31 (sun6i)
        + Datasheet
          http://dl.linux-sunxi.org/A31/A3x_release_document/A31/IC/A31%20datasheet%20V1.3%2020131106.pdf
        + User Manual
          http://dl.linux-sunxi.org/A31/A3x_release_document/A31/IC/A31%20user%20manual%20V1.1%2020130630.pdf

      - Allwinner A31s (sun6i)
        + Datasheet
          http://dl.linux-sunxi.org/A31/A3x_release_document/A31s/IC/A31s%20datasheet%20V1.3%2020131106.pdf
        + User Manual
          http://dl.linux-sunxi.org/A31/A3x_release_document/A31s/IC/A31s%20User%20Manual%20%20V1.0%2020130322.pdf

      - Allwinner A33 (sun8i)
        + Datasheet
          http://dl.linux-sunxi.org/A33/A33%20Datasheet%20release%201.1.pdf
        + User Manual
          http://dl.linux-sunxi.org/A33/A33%20user%20manual%20release%201.1.pdf

      - Allwinner H2+ (sun8i)
        + No document available now, but is known to be working properly with
          H3 drivers and memory map.

      - Allwinner H3 (sun8i)
        + Datasheet
          http://dl.linux-sunxi.org/H3/Allwinner_H3_Datasheet_V1.0.pdf

      - Allwinner V3s (sun8i)
        + Datasheet
          http://linux-sunxi.org/File:Allwinner_V3s_Datasheet_V1.0.pdf

    * Quad ARM Cortex-A15, Quad ARM Cortex-A7 based SoCs
      - Allwinner A80
        + Datasheet
	  http://dl.linux-sunxi.org/A80/A80_Datasheet_Revision_1.0_0404.pdf

    * Octa ARM Cortex-A7 based SoCs
      - Allwinner A83T
        + Datasheet
          https://github.com/allwinner-zh/documents/raw/master/A83T/A83T_Datasheet_v1.3_20150510.pdf
        + User Manual
          https://github.com/allwinner-zh/documents/raw/master/A83T/A83T_User_Manual_v1.5.1_20150513.pdf

    * Quad ARM Cortex-A53 based SoCs
      - Allwinner A64
        + Datasheet
          http://dl.linux-sunxi.org/A64/A64_Datasheet_V1.1.pdf
        + User Manual
          http://dl.linux-sunxi.org/A64/Allwinner%20A64%20User%20Manual%20v1.0.pdf
