mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-26 19:00:25 +00:00
![Mauro Carvalho Chehab](/assets/img/avatar_default.png)
There are two docs describing memory device drivers. Add both to this new chapter of the driver-api. Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
64 lines
1.8 KiB
ReStructuredText
64 lines
1.8 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0
|
|
|
|
===============================
|
|
TI EMIF SDRAM Controller Driver
|
|
===============================
|
|
|
|
Author
|
|
======
|
|
Aneesh V <aneesh@ti.com>
|
|
|
|
Location
|
|
========
|
|
driver/memory/emif.c
|
|
|
|
Supported SoCs:
|
|
===============
|
|
TI OMAP44xx
|
|
TI OMAP54xx
|
|
|
|
Menuconfig option:
|
|
==================
|
|
Device Drivers
|
|
Memory devices
|
|
Texas Instruments EMIF driver
|
|
|
|
Description
|
|
===========
|
|
This driver is for the EMIF module available in Texas Instruments
|
|
SoCs. EMIF is an SDRAM controller that, based on its revision,
|
|
supports one or more of DDR2, DDR3, and LPDDR2 SDRAM protocols.
|
|
This driver takes care of only LPDDR2 memories presently. The
|
|
functions of the driver includes re-configuring AC timing
|
|
parameters and other settings during frequency, voltage and
|
|
temperature changes
|
|
|
|
Platform Data (see include/linux/platform_data/emif_plat.h)
|
|
===========================================================
|
|
DDR device details and other board dependent and SoC dependent
|
|
information can be passed through platform data (struct emif_platform_data)
|
|
|
|
- DDR device details: 'struct ddr_device_info'
|
|
- Device AC timings: 'struct lpddr2_timings' and 'struct lpddr2_min_tck'
|
|
- Custom configurations: customizable policy options through
|
|
'struct emif_custom_configs'
|
|
- IP revision
|
|
- PHY type
|
|
|
|
Interface to the external world
|
|
===============================
|
|
EMIF driver registers notifiers for voltage and frequency changes
|
|
affecting EMIF and takes appropriate actions when these are invoked.
|
|
|
|
- freq_pre_notify_handling()
|
|
- freq_post_notify_handling()
|
|
- volt_notify_handling()
|
|
|
|
Debugfs
|
|
=======
|
|
The driver creates two debugfs entries per device.
|
|
|
|
- regcache_dump : dump of register values calculated and saved for all
|
|
frequencies used so far.
|
|
- mr4 : last polled value of MR4 register in the LPDDR2 device. MR4
|
|
indicates the current temperature level of the device.
|