Linux 4.15.6
[linux/fpc-iii.git] / Documentation / memory-devices / ti-emif.txt
blobf4ad9a7d0f4b74e3821382af0e521864b127fc7a
1 TI EMIF SDRAM Controller Driver:
3 Author
4 ========
5 Aneesh V <aneesh@ti.com>
7 Location
8 ============
9 driver/memory/emif.c
11 Supported SoCs:
12 ===================
13 TI OMAP44xx
14 TI OMAP54xx
16 Menuconfig option:
17 ==========================
18 Device Drivers
19         Memory devices
20                 Texas Instruments EMIF driver
22 Description
23 ===========
24 This driver is for the EMIF module available in Texas Instruments
25 SoCs. EMIF is an SDRAM controller that, based on its revision,
26 supports one or more of DDR2, DDR3, and LPDDR2 SDRAM protocols.
27 This driver takes care of only LPDDR2 memories presently. The
28 functions of the driver includes re-configuring AC timing
29 parameters and other settings during frequency, voltage and
30 temperature changes
32 Platform Data (see include/linux/platform_data/emif_plat.h):
33 =====================================================================
34 DDR device details and other board dependent and SoC dependent
35 information 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
43 Interface to the external world:
44 ================================
45 EMIF driver registers notifiers for voltage and frequency changes
46 affecting EMIF and takes appropriate actions when these are invoked.
47 - freq_pre_notify_handling()
48 - freq_post_notify_handling()
49 - volt_notify_handling()
51 Debugfs
52 ========
53 The 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.