1TI EMIF SDRAM Controller Driver: 2 3Author 4======== 5Aneesh V <aneesh@ti.com> 6 7Location 8============ 9driver/memory/emif.c 10 11Supported SoCs: 12=================== 13TI OMAP44xx 14TI OMAP54xx 15 16Menuconfig option: 17========================== 18Device Drivers 19 Memory devices 20 Texas Instruments EMIF driver 21 22Description 23=========== 24This driver is for the EMIF module available in Texas Instruments 25SoCs. EMIF is an SDRAM controller that, based on its revision, 26supports one or more of DDR2, DDR3, and LPDDR2 SDRAM protocols. 27This driver takes care of only LPDDR2 memories presently. The 28functions of the driver includes re-configuring AC timing 29parameters and other settings during frequency, voltage and 30temperature changes 31 32Platform Data (see include/linux/platform_data/emif_plat.h): 33===================================================================== 34DDR device details and other board dependent and SoC dependent 35information can be passed through platform data (struct emif_platform_data) 36- DDR device details: 'struct ddr_device_info' 37- Device AC timings: 'struct lpddr2_timings' and 'struct lpddr2_min_tck' 38- Custom configurations: customizable policy options through 39 'struct emif_custom_configs' 40- IP revision 41- PHY type 42 43Interface to the external world: 44================================ 45EMIF driver registers notifiers for voltage and frequency changes 46affecting EMIF and takes appropriate actions when these are invoked. 47- freq_pre_notify_handling() 48- freq_post_notify_handling() 49- volt_notify_handling() 50 51Debugfs 52======== 53The driver creates two debugfs entries per device. 54- regcache_dump : dump of register values calculated and saved for all 55 frequencies used so far. 56- mr4 : last polled value of MR4 register in the LPDDR2 device. MR4 57 indicates the current temperature level of the device. 58