All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH] ARM: rmobile: Drop PRR syscon driver
@ 2018-10-18 18:36 Marek Vasut
  0 siblings, 0 replies; only message in thread
From: Marek Vasut @ 2018-10-18 18:36 UTC (permalink / raw)
  To: u-boot

The PRR syscon driver is available too late for Multi DTB build
of U-Boot. Replace it with simple check whether a platform is
Gen3 or not and produce an address of the PRR.

Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
---
 arch/arm/mach-rmobile/cpu_info-rcar.c | 61 ++++-----------------------
 1 file changed, 8 insertions(+), 53 deletions(-)

diff --git a/arch/arm/mach-rmobile/cpu_info-rcar.c b/arch/arm/mach-rmobile/cpu_info-rcar.c
index ccb7a32ac4..ce9312f9d8 100644
--- a/arch/arm/mach-rmobile/cpu_info-rcar.c
+++ b/arch/arm/mach-rmobile/cpu_info-rcar.c
@@ -11,7 +11,14 @@
 #define R8A7796_REV_1_0		0x5200
 #define R8A7796_REV_1_1		0x5210
 
-static u32 rmobile_get_prr(void);
+static u32 rmobile_get_prr(void)
+{
+#ifdef CONFIG_RCAR_GEN3
+	return readl(0xFFF00044);
+#else
+	return readl(0xFF000044);
+#endif
+}
 
 u32 rmobile_get_cpu_type(void)
 {
@@ -37,55 +44,3 @@ u32 rmobile_get_cpu_rev_fraction(void)
 	else
 		return prr & 0x0000000F;
 }
-
-#if !CONFIG_IS_ENABLED(DM) || !CONFIG_IS_ENABLED(SYSCON)
-static u32 rmobile_get_prr(void)
-{
-	/*
-	 * On RCar/RMobile Gen2 and older systems, the PRR is always
-	 * located at the address below. On newer systems, the PRR
-	 * may be located at different address, but that information
-	 * is obtained from DT. This code will be removed when all
-	 * of the older systems get converted to DM and OF control.
-	 */
-	return readl(0xFF000044);
-}
-#else
-
-#include <dm.h>
-#include <syscon.h>
-#include <regmap.h>
-
-struct renesas_prr_priv {
-	fdt_addr_t	regs;
-};
-
-enum {
-	PRR_RCAR,
-};
-
-static u32 rmobile_get_prr(void)
-{
-	struct regmap *map;
-
-	map = syscon_get_regmap_by_driver_data(PRR_RCAR);
-	if (!map) {
-		printf("PRR regmap failed!\n");
-		hang();
-	}
-
-	return readl(map->ranges[0].start);
-}
-
-static const struct udevice_id renesas_prr_ids[] = {
-	{ .compatible = "renesas,prr", .data = PRR_RCAR },
-	{ }
-};
-
-U_BOOT_DRIVER(renesas_prr) = {
-	.name	= "renesas_prr",
-	.id	= UCLASS_SYSCON,
-	.of_match = renesas_prr_ids,
-	.flags	= DM_FLAG_PRE_RELOC,
-};
-#endif
-- 
2.18.0

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2018-10-18 18:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-10-18 18:36 [U-Boot] [PATCH] ARM: rmobile: Drop PRR syscon driver Marek Vasut

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.