drivers: soc: sunxi: Add support for the C1 SRAM region
authorMaxime Ripard <maxime.ripard@bootlin.com>
Tue, 10 Jul 2018 08:00:59 +0000 (10:00 +0200)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Wed, 11 Jul 2018 08:55:43 +0000 (10:55 +0200)
This introduces support for the SRAM C1 section, that is controlled by
the system controller. This SRAM area can be muxed either to the CPU
or the Video Engine, that needs this area to store various tables (e.g.
the Huffman VLD decoding tables).

This only supports devices with the same layout as the A10 (which also
includes the A13, A20, A33 and other SoCs).

Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Signed-off-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
drivers/soc/sunxi/sunxi_sram.c

index 236f34307c0f368a7953c0575881d4ad535b0257..b19fa2cc67c2bbbb004a34a430bf4a209ceb5afc 100644 (file)
@@ -64,6 +64,12 @@ static struct sunxi_sram_desc sun4i_a10_sram_a3_a4 = {
                                  SUNXI_SRAM_MAP(1, 1, "emac")),
 };
 
+static struct sunxi_sram_desc sun4i_a10_sram_c1 = {
+       .data   = SUNXI_SRAM_DATA("C1", 0x0, 0x0, 31,
+                                 SUNXI_SRAM_MAP(0, 0, "cpu"),
+                                 SUNXI_SRAM_MAP(0x7fffffff, 1, "ve")),
+};
+
 static struct sunxi_sram_desc sun4i_a10_sram_d = {
        .data   = SUNXI_SRAM_DATA("D", 0x4, 0x0, 1,
                                  SUNXI_SRAM_MAP(0, 0, "cpu"),
@@ -81,6 +87,10 @@ static const struct of_device_id sunxi_sram_dt_ids[] = {
                .compatible     = "allwinner,sun4i-a10-sram-a3-a4",
                .data           = &sun4i_a10_sram_a3_a4.data,
        },
+       {
+               .compatible     = "allwinner,sun4i-a10-sram-c1",
+               .data           = &sun4i_a10_sram_c1.data,
+       },
        {
                .compatible     = "allwinner,sun4i-a10-sram-d",
                .data           = &sun4i_a10_sram_d.data,