soc: ti: omap-prm: add omap4 PRM data
authorTero Kristo <t-kristo@ti.com>
Wed, 9 Oct 2019 15:55:38 +0000 (08:55 -0700)
committerSantosh Shilimkar <santosh.shilimkar@oracle.com>
Wed, 9 Oct 2019 15:55:38 +0000 (08:55 -0700)
Add PRM data for omap4 family of SoCs. Initially this is just used to
provide reset support.

Reviewed-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Tero Kristo <t-kristo@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@oracle.com>
drivers/soc/ti/omap_prm.c

index 09985da..f845b8a 100644 (file)
@@ -58,7 +58,29 @@ struct omap_reset_data {
 
 #define OMAP_PRM_HAS_RESETS    (OMAP_PRM_HAS_RSTCTRL | OMAP_PRM_HAS_RSTST)
 
+static const struct omap_rst_map rst_map_01[] = {
+       { .rst = 0, .st = 0 },
+       { .rst = 1, .st = 1 },
+       { .rst = -1 },
+};
+
+static const struct omap_rst_map rst_map_012[] = {
+       { .rst = 0, .st = 0 },
+       { .rst = 1, .st = 1 },
+       { .rst = 2, .st = 2 },
+       { .rst = -1 },
+};
+
+static const struct omap_prm_data omap4_prm_data[] = {
+       { .name = "tesla", .base = 0x4a306400, .rstctrl = 0x10, .rstst = 0x14, .rstmap = rst_map_01 },
+       { .name = "core", .base = 0x4a306700, .rstctrl = 0x210, .rstst = 0x214, .clkdm_name = "ducati", .rstmap = rst_map_012 },
+       { .name = "ivahd", .base = 0x4a306f00, .rstctrl = 0x10, .rstst = 0x14, .rstmap = rst_map_012 },
+       { .name = "device", .base = 0x4a307b00, .rstctrl = 0x0, .rstst = 0x4, .rstmap = rst_map_01, .flags = OMAP_PRM_HAS_RSTCTRL | OMAP_PRM_HAS_NO_CLKDM },
+       { },
+};
+
 static const struct of_device_id omap_prm_id_table[] = {
+       { .compatible = "ti,omap4-prm-inst", .data = omap4_prm_data },
        { },
 };