• Thara Gopinath's avatar
    OMAP3: PM: Adding smartreflex driver support. · 984aa6db
    Thara Gopinath authored
    SmartReflex modules do adaptive voltage control for real-time
    voltage adjustments. With Smartreflex the power supply voltage
    can be adapted to the silicon performance(manufacturing process,
    temperature induced performance, age induced performance etc).
    
    There are differnet classes of smartreflex implementation.
    	Class-0: Manufacturing Test Calibration
    	Class-1: Boot-Time Software Calibration
    	Class-2: Continuous Software Calibration
    	Class-3: Continuous Hardware Calibration
    	Class-4: Fully Integrated Power Management
    
    OMAP3 has two smartreflex modules one associated with VDD MPU and the
    other associated with VDD CORE.
    This patch adds support for  smartreflex driver. The driver is designed
    for Class-1 , Class-2 and Class-3 support and is  a platform driver.
    Smartreflex driver can be enabled through a Kconfig option
    "SmartReflex support" under "System type"->"TI OMAP implementations" menu.
    
    Smartreflex autocompensation feature can be enabled runtime through
    a debug fs option.
    To enable smartreflex autocompensation feature
    	echo 1 > /debug/voltage/vdd_<X>/smartreflex/autocomp
    To disable smartreflex autocompensation feature
    	echo 0 > /debug/voltage/vdd_<X>/smartreflex/autocomp
    
    where X can be mpu, core , iva etc.
    
    This patch contains code originally in linux omap pm branch.
    Major contributors to this driver are
    Lesly A M, Rajendra Nayak, Kalle Jokiniemi, Paul Walmsley,
    Nishant Menon, Kevin Hilman.
    Signed-off-by: default avatarThara Gopinath <thara@ti.com>
    Signed-off-by: default avatarKevin Hilman <khilman@deeprootsystems.com>
    984aa6db
smartreflex.c 26.1 KB