Re: [PATCH] omap3: Add basic support for 720MHz part

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Op 19 jan 2011, om 10:06 heeft Nishanth Menon het volgende geschreven:

> Vishwanath Sripathy wrote, on 01/19/2011 10:56 AM:
>> If you want a quick hack, you can modify the voltage for 700M marginally
>> (like you have done above). But it needs to be done in multiple places.
>> You need to modify IVA OPP6 entry in opp table and OPP6 voltage value in
>> voltage.h as well besides above change. This should work.
> we may want to be sure about keeping the additional voltages in 1 step increment (12.5mV - to ensure twl conversion routines sane)- i think we may be pretty much maxed out for the tps chip used, no?

Not using the 12.5mV steps gives me:

[    3.076873] calc_dep_vdd_volt: Not able to find a matching volt forvdd_core corresponding to vdd_mpu 1350001 volt
[    3.095306] omap_voltage_scale: Error in calculating dependent vdd voltagesfor vdd_mpu

It does seem to work, though:

root@usrp-e1xx:~# grep MIPS /proc/cpuinfo 
BogoMIPS	: 717.37

I think I'll just drop the OPP5 voltage by 12.5mV since I know what silicon my usrp-e1xx has, but I can't really give out that patch to others, since someone might replace the overo with another one.

This is the hack I ended up using:

diff --git a/arch/arm/mach-omap2/opp3xxx_data.c b/arch/arm/mach-omap2/opp3xxx_data.c
index 76d26c7..c913240 100644
--- a/arch/arm/mach-omap2/opp3xxx_data.c
+++ b/arch/arm/mach-omap2/opp3xxx_data.c
@@ -37,7 +37,7 @@ static struct omap_opp_def __initdata omap34xx_opp_def_list[] = {
        /* MPU OPP5 */
        OPP_INITIALIZER("mpu", true, 600000000, 1350000),
        /* MPU OPP6 */
-       OPP_INITIALIZER("mpu", false, 720000000, 1350000),
+       OPP_INITIALIZER("mpu", false, 720000000, 1350001),
 
        /*
         * L3 OPP1 - 41.5 MHz is disabled because: The voltage for that OPP is
@@ -64,7 +64,7 @@ static struct omap_opp_def __initdata omap34xx_opp_def_list[] = {
        /* DSP OPP5 */
        OPP_INITIALIZER("iva", true, 430000000, 1350000),
        /* DSP OPP6 */
-       OPP_INITIALIZER("iva", false, 520000000, 1350000),
+       OPP_INITIALIZER("iva", false, 520000000, 1350001),
 };
 
 static struct omap_opp_def __initdata omap36xx_opp_def_list[] = {
diff --git a/arch/arm/mach-omap2/voltage.c b/arch/arm/mach-omap2/voltage.c
index d10cb1b..2b7ff8f 100644
--- a/arch/arm/mach-omap2/voltage.c
+++ b/arch/arm/mach-omap2/voltage.c
@@ -324,6 +324,7 @@ static struct omap_volt_data omap34xx_vddmpu_volt_data[] = {
        VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP3_UV, OMAP343X_CONTROL_FUSE_OPP3_VDD1, 0xf9, 0x18),
        VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP4_UV, OMAP343X_CONTROL_FUSE_OPP4_VDD1, 0xf9, 0x18),
        VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP5_UV, OMAP343X_CONTROL_FUSE_OPP5_VDD1, 0xf9, 0x18),
+       VOLT_DATA_DEFINE(OMAP3430_VDD_MPU_OPP6_UV, OMAP343X_CONTROL_FUSE_OPP5_VDD1, 0xf9, 0x18),
        VOLT_DATA_DEFINE(0, 0, 0, 0),
 };
 
diff --git a/arch/arm/plat-omap/include/plat/voltage.h b/arch/arm/plat-omap/include/plat/voltage.h
index 6782c5e..42b89db 100644
--- a/arch/arm/plat-omap/include/plat/voltage.h
+++ b/arch/arm/plat-omap/include/plat/voltage.h
@@ -31,6 +31,7 @@
 #define OMAP3430_VDD_MPU_OPP3_UV               1200000
 #define OMAP3430_VDD_MPU_OPP4_UV               1270000
 #define OMAP3430_VDD_MPU_OPP5_UV               1350000
+#define OMAP3430_VDD_MPU_OPP6_UV               1350001
 
 #define OMAP3430_VDD_CORE_OPP1_UV              975000
 #define OMAP3430_VDD_CORE_OPP2_UV              1050000


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux