0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 ===============================
0004 TI EMIF SDRAM Controller Driver
0005 ===============================
0006
0007 Author
0008 ======
0009 Aneesh V <aneesh@ti.com>
0010
0011 Location
0012 ========
0013 driver/memory/emif.c
0014
0015 Supported SoCs:
0016 ===============
0017 TI OMAP44xx
0018 TI OMAP54xx
0019
0020 Menuconfig option:
0021 ==================
0022 Device Drivers
0023 Memory devices
0024 Texas Instruments EMIF driver
0025
0026 Description
0027 ===========
0028 This driver is for the EMIF module available in Texas Instruments
0029 SoCs. EMIF is an SDRAM controller that, based on its revision,
0030 supports one or more of DDR2, DDR3, and LPDDR2 SDRAM protocols.
0031 This driver takes care of only LPDDR2 memories presently. The
0032 functions of the driver includes re-configuring AC timing
0033 parameters and other settings during frequency, voltage and
0034 temperature changes
0035
0036 Platform Data (see include/linux/platform_data/emif_plat.h)
0037 ===========================================================
0038 DDR device details and other board dependent and SoC dependent
0039 information can be passed through platform data (struct emif_platform_data)
0040
0041 - DDR device details: 'struct ddr_device_info'
0042 - Device AC timings: 'struct lpddr2_timings' and 'struct lpddr2_min_tck'
0043 - Custom configurations: customizable policy options through
0044 'struct emif_custom_configs'
0045 - IP revision
0046 - PHY type
0047
0048 Interface to the external world
0049 ===============================
0050 EMIF driver registers notifiers for voltage and frequency changes
0051 affecting EMIF and takes appropriate actions when these are invoked.
0052
0053 - freq_pre_notify_handling()
0054 - freq_post_notify_handling()
0055 - volt_notify_handling()
0056
0057 Debugfs
0058 =======
0059 The driver creates two debugfs entries per device.
0060
0061 - regcache_dump : dump of register values calculated and saved for all
0062 frequencies used so far.
0063 - mr4 : last polled value of MR4 register in the LPDDR2 device. MR4
0064 indicates the current temperature level of the device.