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