]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
arm: mvebu: a38x: Detect CONFIG_SYS_TCLK from SAR register
authorPali Rohár <pali@kernel.org>
Sat, 31 Jul 2021 12:22:52 +0000 (14:22 +0200)
committerStefan Roese <sr@denx.de>
Wed, 11 Aug 2021 06:42:26 +0000 (08:42 +0200)
Bit 15 in SAR register specifies if TCLK is running at 200 MHz or 250 MHz.
Use this information instead of manual configuration in every board file.

Signed-off-by: Pali Rohár <pali@kernel.org>
Reviewed-by: Stefan Roese <sr@denx.de>
arch/arm/mach-mvebu/include/mach/soc.h
include/configs/clearfog.h
include/configs/controlcenterdc.h
include/configs/db-88f6820-amc.h
include/configs/db-88f6820-gp.h
include/configs/helios4.h
include/configs/turris_omnia.h
include/configs/x530.h

index 3f3b15aa8ab6a00bb83da88d50b73ae3d57a0605..cb323aa59a761fd06c4f5f8f763b366600ece089 100644 (file)
 #define MV_88F68XX_A0_ID       0x4
 #define MV_88F68XX_B0_ID       0xa
 
-/* TCLK Core Clock definition */
-#ifndef CONFIG_SYS_TCLK
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
-#endif
-
 /* SOC specific definations */
 #define INTREG_BASE            0xd0000000
 #define INTREG_BASE_ADDR_REG   (INTREG_BASE + 0x20080)
 #define BOOT_FROM_SPI          0x32
 #define BOOT_FROM_MMC          0x30
 #define BOOT_FROM_MMC_ALT      0x31
+
+#define CONFIG_SYS_TCLK                ((readl(CONFIG_SAR_REG) & BIT(15)) ? \
+                                200000000 : 250000000)
 #elif defined(CONFIG_ARMADA_MSYS)
 /* SAR values for MSYS */
 #define CONFIG_SAR_REG         (MBUS_DFX_BASE  + 0xf8200)
 #define BOOT_FROM_SPI          0x3
 #endif
 
+/* TCLK Core Clock definition */
+#ifndef CONFIG_SYS_TCLK
+#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
+#endif
+
 #endif /* _MVEBU_SOC_H */
index fbdd2f0a244ca0a69cd88e07b4b02de0a6e3af84..705217067b30dc53451463710e8fc3ccadff8123 100644 (file)
@@ -17,7 +17,6 @@
  * for DDR ECC byte filling in the SPL before loading the main
  * U-Boot into it.
  */
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
 
 /* USB/EHCI configuration */
 #define CONFIG_EHCI_IS_TDI
index 171bd189d3bad621eb5515be88d49b45f6a1d352..3b17f75d209348197981e38dd2c7f937429096a8 100644 (file)
@@ -20,8 +20,6 @@
  * U-Boot into it.
  */
 
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
-
 #define CONFIG_LOADADDR                1000000
 
 /*
index 757fbc0b9bcd8bf9d57a8e739b339a94de9a9580..83f5b71839e218cd0f13483588e7d7f6536eac7a 100644 (file)
@@ -10,8 +10,6 @@
  * High Level Configuration Options (easy to change)
  */
 
-#define CONFIG_SYS_TCLK                200000000       /* 200MHz */
-
 /* USB/EHCI configuration */
 #define CONFIG_EHCI_IS_TDI
 
index 9a34fa67691347e8f202cdb3616961dc0971e753..1ab42328fb6a14315cf7d852f847aad55a405cba 100644 (file)
@@ -10,8 +10,6 @@
  * High Level Configuration Options (easy to change)
  */
 
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
-
 /* I2C */
 #define CONFIG_SYS_I2C_LEGACY
 #define CONFIG_SYS_I2C_MVTWSI
index 1368080f036beb3766233477740d159d7d22a99b..b5814ed55cf240164c384f3610678acf8e289153 100644 (file)
@@ -17,7 +17,6 @@
  * for DDR ECC byte filling in the SPL before loading the main
  * U-Boot into it.
  */
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
 
 /* USB/EHCI configuration */
 #define CONFIG_EHCI_IS_TDI
index 2553da12097b52d418218db90799b93adb0175ab..8646633ea4c5a158f3e3228528ffc93ad2e77166 100644 (file)
@@ -16,7 +16,6 @@
  * for DDR ECC byte filling in the SPL before loading the main
  * U-Boot into it.
  */
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
 
 /* USB/EHCI configuration */
 #define CONFIG_EHCI_IS_TDI
index 515c6e7ff45c8a9eba1dc293fb8394115318717c..64d68276234c28e4409a675677e2839fa4f7c6af 100644 (file)
@@ -12,8 +12,6 @@
 
 #define CONFIG_DISPLAY_BOARDINFO_LATE
 
-#define CONFIG_SYS_TCLK                250000000       /* 250MHz */
-
 /*
  * NS16550 Configuration
  */