|
@@ -38,16 +38,10 @@
|
|
|
#include "cpuidle.h"
|
|
|
#include "hardware.h"
|
|
|
|
|
|
-static u32 chip_revision;
|
|
|
-
|
|
|
-int imx6q_revision(void)
|
|
|
-{
|
|
|
- return chip_revision;
|
|
|
-}
|
|
|
-
|
|
|
static void __init imx6q_init_revision(void)
|
|
|
{
|
|
|
u32 rev = imx_anatop_get_digprog();
|
|
|
+ u32 chip_revision;
|
|
|
|
|
|
switch (rev & 0xff) {
|
|
|
case 0:
|
|
@@ -64,6 +58,7 @@ static void __init imx6q_init_revision(void)
|
|
|
}
|
|
|
|
|
|
mxc_set_cpu_type(rev >> 16 & 0xff);
|
|
|
+ imx_set_soc_revision(chip_revision);
|
|
|
}
|
|
|
|
|
|
static void imx6q_restart(enum reboot_mode mode, const char *cmd)
|
|
@@ -191,7 +186,7 @@ static void __init imx6q_1588_init(void)
|
|
|
static void __init imx6q_init_machine(void)
|
|
|
{
|
|
|
imx_print_silicon_rev(cpu_is_imx6dl() ? "i.MX6DL" : "i.MX6Q",
|
|
|
- imx6q_revision());
|
|
|
+ imx_get_soc_revision());
|
|
|
|
|
|
imx6q_enet_phy_init();
|
|
|
|
|
@@ -270,7 +265,7 @@ static void __init imx6q_init_late(void)
|
|
|
* WAIT mode is broken on TO 1.0 and 1.1, so there is no point
|
|
|
* to run cpuidle on them.
|
|
|
*/
|
|
|
- if (imx6q_revision() > IMX_CHIP_REVISION_1_1)
|
|
|
+ if (imx_get_soc_revision() > IMX_CHIP_REVISION_1_1)
|
|
|
imx6q_cpuidle_init();
|
|
|
|
|
|
if (IS_ENABLED(CONFIG_ARM_IMX6Q_CPUFREQ)) {
|