cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

ti-emif.rst (1865B)


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