Add an entry for opp_modifier which configures OPPs on omap443x. Within this, nodes are defined with the opp-modifier propety that are defined as a list of frequency, offset from base register, and register value. The CPU node passes a phandle to the appropriate child node to get the correct table. This patch also adds higher eFused OPPs for omap443x. Signed-off-by: Dave Gerlach <d-gerlach@xxxxxx> --- arch/arm/boot/dts/omap443x.dtsi | 16 ++++++++++++++++ include/dt-bindings/opp/ti.h | 2 ++ 2 files changed, 18 insertions(+) diff --git a/arch/arm/boot/dts/omap443x.dtsi b/arch/arm/boot/dts/omap443x.dtsi index 8c1cfad..1c7e730 100644 --- a/arch/arm/boot/dts/omap443x.dtsi +++ b/arch/arm/boot/dts/omap443x.dtsi @@ -9,6 +9,7 @@ */ #include "omap4.dtsi" +#include <dt-bindings/opp/ti.h> / { cpus { @@ -20,9 +21,12 @@ 600000 1200000 800000 1313000 1008000 1375000 + 1200000 1388000 >; clock-latency = <300000>; /* From legacy driver */ + platform-opp-modifier = <&mpu_opp_modifier>; + /* cooling options */ cooling-min-level = <0>; cooling-max-level = <3>; @@ -42,6 +46,18 @@ #thermal-sensor-cells = <0>; }; + + opp_modifier: opp_modifier@0x4A002218 { + compatible = "opp-modifier-reg-bit"; + reg = <0x4A002218 0x04>; + + mpu_opp_modifier: mpu_opp_modifier { + opp-modifier = < + /* kHz offset value */ + 1200000 0 OMAP4_EFUSE_HAS_PERF_SILICON_BIT + >; + }; + }; }; }; diff --git a/include/dt-bindings/opp/ti.h b/include/dt-bindings/opp/ti.h index d3717be..cb62c32 100644 --- a/include/dt-bindings/opp/ti.h +++ b/include/dt-bindings/opp/ti.h @@ -25,4 +25,6 @@ #define AM43XX_EFUSE_SMA_OPP_TURBO_800MHZ_BIT (1 << 4) #define AM43XX_EFUSE_SMA_OPP_NITRO_1GHZ_BIT (1 << 5) +#define OMAP4_EFUSE_HAS_PERF_SILICON_BIT (1 << 17) + #endif /* __DT_BINDINGS_OPP_TI_H__ */ -- 1.9.0 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html