summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBai Ping <ping.bai@nxp.com>2017-03-10 14:54:01 +0800
committerStefan Agner <stefan.agner@toradex.com>2017-11-27 09:59:21 +0100
commitd30867eecdf510e7bf90722447943122ac33fbdb (patch)
tree423342dc8b2ec675291b36b2e8c2785b1912b247
parent5404b49c7f3c90243b7e8cf8dbb71790d12d5859 (diff)
MLK-14409-01 ARM: imx: Add speed grading fuse check for 900MHz on i.mx6ull
According to the latest datasheet(Rev.1,02/2017), when the internal LDO is enabled, the ARM core can run at 900MHz. We need to check the speed grading fuse to determine the max ARM core frequency. Signed-off-by: Bai Ping <ping.bai@nxp.com> (cherry picked from commit cc0edd14c5fc3b5590302572687b08f80563c683) (cherry picked from commit c0821bb630b5a993a7cb8405f228f8bbd9e0bef7)
-rw-r--r--arch/arm/mach-imx/mach-imx6ul.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/arm/mach-imx/mach-imx6ul.c b/arch/arm/mach-imx/mach-imx6ul.c
index dcabfb199702..9eb97e8c2c32 100644
--- a/arch/arm/mach-imx/mach-imx6ul.c
+++ b/arch/arm/mach-imx/mach-imx6ul.c
@@ -71,7 +71,7 @@ static void __init imx6ul_enet_phy_init(void)
#define OCOTP_CFG3 0x440
#define OCOTP_CFG3_SPEED_SHIFT 16
#define OCOTP_CFG3_SPEED_696MHZ 0x2
-#define OCOTP_CFG3_SPEED_1_GHZ 0x3
+#define OCOTP_CFG3_SPEED_900MHZ 0x3
static void __init imx6ul_opp_check_speed_grading(struct device *cpu_dev)
{
@@ -100,7 +100,7 @@ static void __init imx6ul_opp_check_speed_grading(struct device *cpu_dev)
* 2b'00: Reserved;
* 2b'01: 528000000Hz;
* 2b'10: 700000000Hz(i.MX6UL), 800000000Hz(i.MX6ULL);
- * 2b'11: Reserved(i.MX6UL), 1GHz(i.MX6ULL);
+ * 2b'11: 900000000Hz(i.MX6ULL);
* We need to set the max speed of ARM according to fuse map.
*/
val = readl_relaxed(base + OCOTP_CFG3);
@@ -114,15 +114,15 @@ static void __init imx6ul_opp_check_speed_grading(struct device *cpu_dev)
}
if (cpu_is_imx6ull()) {
- if (val != OCOTP_CFG3_SPEED_1_GHZ) {
- if (dev_pm_opp_disable(cpu_dev, 996000000))
- pr_warn("Failed to disable 996MHz OPP\n");
- }
-
if (val != OCOTP_CFG3_SPEED_696MHZ) {
if (dev_pm_opp_disable(cpu_dev, 792000000))
pr_warn("Failed to disable 792MHz OPP\n");
}
+
+ if (val != OCOTP_CFG3_SPEED_900MHZ) {
+ if(dev_pm_opp_disable(cpu_dev, 900000000))
+ pr_warn("Failed to disable 900MHz OPP\n");
+ }
}
iounmap(base);